Resumen (El MPD)
Muchos productores de streaming utilizan la codificación de velocidad de bits constante (CBR) como técnica de control de velocidad de bits, ya sea en un intento de crear la transmisión más eficiente para la entrega, o para cumplir con los requisitos percibidos de Apple para la transmisión en vivo HTTP (HLS). Sin embargo, CBR ofrece la calidad general más baja de todas las técnicas de control de velocidad de bits e introduce el potencial de problemas de calidad transitorios dramáticos como los que se muestran en la Figura 1.
Figura 1. Comparación de codificación CBR vs. VBR (haga clic en la imagen para ver a tamaño completo).
Una encuesta reciente indica que muchos productores han cambiado a la codificación de tasa de bits variable (VBR) y están ignorando las recomendaciones de Apple antes mencionadas. Las pruebas revelan que el VBR restringido al 110% evita los problemas de calidad transitorios causados por la codificación CBR. Los productores que aún utilizan CBR deben considerar cambiar a VBR restringido para evitar estos problemas de calidad transitorios y mejorar la calidad general del video.
Segmento 1: El control de velocidad de bits es una de las opciones de codificación más fundamentales seleccionadas para cada archivo comprimido
Cada vez que codifica un archivo para la distribución de streaming, elige una velocidad de bits y una técnica de control de velocidad de bits. Esto se muestra en la Figura 2, de Adobe Media Encoder.
Figura 2. Técnicas de control de velocidad de bits disponibles en Adobe Media Encoder.
Las dos técnicas más comunes son:
• Codificación de tasa de bits constante (CBR), en la que se aplica la misma tasa de bits a todo el archivo, independientemente de la complejidad de la escena. Con CBR, se establece la tasa de bits de destino (Figura 2), pero no la Máxima, porque se supone que la tasa de bits no varía significativamente, aunque normalmente lo hace en un grado limitado, como se muestra en la Figura 3.
La Figura 3 muestra un archivo codificado mediante CBR. Como puede ver en la leyenda de la derecha, la tasa de bits promedio es de 4936 kbps, mientras que el pico es de 5557 kbps. La línea azul claro ondulada es la velocidad de datos flotante, que varía mínimamente a lo largo de la duración del archivo. Las columnas individuales son del tamaño de cada Grupo de Imágenes codificadas dentro del archivo, con un fotograma clave cada tres segundos en este archivo de 29,97 fps.
Figura 3. Un archivo codificado con CBR en el visor de tasas de bits.
Tenga en cuenta que la RBC nunca es una línea plana completa; una variabilidad de aproximadamente 5-10% es normal.
• Codificación de velocidad de bits variable (VBR), donde se cumple la misma velocidad de datos de destino general, pero la velocidad de datos varía a lo largo de la duración del archivo para que coincida con la complejidad de la escena. Con VBR, puede establecer el Objetivo y el Máximo (Figura 2), y en algunas aplicaciones, el mínimo también. Cuando se establece un máximo, la codificación VBR se considera restringida, y VBR a menudo se describe por el porcentaje de la restricción. En la Figura 2, la Tasa de bits máxima es de 2,4 Mbps, o el 200% de la Tasa de Bits Objetivo de 1,2 Mbps. Esta técnica se denominaría 200% de RVB restringido.
La Figura 4 muestra el mismo archivo que la Figura 3 codificado con un 200% de VBR restringido a la misma tasa de bits de destino de 5000 kbps. La tasa de bits promedio es aproximadamente la misma (4988 kbps vs. 4936 kbps), pero la tasa de bits máxima es de 9301 kbps, no del todo el 200%, pero en el estadio. La línea de velocidad de datos azul ondulada varía mucho más significativamente que en la Figura 3, con tasas bajas al principio y picos en todo.
la Figura 4. El mismo archivo codificado con VBR restringido al 200%.
• Muchos productores utilizan CBR por defecto para una parte o la totalidad de su codificación. En los primeros días de la transmisión, las conexiones estaban tan restringidas que se recomendó CBR para evitar picos de velocidad de datos que pudieran detener la reproducción sin problemas. En la nota técnica de Apple TN2224, Apple afirma que » La variabilidad de la velocidad de bits no debe exceder el 10% de la velocidad de bits objetivo.»Más siniestro, el Validador de transmisiones multimedia de Apple, una herramienta utilizada para probar transmisiones HLS, crea una advertencia si la tasa de bits de cualquier segmento de transmisión varía de la tasa de bits objetivo en más de un 10%. No es sorprendente que en una encuesta reciente realizada por el Centro de Aprendizaje en Streaming, 11 de los 16 encuestados indicaron que todavía estaban utilizando la codificación CBR para algunas de sus transmisiones (Figura 5). Es cierto que el número de encuestados es demasiado pequeño para ser estadísticamente significativo, aunque las respuestas son válidas para fines informativos.
la Figura 5. Once de los 16 encuestados seguían utilizando CBR en algunas de sus corrientes, así como en otras técnicas.
Como se puede ver en la Figura 5, existen otras técnicas de control de velocidad de bits, incluido el Factor de Velocidad Constante (CRF) y el CRF limitado. Sin embargo, dado que se usan mejor en casos muy limitados (principalmente contenido sintético como cámaras de pantalla y videos de PowerPoint con audio), no se incluyen en esta discusión.
Segmento 2. CBR Ofrece una Calidad general inferior a la de VBR
La tabla 1 muestra los resultados de un conjunto de comparaciones de calidad realizadas para el próximo libro de Jan Ozer, Encoding by the Numbers, que se publicará en el verano de 2016. Estas pruebas incluyeron archivos codificados a una resolución de 720p a 2 Mbps utilizando FFmpeg, con puntuaciones VQM medidas por la Herramienta de Medición de Calidad de Video de la Universidad de Moscú (VQMT). Con la VQM, las puntuaciones más bajas son mejores, y en la tabla, las puntuaciones en rojo son las peores, las puntuaciones en verde las mejores.
la Tabla 1. Comparación de calidad PSNR para diferentes técnicas de control de velocidad de bits.
Observe las columnas delta de calidad de la Tabla 1. El primero muestra la diferencia de calidad total entre el archivo de menor y mayor calidad del grupo. El segundo muestra la diferencia de calidad entre los clips codificados con VBR restringido de 110% y 200%. Como verá, los productores pueden evitar problemas de calidad transitorios y mantenerse dentro de las recomendaciones de Apple al usar VBR 110% restringido. Sin embargo, los productores que buscan el archivo de la más alta calidad posible, y sin preocuparse por las recomendaciones de Apple, deben usar VBR 200% restringido.
En todos los casos de prueba, el CBR de 2 pasadas entregó la peor calidad, y en cinco de seis, el VBR restringido al 200% entregó la más alta calidad. La única excepción fue el clip de cabeza parlante, donde 1 pase CBR entregó la más alta calidad. Este resultado parece ser una anomalía; en pruebas similares realizadas con tres clips de cabeza parlante de movimiento bajo, los resultados fueron consistentes con todos los demás archivos de la Tabla 1. La mayor variabilidad se observó en el clip Big Buck Bunny, que mostró un diferencial de calidad del 14,54% entre los clips de menor y mayor calidad (columna Delta de calidad Total).
El diferencial de calidad general es relativamente menor en la mayoría de los otros clips. De hecho, es probable que ni siquiera sea observable durante la reproducción normal. Sin embargo, en algunos casos, los archivos CBR pueden presentar un problema más grave; las caídas de calidad transitorias que se muestran en la Figura 1.
Segmento 3: Los problemas de Calidad Transitoria de CBR Son Mucho Más preocupantes
Cuando codifica clips difíciles con parámetros agresivos, la codificación CBR puede causar problemas de calidad graves y transitorios como los que se muestran en la Figura 1. La Figura 6 es la pantalla de Visualización de Resultados de la herramienta VQMT de la Universidad de Moscú, que muestra los puntajes de VQM (puntajes más bajos, mejores) para dos archivos. El archivo en rojo se codificó usando un 110% de VBR restringido, mientras que el archivo en azul es CBR. Los picos de datos con círculos muestran fotogramas, o grupos de fotogramas, en los que la calidad del archivo CBR sufrió dramáticamente en comparación con el archivo VBR restringido al 110%. El peor de estos diferenciales se muestra en la Figura 1.
Figura 6. Los picos de velocidad de datos en la figura inferior muestran fotogramas, o grupos de fotogramas, donde la calidad de CBR es dramáticamente peor que el 110% restringido.
Lo interesante es que la velocidad de bits máxima para el archivo CBR en realidad excede la del archivo VBR. Puede ver esto en la Figura 7, que muestra el Visor de tasas de bits analizando el archivo CBR (en la parte superior) y el archivo VBR. Los aparadores de la derecha muestran las tasas de bits promedio y pico de ambos archivos. El promedio es casi idéntico, mientras que la velocidad máxima para el archivo CBR es de 2623 kbps en comparación con 2539 kbps para el archivo VBR restringido al 110% (pero vea la nota 5 a continuación). Ya sea que su preocupación sea la eficiencia de la transmisión, el cumplimiento de las recomendaciones de variabilidad del 110% de Apple o ambas, el VBR restringido logra un resultado superior, al tiempo que ofrece una calidad general superior y evita las caídas transitorias de calidad que se observan en el archivo CBR.
la Figura 7. Visor de tasas de bits que analiza el archivo CBR en la parte superior y el archivo VBR restringido al 110% en la parte inferior.
Puede ver un breve video que ilustra y explica estos problemas inmediatamente a continuación.
Este video ilustra los problemas de calidad transitorios que a veces se ven con el video CBR. Se ve mejor en pantalla completa (haga clic en el icono en la parte inferior derecha dentro de la ventana de reproducción).
Quizás no sea sorprendente que los resultados de nuestra encuesta revelaran que la restricción porcentual más común utilizada por los encuestados fue el 110% del objetivo, aunque es cierto que, al igual que con los resultados de la encuesta en general, el número de encuestados es demasiado pequeño para ser estadísticamente significativo.
la Figura 8. el 110% del objetivo fue la restricción más común.
Segmento 4: Muchos productores ignoran la Recomendación de Variabilidad del 110% de Apple
La figura 9 muestra algunos de los resultados más interesantes de la encuesta. Es decir, de los que producen archivos HLS, la mayoría de los productores ignoran por completo la recomendación de Apple. Curiosamente, la pregunta demográfica que se hizo en la encuesta fue la cantidad de archivos de video producidos cada semana. Diez encuestados indicaron que estaban produciendo más de 100 archivos a la semana; de este grupo, cinco siguieron religiosamente la recomendación de Apple, cinco la ignoraron por completo.
la Figura 9. La mayoría de los productores ignoran la recomendación de Apple.
Una pregunta de seguimiento interesante habría sido si los encuestados que ignoraron la restricción estaban distribuyendo a dispositivos iOS a través de una aplicación. Desafortunadamente, no hicimos esa pregunta, dejando abierta la preocupación de que Apple rechazará las aplicaciones cuando el video reproducido por la aplicación no cumpla con el requisito de variabilidad del 110%.
Segmento 5: Conclusiones
1. En todas las pruebas, CBR proporcionó la calidad general más baja de todas las alternativas de tasa de bits.
2. En todas las pruebas excepto una, el VBR restringido entregó la más alta calidad
3. Con secuencias desafiantes y parámetros de codificación agresivos, el video codificado con CBR puede mostrar caídas transitorias de calidad, a veces dramáticas.
4. La producción con un 110% de VBR restringido parece evitar estos problemas de calidad sin introducir una variabilidad significativa de la velocidad de datos.
5. En la mayoría de los casos, la codificación con VBR restringido al 200% ofrece la máxima calidad.
6. Muchos productores están ignorando la recomendación de Apple de producir archivos HLS con un máximo de 110% de variabilidad de flujo.segmento 6: Recomendaciones
1. Los productores que actualmente utilizan CBR para algunos, o para todos sus códigos, deben considerar cambiar a VBR restringido.
• El 110% de VBR restringido debe evitar problemas de calidad transitorios.
• * VBR 200% restringido ofrecerá la mejor calidad absoluta.
2. Los productores que distribuyan videos HLS a través de una aplicación probablemente deberían elegir un VBR 110% restringido para evitar problemas de aprobación de la tienda de aplicaciones al enviar inicialmente o al enviar actualizaciones. Los envíos para la reproducción móvil y de escritorio basada en navegador (por ejemplo, sin aplicación) deben considerar el 200% de VBR restringido.
3. Estos resultados variarán según el códec y la herramienta de codificación. Como se describe a continuación, producimos todos los archivos para estas pruebas en FFmpeg utilizando el códec x264. Hemos observado los problemas de calidad transitorios con los archivos CBR en otras herramientas de codificación basadas en x264, pero es posible que no aparezcan en todas las herramientas de codificación.
4. Cualquier cambio de codificación importante, como los recomendados en este documento, no debe implementarse sin pruebas para garantizar la calidad y la jugabilidad.
Apéndice I: Cómo probamos
Aquí hay una breve descripción de los procedimientos utilizados para estas pruebas.
1. Producimos todos los archivos utilizando FFmpeg en una estación de trabajo HP Z840 con Windows 7 Professional con 64 GB de RAM.
2. Los parámetros generales de codificación eran fotogramas clave cada 3 segundos y el preajuste veryslow.
3. Producimos archivos CBR utilizando la misma tasa de bits de destino, la tasa de bits máxima y una configuración de búfer de un segundo de video. Para 4 mbps objetivos, la cadena fue:
-b:v 4000k
-maxrate 4000k
-bufsize 4000k
4. Producimos archivos VBR restringidos ajustando la configuración de velocidad máxima y utilizando un valor de búfer de 1 segundo. Para un objetivo de 4 mbps con CBR restringido al 110%, la cadena era:
-b:v 4000k
-maxrate 4400k
-bufsize 4000k
Tanto para CBR como para VBR, la codificación con un búfer más grande mejoró la calidad del flujo, pero también aumentó la variabilidad del flujo.
5. Se produjeron los archivos CBR analizados en las Figuras 6 y 7, y en el video, utilizando el CBR de 1 pasada, lo que aumentó la calidad del archivo en comparación con el de 2 pasadas (ver Tabla 1), pero también aumentó la variabilidad del archivo. La codificación con CBR de 1 pasada también produjo archivos muy por debajo del objetivo, por lo que tuvimos que codificar varias veces a velocidades cada vez más altas para cumplir con la velocidad de datos objetivo. El uso de codificación CBR de 2 pasadas proporciona archivos de calidad ligeramente inferior, pero también una mayor precisión de velocidad de datos y una variabilidad de flujo reducida.
6. Verificamos que la tasa de datos objetivo de todos los archivos estaba dentro del 5% del objetivo.
7. Producimos todos los puntajes de calidad incluidos anteriormente utilizando la Herramienta de Medición de Calidad de Video de la Universidad de Moscú.