H.264

H.264 , ou MPEG-4 AVC ( Advanced Video Coding ), ou MPEG-4 Parte 10 , é um padrão de codificação de vídeo desenvolvido em conjunto pelo ITU-T Q.6 / SG16 Video Coding Experts Group (VCEG), bem como pelo ISO / IEC Moving Picture Experts Group ( MPEG ) e é o produto de um esforço de parceria conhecido como Joint Video Team (JVT). O padrão ITU-T H.264 e o padrão ISO / IEC MPEG-4 Parte 10 (ISO / IEC 14496-10) são tecnicamente idênticos, e a tecnologia usada também é conhecida como AVC , para Advanced Video Coding. A primeira versão do padrão foi aprovada emMaio de 2003 e a data mais recente deabril de 2012.

A JVT então trabalhou no conceito de extensibilidade desenvolvendo uma extensão para o padrão H.264 (apêndice G): as especificações de codificação de vídeo escalável (SVC) e, em seguida, para o padrão HEVC ( codificação de vídeo de alta eficiência ).

Histórico

O nome H.264 vem da família H.26x de padrões de vídeo definidos pelo ITU-T . No entanto, este codec foi desenvolvido no âmbito do MPEG , o ITU-T ficou satisfeito em adotá-lo e editá-lo dentro dele. No âmbito do MPEG, a sigla AVC (Advanced Video Coding) foi escolhida por analogia com o codec de áudio AAC MPEG-2 parte 7 que recebeu esse nome para diferenciá-lo do codec de áudio MPEG-2 parte 3 (o famoso MP3 ) O padrão é geralmente referido como H.264 / AVC (ou AVC / H.264, H.264 / MPEG-4 AVC ou MPEG-4 / H.264 AVC) para enfatizar a herança comum. O nome H.26L, lembrando sua ligação com ITU-T, é muito menos comum, mas ainda é usado. Ocasionalmente, ele também é conhecido como “o codec JVT”, em referência à organização JVT (Joint Video Team) que o desenvolveu. Há precedentes no desenvolvimento de um padrão de codificação de vídeo comum entre MPEG e ITU-T com MPEG-2 e H.262 sendo o mesmo.

Objetivos e aplicações

Originalmente, o ITU-T lançou o projeto H.26L em 1998 com o objetivo de criar uma nova arquitetura de codec destinada a aumentar a eficiência da codificação em uma proporção de pelo menos 2 em comparação com os padrões. Sistemas existentes ( MPEG-2 , H.263 e MPEG-4 Parte 2). Outro objetivo era criar uma interface simples para poder adaptar o codec a diferentes protocolos de transporte (comutação de pacotes e circuitos). O codec foi desenvolvido garantindo que seria transponível para plataformas a um custo razoável, ou seja, levando em consideração o progresso feito pela indústria de semicondutores em termos de design e processos.

Em 2001 , o projeto H.26L atingiu seus objetivos de taxa de compressão, conforme demonstrado por testes subjetivos realizados pela MPEG. Foi nesta altura que a ITU-T e a MPEG decidiram de comum acordo criar a Joint Video Team (JVT) com o objectivo de uniformizar o codec em conjunto e adaptá-lo às diferentes necessidades da indústria (videofone, streaming, televisão, Móvel). Na verdade, as aplicações tradicionalmente visadas pelo ITU-T dizem respeito a baixas taxas de bits (videofone, móvel), aplicações para as quais o H.26L foi otimizado, enquanto os membros do MPEG queriam adaptá-lo a outros formatos (televisão, HD). Ferramentas de algoritmo, como suporte de entrelaçamento, foram adicionadas e a redução da complexidade foi alcançada.

O codec H.264 / AVC é, portanto, adequado para uma grande variedade de redes e sistemas (por exemplo, para transmissão de televisão , armazenamento em HD DVD e Blu-ray , streaming RTP / IP e telefonia específica para o ITU-T ).

