Está en la página 1de 11

Descripción de los formatos de codificación de video

Jose Espinosa - jose.espinosaf@ucuenca.edu.ec


Universidad de Cuenca, Ecuador

Abstract
Los formatos de video que proporcionan actualmente las video grabadoras
son muy pesados, ya que estos graban a muy alta calidad cuidando la mayor
cantidad de detalles. El contenido multimedia en el internet es el más solici-
tado por los usuarios, y es por este motivo que es necesario buscar una manera
de codificar y decodificar este tipo de contenido, generando una compresión
en el mismo, para que de este modo este nuevo formato conserve una buena
calidad de imagen, pero con una menor cantidad de memoria utilizada. Por
este motivo existen actualmente diferentes tipos de CODEC tanto para au-
dio y video como son, MPEG-3, MPEG-4, 4K, Web. Ası́ como de audio, por
ejemplo, MP3 que es uno de los más utilizados. Un ejemplo de un formato
nuevo y utilizado por YouTube es AV1. En este documento se proporcionará
información sobre cada uno de estos CODEC.
Keywords: CODEC, MPEG-X, WebM, 4K, MP3, AV1.

1. Introducción
En la actualidad existen varios formatos de video, cada uno de estos posee
un tipo de CODEC que da las caracterı́sticas requeridas para el tipo de apli-
cación que reproducirá el video, es por este motivo que nos son los mismos
CODEC que se utilizan para visualizar un video en u smartphone que en una
Smart TV, ya que cada uno de estos dispositivos posee un diferente tamaño
de pantalla y por lo mismo una mayor o menor densidad de pixeles. Tomando
esto en cuenta se han desarrollado CODEC para diferentes aplicaciones, con
diferentes caracterı́sticas cada uno de ellos. Es decir, para una Smart TV de
60 pulgadas con una resolución Ultra HD se empleará un MPEG-4, mientras
que para reproducir un video de YouTube en un smartphone se emplearı́a un
CODEC AV1, que es lo que en la actualidad se esta utilizando en la mayorı́a

Preprint submitted to Journal Name April 29, 2019


de aplicaciones de internet.

Como se acabó de mencionar, el video es utilizado en diversos tipos de


aplicaciones, las que, a su vez, tienen diversos requerimientos. La TV es,
quizás, la aplicación de video más conocida. Sin embargo, existen en forma
cada vez más difundida un nuevo conjunto de aplicaciones de video, entre
las que se encuentran la video telefonı́a, los servicios de video conferencia,
la distribución de video bajo demanda a través de Internet y la IP-TV, por
mencionar los más relevantes.

Cada una de estas aplicaciones tiene sus caracterı́sticas propias en lo que


respecta a requerimientos de calidad, velocidades, etc. En el área corporativa,
se nota una creciente relevancia de la video-telefonı́a y las video-conferencias.
La video-telefonı́a es una aplicación tı́picamente punto a punto y general-
mente de poco movimiento. Por otra parte, es una aplicación altamente
interactiva, dónde los retardos punta a punta juegan un rol fundamental en
la calidad conversacional percibida.

Las aplicaciones de video conferencias son tı́picamente punto a multi-


punto. Al igual que la video telefonı́a, generalmente tienen poco movimiento.
Además de la difusión del audio y el video es deseable en estas aplica-
ciones poder compartir imágenes y documentos. La interactividad también
es tı́picamente un requisito, aunque podrı́an admitirse retardos punta a punta
un poco mayores que en la video telefonı́a, ya que los participantes general-
mente están dispuestos a esperar que el otro usuario hable para luego hablar
el segundo usuario en este tipo de comunicaciones.

Por todo lo expuesto anteriormente, en este documento se describirá al-


gunos de los CODEC más utilizados, dando sus caracterı́sticas y como varı́an
entre ellos y de este modo poder saber cuál es el más indicado para cada tipo
de aplicación como dispositivo de reproducción. Cabe recalcar que la mayorı́a
de estos salen de predecesores y es por este motivo que tienen caracterı́sticas
en común entre algunos de ellos.

