Estou tendo problemas com a conversão de um FLV para um MP4 que será reproduzido no iPhone / iPad via Video-js.
Parece que os comandos ffmpeg não estão sendo convertidos corretamente.
Aqui está um dos comandos originais que o software, cumulusclips, está executando na conversão:
/usr/bin/ffmpeg -i /var/www/html/cumulus/cc-content/uploads/temp/M2q9rmYjSkElrCJA34Cr.avi -s 640x480 -vb 800k -ac 2 -ab 96k -ar 44100 -f flv /var/www/html/cumulus/cc-content/uploads/flv/M2q9rmYjSkElrCJA34Cr.flv
Saída semelhante à seguinte:
Input #0, avi, from '/var/www/html/cumulus/cc-content/uploads/temp/M2q9rmYjSkElrCJA34Cr.avi':
Metadata:
ISFT : MEncoder 2:1.0~rc2-0ubuntu13
Duration: 00:09:56.45, start: 0.000000, bitrate: 9586 kb/s
Stream #0.0: Video: msmpeg4v2, yuv420p, 1920x1080, 24 tbr, 24 tbn, 24 tbc
Stream #0.1: Audio: mp3, 48000 Hz, 2 channels, s16, 160 kb/s
Output #0, flv, to '/var/www/html/cumulus/cc-content/uploads/flv/M2q9rmYjSkElrCJA34Cr.flv':
Metadata:
encoder : Lavf52.64.2
Stream #0.0: Video: flv, yuv420p, 640x480, q=2-31, 800 kb/s, 1k tbn, 24 tbc
Stream #0.1: Audio: libmp3lame, 44100 Hz, 2 channels, s16, 96 kb/s
Stream mapping:
Stream #0.0 -> #0.0
Stream #0.1 -> #0.1
Depois disso, ele está executando o seguinte para dispositivos móveis:
/usr/bin/ffmpeg -i /var/www/html/cumulus/cc-content/uploads/temp/M2q9rmYjSkElrCJA34Cr.avi -s 480x360 -vb 600k -ac 2 -ab 96k -ar 44 100 -f mp4 /var/www/html/cumulus/cc-content/uploads/mobile/M2q9rmYjSkElrCJA34Cr_temp.mp4
Resultado:
Input #0, avi, from '/var/www/html/cumulus/cc-content/uploads/temp/M2q9rmYjSkElrCJA34Cr.avi':
Metadata:
ISFT : MEncoder 2:1.0~rc2-0ubuntu13
Duration: 00:09:56.45, start: 0.000000, bitrate: 9586 kb/s
Stream #0.0: Video: msmpeg4v2, yuv420p, 1920x1080, 24 tbr, 24 tbn, 24 tbc
Stream #0.1: Audio: mp3, 48000 Hz, 2 channels, s16, 160 kb/s
Output #0, mp4, to '/var/www/html/cumulus/cc-content/uploads/mobile/M2q9rmYjSkElrCJA34Cr_temp.mp4':
Metadata:
encoder : Lavf52.64.2
Stream #0.0: Video: mpeg4, yuv420p, 480x360, q=2-31, 600 kb/s, 24 tbn, 24 tbc
Stream #0.1: Audio: libfaac, 44100 Hz, 2 channels, s16, 96 kb/s
audio
video
ffmpeg
video-conversion
billabongrob
fonte
fonte
Ctrl-K
. Além disso, você precisa nos dizer o que quer dizer com "não está funcionando corretamente". Tenho certeza de que vejo o problema, mas nem sempre pode ser tão óbvio.Respostas:
Estou bastante certo de que a versão ffmpeg que você está usando está bastante desatualizada. Faça o download de uma compilação estática para o seu sistema na página inicial oficial e use o caminho para o novo em
ffmpeg
vez do antigo/usr/bin/ffmpeg
.Por exemplo, se você baixou sua construção estática, pode colocá-la em
/usr/local/bin/ffmpeg
, executável (chmod ugo+x /usr/local/bin/ffmpeg
) e usá-la.Em seguida, você deseja que um comando como este converta um vídeo em um MP4 pronto para HTML5 e reproduzível em todos os tipos de dispositivos móveis:
Varie o CRF dependendo da qualidade desejada (18–28 é uma boa faixa, menor significa melhor) ou escolha
-b:v 2M
uma codificação de taxa de bits fixa a 2 MBit / s, por exemplo.A conversão original estava usando o vídeo MPEG-4 Parte 2 em vez do MPEG-4 Parte 10, que deve ser suportado por dispositivos móveis, mas não necessariamente precisa. É mais seguro assim.
Além disso, atualmente, você realmente não precisa criar vídeos FLV. Não conheço nenhum dispositivo ou tecnologia de reprodução que exija esse formato (um pouco antigo).
Você também pode se interessar por: De que monte de scripts ffmpeg eu preciso para obter o "Vídeo para todos" compatível com HTML5?
fonte