Como alterar a resolução de um vídeo usando ffmpeg

Se você quer padronizar seus vídeos ou diversificá-lo para diferentes visualizações, veja como alterar a resolução de um vídeo usando ffmpeg.

Alterar a resolução de um arquivo de vídeo será uma das operações mais comuns que executaremos ao trabalhar com arquivos de vídeo e, como tal, o ffmpeg poderá fazê-lo perfeitamente.

Como alterar a resolução de um vídeo usando ffmpeg
Como alterar a resolução de um vídeo usando ffmpeg

Há várias razões pelas quais queremos alterar a resolução de um arquivo de vídeo, por exemplo:

  • Para reduzir o tamanho do vídeo. Isso é possível reduzindo a resolução do vídeo.Se tomarmos, por exemplo, um vídeo em HD (1920×1080 pixels), mas sabemos que nunca veremos em uma tela que suporta uma resolução mais alta do que 1024×768, podemos reduzir a resolução do vídeo para se adaptar a essa nova resolução, economizando bastante armazenamento espaço e, se usado na Internet, economizando largura de banda também.
  • Muitas vezes a resolução é alterada nos arquivos de vídeo para padronizar seu formato. Ou seja, se tivermos vários vídeos e quisermos todos na mesma resolução, teremos que passar por esse processo de alteração da resolução.

No desenvolvimento de sites modernos, é bastante útil ter os vídeos em várias resoluções, dependendo de onde eles aparecem. Podemos desenvolver sites com designs responsivos nos quais o vídeo mais adequado para o usuário é reproduzido.

Por exemplo, se tivermos um vídeo em vários formatos – digamos 1920×1080, 1280×720 e 640×360 – podemos projetar um site responsivo que faça com que os visitantes reproduzam a resolução de vídeo adequada, dependendo da largura de banda do navegador do visitante (lembre-se de que os usuários móveis geralmente pagam para dados transferidos, para que seja melhor transferir o mínimo de tráfego possível)

Enfim, para alterar a resolução de um vídeo usaremos o ffmpeg. Esse método é uma das melhores maneiras de redimensionar um arquivo de vídeo em sistemas Linux (quase qualquer distribuição) e uma excelente alternativa para usuários de Windows e Mac.

E se você ainda não tem o ffmpeg instalado, para instalar a versão mais recente do FFmpeg nas principais distribuições Linux, use um desses tutoriais:
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 alterar a resolução de um vídeo usando ffmpeg

Para alterar a resolução de um vídeo usando ffmpeg, primeiramente, abra um terminal.

Por exemplo, se tivermos um vídeo em vários formatos – digamos 1920×1080, 1280×720 e 640×360 – podemos projetar um site responsivo que faça com que os visitantes reproduzam a resolução de vídeo adequada, dependendo da largura de banda do navegador do visitante (lembre-se de que os usuários móveis geralmente pagam para dados transferidos, para que seja melhor transferir o mínimo de tráfego possível)

Neste exemplo, reduziremos a resolução de um vídeo no formato HD (1920×1080 pixels) para 640×360 (esta é uma configuração bastante usada para a proporção de aspecto 16: 9):

ffmpeg -i video_1920.mp4 -vf scale=640:360 video_640.mp4 -hide_banner

Só é necessário indicar o filtro de vídeo em escala com a nova resolução desejada (640:360) com -vf scale=640:360. Considerar:

Podemos indicar qualquer resolução que desejarmos, mas o vídeo resultante sempre terá a mesma proporção. Ou seja, não distorcerá as imagens; se o vídeo estiver na proporção de 16:9, manterá o vídeo na proporção de 16:9.

O programa ajustará o vídeo resultante para que ele caiba na resolução que fornecemos.

Ao alterar a resolução, o vídeo deve passar pelo processo de codificação outra vez, para que o processo seja lento, dependendo do formato de saída e do codec que você está usando para a saída.

Não mencionamos isso, mas na maioria das vezes não faz sentido transformar um vídeo em uma resolução mais alta, porque não pode haver nenhuma melhoria na qualidade do vídeo.