Seguindo a primeira versão do padrão, a JVT desenvolveu algumas extensões, conhecidas como Fidelity Range Extensions (FRExt). Essas extensões são destinadas a suportar maior precisão de quantização (adição de codificações de 10 e 12 bits) e melhor definição de crominância (adição de estruturas de quantização YUV 4: 2: 2 e YUV 4: 4.: 4) e visam aplicações profissionais (Studio). Vários outros recursos também foram adotados para melhorar a qualidade subjetiva em alta definição (adição de uma transformada 8 × 8 além da transformada 4 × 4 existente, adição de matrizes de quantização) ou para necessidades específicas (codificação sem perdas, suporte para outra cor espaços). O trabalho de design nas extensões de alcance Fidelity foi finalizado emJulho de 2004, e congelado em Setembro de 2004.

Desde o final do desenvolvimento da versão original do padrão em Maio de 2003, o JVT publicou 4 versões aprovadas pelo ITU-T e MPEG, correspondendo ao acréscimo do FRExt e correções.

Especificações detalhadas

H.264 / AVC (MPEG-4 Parte 10) inclui muitas técnicas novas que permitem compactar vídeos com muito mais eficiência do que os padrões anteriores ( H.261 , MPEG-1 , MPEG-2 , MPEG-4 Parte 2 / ASP ) e fornece mais flexibilidade para aplicativos em uma variedade de ambientes de rede. Esses recursos principais incluem:

Essas técnicas, junto com várias outras, ajudam o H.264 a exceder significativamente os padrões anteriores, em uma ampla variedade de circunstâncias e em uma ampla variedade de ambientes de aplicativos. O H.264 pode frequentemente ter um desempenho significativamente melhor do que o vídeo MPEG-2 , alcançando a mesma qualidade com uma taxa de bits reduzida à metade ou até mais.

Como muitos outros padrões de vídeo no grupo ISO / IEC MPEG, o H.264 / AVC tem um aplicativo de software de referência, que pode ser baixado gratuitamente (consulte a seção Links externos abaixo).

O objetivo principal desta aplicação é dar exemplos das diferentes possibilidades do H.264 / AVC, ao invés de fornecer um produto realmente utilizável e poderoso.

Um aplicativo de hardware de referência também está sendo padronizado pelo grupo MPEG.

Perfis

O padrão inclui os seguintes seis conjuntos de características, que são chamados de perfis , cada um visando uma classe específica de aplicativos:

Linha de base Mão Estendido Alto High 10 Alta 4: 2: 2 Alta 4: 4: 4
Fatias I e P sim sim sim sim sim sim sim sim sim sim sim sim sim sim
fatias B Não Não sim sim sim sim sim sim sim sim sim sim sim sim
Fatias SI e SP Não Não Não Não sim sim Não Não Não Não Não Não Não Não
Imagem de referências múltiplas sim sim sim sim sim sim sim sim sim sim sim sim sim sim
Filtro de bloco sim sim sim sim sim sim sim sim sim sim sim sim sim sim
Codificação CAVLC sim sim sim sim sim sim sim sim sim sim sim sim sim sim
Codificação CABAC Não Não sim sim Não Não sim sim sim sim sim sim sim sim
agendamento de macrobloco flexível (FMO) sim sim Não Não sim sim Não Não Não Não Não Não Não Não
Arbitrary Slice Scheduling (ASO) sim sim Não Não sim sim Não Não Não Não Não Não Não Não
fatias redundantes (RS) sim sim Não Não sim sim Não Não Não Não Não Não Não Não
particionamento de dados (DP) Não Não Não Não sim sim Não Não Não Não Não Não Não Não
codificação entrelaçada (PicAFF, MBAFF) Não Não sim sim sim sim sim sim sim sim sim sim sim sim
Formato 4: 2: 0 sim sim sim sim sim sim sim sim sim sim sim sim sim sim
formato monocromático (4: 0: 0) Não Não Não Não Não Não sim sim sim sim sim sim sim sim
Proporção de 4: 2: 2 Não Não Não Não Não Não Não Não Não Não sim sim sim sim
Proporção de 4: 4: 4 Não Não Não Não Não Não Não Não Não Não Não Não sim sim
Pixel de 8 bits sim sim sim sim sim sim sim sim sim sim sim sim sim sim
pixel 9 e 10 bits Não Não Não Não Não Não Não Não sim sim sim sim sim sim
pixel 11 e 12 bits Não Não Não Não Não Não Não Não Não Não Não Não sim sim
transformado 8 × 8 Não Não Não Não Não Não sim sim sim sim sim sim sim sim
matrizes de quantização Não Não Não Não Não Não sim sim sim sim sim sim sim sim
quantização separada de Cb e Cr Não Não Não Não Não Não sim sim sim sim sim sim sim sim
codificação sem perdas Não Não Não Não Não Não Não Não Não Não Não Não sim sim
Linha de base Mão Estendido Alto High 10 Alta 4: 2: 2 Alta 4: 4: 4

