2 puntos por GN⁺ 2024-06-15 | 1 comentarios | Compartir por WhatsApp

H.264 es magia

¿Qué es H.264?

  • H.264 es un estándar de códec de compresión de video.
  • Se usa en casi todas partes: video en internet, Blu-ray, teléfonos móviles, cámaras de seguridad, drones, etc.
  • Es el resultado de más de 30 años de investigación, con el objetivo de reducir el ancho de banda necesario para transmitir video de movimiento completo.

¿Por qué se necesita compresión?

  • Los archivos de video sin comprimir contienen una cantidad enorme de datos.
  • Por ejemplo, un video de 1080p @ 60Hz genera alrededor de 370MB de datos por segundo.
  • Un disco Blu-ray de 50GB solo puede almacenar unos 2 minutos de video.
  • Por lo tanto, la compresión es necesaria.

¿Por qué la compresión H.264?

  • H.264 es muy eficiente.
  • Por ejemplo, una captura de pantalla en PNG de la página principal de Apple pesa 1015KB, mientras que un video H.264 de 5 segundos de esa misma pantalla pesa 175KB.
  • Un video H.264 es 1500 veces más eficiente que un PNG.

Principales técnicas de H.264

Reducir peso (Compresión con pérdida)

  • H.264 usa compresión con pérdida, que descarta los bits no importantes y conserva solo los importantes.
  • PNG usa compresión sin pérdida, que conserva todos los bits.

Entropía de la información

  • La entropía de la información se refiere al número mínimo de bits necesario para representar datos.
  • Es una forma de comprimir datos para reducir la redundancia.

Dominio de frecuencia (Frequency Domain)

  • Los datos se transforman al dominio de frecuencia para eliminar los componentes de alta frecuencia (detalles finos).
  • Esto reduce los detalles de la imagen, pero ahorra espacio.

Submuestreo de croma (Chroma Subsampling)

  • El ojo humano detecta mejor los cambios de brillo que los de color.
  • Se usa el modelo de color YCbCr para reducir la información de color y mantener la información de luminancia.
  • Con esto, el ancho de banda puede reducirse a la mitad.

Compensación de movimiento (Motion Compensation)

  • La mayor parte del video es estática, y solo una parte se mueve.
  • H.264 guarda la imagen estática y almacena por separado solo las partes en movimiento.
  • Esto ahorra espacio.

Codificador de entropía (Entropy Coder)

  • Elimina la información redundante que queda después de la compresión con pérdida.
  • Con un codificador sin pérdida común se pueden recuperar todos los datos.

Opinión de GN⁺

  • La eficiencia de H.264: H.264 es muy eficiente en compresión de video y puede ahorrar mucho ancho de banda y espacio de almacenamiento.
  • La complejidad de la tecnología: Los distintos elementos técnicos de H.264 pueden ser difíciles de entender, pero comprender los principios básicos ayuda mucho.
  • Comparación con otros códecs: Códecs más recientes como H.265 ofrecen una eficiencia de compresión mayor que H.264. Sin embargo, H.264 sigue usándose ampliamente.
  • Aplicación práctica: El uso de H.264 en streaming, almacenamiento y transmisión de video es muy común, y puede generar importantes ahorros de costos.
  • Perspectiva futura: La tecnología de compresión de video sigue avanzando, y es muy probable que aparezcan códecs más eficientes. Entender los principios de H.264 ayuda a aprender nuevas tecnologías.

1 comentarios

 
GN⁺ 2024-06-15
Opiniones de Hacker News
  • Ventajas de AV1: AV1 ofrece un rendimiento casi mágico junto con un mejor esquema de licencias.
  • Caso de uso de Meta: Meta está incorporando gradualmente streams VP9 y AV1 para el streaming de video.
  • Microsoft Teams: Microsoft empezó a usar AV1 en Teams, y ofrece herramientas de codificación de video especialmente útiles para compartir pantalla.
  • Videos de YouTube: La mayoría de los videos que ves hoy en YouTube están codificados en VP9 o AV1. A veces también hay videos en H.264.
  • El futuro de H.264: H.264 seguirá usándose por mucho tiempo, pero es muy probable que AV1 se convierta en el nuevo estándar del video en internet.
  • Vencimiento de patentes de H.264: Muchas patentes de H.264 están por vencer pronto. La primera versión se publicó en 2003 y las patentes normalmente tienen una vigencia de 20 años.
  • Pregunta sobre H.265: H.265 ofrece una mayor eficiencia, pero todavía suele compararse con H.264.
  • Experiencia inicial con H.264: Cuando H.264 apareció por primera vez, se intentó reproducir archivos con mplayer, pero las primeras versiones no lo soportaban. Después el rendimiento mejoró mucho.
  • Ejemplo de compresión de datos: Se explica el concepto de compresión de datos usando el ejemplo de lanzar una moneda.
  • La esencia de los códecs: La clave de la compresión con pérdida es la combinación de transformada discreta del coseno, cuantización, escaneo en zigzag y codificación entrópica.
  • Eficiencia de VVC: VVC es entre 20% y 30% más eficiente que AV1, y ya se está usando en MXPlayer en India.
  • Historia sobre compresión de video: Se comparte la experiencia de una entrevista en 1999 con una empresa que desarrolló un nuevo algoritmo de compresión de video. La empresa finalmente fracasó, pero su enfoque era interesante.
  • Término de entropía de la información: El uso del término "entropía de la información" se siente algo extraño.