Alterando a proporção do vídeo com ffmpeg

Se quisermos mudar a aparência do vídeo, sabendo que a imagem aparecerá distorcida, podemos usar um filtro adicional “setdar”.

Imagine que, no caso anterior, queremos alterar a proporção de 16:9 para 4:3 e, portanto, o vídeo com uma resolução de proporção de 4:3, que neste caso será 640×480. O comando ffmpeg para fazer essa transformação seria:

ffmpeg -i video_1920.mp4 -vf scale=640:480,setdar=4:3 video_640x480.mp4 -hide_banner

A saída de vídeo obtida neste caso, video_640x480.mp4, altera a aparência do vídeo original e distorce um pouco as imagens, mas obtém a resolução que queremos com um novo visual.

Se, por outro lado, não queremos confiar no uso de uma proporção que possa ser “mais normal” (4:3, 16:9) ou se queremos fazer alterações em outras resoluções com uma proporção indefinida e estamos sem medo de possíveis deformações de imagens que aparecerão, podemos usar o filtro “setsar” que evitará que você tenha que manter essas proporções.

Dessa forma, podemos transformar o vídeo anterior em uma resolução de 200×400, por exemplo, com o seguinte comando:

ffmpeg -i video_1920.mp4 -vf scale=200:400,setsar=1:1 video_200x400.mp4 -hide_banner

O resultado na resolução 200×400 da resolução 1920×1080 faz com que a saída de vídeo tenha uma aparência distorcida.

Exemplos de modificar a resolução de um vídeo usando ffmpeg

Vamos ver alguns exemplos de redimensionamento de vídeo usando ffmpeg. Temos um vídeo original com uma resolução de 320×180 pixels.

Como vimos anteriormente, podemos redimensionar o vídeo para metade do tamanho original. Estamos redimensionando-o de uma resolução de 320×180 pixels para uma resolução de 160×90 pixels com o seguinte comando:

ffmpeg -i video_320x180.mp4 -vf scale=160:90 video_180x90.mp4 -hide_banner

O vídeo passou de um tamanho de 1,18 MB para um vídeo de 354 KB (um quarto). Observe que o vídeo é menor, mas podemos dizer ao navegador para aumentá-lo com alguma perda de qualidade em comparação com o original.

Agora vamos alterar a proporção original do vídeo de 16:9 para 4:3. Para fazer isso, estamos redimensionando o vídeo de 320×180 para 320×240 com o seguinte comando:

ffmpeg -i video_320x180.mp4 -vf scale=320:240,setdar=4:3 video_320x240.mp4 -hide_banner

E como resultado você poderá ver que as imagens aparecem distorcidas:

E agora, finalmente, redimensionaremos o vídeo como se ele coubesse em uma tela vertical, para redimensionar de 320×180 pixels para 180×320 pixels. Aqui está o comando que fará a tarefa:

ffmpeg -i video_320x180.mp4 -vf scale=180:320,setsar=1:1 video_180x320.mp4 -hide_banner

Observe que, nesses vídeos, também incluí uma fonte no formato webm para máxima compatibilidade. Eu fiz isso dessa maneira, se o seu navegador não puder trabalhar diretamente com arquivos mp4, você poderá ver os resultados em um arquivo webm semelhante.

Sobre o Edivaldo Brito

Edivaldo Brito é analista de sistemas, gestor de TI, blogueiro e também um grande fã de sistemas operacionais, banco de dados, software livre, redes, programação, dispositivos móveis e tudo mais que envolve tecnologia.

Deixe um comentário

Esse site utiliza o Akismet para reduzir spam. Aprenda como seus dados de comentários são processados.

Ads Blocker Image Powered by Code Help Pro

Bloqueador de anúncios detectado!!!

Nosso site precisa de publicidade para existir. Por favor, insira-o na lista de permissões/lista branca para liberar a exibição de anúncios e apoiar nosso site. Nosso conteúdo é GRATUITO, e tudo o que pedimos é isso!
Powered By
Best Wordpress Adblock Detecting Plugin | CHP Adblock