Чтобы добавить субтитры в один файл, я использую следующую команду:

mkvmerge.exe -o g:\movie01.mkv --default-track 0 --language 0:pl movie01.mkv movie01.srt

Куда:

movie01.mkv - это название видеофайла.

movie01.srt - это имя файла субтитров (оно всегда совпадает с видеофайлом)

g:\movie01.mkv - выходной файл

Как запустить вышеупомянутую команду для каждого файла в каталоге?

2 ответа2

0

Эта команда перебирает все файлы mkv и запускает команду для каждого из них (я предлагаю поместить ее в файл .bat ). Команда должна быть запущена в каталоге, в котором находятся ваши mkv-файлы.

for %%A in (*.mkv) do if /i "%%~XA"==".mkv" ( 
    c:\<path to mkvmerge>\mkvmerge.exe -o g:\"%%A" --default-track 0 --language 0:pl "%%A" "%%~nA.srt"
)

%%A совпадает с точным именем файла.

%%~nA равно имени файла без типа файла.

0

При условии, что все файлы имеют расширение .mkv, как об этом:

for /r %%video in (*.mkv) do mkvmerge.exe -o %%video --default-track 0 --language 0:pl %%video.srt

%%video - это переменная, которая идентифицирует каждый файл в текущей папке с указанным расширением. После do я запускаю команду для каждого файла и использую ту же переменную для вызова файла srt.

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .