Usando o FFMPEG em vários arquivos

0

se eu quiser usar

$ffmpeg -i video.avi -vf subtitles=subtitle.srt out.avi

e eu tenho um grupo de arquivos .avi numerados ?? para ??, e outro grupo de arquivos .srt compartilhando os mesmos títulos

–– algo que se parece com:

$ [AnimeRG] Naruto Shippuden - 072 [720p] [x265] [pseudo].ass [AnimeRG] Naruto Shippuden - 072 [720p] [x265] [pseudo].mkv [AnimeRG] Naruto Shippuden - 073 [720p] [x265] [pseudo].ass [AnimeRG] Naruto Shippuden - 073 [720p] [x265] [pseudo].mkv ...

e continua ad infinitum ––

o que eu faço para usar a fórmula "for; do; done"?

abaixo é uma solução encontrada por um problema similar; no entanto, ele contém uma sintaxe que meu sistema não reconhece.

$for %%a in ("*.mkv") do ffmpeg -i "%%a" -vf subtitles=%%a.ass "%%~na.mp4" pause

minha solução deve ser algo assim:

$for a in *.mkv;do ffmpeg -i "$a" -vf subtitles="$a.ass" "EmbeddedTest/${a%.mkv}.mp4";done

    
por croakouttatune 17.02.2018 / 00:50

1 resposta

1

$a.ass resultará, por exemplo, em [AnimeRG] Naruto Shippuden - 072 [720p] [x265] [pseudo].mkv.ass , então use ${a%.mkv}.ass :

for a in *.mkv; do ffmpeg -i "$a" -vf subtitles="${a%.mkv}.ass" "EmbeddedTest/${a%.mkv}.mp4"; done

Mais informações sobre a expansão de parâmetros .

    
por 17.02.2018 / 01:34

Tags