2
2. CODEC
Los estudios acerca de la codificación de imágenes y video comenzaron
en la década de 1950. En 1984 fue introducida la estrategia de codificación
utilizando la transformada discreta de coseno (DCT) , técnica ampliamente
utilizada en los sistemas actuales de codificación. Las técnicas de compen-
sación de movimiento aparecieron también en la década de 1980, dando origen
a las tecnologı́as hı́bridas MC/DCT (Motion Compensation/Discrete Cosine
Transform), utilizadas en los actuales algoritmos MPEG.

La complejidad de codificadores y decodificadores ha ido aumentando,


logrando un muy alto nivel de compresión, a expensas de requerir decodi-
ficadores y, sobre todo, codificadores muy complejos, y que requieren gran
capacidad de procesamiento. Es de esperar que en el futuro próximo se
requiera aún mayor capacidad de procesamiento, reduciendo los requerim-
ientos de ancho de banda y mejorando la calidad percibida. A continuación
se presentan, en forma resumida, las caracterı́sticas más destacables de las
tecnologı́as actuales en codificación de video, y la manera de codificar video
para su transmisión sobre redes IP. No es el objetivo principal de este doc-
umento presentar un detalle pormenorizado de estas tecnologı́as, por lo que
sólo se describirán brevemente sus caracterı́sticas más relevantes.

2.1. MPEG-X
MPEG-1 fue originalmente diseñado por el “Moving Picture Experts
Group” (MPEG) de la ISO (International Standards Organization) para el
almacenamiento y reproducción digital de aplicaciones multimedia desde dis-
positivos CD-ROM, hasta velocidades de 1.5 Mb/s. MPEG-2 fue el sucesor
de MPEG-1, pensado para proveer calidad de video desde la obtenida con
NTSC/PAL y hasta HDTV, con velocidades de hasta 19 Mb/s.

La codificación en MPEG-1 está basada en la transformada DCT para


explotar las redundancias espaciales dentro de cada cuadro, y en técnicas de
estimación y compensación de movimiento para explotar las redundancias
temporales (entre cuadros). Las secuencias de video son primeramente di-
vididas en grupos de figuras (GOP). Cada GOP puede incluir tres grupos
diferentes de cuadros: I (Intra), P (Predictivos) y B (predictivos Bidirec-
cionales). Los cuadros del tipo I son codificados únicamente con técnicas

3
de compresión espacial (transformada DCT dentro del propio cuadro, por
ejemplo). Son utilizados como cuadros de referencia para las predicciones
(hacia adelante o hacia atrás) de cuadros P o B. Los cuadros del tipo P
son codificados utilizando información previa de cuadros I u otros cuadros
P, en base a estimaciones y compensaciones de movimiento. Los cuadros B
se predicen en base a información de cuadros anteriores (pasados) y también
posteriores (futuros). El tamaño de un GOP está dado por la cantidad de
cuadros existentes entre dos cuadros I. Tı́picamente se utilizan de 12 a 15
cuadros para un GOP, y hasta 3 cuadros entre un I y un P o entre dos P
consecutivos (tı́picamente una señal PAL se codifica con un GOP de tamaño
12 y una NTSC con 15, ambas con no más de 2 cuadros B consecutivos).

Figure 1: Secuencia de GOP

En la anterior figura se muestra en la Figura una secuencia de GOP(IBBPBBPBBI),


donde las flechas indican los cuadros utilizados para las predicciones. Cuando
más grande el GOP, mayor compresión se puede obtener, pero a su vez existe
menor inmunidad a la propagación de errores.

4
2.2. MPEG-1
MPEG-1 se divide la imagen de cada cuadro en bloques de 8 x 8 pı́xeles,
los que son procesados en forma independiente. Dentro de cada uno de estos
bloques, se aplica la transformada discreta de coseno (DCT) bidimensional,
generando para cada bloque, una matriz de 8 x 8 coeficientes. A su vez,
cuatro bloques se agrupan en un “macro-bloque” de 16 x 16 pı́xeles, el que
es utilizado como base para la estimación del movimiento. La estimación
de movimiento de un macro-bloque se realiza en el codificador, comparando
el macro-bloque de una imagen con todos las posibles secciones de tamaño
igual al macro-bloque (dentro de un rango espacial de 512 pı́xeles en cada
dirección) de las imagenes siguientes. La comparación se realiza generalmente
buscando la mı́nima diferencia el mı́nimo valor de MSE entre el macrobloque
y la sección evaluada. Este procedimiento se basa en la hipótesis que todos los
pı́xeles del macro-bloque tendrán por lo general un mismo desplazamiento,
y por lo tanto, será más eficiente codificar un “vector de movimiento” del
macro-bloque y las diferencias del macro-bloque predicho respecto del macro-
bloque original. Las diferencias entre el macro-bloque predicho y el real
también son transformadas mediante la DCT para su codificación.