Níveis

Os níveis ( (en) níveis ) são limitações de um certo número de parâmetros que permitem aos decodificadores limitar a memória e os recursos computacionais necessários para decodificar um vídeo.

Nota  : um macrobloco é uma área de 16 × 16 pixels.

Número do nível macroblocos por segundo no máximo tamanho máximo da imagem em macroblocos taxa de bits máxima para Baseline, Extended e Main Profile taxa de bits máxima para o perfil alto taxa de bits máxima para o perfil High 10 taxa de bits máxima para perfis High 4: 2: 2 e 4: 4: 4 exemplo de definição e frames por segundo neste nível.
1 1.485 99 64 kbit / s 80 kbit / s 192 kbit / s 256 kbit / s 128 × 96 / 30,9
176 × 144 / 15,0
1b 1.485 99 128 kbit / s 160 kbit / s 384 kbit / s 512 kbit / s 128 × 96 / 30,9
176 × 144 / 15,0
1,1 3000 396 192 kbit / s 240 kbit / s 576 kbit / s 768 kbit / s 176 × 144 / 30,3
320 × 240 / 10,0
1,2 6000 396 384 kbit / s 480 kbit / s 1152 kbit / s 1536 kbit / s 176 × 144 / 60,6
320 × 240 / 20,0
352 × 288 / 15,2
1,3 11 880 396 768 kbit / s 960 kbit / s 2304 kbit / s 3072 kbit / s 352 × 288 / 30,0
2 11 880 396 2 Mbps 2,5 Mbps 6 Mbps 8 Mbps 352 × 288 / 30,0
2,1 19.800 792 4 Mbps 5 Mbps 12 Mbps 16 Mbps 352 × 480 / 30,0
352 × 576 / 25,0
2,2 20.250 1.620 4 Mbps 5 Mbps 12 Mbps 16 Mbps 720 × 480 / 15,0
352 × 576 / 25,6
3 40.500 1.620 10 Mbps 12,5 Mbps 30 Mbps 40 Mbps 720 × 480 / 30,0
720 × 576 / 25,0
3,1 108.000 3.600 14 Mbps 17,5 Mbps 42 Mbps 56 Mbps 1280 × 720 / 30,0
720 × 576 / 66,7
3,2 216.000 5 120 20 Mbps 25 Mbps 60 Mbps 80 Mbps 1280 × 720 / 60,0
4 245.760 8.192 20 Mbps 25 Mbps 60 Mbps 80 Mbps 1920 × 1080 / 30,1
2048 × 1024 / 30,0
4,1 245.760 8.192 50 Mbps 62,5 Mbps 150 Mbps 200 Mbps 1920 × 1080 / 30,1
2048 × 1024 / 30,0
4,2 522 240 8.704 50 Mbps 62,5 Mbps 150 Mbps 200 Mbps 1920 × 1080 / 64,0
2048 × 1088 / 60,0
5 589.824 22.080 135 Mbps 168,75 Mbps 405 Mbps 540 Mbps 1920 × 1080 / 72,3
2560 × 1920 / 30,7
5,1 983.040 36.864 240 Mbps 300 Mbps 720 Mbps 960 Mbps 1920 × 1080 / 120,5
4096 × 2048 / 30,0
5,2 2.073.600 36.864 240 Mbps 300 Mbps 720 Mbps 960 Mbps 1.920 × 1.080 / 172,0
4.096 × 2.160 / 60,0
6 4.177.920 139.264 240 Mbps 300 Mbps 720 Mbps 960 Mbps 2.048 × 1.536 @ 300

