En la codificación de vídeo , un grupo de imágenes , o estructura GOP , especifica el orden en el que se disponen los intra y los inter fotogramas . El GOP es una colección de imágenes sucesivas dentro de un flujo de vídeo codificado. Cada flujo de vídeo codificado consta de GOP sucesivos, a partir de los cuales se generan los fotogramas visibles. Encontrar un nuevo GOP en un flujo de vídeo comprimido significa que el decodificador no necesita ningún fotograma anterior para decodificar los siguientes y permite una búsqueda rápida en el vídeo.
Un GOP puede contener los siguientes tipos de imágenes:
Un marco I indica el comienzo de un GOP. Después, siguen varios marcos P y B. En diseños más antiguos, la estructura de ordenación y referencia permitida está relativamente restringida. [3]
Los fotogramas I contienen la imagen completa y no requieren ninguna información adicional para reconstruirlos. Normalmente, los codificadores utilizan estructuras GOP que hacen que cada fotograma I sea un "punto de acceso aleatorio limpio", de modo que la decodificación pueda comenzar de forma limpia en un fotograma I y cualquier error dentro de la estructura GOP se corrija después de procesar un fotograma I correcto.
En los diseños más nuevos que se encuentran en H.264/MPEG-4 AVC y HEVC , los codificadores tienen mucha más flexibilidad en cuanto a las estructuras de referencia. Pueden utilizar las mismas estructuras de referencia que se utilizaban anteriormente en diseños más antiguos, o pueden utilizar más imágenes como referencias y pueden utilizar un ordenamiento más flexible del orden de codificación en relación con el orden de visualización. También se les permite utilizar fotogramas B como referencias al codificar otros fotogramas (B o P). Esta flexibilidad adicional puede mejorar la eficiencia de la compresión, pero puede provocar la propagación de errores si algunos datos se pierden o se corrompen. Una estructura popular para su uso con los diseños más nuevos es el uso de una jerarquía de fotogramas B. Los fotogramas B jerárquicos pueden proporcionar una muy buena eficiencia de compresión y también pueden limitar la propagación de errores, ya que la jerarquía puede garantizar que el número de imágenes afectadas por cualquier problema de corrupción de datos esté estrictamente limitado. [4]
En general, cuanto más fotogramas I tenga el flujo de vídeo, más editable será. Sin embargo, tener más fotogramas I aumenta sustancialmente la velocidad de bits necesaria para codificar el vídeo.
La estructura del GOP se suele denominar con dos números, por ejemplo, M = 3, N = 12. El primer número indica la distancia entre dos fotogramas de anclaje (I o P), también conocida como la longitud de un "mini-GOP". [5] El segundo indica la distancia entre dos imágenes completas (fotogramas I): es el tamaño del GOP. [6] En lugar del parámetro M, se puede utilizar el recuento máximo de fotogramas B entre dos fotogramas de anclaje consecutivos; este es el enfoque utilizado por ffmpeg . [7]
Ejemplos:
La estructura GOP no necesita permanecer fija durante toda la codificación. La variación de N para insertar un fotograma I en un cambio de escena es una técnica bien conocida. [8] Las técnicas más nuevas también varían M en función de la cantidad de movimiento en el video. [9]
Con H.264 y diseños posteriores que permiten estructuras de referencia altamente flexibles, un cuadro B en un GOP puede hacer referencia a un cuadro en un GOP diferente, en particular incluso antes del cuadro I, lo que hace que el cuadro I no sea IDR (no sea un cuadro clave). [10] Un GOP que contiene cualquier cuadro de referencia externa de este tipo se conoce como un "GOP abierto". Lo opuesto es un GOP autónomo, conocido como un "GOP cerrado". [5] En orden de codificación, un GOP puede comenzar con un cuadro B, pero no puede terminar con uno. El GOP abierto comienza con un cuadro B y es un poco más eficiente porque comenzar con un cuadro I significa que se debe agregar un cuadro P adicional al final (un GOP no puede terminar con un cuadro B). [11]
bf entero (codificación, vídeo) Establece el número máximo de fotogramas B entre fotogramas que no son B.