O que há de errado com isso .bat que excita o comando FFmpeg usando variáveis?

4

Eu quero criar um arquivo .bat para executar os comandos do FFmpeg. Funcionou bem até que decidi usar variáveis.

Aqui está

SET file=C:\[My Files\.01Movie\video879.mp4
SET folder=C:\[My Files\.01Movie\

ffmpeg -i "%file%" -vf "fps=1/60,scale=960:-2" "%folder%\out%04d.jpg"

Funcionou como esperado quando usei caminhos absolutos. Este é o trabalho

ffmpeg -i "C:\[My Files\.01Movie\video879.mp4" -vf "fps=1/60,scale=960:-2" "C:\[My Files\.01Movie\out%04d.jpg"
    
por user2132188 28.09.2016 / 23:20

2 respostas

3

MSDos não está realmente entendendo "% folder% \ out% 04d.jpg"

Porque ele vê essa variável:% pasta% \ out% em vez de% folder%. Se você escapar do% usando o caractere de escape: ^ ele deve funcionar corretamente.

Assim, seu arquivo batch se torna:

ffmpeg -i "%file%" -vf "fps=1/60,scale=960:-2" "%folder%\out^%04d.jpg"
    
por 28.09.2016 / 23:37
0

Aha, parece que ([) no meu caminho era o problema. Acontece que eu deveria escapar com \

    
por 28.09.2016 / 23:37