O exemplo mais básico é este:
ffmpeg -i input.avi -s 720x480 -c:a copy output.mkv
Usando o scale
filtro proporcionará mais flexibilidade:
ffmpeg -i input.avi -filter:v scale=720:-1 -c:a copy output.mkv
O -1
dirá a ffmpeg para escolher automaticamente a altura correcta em relação à largura fornecida para preservar a relação de aspecto. -1
também pode ser utilizado para a largura se se fornecer uma dada altura.
Uma desvantagem da escala quando se utiliza libx264
é que este codificador requer valores pares e a escala pode escolher automaticamente um valor ímpar resultando num erro: width or height not divisible by 2
. Pode dizer à escala para escolher um valor par para uma dada altura (720 neste exemplo):
scale="trunc(oh*a/2)*2:720"
…ou uma dada largura (1280 neste exemplo):
scale="1280:trunc(ow/a/2)*2"
Note que a sua construção ffmpeg poderia queixar-se de não reconhecer -c
ou -filter
opções. Também pode não suportar scale
. Nesse caso deve utilizar um ffmpeg mais recente, que pode descarregar como uma construção estática, ou compilar-se .