A todos nos gusta disfrutar de una gran calidad de imagen en los vídeos y películas que vemos en el ordenador, especialmente si haces tus propias copias comprimidas de películas en DVD. Desde siempre he confiado en el popular DivX pero, ahora que hay otros tipos de compresión como Xvid y algunos tan modernos como el H.264, merecería la pena hacer una comparativa para descubrir cuál es que ofrece la mejor calidad en el menor tamaño.

Para la prueba he elegido la película Transformers, estrenada en noviembre de 2007 y dirigida por Michael Bay, con Shia Labeouf y Megan Fox como protagonistas. Es una película de acción con gran variedad de escenas: estáticas de gran detalle, con movimiento, explosiones, mucho colorido... ideal para hacer las pruebas. El DVD hace gala de una calidad de imagen muy elevada, tal como constatan los chicos de ZonaDVD.com en sus pruebas.

Elección de códecs, bitrates y encoders

Para llevar a cabo la prueba, hay que escoger diversos "métodos de compresión", cada uno de ellos a varias "calidades" diferentes y usando uno o varios programas que permitan comprimir de este modo.
Mucho han cambiado las cosas desde que en el año 2000 comprimí en formato DivX 3.11 mi primera película. Me llevó todo un día buscando información por Internet sobre cómo hacerlo y a mi ordenador por aquél entonces (un AMD K6 II de 400Mhz) le llevó toda la noche comprimirla en sólo 650 MB. Desde entonces he ido usando todas las versiones de DivX, desde la 3.11 hasta la actual 6. Pero el códec Xvid cada vez suena más y se oyen excelentes comentarios del novísimo H.264, así que la pregunta está sobre la mesa: ¿cuál es la mejor forma de comprimir para conseguir una calidad de imagen sublime? Bien, pues para ello hay que descubrir cuál es el mejor códec y usarlo al bitrate óptimo con el encoder ideal. Pero, ¿qué eso eso de "códec", "bitrate" y "encoder"?

Códec, el tipo de compresión

El "método de compresión" es lo que en el mundo del vídeo se denomina"códec", que es el acrónimo de COmpresor-DECompresor, un programa capaz de comprimir y descomprimir la imagen de un modo determinado. Es algo parecido a lo que los programas de fotografía incorporan para permitirles leer y escribir archivos en formato JPEG, por ejemplo. El tipo de compresión que incorpora el DVD se denomina MPEG-2 y ya se considera algo antiguo, estando superado por el estándar MPEG-4, más moderno y eficiente.
El problema es que hay muchos tipos de MPEG-4 y no queda claro cuál es el mejor.

Por un lado está DivX (una variante del tipo MPEG-4 denominada ASP; ver página oficial), que es tremendamente popular y cada vez más lectores DVD de salón lo admiten. El decompresor (necesario para ver los vídeos) es gratuito, pero el compresor (para generarlos) es de pago.

También esta Xvid,(que es del mismo tipo que DivX; página oficial) un competidor del DivX (su nombre es igual, pero al revés) aunque completamente gratuita.

Y finalmente, el modernísimo H.264, del tipo MPEG-4 AVC, un prodigio de la compresión según los expertos. Bien, pues para descubrir cuál es mejor, he comparado el MPEG-4 genérico con estos tres contendientes. Existen varios códecs para usar este tipo de compresión, pero el más popular es el x264, más que nada por ser gratuíto, que es el que he usado.

Las versiones que he utilizado para esta comparativa son las siguientes: DivX Pro v6.8.2, Xvid v1.2 y x264 revision 808.

Bitrate, la cantidad de compresión

