O problema
O filtro de escala em ffmpeg
pode ser fornecido apenas uma dimensão e pode calcular automaticamente a dimensão não declarada se você usar -1
como um valor, como -vf scale=640:-1
, mas isso pode ser um número ímpar .
ffmpeg
usa libx264 para codificar o vídeo H.264. Este codificador requer mod2 para largura e altura para subamostragem de croma 4: 2: 0; o que significa que a largura e a altura devem ser divisíveis por 2.
A solução
Use -2
. Será:
-
Calcule automaticamente o valor correto em relação à dimensão declarada enquanto preserva a proporção.
-
Torne a saída divisível por 2. Ela ajustará a saída, se necessário.
Exemplo
ffmpeg -i input.avi -vf scale=-2:480 output.mp4