Batch merge / mux .srt de vários idiomas com arquivos .mkv

0

Meu caso de uso é quase o mesmo de este exceto Eu tenho 2 faixas de legendas:

TVShow - Episódio 01.mkv

TVShow - Episódio 01.FR.srt

TVShow - Episódio 01.EN.srt

TVShow - Episódio 02.mkv

TVShow - Episódio 02.FR.srt

TVShow - Episódio 02.EN.srt

Gostaria de mesclar ambas as faixas de legendas (com o rótulo de legenda correto ao abrir o mkv mesclado).

A linha mkvmerge de trabalho para um único arquivo de vídeo é:

"C:/Program Files/MKVToolNix\mkvmerge.exe" --ui-language fr --output ^"C:\Temp\test\TVShow - Episode 01 ^(1^).mkv^" --no-subtitles --language 0:eng --language 1:eng --default-track 1:yes ^"^(^" ^"C:\Temp\test\TVShow - Episode 01.mkv^" ^"^)^" --language 0:eng ^"^(^" ^"C:\Temp\test\TVShow - Episode 01.EN.srt^" ^"^)^" --language 0:fre ^"^(^" ^"C:\Temp\test\TVShow - Episode 01.FR.srt^" ^"^)^" --track-order 0:0,0:1,1:0,2:0

Muito obrigado pela sua ajuda!

    
por guilamu 29.06.2018 / 18:02

1 resposta

0

Para essa pergunta, eu usaria o código abaixo com base na conversa que estava vinculada (certifique-se de salvar isso como .bat não .txt).

for %%A IN (*.mkv) do (
"C:\Program Files\MKVToolNix\mkvmerge.exe" -o "remux-%%~nxA" "%%~A" --track-name "0:English" --language "0:eng" "%%~nA.EN.srt" --track-name "0:French" --language "0:fre" "%%~nA.FR.srt"
pause
)

Se você quiser que isso seja totalmente automatizado, remova a linha pause .

    
por 15.07.2018 / 07:12

Tags