Observação: essa resposta foi bastante editada desde a postagem original. É 2017 agora; o streaming funciona de maneira diferente do que costumava ser. Este guia pressupõe o download progressivo simples de um fluxo de vídeo em uma determinada resolução - sem transmissão adaptativa.
Requisitos
Em primeiro lugar, certifique-se de fazer o download de uma versão ffmpeg
recente (faça o download de uma versão estática; não ligue para apt-get install ffmpeg
ou similar). Idealmente, compile você mesmo . Não demora muito tempo.
Para gerar vídeos suportados pela maioria dos navegadores, verifique sempre a mais recente tabela de compatibilidade . Não há codec / formato único que funcione em todos os navegadores, mas se você gerar H.264 em MP4 e VP9 no WebM, com o respectivo codec de áudio, terá suporte para o Chrome, Firefox, Safari e algumas versões do IE.
WebM (VP9 / Vorbis)
Siga as recomendações do Guia do FFmpeg VP9 e use uma abordagem de codificação de duas passagens com restrições de taxa:
ffmpeg -y -i input-c:v libvpx-vp9 -b:v 2000k -minrate 500k -maxrate 2500k -c:a libvorbis -pass 1 -f webm /dev/null && \
ffmpeg -i input-c:v libvpx-vp9 -b:v 2000k -minrate 500k -maxrate 2500k -c:a libvorbis -pass 2 output.webm
A taxa de bits de destino depende da sua resolução, taxa de quadros, tipo de conteúdo e qualidade desejada. 2,5 MBit / s deve ser um bom compromisso para vídeo HD a 30 fps. Consulte este guia do Google para obter algumas recomendações.
MP4 (H.264 / AAC)
Siga as recomendações no Guia FFmpeg H.264 e use uma abordagem de codificação de duas passagens com restrições de taxa:
ffmpeg -y -i input -c:v libx264 -b:v 5000k -minrate 1000k -maxrate 8000k -pass 1 -c:a aac -f mp4 /dev/null && \
ffmpeg -i input -c:v libx264 -b:v 5000k -minrate 1000k -maxrate 8000k -pass 2 -c:a aac -movflags faststart output.mp4
Aqui, a taxa de bits de destino deve ser cerca de 50% maior que a do vídeo VP9, já que o H.264 não é tão eficiente. Adicione a opção -movflags faststart
ao segundo passe para acelerar o carregamento inicial do vídeo.
Para definir opções de áudio, consulte o Guia de codificação AAC .