Basicamente, assim:
ffmpeg -i in.mp4 out.swf
Este será o padrão para converter o vídeo para Sorenson Spark (H.263, ou conhecido como flv1
) e o áudio para MP3, usando qualquer codificador de MP3 que seu FFmpeg tenha - provavelmente libmp3lame
.
Se você precisar alterar a qualidade do vídeo, você tem duas opções:
-
adicione a opção
-qscale:v
após-i in.mp4
com um valor de 1 a 31, em que maior significa menor qualidade (tente com 2 ou 3 primeiro). Esta é uma configuração VBR. -
adicione a opção
-b:v
com uma taxa de bits, por exemplo1M
ou500K
. Esta é uma configuração de CBR, é claro, e pode resultar em menor qualidade visual por tamanho de arquivo.
Para áudio:
-
adicione a opção
-q:a
para VBR MP3, com valores entre 0 e 7, sendo 0 a melhor qualidade. -
adicione a opção
-b:a
para CBR MP3, por ex. com192K
.
Considere a conversão de seu vídeo para um contêiner FLV, que irá lidar com uma variedade maior de codecs do que o SWF (que suporta apenas H.263, VP6 ou Motion JPEG).
Isso permitiria o uso de vídeo H.264 e áudio AAC, que fornecem melhor qualidade em arquivos menores quando comparados à variante H.263 / MP3 em arquivos SWF. Você pode até mesmo ter a chance de copiar os fluxos de bits, o que significaria nenhuma redução de qualidade.
ffmpeg -i in.mp4 -c copy out.flv
Se isso não funcionar, codifique novamente:
ffmpeg -i in.mp4 -c:v libx264 -c:a aac -strict experimental -b:a 192K out.flv
Isso usaria o codificador x264. Para alterar a qualidade do vídeo aqui, você tem as seguintes opções:
-
adicione a opção
-crf
após-i in.mp4
com um valor entre 0 e 51, em que menor significa melhor qualidade. O padrão é 23 e os valores são de 18 a 28. -
adicione a opção
-b:v
, semelhante à acima para o modo de taxa de bits constante.
Veja o guia de codificação x264 no wiki do FFmpeg para mais informações.