Y esto es lo que me confundió mucho en todo este viaje. Siempre pensé que el códec es lo mismo que WebM, MP4, AVA, pero son realmente muy diferentes y para entender cuán diferentes son, permíteme darte una introducción a todo el proceso de codificación de video.
Entonces, todo el proceso comienza con los fotogramas individuales. Los fotogramas individuales son los fotogramas de tu video. Hay tres fotogramas en esta demostración. Todos estos fotogramas se pasan a lo que se llama un algoritmo de codificación. Ahora, el trabajo del algoritmo de codificación es tomar los fotogramas, convertirlos, comprimir y almacenarlos en una única transmisión de video. Entonces, este algoritmo de codificación, en otras palabras, se llama códec. Toma fotogramas de video, los convierte, los comprime y almacena los fotogramas en una transmisión de video. Entonces, la salida del códec es una única transmisión de video. Y esto no es lo que se almacena en tu disco duro.
La transmisión de video se procesa aún más y se pasa a lo que se llama un multiplexor para crear lo que se llama un contenedor de video. Entonces, el contenedor de video es lo que contiene tu transmisión de video y este contenedor de video finalmente se almacena en tu disco duro. Entonces, el archivo mp4 que ves, en realidad es un contenedor que internamente tiene transmisión de video data que tiene los datos de los fotogramas individuales.
Ahora te preguntarás por qué necesitamos un multiplexor. ¿No podría el codificador hacer también este paso por nosotros? Bueno, eso es porque los videos no son solo datos visuales, tienen audio, tienen subtítulos y todos estos son parte de un solo archivo. Y la magia de tener todo dentro de un solo archivo es posible gracias al multiplexor. El multiplexor combina o multiplexa varias transmisiones de data en un solo contenedor. Y como puedes ver aquí, este único contenedor video.mp4 tiene video transmisión de data, audio transmisión data, subtítulos y es el trabajo del multiplexor combinar todos ellos juntos.
Entonces, ¿qué es un códec de nuevo? Bueno, el códec es simplemente un algoritmo para convertir y comprimir los fotogramas individuales del video. Un códec y un contenedor deben ser compatibles entre sí para usarlos correctamente. Entonces, si estás usando un contenedor, digamos el contenedor webm, tienes que usar el códec VP8 o AV1 porque el contenedor webm solo puede almacenar transmisiones de video y ponerlo en ese códec. De manera similar, si quieres usar mp4, tienes que usar el códec AVC o el códec AV1. Y las cadenas de ejemplo que he mencionado aquí, estas son las cadenas que tienes que pasar en el parámetro del códec de la función de configuración.
Ahora, para complicar aún más todo el proceso, cada navegador admite un conjunto diferente de códecs. Entonces, este navegador que estás usando podría admitir algún códec, que podría no ser admitido en otro navegador. Entonces sí, eso también fragmenta un poco toda esta API. Pero no voy a profundizar en los códecs ahora, he dejado dos enlaces aquí, que puedes consultar para entender la compatibilidad de varios códecs y lo que significan los números individuales en esas cadenas de códec. Así que te sugiero encarecidamente que los revises. Volviendo al code, esta es la función de configuración.
Comments