FFmpeg: Devo dimensionar o vídeo antes da codificação

0

Atualmente, estou codificando minha coleção de DVDs por conveniência.

Antes de codificar este título específico do DVD, fiz algumas amostras e, quando as reproduzi na TV, notei que os vídeos upscaled (com ffmpeg) são melhores do que o VOB original (ampliado pela TV).

Presumo que seja porque o media player da TV aplica um escalonamento menos eficiente comparado ao filtro de escala do ffmpeg.

Eu não sei se será sempre assim, então decidi manter a escala original por enquanto.

Talvez no futuro eu acabe escalando o vídeo codificado (x264, mp4), estou perdendo qualidade fazendo isso? Devo aplicar o filtro de escala enquanto codifico o VOB para MP4 ou o dimensionamento do MP4 dará a mesma qualidade?

Enquanto assistia as amostras, não vi diferença, mas talvez eu esteja perdendo alguma coisa, já que comparar vídeos é muito difícil.

    
por iznav 11.03.2017 / 05:08

1 resposta

0

Maybe in the future I'll end up scaling the encoded (x264, mp4) video, am I losing quality doing this?

O escalonamento é uma operação destrutiva que altera o fluxo de bits do vídeo. Quando você aplica um filtro de escala, não tem outra alternativa senão recodificar seu vídeo. Ao recodificar, você pode naturalmente comprimir seu vídeo sem perda para manter a qualidade, mas normalmente usará um codificador com perdas (como x264 ou x265) para economizar espaço e garantir compatibilidade com diferentes dispositivos de reprodução (nem todas as TVs funcionarão sem perdas vídeo).

Se decidir escalar mais tarde, basicamente, você compactará duas vezes um vídeo já compactado, ou seja:

  1. VOB original (já codificado para caber no DVD)
  2. Codifique com libx264
  3. Escale e re-codifique com libx264

Então, você precisa ter certeza de que a saída da segunda etapa é boa o suficiente para "sobreviver" a outra etapa de compactação mais tarde.

Should I apply the scale filter while encoding the VOB to MP4 or scaling the MP4 will give the same quality?

Você tem duas opções:

  1. Amplie seus vídeos enquanto os codifica novamente a partir dos VOBs originais. Isso economizará tempo e você evitará outra etapa de codificação. Certifique-se de que, para sua codificação de duas passagens, você escolha uma taxa de bits adequada para a saída. Por exemplo, ao dimensionar para 1080p ou 720p, escolha as taxas de bits em torno de 8 a 10 MBit / s ou 3 a 5 MBit / s, respectivamente.

  2. Escale seus vídeos mais tarde. Aqui, você pode perder qualidade devido à perda de geração , já que você está codificando duas vezes. Se esse é o seu plano, certifique-se de que - pelo menos para a primeira etapa de codificação - escolha uma taxa de bits suficientemente alta ou um fator de qualidade constante baixo o suficiente para a saída. Por exemplo, o seu primeiro processo de codificação (sem escala) (de VOB para MP4) poderia usar um one-pass definindo com -crf 16 . Isso garante uma saída quase sem perda de impressões visuais.

por 13.03.2017 / 10:47