La confusión entre códec y contenedor es muy común. Y más aún si añadimos extensiones de archivo. Este post pretende clarificar estos términos y mostrar la relación existente entre ellos. Si el tiempo es importante para vosotros, podéis visitar directamente http://www.pitivi.org/manual/codecscontainers.html, que contiene una imagen ilustrativa muy clara.
¿Qué es un códec?
El término de códec proviene de la concatenación de las iniciales de dos palabras: codificador y decodificador. Estrictamente hablando, un códec es una especificación sobre cómo codificar un tipo de información y luego poderla decodificar. Por ejemplo, un códec determina la manera en que se comprime y descomprime información de vídeo y de audio. Recordad que la compresión es un caso concreto de codificación en el que se reduce el espacio, eliminando información redundante o de bajo impacto perceptivo.
¿Qué es un contenedor?
Dentro del ámbito multimedia, un contenedor es una especificación sobre cómo se ordenan dentro de un archivo diferentes tipos de contenido multimedia codificado. Estos diferentes contenidos suelen ser, principalmente, vídeo, audio y texto.
Pensemos en el caso de una película en formato digital. Esta película se encuentra en un archivo. Cuando abrimos ese archivo, se nos ejecuta un reproductor y podemos disfrutar de la película. Fijaos que una película tiene vídeo, tiene audio, subtítulos, información de su autor, información de su duración, etc. Para comodidad del usuario, se agrupan todos estos elementos dentro de un único archivo. El orden en que se guardan en ese archivo es la especificación del contenedor.
Conexión
La información de vídeo que se encuentra dentro de un contenedor suele ir comprimida, esto es, suele seguir la especificación de un códec concreto. Lo mismo pasa con la información de audio. La confusión aparece al existir contenedores y códecs con nombre muy similar o, incluso, iguales.
Los más populares
Los códecs de vídeo más populares actualmente son Theora, VP8, MPEG-2, h.264, Xvid y Divx. Respecto a los códecs de audio: AAC, FLAC, MP3, Vorbis (ogg) y WMA son los que más abundan.
Los contenedores más utilizados son AVI, Divx, Matroska, Flash video, MP4, MPEG, Ogg, Quicktime, MXF y WebM. Dado que los contenedores están intrínsecamente ligados a los archivos, cada uno de ellos también especifica una o varias posibles extensiones de archivo:
- AVI -> .avi
- Divx -> .divx
- Matroska -> .mkv, .mk3d, .mka, .mks
- Flash video -> .flv, .f4v
- MP4 -> .mp4
- MPEG -> .mpg, .mpeg
- Ogg -> .ogg
- Quicktime -> .mov, .qt
- MXF -> .mxf
- WebM -> .webm
¿Y para abrir un contenedor y ver su contenido?
Los contenedores se interpretan a través de una aplicación reproductora de medios, como puede ser Windows Media Player, Quicktime (aplicación con el mismo nombre que un contenedor), VLC, Plex, RealPlayer o Winamp, por nombrar unos cuantos (una lista exhaustiva se puede encontrar en http://en.wikipedia.org/wiki/Comparison_of_video_player_software).
Una buena opción la conforma el reproductor VLC, ya que ofrece compatibilidad con todos los formatos bajo casi cualquier plataforma y permite incluso reproducir archivos incompletos (característica útil si se desea empezar a reproducir un contenido audiovisual que aún no ha terminado la descarga, siempre que esta sea progresiva). Además, es de libre distribución.
Compendio de códecs y contenedores
La wikipedia contiene un compendio exhaustivo de contenedores y códec completo y actualizado.
- Contenedores: http://en.wikipedia.org/wiki/Comparison_of_container_formats
- Códecs de vídeo: http://en.wikipedia.org/wiki/Comparison_of_video_codecs
- Códecs de audio: http://en.wikipedia.org/wiki/Comparison_of_audio_codecs
Para saber más
Los siguientes enlaces contienen explicaciones similares a las que se han dado aquí, siendo todas perfectamente válidas.
Si no queréis leer y queréis entender o recordar de forma rápida ambos conceptos, los siguientes enlaces contienen imágenes ilustrativas muy claras de la diferencia entre códec y contenedor: http://www.pitivi.org/manual/codecscontainers.html y http://wolfcrow.com/blog/what-is-a-video-container-or-wrapper/
El siguiente enlace ofrece una explicación exhaustiva: http://slhck.wordpress.com/2011/06/23/what-is-a-codec-what-is-a-container-what-is-the-difference/
El siguiente enlace, todo y realizar una explicación de menor precisión que las anteriores, está en castellano: http://explicandotecnologia.blogspot.com.es/2011/01/diferencia-entre-formatos-contenedores.html