H.264/MPEG-4 AVC: diferència entre les revisions

Contingut suprimit Contingut afegit
m Robot: Reemplaçament automàtic de text (- + )
mCap resum de modificació
Línia 2:
 
== Història ==
 
Per tenir un progrés ràpid, la ITU-T i l'ISO/IEC van acordar unir-se per tal de desenvolupar conjuntament la següent generació de còdecs de vídeo. L'Equip Conjunt de Vídeo (JVT) estava format per experts en VCEG i [[MPEG]] i va néixer el desembre de 2001 amb l'objectiu de completar el desenvolupament tècnic del estàndard cap el 2003. La ITU-T va planejar adoptar l'estàndard sota el nom de H 264 de ITU-T i ISO/IEC sota el nom de MPEG-4 part 10 Còdec de Vídeo Avançat ([[AVC]]) i d'aquí va sorgir el nom híbrid de H.264/MPEG-4 AVC. Per tal de començar a programar el codi del nou estàndard van adoptar les següents premisses:
 
Linha 13 ⟶ 12:
== Característiques ==
 
L'ús inicial del MPEG-4 AVC va estar enfocat cap al vídeo de qualitat baixa per videoconferència i aplicacions per Internet basades en 8 bits/mostra i amb un mostreig ortogonal de 4:2:0. Llavors això no donava sortida a l'ús d'aquest còdec en ambients professionals que exigeixen resolucions més elevades que necessitaven més de 8 bits/mostra i un ''mostratge de 4:4:4 o 4:2:2, funcions per a la mescla d'escenes, bit rates més elevats, poder representar algunes parts de vídeo sense pèrdues i utilitzar el sistema de color per components [[Senyal RGB|RGB]]''. Per aquest motiu va sorgir la necessitat de programar unes extensions que suportessin aquesta demanda. Després d'un any de treball intens van sorgir les "extensions de gamma de fidelitat" (FRExt) que incloïen:
 
[[Fitxer:Chroma_subsampling_ratios.svg|thumb|right|510x144px|Sistemes de submostreig]]
Linha 22 ⟶ 21:
 
Aquest conjunt d'extensions anomenades de "perfil alt" són:
 
*L'extensió High que suporta 4:2:0 fins a 8 bits/mostra
*L'extensió High-10 que suporta 4:2:0 fins a 10 bits/mostra
Linha 262 ⟶ 260:
 
=== Codificació entròpica ===
[[Fitxer:vlccat.jpg|right|210px]] La codificació entròpica es pot realitzar de tres formes diferents. Un primer mètode utilitzat és el conegut [[UVLC]] (Unified Variable Lenght Coding). Aquest tipus de codificació és utilitzat per codificar la gran majoria dels elements de sincronització i capçaleres. Els altres dos mètodes són utilitzats per codificar bona part de la resta d'elements sintàctics (coeficients, vectors de moviment). Les codificacions utilitzades per aquesta tasca estan basades en [[VLC]] ([[Variable Length Coding]]) de forma adaptativa, d'aquest concepte neix el [[CAVLC]] (Context Adaptative Variable Length Coding) i el [[CABAC]] (Context Adaptative Binary Arithmetic Coding).
 
[[Fitxer:vlccat.jpg|right|210px]] La codificació entròpica es pot realitzar de tres formes diferents. Un primer mètode utilitzat és el conegut [[UVLC]] (Unified Variable Lenght Coding). Aquest tipus de codificació és utilitzat per codificar la gran majoria dels elements de sincronització i capçaleres. Els altres dos mètodes són utilitzats per codificar bona part de la resta d'elements sintàctics (coeficients, vectors de moviment). Les codificacions utilitzades per aquesta tasca estan basades en [[VLC]] (Variable Length Coding) de forma adaptativa, d'aquest concepte neix el [[CAVLC]] (Context Adaptative Variable Length Coding) i el [[CABAC]] (Context Adaptative Binary Arithmetic Coding).
 
=== Adaptació a la xarxa ===
 
Conceptualment els algoritmes estan dividits en dues capes: una primera capa de codificació de vídeo VCL (Video Coding Layer) que s'ocupa de representar eficaçment el contingut de vídeo i una capa d'adaptació a la xarxa NAL (Network Adaptación Layer) que està adreçada més particularment a adaptar el format de dades de vídeo al suport de transmissió.
 
=== Algoritmes per a la prevenció de pèrdues ===
 
 
==== FMO i ASO ====
 
L'ordenació flexible de macroblocs ([[FMO]]) i l'ordenació arbitrària de slices ([[Ordenació arbitrària de slices|ASO]]) són tècniques per tal de reestructurar la representació de les regions fonamentals (macroblocs) tot i que també poden ser utilitzats per altres objectius.
 
==== DP ====
 
La partició de dades proporciona la capacitat de separar els elements de sintaxi més importants dels menys importants en paquets de dades diferents tot permetent l'ús de protecció d'error desigual ([[Protecció d'error desigual|UEP]]).
 
==== RS ====
L'algoritme de ''slices'' redundants permet a un codificador enviar una representació suplementària d'una regió d'imatge que pot ser usat si la representació primària és corrompuda o perduda.
 
L'algoritme de slices redundants permet a un codificador enviar una representació suplementària d'una regió d'imatge que pot ser usat si la representació primària és corrompuda o perduda.
 
== Enllaços externs ==