Como mudar o codec de um vídeo para H.264 sem perder qualidade e sem ficar absurdamente pesado

:wave: Olá pessoal, eu tenho um video em MKV que tem uns 400mb mas o codec é H.265, e eu quero por como H.264 mas quando tentei pelo ffmpeg a qualidade caiu muito, então instalei o handbrake, e só mudei o codec para H.264 e coloquei tudo para não perder qualidade, mas o arquivo ficou 6,5GB e eu só mudei o codec, tem alguma configuração para trocar o codec do vídeo no handbrake sem perder qualidade e nem ficar mega pesado?

Desde já, agradeço. :clap:

Recomendo pegar algum trecho desse vídeo (em especial um que tenha bastante movimento de partículas pequenas, como neve, poeira, confete, etc.) e experimentar com a opção -qp do ffmpeg. Quanto menor o valor, maior o vídeo mas maior a qualidade. A pior qualidade possível é o valor 51.

A wiki do FFMPEG recomenda os valores 17/18, apesar de eu pessoalmente achar valores até 30 ainda aceitáveis.

Depois de achar o valor que preferir, recodifique o vídeo com ffmpeg -i video.mkv -c:v libx264 -qp 28 video.mp4.

Ainda assim, o que você quer é meio que fundamentalmente impossível, o H.265 é a geração seguinte do H.264 e, salvo se quem fez seu MKV não escolheu as melhores opções para o codificador, o arquivo H.264 será maior se você não aceitar perda de qualidade.

1 curtida

Entendo, mas o valor realmente aumenta esse tanto, tipo, 4x mais?

Estou convertendo para H.264 porque tem melhor compatibilidade com o jellyfin, e todos os vídeos que não são H.264 ficam muito lentos.

Se você codificar para não perder qualidade, sim, basta olhar a diferença de tamanho entre um JPEG e um PNG com a mesma imagem.

A meta aqui não é usar opções que conservem a qualidade e mantenham o tamanho, mas perder o máximo de qualidade que ainda dá um arquivo “razoável” (que é pessoal, por isso indico testar).

1 curtida