2.3. MPEG-2
MPEG-2 se forma de la manera descrita a continuación. Se utiliza como
unidad básica un macro-bloque, compuesto tı́picamente por 4 bloques de lu-
minancia y 2 de crominancia (ya que la crominancia es sub-muestreada). Los
coeficientes DCT de cada uno de estos bloques son serializados, y precedi-
dos por un cabezal de macro-bloque. Varios macrobloques contiguos (en la
misma fila, y de izquierda a derecha) son agrupados formando un slice, el
que a su vez es precedido de un cabezal de slice, el que contiene la ubicación
del slice en la imagen y el factor de cuantización usado. Tı́picamente puede
haber un slice por cada fila de macro-bloques, pero puede también haber
slices con parte de una fila. Un grupo de slices forma un cuadro, el que
es precedido por un cabezal de cuadro, conteniendo información del mismo,
como por ejemplo el tipo de cuadro (I,P,B), y las matrices de cuantización
utilizadas. Varios cuadros se juntan, formando el GOP, también precedido
de un cabezal de GOP. Finalmente, varios GOPs pueden serializarse en una
secuencia (Elementary Stream), con su correspondiente cabezal, el que con-
tiene información general, como el tamaño de los cuadros, y la frecuencia de
cuadros. En la Figura se muestra un esquema del sistema de capas descrito.

5
Figure 2: MPEG-2

2.4. MPEG-4
MPGE-4 es la evolución de MPEG-1 y 2, y provee la tecnologı́a necesaria
para la codificación en base a contenidos, y su almacenamiento, transmisión
y manipulación. Presenta mejoras interesantes respecto a la eficiencia de
la codificación, robustez de transmisión e interactividad. MPGE-4 puede
codificar múltiples objetos de video MVO (Multiple Video Objects), ya que
sus contenidos son representados en forma individual. El receptor puede de
esta manera recibir diferentes flujos por cada objeto codificado dentro de un
mismo video, correspondientes por ejemplo a diferentes planos VOP (Video
Object Plane) de la imagen. Cada secuencia de VOPs constituye un ob-
jeto de video VO (Video Object) independiente, los que son multiplexados
dentro de una transmisión, y demultiplexados y decodificados por el receptor.

6
H.264/AVC este estándar utiliza compensaciones de movimiento más flex-
ibles, permitiendo dividir los macrobloques en diversas áreas rectangulares,
y utilizar desplazamientos de hasta un cuarto de pı́xel. Agrega además los
cuadros del tipo SP (Switching P) y SI (Switching I), similares a los P e I,
pero con la posibilidad de reconstruir algunos valores especı́ficos de forma
exacta. Con AVC, para una misma calidad de video, se logran mejoras en
el ancho de banda requerido de aproximadamente un 50 porciento especto
estándares anteriores.

Figure 3: Tabla de comparación

3. 4K (H.265)
HEVC o High Eficiency Video Encoding, también conocido como H.265,
es un nuevo estándar de compresión de video, desarrollado por el Joint Col-
laborative Team on Video Coding (JCT-VC). El JCT-VC junta a los expertos
de codificación en imagen y video al rededor del mundo, para producir un
estándar sencillo que es aprobado por dos organizaciones la ITU y la ISO.

