• No results found

3. Equipment Selection And Device Arrangement

3.4 Test Apparatus Assembly

3.4.2 Determining The Orientation Of The Components

3.4.2.1 Orientation Of The Laser Diode Assembly

x265 tiene una serie de opciones predefinidas que hacen intercambios entre la velocidad de codificación (marcos codificados por segundo) y la eficiencia de compresión (calidad por bit en el flujo de bits). El preajuste predeterminado es médium. Provee un equilibrio razonable entre calidad posible y el gasto de ciclos de CPU. A medida que los perfiles se desplazan hacia la derecha (ver figura 2.1) se intensifica el uso de funciones y herramientas que posibilitan mayores niveles de compresión y calidad de la imagen codificada, a expensas del gasto computacional. A medida que se avanza hacia la izquierda se maximiza la rapidez en el proceso de codificación a expensas de la calidad de la imagen y el bitrate de la imagen codificada.

H.265/HEVC

Figura 2.1. Perfiles de codificación de H.265

A continuación, se explicarán algunos de los parámetros que se encuentran predefinidos y que de su ajuste depende la calidad con que se realice el proceso de codificación y compresión.

Tamaño máximo de CU (--ctu, -s <64 | 32 | 16>)

Cuanto mayor sea el tamaño máximo de CU (Coding Unit), más CTB(Coding Tree Block) de la imagen puede codificar x265 eficientemente, dando grandes reducciones en la tasa de bits. Sin embargo, esto afecta la velocidad de codificación, pues menos filas de CTB pueden codificarse en paralelo, lo que provoca una pérdida de paralelismo. Debido a esto, el más rápido de los preajustes usa un tamaño de CU de 32. El valor predeterminado es 64.

H.265/HEVC

Al usar 16 o 32, el codificador no analizará el costo de las CU por debajo del umbral mínimo, ahorrando cantidades considerables de cálculo con un aumento predecible en la tasa de bits. Esta configuración tiene un gran efecto en el rendimiento en los preajustes más rápidos. El valor predeterminado es 8 (un valor mínimo de 8x8 en HEVC se traduce en mejor eficiencia de compresión). Todos los codificadores en un solo proceso deben usar la misma configuración para el rango de tamaño CU. --ctu y --min-cu-size debe ser coherente para todos ellos, ya que el codificador configura varias estructuras de datos globales claves basado en este rango.

Número máximo de imágenes B consecutivas (--bframes [0-16])

Si este parámetro es 0 el codificador realiza codificación forzada P/I de baja latencia. Por defecto, el valor es 4. Este parámetro tiene un efecto cuadrático sobre la cantidad de memoria asignada y la cantidad de trabajo realizado por el algoritmo de Trellis en la determinación dinámica de cuadros tipo B.

Nivel de esfuerzo para determinar la ubicación de la imagen B(--b-adapt)

Con b-adapt en 0, la estructura GOP (group of pictures) se fija en función de los valores de

keyint y bframes.

Con b-adapt en 1, se usa un lookahead ligero para elegir la ubicación de la imagen tipo B. Con b-adapt en 2 se realiza una selección de ruta B de Viterbi.

Número de cuadros para la búsqueda anticipada de decisiones de tipo slice (--rc- lookahead)

Es un factor determinante para la latencia del codificador. Un buffer de anticipación más largo, tendrá las decisiones de corte de escena más precisas, mejorando la capacidad adaptativa. Tener un lookahead más grande que el intervalo máximo de fotograma claves no es útil. Por defecto toma el valor de 20

H.265/HEVC

Umbral de colocación forzada de imágenes I (--scenecut, --no-scenecut)

Medida de la colocación forzada de imágenes I. Cuanto mayor es el valor de umbral, más agresiva es la colocación de una imagen tipo I. Un valor de este parámetro igual a cero deshabilita la colocación adaptativa de cuadros I. Por defecto toma el valor de 40.

Método de estimación de movimiento (--me)

En general, cuanto mayor sea el número de este parámetro, más complejo será el método de estimación de movimiento. H.265 contempla varios métodos entre los que se encuentran: 1. El método de diamantes.

2. El método de hexágonos.

3. Método Multi-Hexágonos el cual es una adaptación del método de búsqueda utilizado por x264 para preajustes más lentos.

4. Star es un método en tres pasos adaptado del codificador HM: una búsqueda de patrón en forma de estrella seguida de un análisis opcional básico, seguido de un análisis opcional optimizado en forma de estrella.

5. Método Completo: Realiza una estimación exhaustiva. En orden de magnitud es más lento que todas las demás búsquedas.

Rango de estimación de movimiento (--merange)

Por defecto 57. El valor predeterminado se deriva del tamaño de CTU predeterminado (64) menos la media longitud de interpolación de luminancia (4) menos la distancia de subducción máxima (2) menos un píxel extra. Solo en caso de que se utilice el método de búsqueda hexadecimal. Si el rango de búsqueda fuera más grande que esta medida, se requeriría otra fila de procesamiento de CTU para los cuadros de referencia.

Análisis de Particiones de movimiento (--rect, --no-rect)

