Cópia em fluxo (re-mux)
Você pode copiar o fluxo em vez de codificar. Pense nisso como copiar e colar. Seu comando seria então:
ffmpeg -i input.mp4 -vf scale=640x360,setdar=16:9 -c:v libx264 \
-preset veryslow -profile:v main -crf 18 -c:a copy output.mp4
Como o áudio está sendo copiado, não haverá perda de qualidade e será rápido porque não há codificação.
Codificar
Às vezes, você não consegue transmitir a cópia porque o formato de saída pode não suportar o formato da entrada, portanto, a codificação é necessária.
Como você está enviando para o MP4, mencionarei apenas a codificação de áudio AAC. ffmpeg
pode suportar vários codificadores de áudio AAC, mas apenas dois são dignos de menção:
libfdk_aac
Este é o melhor codificador suportado por ffmpeg
, mas sua licença não é compatível com o GPL, resultando em muito poucas compilações (se houver) distribuídas com suporte para este codificador. No entanto, você pode seguir o guia para compilar ffmpeg
com suporte para este codificador.
ffmpeg -i input -c:a libfdk_aac -vbr 5 output.mp4
aac
O codificador FFmpeg AAC nativo está disponível em todas as compilações. É considerado experimental, mas com bits suficientes, deve soar bem na maioria dos casos.
ffmpeg -i input -c:a aac -strict experimental -b:a 192k output.mp4