Ya con cada uno de ellos, se puede seleccionar la "calidad" de imagen, de forma similar a como se escoge la calidad entre 0 y 12 al guardar un archivo JPEG desde Photoshop. La diferencia es que en el mundo del vídeo a esto se lo conoce como bitrate, que no es otra cosa que el flujo de bits por segundo de vídeo, y se mide en bits por segundo y sus múltiplos. Puesto que el vídeo es una sucesión de fotogramas formados de píxeles (en última instancia bits), este parámetro mide el flujo de información por segundo; a mayor flujo, mayor calidad y viceversa. En nuestro caso, utilizaré medidas en "kbps" (también serviría "Kb/s"), es decir, kilobits por segundo (ojo, no lo confundas con KB/s, que serían kiloBytes por segundo, una unidad 8 veces mayor).
Para no cometer el error de quedarme corto, he escogido 7 bitrates diferentes, partiendo de uno intermedio. Tomando la imagen del DVD original, con un fotograma 720x304 píxeles de tamaño, he escogido los siguientes:

  Muy bajo Bajo Intermedio bajo Intermedio Intermedio alto Alto Muy alto
BITRATE 900 Kbps 1.200 Kbps 1.500 Kbps 1.800 Kbps 2.100 Kbps 2.400 Kbps 2.700 Kbps
Factor Q 0,164 0,219 0,274 0,329 0,384 0,439 0,493

Para los más expertos, he añadido el valor del factor de calidad o factor Q, que relaciona el bitrate con el tamaño del fotograma y el "framerate" o velocidad de reproducción de fotogramas (normalmente, 25 fotogramas por segundo, 25 f.p.s.). Este factor permite saber si el flujo con que esta comprimido un video en particular es acorde con el tamaño del fotograma (en píxeles) y la velocidad de reproducción en f.p.s. No es lo mismo usar un bitrate de 900kbps para un video de un iPod (con un tamaño de fotograma de 320x240 píxeles) que para un DVD, con un tamaño de 720x576 píxeles. El flujo es el mismo, pero se reparte entre más o menos píxeles, lo que implica que toca más o menos calidad por píxel en cada caso.

Encoder, el programa para comprimir

Para comprimir vídeos existen muchos programas, conocidos como "encoders". No conozco muchos encoders; empecé usando el ya veterano XMpeg allá por el año 2000 y llevo ahora mucho tiempo usando AutoGK - un programa muy sencillo y eficiente (recientemente se ha abandonado su desarrollo) pero me vi obligado a buscar otros para esta prueba.

 

 

Para poder usar todos estos códecs quisiera haber podido utilizar únicamente mi querido AutoGK, pero su soporte de códecs es limitado: sólo admite DivX y XviD, así que después de buscar y probar más de 6 programas ddiferentes, opté por usar GordianKnot y HandBrake. GordianKnot usa la misma base que AutoGK, pero sí permite usar x264, además de que ofrece multitud de opciones y es altamente configurable, aunque es complicado de utilizar.


GordianKnot, un encoder con muchas prestaciones, aunque complicado de usar.

HandBrake, en cambio, es sencillo de usar y además ofrece soporte MPEG-4 genérico. Ambos encoders son gratuitos, permiten usar el códec x264 y son perfectos para la prueba.


HandBrake, un programa muy bien organizado y fácil de usar, con lo esencial, pero sin caer en lo simple.

DVD, ¿vídeo de máxima calidad?

A raíz de las primeras pruebas comparativas de compresión que examiné sobre la marcha, me di cuenta de que no había grandes diferencias entre los desagradables macrobloques que son claramente visibles en los vídeos comprimidos (incluso en los de alto bitrate) y en el DVD original. Extrañado, comprobé que este efecto ya estaba presente en el DVD original y entonces me planteé qué sentido tiene comparar la calidad de las diferentes compresiones partiendo de un original, el DVD, que ya está comprimido y con pérdidas de calidad apreciables, especialmente en las escenas de más movimiento (que es justamente donde mejor se podrán comparar diferentes los códecs).

