Eu recodifico muitos arquivos de vídeo com o ffmpeg usando o seguinte comando no prompt:
for %F in ("..\*.*") DO ffmpeg -n -i "%F" -c:v libx265 -c:a copy "%~nF.mkv"
Eu criei um arquivo em lote contendo este comando e o coloquei no caminho do meu perfil. Mas quando eu executo, recebo o seguinte:
M:\>ff.bat
The following usage of the path operator in batch-parameter
substitution is invalid: %~nF.mkv"
For valid formats type CALL /? or FOR /?
The syntax of the command is incorrect.
M:\>for F" -c:v libx265 -crf 28 -c:a copy "F" -c:v libx265 -crf 28 -c:a copy "%~nF.mkv"
Um problema com aspas, talvez?
Um problema com aspas, talvez?
Não. é um problema com
%
. Na linha de comando, use um único arquivo%
. Em um arquivo de lote, duplique-o%%
.Então use o seguinte:
Fonte: For - Comandos de loop - Windows CMD - SS64.com
Leitura adicional
Exatamente, você tem que usar sinais de porcentagem dupla em vez de simples. Certifique-se também de que o caminho do ffmpeg esteja no %path% variabel de você especificar o caminho inteiro para o programa ffmpeg ....