4.096 × 2.160 @ 120 8.192 × 4.320 @ 30

6,1 8 355 840 139.264 480 Mbps 600 Mbps 1440 Mbps 1920 Mbps 2.048 × 1.536 @ 300

4.096 × 2.160 @ 240 8.192 × 4.320 @ 60

6,2 16.711.680 139.264 800 Mbps 1000 Mbps 2400 Mbit / s 3200 Mbit / s 4.096 * 2.304 @ 300

8.192 × 4.320 @ 120

Número do nível macroblocos por segundo no máximo tamanho máximo da imagem em macroblocos taxa de transferência máxima para linha de base, perfil estendido e principal taxa de fluxo máxima para o perfil alto taxa de fluxo máxima para o perfil High 10 fluxo máximo para perfis de alta 4: 2: 2 e 4: 4: 4 exemplo de definição e frames por segundo neste nível.

Patentes

Tal como acontece com os formatos MPEG-2 Partes 1 e 2 e MPEG-4 Parte 2, os revendedores de produtos e serviços que usam o padrão H.264 / AVC devem pagar taxas pelo uso da tecnologia patenteada. O principal beneficiário destes direitos relativos a este padrão é uma organização privada: MPEG-LA , LLC (que absolutamente não é afiliada à "organização de padronização MPEG", mas que também gerencia patentes para sistemas que usam MPEG-2 Parte 1, MPEG-2 Vídeos da Parte 2 e MPEG-4 Parte 2 e outras tecnologias).

Se essas licenças são necessárias para uma implementação de software na Europa é controverso .

Formulários

Os dois principais candidatos incluem "H.264 / AVC High Profile" como um recurso obrigatório para jogadores, incluindo:

Na Europa , a organização de padronização Digital Video Broadcast ( DVB ) aprovou o H.264 / AVC para transmissão de televisão na Europa no final de 2004.

O primeiro-ministro francês anunciou que o H.264 / AVC era obrigatório nos receptores de TV HD e nos canais pagos da televisão digital terrestre (TNT) na França no final de 2004.

A organização de padronização do Comitê de Sistemas de Televisão Avançada (ATSC) nos Estados Unidos está considerando o uso do padrão H.264 / AVC para transmissão de televisão nos Estados Unidos.

O serviço Digital Multimedia Broadcast (DMB) - equivalente à TDT europeia - programado para ser transmitido na República da Coréia usará o formato H.264 / AVC.

As operadoras de transmissão móvel terrestre no Japão usarão O codec H.264 / AVC, incluindo:

Os serviços de transmissão direta de TV via satélite usarão esse novo padrão, incluindo:

O Projeto de Parceria de 3ª Geração ( 3GPP ) aprovou a introdução do H.264 / AVC como um serviço opcional na versão 6 das especificações funcionais para multimídia móvel.

O Motion Imagery Standards Board (MISB) do Departamento de Defesa dos EUA adotou o H.264 / AVC como o codec de vídeo preferido para todas as aplicações.

A Internet Engineering Task Force (IETF) forneceu um formato de  empacotamento de conteúdo ( RFC 3984) para o transporte de vídeo H.264 / AVC usando seu protocolo de transporte em tempo real (RTP).

