Como posso recodificar o vídeo H.264 com perda mínima de qualidade?

18

Eu tenho muitos arquivos MPEG-TS (contêiner .TS mas vídeo H.264) e a reprodução está bem, exceto que quando você pula para frente / trás ou para frente, fica muito lento e fica pixelado, etc.

Estou tentando fazer uma pesquisa e acredito que eles estavam codificando com pouquíssimos blocos de referência (ou seja, é uma captura de um fluxo de satélite DVB-S).

Quando os re-codifico com Handbrake (contêiner .MP4) eles tocam muito, muito bons e a busca no vídeo é instantânea, etc, etc.

É possível transcodificar / recodificar meus arquivos MPEG-TS com perda mínima de qualidade? Se sim, qual é a minha melhor aposta? Cada um deles tem cerca de 2 Mbps (ou seja, 2 GB por hora), mas eu não quero recodificá-los se a "perda mínima de qualidade" exigir 10 GB por arquivo. Espero que o vídeo seja do mesmo tamanho.

Alguém pode me dar algum conselho?

    
por SofaKng 19.06.2012 / 03:30

3 respostas

21

É possivelmente um problema de contêiner, copiando-o para um novo formato de contêiner com

avconv -i input.ts -c copy output.mp4

pode corrigir seu problema. Isso será 100% sem perdas. Se isso não funcionar, um crf de 18 é normalmente considerado 'visualmente sem perdas'; você pode definir isso é HandBrake (na aba 'video'), ou com avconv:

avconv -i input.ts -c:a copy -c:v libx264 -crf 18 -preset veryfast output.mp4

As predefinições são: ultra rápidas, super rápidas, muito velozes, rápidas, rápidas, médias, lentas, lentas, muito lentas. Quanto mais lenta a predefinição, menor o arquivo (mas com um aumento no tempo de codificação). Em minha experiência pessoal, descobri que o maior declínio em termos de tamanho de arquivo é entre super rápido e muito rápido, depois disso parece ser muito mais incremental.

NOTA: Se você quiser, o ffmpeg pode fazer tudo o que o avconv pode fazer, com uma sintaxe idêntica (simplesmente substitua todas as instâncias do avconv pelo ffmpeg).

FOOTNOTE: Você pode encontrar o este guia de codificação ffmpeg x264, útil para obter mais informações.

    
por 18.12.2012 / 05:20
7

Sem entrar nos detalhes da codificação de vídeo: Não há algo como "perda mínima de qualidade" quando a restrição é um codec de vídeo específico (h.264) ou uma determinada taxa de bits. Um fator limitante sempre estará lá - se houvesse uma maneira de conservar ainda mais qualidade, seria o santo graal da codificação de vídeo, por assim dizer.

Existe apenas um codificador como o x264 pode fazer - o seu botão principal de "controle" será a configuração do fator de taxa constante, que de alguma forma atua como um fator de "qualidade constante". Além disso, há limitações técnicas quanto à taxa de bits que pode ser salva enquanto se recodifica e mantém a mesma qualidade visual / experiente com um codificador específico.

Naturalmente, você obterá resultados diferentes para, digamos, XviD (um simples codificador MPEG 4 Part II) e x264, o codificador h.264 mais avançado de hoje. E então você também pode tentar comprar o codificador Mainconcept h.264 e ver se usá-lo resulta em melhor qualidade com a mesma taxa de bits média.

Na codificação de vídeo, você terá que executar algumas tentativas de qualquer maneira, pois isso também depende do material de origem. Um jogo de futebol será mais difícil de codificar do que uma rodada de sinuca. Existem algumas opções no x264 que permitem o ajuste de certos tipos, por exemplo filmes, com a opção -tune film no FFmpeg, por exemplo, mas a diferença pode ser mínima.

Para exemplos e mais informações, consulte FFmpeg: A melhor ferramenta de manipulação de vídeo e áudio .

    
por 19.06.2012 / 05:59
1

Para os meus raios blu Se eu codificar arquivos MPEG-TS eu uso travão de mão alto perfil e use a guia avançado com essas configurações: RF 20

b-adapt=2:rc-lookahead=60:bframes=8:direct=auto:trellis=2:ref=16:subq=10:me=umh:merange=24:analyse=all

Demora um tempo para codificar, mas a qualidade é difícil de distinguir de um raio azul.

Se seu objetivo for o mesmo tamanho , isso não acontecerá, pois é um codec / compactação diferente. O tamanho e a qualidade do arquivo não são a mesma coisa.

    
por 14.03.2013 / 09:19