H.264 vs. VP8
H.264 vs. VP8
Para a comparação entre estes dois formatos é essencial seguir os critérios deixados como guia pelos editores da norma HTML5:
•Eficiência do formato - relação entre a qualidade de imagem, factor de compressão e utilização de processador.
•Implementação em hardware de descodificadores.
•Cobertura de royalties.
Como Comparar Os Formatos?
Desde o princípio do desenvolvimento do standard HTML5 que a tag <video> tem gerado imensa controvérsia quanto ao formato de vídeo a utilizar: derivado de Ogg Theora ou H.264. Várias empresas apoiam um ou o outro formato, e o formato adoptado acabará, provavelmente, por ser utilizado universalmente. Assim sendo, esta escolha é de enorme importância.
Começamos por comparar a eficiência dos descodificadores. Estes são mais importantes neste âmbito de aplicação: a codificação é geralmente feita uma única vez, muitas vezes por um servidor com recursos de processamento muito superiores aos dos dispositivos que vão reproduzir o conteúdo, enquanto que a descodificação é feita em cada dispositivo para o qual é feita a transferência do ficheiro de vídeo em questão, dispositivos estes que podem ter recursos de processamento reduzidos. No entanto, chega-se a uma conclusão ambígua: embora neste momento a descodificação por software de ficheiros codificados no formato H.264 seja ligeiramente mais eficiente do que para ficheiros codificados com o formato VP8, o descodificador VP8 ainda está num processo de maturação, acelerada pela compra da On2 pela Google [21]. Dado que as diferenças actuais entre os dois não são extremamente significativas não é possível estabelecer uma vantagem concreta a favor de nenhum dos dois formatos.
Figura 3 - Evolução da carga por núcleo de processamento com a evolução da implementação das bibliotecas de descodificação do formato VP8 [21].
Em termos de codificação, no entanto, há uma grande diferença entre os dois, como se pode observar na Fig. 4, abaixo:
Figura 4 - Tempos médios de codificação de vários vídeos com os formatos H.264 e VP8 [16].
Há diferenças mais do que óbvias entre os tempos de codificação em ambos os formatos, e neste campo o formato VP8 está, claramente, em desvantagem. Mais uma vez, os codificadores disponíveis para VP8 estão ainda em maturação, sendo que ainda não apresentam sequer capacidade de utilizar processadores multi-core, embora mesmo comparando a codificação H.264 forçando a utilização de apenas um núcleo de processamento com a codificação VP8 esta última continue a ter uma performance inferior [22].
Em termos de qualidade de imagem subjectiva ambos os formatos estão demasiado próximos para declarar uma vantagem óbvia para um dos dois [20].
Eficiência dos Formatos
Neste ponto, há clara vantagem para o formato H.264. Tanto em termos de codificadores como descodificadores por hardware há uma base implementada muito grande, havendo mesmo chips codificadores/descodificadores H.264 capazes de resoluções até 1080p disponíveis desde 2007 [23]. Muitos dispositivos móveis possuem capacidade de descodificar H.264 por hardware - o chip NVIDIA Tegra 2, um dos SoC mais utilizados pela nova geração de smartphones Android é mesmo capaz de codificar vídeo H.264 Full HD (1080p) e descodificar vídeo codificado em H.264 Baselina profile com bit-rates até 20 Mbps [24]. Isto mostra uma taxa de integração muito grande
A implementação de VP8 em hardware está ainda muito longe disto - neste momento não há ainda nenhum chip disponível capaz de fazer a descodificação por hardware de vídeo codificado em formato VP8. A Google apresentou recentemente uma implementação em hardware de um descodificador VP8 denominado H1 Anthill, mas esta ainda não se encontra integrada em nenhum produto final. Além disso, a qualidade obtida com esta implementação é ainda algo inferior à obtida utilizando a última versão do descodificador por software [21]. Este problema não está presente nos descodificadores por hardware para H.264, que se encontram já num estado de maturação superior.
Implementações em hardware dE descodificadores
Ambos os formatos começaram por ter royalties associadas. No entanto o H.264 começou logo como um standard aberto, embora de utilização não-livre. O VP8 começou como um formato fechado, cuja única implementação pertencia à empresa que o criou, a On2. O H.264 acabou por conquistar aceitação e utilização extensivas, o que levou a MPEG LA, que gere a patent pool referente ao H.264, a tornar a distribuição de vídeo grátis online em H.264 livre de royalties até 2015 [25]. Pouco tempo depois, a Google tornou publico o formato WebM. Este foi lançado numa licença similar a BSD, completamente livre de royalties [26]. Em resposta a isto, a MPEG-LA tornou a distribuição de vídeo grátis em H.264 online livre de royalties para sempre. Isto, tecnicamente, colocaria os dois formatos em pé de igualdade em termos de liberdade de utilização.
No entanto, há um problema que tem de ser pensado: embora o H.264 já seja utilizado há muito tempo e de forma bastante extensa, o VP8 era um formato relativamente pouco utilizado e as suas características não eram públicas. Por isso mesmo, pode haver patentes pendentes, na posse de empresas que estejam à espera pela adopção extensa do formato para exigir o pagamento de royalties para utilização das mesmas. No caso do H.264, a haver empresas a possuir patentes relacionadas com o formato estas já teriam exigido o pagamento de royalties, devido à grande base de utilização actual do formato.
Cobertura de royalties