A Internet Streaming Media Alliance (ISMA) adotou H.264 / AVC para a especificação ISMA 2.0.

A organização Moving Picture Experts Group (MPEG) incorporou com sucesso o suporte para H.264 / AVC em seus padrões (por exemplo, sistemas MPEG-2 e MPEG-4 ), bem como nas especificações de formato de arquivo de mídia ISO.

A União Internacional de Telecomunicações - Padronização do Setor (ITU-T) adotou o H.264 / AVC nas especificações para sistemas de telefonia multimídia H.32x. Baseado nos padrões ITU-T, o H.264 / AVC já é amplamente utilizado para videoconferência, notadamente por duas grandes empresas do mercado, ( Polycom e Tandberg ). Todos os novos produtos de videoconferência agora incluem suporte para H.264 / AVC.

O H.264 provavelmente será usado em serviços de vídeo sob demanda na Internet para entregar filmes e programas de TV a computadores. Também é provável que o mesmo tipo de conteúdo seja oferecido por meio da troca de arquivos em rede, legalmente ou não.

Produtos e implementações

Transposições de software

Aplicativos de hardware

Várias empresas produzem chips capazes de decodificar vídeo H.264 / AVC. Os chips capazes de decodificação em tempo real de vídeos de alta definição incluem o seguinte:

Este tipo de chip permite ampla implantação de hardware de baixo custo capaz de reproduzir vídeo H.264 / AVC em televisão padrão e de alta definição.

Muitos materiais já estão disponíveis em junho de 2006, isso varia de produtos de consumo baratos a codificadores baseados em FPGA em tempo real para transmissão:

Notas e referências

  1. ISO / IEC 60.60 14496-10: 2012: Tecnologia da informação - Codificação de objetos audiovisuais - Parte 10: Codificação de vídeo avançada, 26/04/2012
  2. "  H.264: Suporte para espaços de cores adicionais e remoção do alto perfil 4: 4: 4  " , em www.itu.int (acessado em 21 de abril de 2020 )
  3. 14: 00-17: 00 , "  ISO / IEC 14496-10: 2014  " , em ISO (acedida 21 de abril, 2020 )
  4. [1]
  5. (em) Request for comments n o  3984 .
  6. comparação de erro de modelo de codificadores de vídeo {{Link do arquivo}}  : preencha um parâmetro "   "|titre=
  7. Steve Klein, “  CoreAVC acelerado por Cuda, a melhor decodificação H.264?  » , Em homemedia.fr ,7 de julho de 2009(acessado em 19 de maio de 2015 )
  8. Damien Triolet, “  CoreAVC mais forte que AVIVO e PureVideo?  " ,12 de abril de 2006(acessado em 19 de maio de 2015 )
  9. (en) http://blogs.cisco.com/collaboration/open-source-h-264-removes-barriers-webrtc/
  10. (en) http://www.openh264.org/faq.html
  11. (en) https://blog.mozilla.org/blog/2013/10/30/video-interoperability-on-the-web-gets-a-boost-from-ciscos-h-264-codec/
  12. Cisco Mozilla e OpenH264
  13. http://blogzinet.free.fr/blog/index.php?post/2013/11/02/L-interoperabilite-de-la-video-sur-le-Web-recoit-un-coup-de-pouce -du-codec-H-264-de-Cisco Não há nada duradouro com as patentes. O H.264 estará bem acessível aos usuários do Firefox graças à Cisco, mas o codec ainda vem com uma licença restritiva que não é do interesse dos usuários e da web a longo prazo.
  14. Erro do modelo ATI Radeon X1000 {{Link do arquivo}}  : preencha um parâmetro "   "|titre=
  15. erro de modelo ATI de anúncio de imprensa {{link do arquivo}}  : preencha um parâmetro "   "|titre=
  16. Tecnologia H.264 da ATI
  17. página NVidia PureVideo

Veja também

Artigos relacionados

links externos