Se você quer levar seus vídeos para a web e deixá-los menores, veja como converter vídeos para o formato WEBM usando o ffmpeg.
Como o formato mp4, o webm é um formato de contêiner em si, para que ele possa conter fluxos processados com codificadores diferentes. Usaremos a libvpx para produzir fluxos de vídeo no codec vp8 e libvorbis para os fluxos de áudio.
Este formato é com o formato mp4 um formato amplamente adotado e suportado. Esses dois formatos juntos são comumente usados em sites de vídeo pela Internet para veicular vídeos usando tags de vídeo HTML5.
Sim. Esses dois formatos juntos são usados em muitos sites da Internet para veicular vídeo HTML5, porque ambos oferecem compatibilidade máxima (enquanto os formatos mp4 podem ser reproduzidos em dispositivos com iOS e nas versões modernas do Internet Explorer, os vídeos webm podem ser reproduzidos no chrome e no firefox navegadores).
Entretanto, o processo de codificação Webm é muito mais lento que o processo de codificação mp4 com libx264 e Webm é melhor na proporção qualidade-compactação do que mp4 com libx264.
Mas com Webm, você pode ter um vídeo de alta qualidade em menos espaço. Portanto, se você deseja armazenar vídeos e o tamanho do vídeo é um problema, considere esse formato.
Neste artigo, mostrarei como converter qualquer vídeo para o formato webm usando libvpx com codec vp8 para vídeo usando o ffmpeg.
Esse é um dos melhores métodos para converter vídeo em formato webm em sistemas Linux (quase qualquer distribuição) e também é um excelente método em ambientes Windows e Mac.
Ainda não tem o ffmpeg instalado? Para instalar a versão mais recente do FFmpeg nas principais distribuições Linux, use esse tutorial:
Como instalar o framework multimídia FFmpeg no Linux via Snap
Como instalar a versão mais recente do FFmpeg no Linux Debian, Ubuntu e Fedora
Como codificar vídeo H.265 usando FFmpeg no Linux (4K e 8K)
Como converter vídeos para o formato WEBM usando o ffmpeg
Para converter vídeos para o formato WEBM usando o ffmpeg, , primeiramente, abra um terminal.
Para converter um arquivo de vídeo exemplo.mp4 para o formato webm, podemos usar o seguinte comando:
ffmpeg -i exemplo.mp4 -f webm -c:v libvpx -b:v 1M -acodec libvorbis exemplo.webm -hide_banner
Nesse exemplo, estamos usando os parâmetros:
- -f webm faz com que o ffmpeg produza um arquivo de saída no formato webm.
- -c:v libvpx com este parâmetro que estamos especificando para usar o codificador libvpx para vídeo. Este codificador produzirá um fluxo no formato de codec vp8, que é o codec que queremos.
- -acodec libvorbis com este parâmetro que estamos especificando para usar o codificador libvorbis para fluxos de áudio.
- -b:v 1M com esse parâmetro, estamos dizendo ao ffmpeg para tentar obter uma taxa de bits de 1Mb para o arquivo de saída. Esta é uma grande diferença com a codificação mp4. Devemos especificar a taxa de bits variável que queremos alcançar. Podemos aviodar esse parâmetro, mas os resultados serão muito ruins (por padrão, o codificador diminui muito a qualidade). Existe uma opção crf na documentação do codificador que deve funcionar como na codificação mp4-h264, mas na minha experiência pessoal esse parâmetro simplesmente não funciona, por isso devemos usar a opção bitrate.
-hide_banner como de costume com este parâmetro, ocultamos certas informações sobre a compilação do ffmpeg.
A necessidade de usar uma taxa de bits variável é muito grande, pois existe uma boa opção de início para qualquer vídeo. Devemos considerar a resolução do vídeo, a taxa de quadros e também o tipo de vídeo.
E como é possível ver, com as instruções que vimos neste artigo, podemos converter qualquer vídeo para o formato webm.