Quais são as diferenças entre os perfis H.264?

46

Eu estava renderizando um vídeo no After Effects CS5 e, quando eu estava formatando, escolhi o codec H.264 e, nesse formato, ele tinha um perfil com Baseline, Main e High.

Então eu fiz um pequeno teste - renderizando os dois arquivos com Baseline e High. A única coisa que notei foi que o tamanho do vídeo era menor, com o tamanho de arquivo menor.

Eu só queria saber qual é a diferença em qual seria a melhor qualidade e melhor para o tamanho do arquivo.

    
por James 17.10.2012 / 19:52

1 resposta

60

O que é um perfil?

Um perfil H.264 define mais ou menos o que "sinos e assobios" o codificador pode usar ao compactar seu vídeo - e há muitos recursos H.264 que o codificador pode habilitar. Quais deles é permitido habilitar é definido pelo perfil. Os perfis garantem a compatibilidade entre dispositivos que possuem diferentes capacidades de decodificação. Com os perfis, o codificador e o decodificador concordam com um conjunto de recursos que ambos podem manipular.

O que os diferentes perfis fazem?

Para uma lista detalhada, consulte Perfis H.264 na Wikipedia.

Geralmente, o perfil Baseline restringe o codificador apenas a determinados recursos básicos. Vídeos codificados com o perfil da linha de base podem ser facilmente reproduzidos, mesmo em dispositivos com menor poder computacional, como smartphones mais antigos. Os telefones Android e iOS, por exemplo, só reproduzem vídeo codificado com o perfil de linha de base, mas não Alto ou Principal . Isso mudou um pouco nos últimos anos, onde cada vez mais telefones podem reproduzir vídeos principais ou de alto perfil, mas ainda assim as recomendações oficiais não mencione isso .

Primarily for low-cost applications, this profile is most typically used in videoconferencing and mobile applications. It corresponds to the subset of features that are in common between the Baseline, Main, and High Profiles

Main e High apenas adicionam funcionalidades a isso. Especialmente o perfil alto é freqüentemente usado na transmissão:

The primary profile for broadcast and disc storage applications, particularly for high-definition television applications (for example, this is the profile adopted by the Blu-ray Disc storage format and the DVB HDTV broadcast service).

B fatias são, por exemplo, permitidas apenas no perfil Principal e acima. Eles podem ser usados para economizar largura de banda, mas são mais difíceis de decodificar, motivo pelo qual alguns dispositivos podem não suportá-los.

O que isso tem a ver com qualidade?

O perfil influencia apenas indiretamente a qualidade. Alguns recursos de perfis superiores podem permitir que você obtenha a mesma qualidade com tamanhos de arquivo menores em comparação a perfis inferiores.

Por exemplo, CABAC codificação entrópica ( Principal e Alta ) é mais eficiente do que CAVLC ( Linha de base ). Também é computacionalmente mais intensivo. Assim, se você conceder ao codificador uma determinada taxa de bits para gastar, ele poderá criar um vídeo de melhor qualidade com o CABAC do que com o CAVLC, pois ele obtém uma compactação muito melhor.

Isso também explica por que você alcançou tamanho de arquivo menor com o perfil Alto - obviamente, você define um nível de qualidade constante e o codificador pode usar técnicas de compactação mais avançadas para criar um arquivo de vídeo mesma qualidade do perfil Linha de base , mas com tamanho menor.

Então ... qual você deve usar?

Algumas regras básicas:

  • Perfil Linha de base se você estiver segmentando dispositivos móveis antigos
  • Principal ou Alto perfil se você estiver segmentando streaming da Web, armazenamento a longo prazo, PCs ou Macs, criação de Blu-ray, etc.
por 17.10.2012 / 20:20

Tags