En este artículo, aprenderás sobre los conceptos básicos de los archivos multimedia, como los conceptos de un contenedor, y algunos de los numerosos formatos de códecs disponibles que puedes usar en una transmisión. Además, toca ligeramente temas como la transmisión adaptable, la tasa de bits y la resolución, pero los analizaremos con más detalle en secciones posteriores.
Entrega archivos de video
Quizá creas que puedes tomar un archivo sin procesar desde una cámara de video y subirlo a la Web tal como está. De hecho, los sitios de transmisión de video como YouTube o Vimeo te permiten hacer precisamente eso e incluso proporcionar capacidades de transmisión en vivo, por lo general, conectándose al puerto HDMI de la cámara y, luego, procesándolo mediante una tarjeta de captura. Estos servicios simplifican en gran medida el procesamiento y la carga de videos, lo que incluye la generación de muchos archivos y manifiestos necesarios para la transmisión adaptable y varias resoluciones. Además de muchos otros requisitos complicados y sutiles que hacen que alojarse por cuenta propia sea tedioso. Preparar y entregar un video desde tu propio sitio, y probablemente desde un servidor multimedia independiente, es un poco más complicado que subir un archivo de cámara sin procesar si te interesa la experiencia que tienen los usuarios con tu sitio.
Los archivos de video están disponibles en varios formatos. El formato que sale de la cámara suele ser un archivo .mov
o un .mp4
si tienes una buena cámara moderna sin espejo.
Sin embargo, aunque un .mov
es bueno para grabar y editar y otros procesos de posproducción iniciales, el tamaño del archivo significa que no es bueno para transmitir en la Web. Además, el tamaño del archivo de un .mp4
sin procesar en 4K hará que la reproducción de ese archivo en dispositivos móviles sea muy restrictiva. Debido a que los navegadores admiten diferentes formatos de archivo, deberás crear varios archivos optimizados y, posiblemente, un manifiesto si planeas admitir la transmisión adaptable. Antes de convertir archivos, debes comprender algunos conceptos básicos sobre ellos y sus características.
¿Contenedores, códecs y transmisiones?
El archivo que ves en la shell de tu sistema operativo es un contenedor, identificado por una extensión de archivo (.mp4
, .webm
, .ogg
, etc.). El contenedor aloja una o más transmisiones. Un archivo multimedia puede tener cualquier cantidad de transmisiones y de muchos más formatos de los que veremos aquí.
Los archivos de muestra que se usan más adelante en esta sección contienen como máximo dos transmisiones: una transmisión de audio y una de video. Entre los otros tipos que puedes encontrar son las leyendas y los datos, que están fuera del alcance de este artículo. Hay instancias en las que las transmisiones de audio y video se tratan por separado. La mayoría de los archivos que encontrarás solo contendrán una transmisión de audio y una de video.
Dentro de las transmisiones de audio y video, los datos reales se comprimen con un códec. Un códec, o codificador/decodificador, es un formato de compresión para datos de audio o video. La distinción entre un contenedor y un códec es importante porque los archivos con el mismo contenedor pueden tener su contenido codificado con códecs diferentes.
En la siguiente imagen, se ilustra esta estructura. A la izquierda, se muestra la estructura básica del contenedor con dos transmisiones. A la derecha, están los detalles de esa estructura para un solo archivo WebM.
![Comparar la estructura de archivos multimedia con un archivo multimedia hipotético](https://web.developers.google.cn/static/articles/media-file-basics/image/comparing-media-file-stru-58d7e1713333f.png?authuser=7&hl=es-419)
Los archivos en contenedores de WebM pueden ser órdenes de magnitud más pequeños que otros formatos, lo que los convierte en una buena opción para transmitir sitios móviles. Desafortunadamente, no todos los navegadores admiten códecs y contenedores actualizados. Por ejemplo, WebM se creó específicamente para la Web como una opción de código abierto y de alta calidad, pero su compatibilidad aún no es universal. En particular, Safari no admite WebM para videos incorporados, según ¿Puedo usar? Sin embargo, WebM tiene compatibilidad parcial con el códec VP8 y VP9 que se usa en WebRTC. La mejor opción es proporcionar un video de resguardo.
Formatos de códec
Muchos tipos de archivos admiten varios códecs dentro del mismo contenedor. Una lista completa de códecs de video y códecs de audio disponibles sería un sitio web completo. Los vínculos que acabamos de proporcionar son para las listas prácticas de MDN acerca de lo que se puede usar en la Web. A continuación, se indican los tipos de archivo preferidos actualmente y los códecs que podrían usar. Sigue los vínculos de los tipos de archivo para ver qué navegadores son compatibles.
File type | Códec de video | Códec de audio |
---|---|---|
MP4 | AV1, AVC (H.264)* y VP9 | AAC |
WebM | AV1 y VP9* | Vorbis y Opus |
* Indica el códec de video preferido.
Tasa de bits y resolución
La tasa de bits es la cantidad máxima de bits que se usan para codificar un segundo de una transmisión. Cuantos más bits se usen para codificar un segundo de transmisión, mayor será el potencial de detalle y fidelidad. Proporcionamos más información sobre este concepto en Tasa de bits.
La resolución es la cantidad de información en un solo fotograma de video, expresada como la cantidad de píxeles lógicos en cada dimensión. Proporcionamos más información sobre este concepto en Resolución.
A continuación, en Conceptos básicos de la aplicación de contenido multimedia, te mostraremos cómo examinar estas características con dos herramientas de línea de comandos: Shaka Packager y FFmpeg.