Habilita el análisis de particiones de movimiento rectangulares Nx2N y 2NxN (50/50 divisiones, dos direcciones). Por defecto, Inhabilitado.

Análisis de particiones de movimiento asimétricas (--amp, --no-amp)

Habilita el análisis de particiones de movimiento asimétricas (75/25 divisiones, cuatro direcciones). En los niveles de rd (rate distorsion) desde 0 a 4, las particiones AMP solo se

H.265/HEVC

consideran en tamaños de CU 32x32 y menores. En los niveles de rd de 5 y 6, solo se considerarán particiones AMP como candidatos combinados (sin búsqueda de movimiento) a CU de 64x64, y como combinados o inter candidatos a CU menores de 64x64. Por defecto este parámetro se encuentra inhabilitado.

--max-merge: Número máximo de bloques candidatos vecinos (espaciales y temporales) que el codificador puede considerar para fusionar predicciones de movimiento.

Si un candidato de fusión no genera ningún residuo, se selecciona inmediatamente como un "salto". De lo contrario, los candidatos de fusión se prueban como parte de la estimación de movimiento cuando se busca el menor costo entre opción. El número de candidato máximo está codificado en el SPS y determina el costo de bit de las UC de fusión de señalización. Por defecto, 2.

Método de predicción rápido (--fast-intra, --no-fast-intra)

Implica que solo son chequeados entre 8 y 10 vectores en saltos de 5 o 6. La predicción intra-angular realizada se basa en la predicción de los vectores de mejor desempeño. En los perfiles medium y placebo se analizan los 33 vectores de predicción direccional. Además, en ultrafast no se realiza la colocación forzada de imágenes I (scenecut=0) por lo que el buffer de colocación anticipada (Lookahead) tiene un tamaño pequeño, incidiendo de forma determinante en la latencia del proceso de codificación. Ultrafast posee una estructura fija de GOP con 3 imágenes tipo B en cada GOP. Ello implica que el nivel de esfuerzo del codificador para determinar la colocación de este tipo de imágenes es mínimo. En el caso de medium y placebo se utilizan algoritmos de Trellis para determinar la colocación de imágenes tipo B, lo que incide directamente en el monto total del proceso de codificación.

Filtro SAO (--sao, --no-sao)

Alterna el filtro de bucle de desplazamiento adaptativo de muestra, habilitado por defecto.

--weightp, -w, --no-weightp

Habilita la predicción ponderada en segmentos P. Esto permite un análisis de ponderación a futuro, lo que influye en recortar decisiones y viabilizar el análisis de ponderación en el

H.265/HEVC

codificador principal que hace posible que las muestras de referencia P tengan una función de peso aplicada a ellos antes de usarlos para compensación de movimiento. En videos que tienen cambios de iluminación, puede dar una gran mejora en la eficiencia de la compresión.

Modo de operación de cuantificación adaptativa (--aq-mode).

Aumenta o reduce la cuantificación por bloque, basado en el análisis de complejidad de la imagen de origen. Cuanto más complejo es el bloque, más se usa la cuantificación. Esto compensa la tendencia del codificador para gastar demasiados bits en áreas complejas y no lo suficiente en áreas planas.

0.deshabilitado.

1.AQ habilitado (predeterminado). 2.AQ habilitado con auto-varianza.

Campos de vector de movimiento (--cutree, --no-cutree)

Habilita el uso de los campos del vector de movimiento para determinar la cantidad de reutilización de cada bloque, ajusta los factores de cuantificación adaptativa. Los bloques CU que son muy reutilizados como referencia de movimiento para cuadros posteriores reciben mayor cantidad de bits. Mientras que los bloques CU que se cambian rápidamente y no se referencian reciben menos bits. Esto tiende a mejorar los detalles en los fondos de video con menos detalles en áreas de alto movimiento. Por defecto, habilitado.

Nivel de la razón de distorsión (--rdoq-level <0|1|2>, --no-rdoq-level)

Especifica la complejidad del análisis de la razón de distorsión con cuantificación: En el nivel 0, el costo de la razón de distorsión no se considera en cuantía.

En el nivel 1, el costo de la razón de distorsión se usa para encontrar los valores de redondeo óptimos para cada nivel.

En el nivel 2, el costo de la razón de distorsión se utiliza para descartar grupos de codificación 4x4, incluyendo el costo de señalización del grupo dentro del mapa de bits del grupo. Si la distorsión total de no señalizar a todo el grupo de codificación es menor que el costo de la razón, el bloque se descarta.

H.265/HEVC

Razón de bit (--bitrate)

Permite el control de tasa ABR (Available Bit Rate) en un solo paso. Especifica la tasa de bits objetivo en kbps. El valor predeterminado es 0 (CRF)

Velocidad de bits variable controlada por calidad (--crf)

Es el método de control de velocidad predeterminado; no trata de llegar a ningún objetivo en particular sobre la tasa de bits, en su lugar, trata de lograr una calidad uniforme dada y el tamaño del flujo de bits está determinado por complejidad de la video fuente. Cuanto mayor sea el factor de velocidad, mayor será la cuantificación y menor será la calidad. El factor de control predeterminado es 28.