7
En H.265 la mayor parte del poder de los estándares en compresión de
video vienen de una técnica conocida como “motion compensated prediction”
donde bloques de pı́xeles son codificados haciendo referencia a otra área en el
mismo cuadro (intra-prediction), o en otro cuadro (inter-prediction). Donde
H.264 / AVC define macrobloques de hasta 1616 pı́xeles, HEVC puede de-
scribir a un rango mucho más amplio de hasta 6464. HEVC permite que
bloques predichos sean codificados en diferentes tamaños que el error resid-
ual. Cada CTU (top level coding unit) es primero codificada como una
predicción quad-tree, donde a cada profundidad el codificador decide dónde
codificar con merge/skip, inter o intra. El residual de estas predicciones
después es codificado con un segundo quad-tree el cual puede tener opcional-
mente una profundidad más grande que el quad-tree de predicción. Esto
permite, por ejemplo, que el error residual de una codificación inter de 3232
sea representado por una mezcla de transformadas de 1616, 88 y 44.

Figure 4: 4K

• HEVC puede codificar vectores de movimiento con mayor precisión,


esto resulta en bloques predichos con mayor precisión y menor error
residual. Hay 35 direcciones intra-imagen, comparado con las solo 9 de
H.264 / AVC.
• HEVC incluye Adaptative Motion Vector Prediction (Predicción de
movimiento de vectores adaptativa), un nuevo método para mejorar la
inter-predicción.
• Un filtro deblocking mejorado
• Sample Adaptative Offset, un filtro adicional que reduce ruido en los
bordes de los bloques.

8
3.1. WebM
WebM es un formato multimedia de código abierto y libre desarrollado
por Google y orientado para usarse con HTML5. Está compuesto por el
códec de vı́deo VP8 y el códec de audio Vorbis dentro de un contenedor
multimedia Matroska.12 Como se conoce el VP8 es un CODEC desarrollado
de una manera semejante a MPEG-4, se podria decir que es su predecesor.
Es por este motivo que este codec ya es algo antiguo y por lo mismo no tan
utilizado, en la actualidad el CODEC dezarrollado por Google y utilizado en
la mayoria de las aplicaciones de la red como por ejemplo YouTube es AV1,
el cual se detallara a continuación.

3.2. AV1
Se cree que es el sucesor de VP9 y esta diseñado para utilizar el contene-
dor WebM en conjunto con el CODEC de audio Audio Opus que se utilizaran
en HTML5 y WebTRC. Fue desarrollado por Google en su primera versión en
el 2017 y ya imponiéndose en el 2018 como el CODEC utilizado por YouTube
por ejemplo. Con esto AV1 aspira a ser el formato de video para la web de
software libre de igual manera que WebM.

Este formato que utiliza la transformación de frecuencia basado en blo-


ques que es un método ya utilizado en sistemas semejantes como lo es VP9
dentro de Google igualmente. La parte que hace la diferencia en este modelo
es la forma en que se particionan los superbloques, ya que no son simétricos.
Incluso por este motivo se dejan de llamar macrobloques, teniendo tamaños
de 128x128 o 64x64. Además, también se introducen patrones de partición
T que se implementaron en VP10.

Figure 5: Superbloques de AV1

9
• Predicción mejorada con 10 o 12 bits por muestra, mejorando el error
al momento del redondeo.

• Intra predicción utilizando únicamente la información disponible en el


cuadro actual.

• Para la transformación de los datos se utiliza la DCT con en la mayorı́a


de CODEC ya que es muy eficiente para este tipo de procedimientos,
ya que disminuye al máximo la cantidad de información requerida.

Figure 6: Algoritmo AV1

4. Conclusiones
En la actualidad con tanta información multimedia en la red, se debe
mejorar al máximo los mecanismos de compresión, lo CODEC han vvenido
realizan un gran trabajo. Pero al proyectar que en el 2020 el 80 porciendo
de la demanda de contenido de la red será multimedia, se debera mejorar
aún más la compresión de este contenido sin disminuir la calidad del mismo.

10
Como se puede notar además este trabajo es en conjunto, ya que se trabaja
con base en las versiones anteriores y estandares semajantes fusionandolos y
tomando las mejores caracterı́sticas de los mismo.

5. Bibliografı́a
[1] KIain E. Richardson, The H.264 Advanced Video Compression Stan-
dard, Wiley, Second Edition, 2010

[2] RFC 2250 Payload Format for MPEG1/MPEG2 Video D. Hoffman et


al, January 1998

[3] RFC 3016 RTP Payload Format for MPEG-4 Audio/Visual Streams
Y. Kikuchi et al, November 2000

11

También podría gustarte