Así pues, me hice con una copia de la misma película en alta definición, la máxima calidad alcanzable hoy día. Concretamente, la Full HD 1080p, con un tamaño de fotograma -en el caso de esta película- de 1.920x820 píxeles (recordemos que el tamaño de 1.920x1.080 es para vídeos en formato 16:9, y esta película tiene unas proporciones de 2,35:1, es decir, más panorámica.
Así que reduje el tamaño del fotograma de la película, pasando de 1.920x820 hasta 720x304, el mismo que el del DVD. Mi sorpresa fue que la calidad de imagen es muy superior, y se nota especialmente en esas escenas de gran movimiento.

Para mostrarlo, he escogido dos escenas diferentes: una con gran movimiento y pocos detalles y otra justo al contrario: con poco movimiento y muchos detalles finos, para poner a prueba ambos sistemas en dos situaciones comunes y complicadas:

DVD vs FullHD reducido - movimiento rápido

DVD (720x304)

DVD comprimido
en Xvid a 2.400kbps
FullHD (1920x820 -> 720x304) comprimido en Xvid a 2.400kbps

FullHD redimensionado
a 720x304

Para ver este gráfico interactivo, simplemente pasa el ratón (sin hacer clic) por encima de los botones y espera a que se cargue la imagen.

Aqui puedes apreciar la gran mejora de calidad del FullHD sobre el DVD y, por otra parte, la cantidad de artefactos que se notan en el DVD original que acaban traspasandose al DVD una vez comprimido.

Y aquí la otra escena, con muy poco movimiento y detalles muy finos:

DVD vs FullHD reducido - detalles finos

DVD (720x304)

DVD comprimido
en Xvid a 2.400kbps
FullHD (1920x820 -> 720x304) comprimido en Xvid a 2.400kbps

FullHD redimensionado a 720x304

Para que te hagas una idea más clara de la diferencia real (y no la que se ve aquí) entre el DVD y el FullHD, en el siguiente esquema puedes ver la relación de tamaño entre los fotogramas de ambos sistemas:


En este gráfico puedes ver la diferencia abismal de tamaño entre el fotograma de un DVD (en pequeño)
y de una película en alta definición (FullHD).

Después de comprobar este efecto, tenía dos soluciones posibles: una es recomprimir la película FullHD a tamaño DVD para obtener la máxima calidad y a partir de ahí hacer las pruebas. Este método requiere mucho más tiempo para comprimir todas las pruebas, así como mayor consumo de ancho de banda para mi servidor cuando finalmente el articulo esté publicado, puesto que las imágenes son grandes (720x304 píxeles).
La opción B es más recomendable en este caso: reducir de tamaño el fotograma DVD original hasta hacer desaparecer los defectos de compresión y tomar éste como original. Esto permite apreciar igualmente las diferencias de compresión, puesto que partimos de un original de máxima calidad, pero al mismo tiempo requiere (en mi caso) mucho menos tiempo para realizar la prueba, ralentiza menos la descarga del artículo y sobrecarga menos mi servidor (y no engorda la factura del mismo). No olvidemos que, al fin y al cabo, se trata de píxeles: en el primer caso son más y en el segundo menos, pero los defectos alrededor de los píxeles se producen igual.
Así pues, decidí reducir el tamaño a intervalos del 10%, de forma que tanto el ancho como la resolución se ven reducidas por igual. Tomé el DVD original y lo comprimí 7 veces a los mencionados tamaños con la máxima calidad. Aquí puedes ver el resultado:

Tamaño del fotograma

DVD original, 100%:
720x304

90%: 656x276

80%: 576x244 70%: 512x216 60%: 432x182

En esta escena de gran movimiento hay defectos visibles, especialmente en las palas del helicóptero y en los aviones, aunque si te fijas bien, los verás por toda la imagen. Se trata de "macrobloques", grupos cuadrados de unos 8x8 píxeles que afean la imagen. Reduciendo el tamaño se aprecia claramente como van desapareciendo, hasta ser casi inapreciables al tamaño de 432x182, así que finalmente he optado por éste último.

 
 

 

01 02 03 04 05

 

Siguiente >>>