Se ha publicado la versión 3.0 de la biblioteca SVT-AV1 (Scalable Video Technology AV1) con implementaciones del codificador y decodificador del formato de codificación de video AV1, que utiliza las capacidades de paralelización de hardware presentes en las CPU modernas de Intel para acelerar su funcionamiento. Este proyecto fue creado por Intel en asociación con Netflix con el objetivo de alcanzar un nivel de rendimiento adecuado para la transcodificación de video en tiempo real y su uso en servicios de video bajo demanda (VOD). Actualmente, el desarrollo se lleva a cabo bajo los auspicios de la alianza Open Media (AOMedia), que supervisa el desarrollo del formato de codificación de video AV1. Anteriormente, el proyecto se desarrolló en el marco de OpenVisualCloud, que también desarrolla los codificadores SVT-HEVC y SVT-VP9. El código se distribuye bajo la licencia BSD.
SVT-AV1 puede ser compilado para sistemas basados en cualquier arquitectura que tenga un compilador compatible con el estándar C99, pero el mejor rendimiento se alcanza en sistemas x86_64, donde se aplican optimizaciones en ensamblador basadas en instrucciones SIMD (se recomienda que en la CPU haya soporte para AVX2, aunque con el soporte SS2 como mínimo es suficiente). El consumo de memoria depende del número de núcleos de procesador utilizados en la codificación, regulados por la opción "—lp". Debido a la complejidad de los algoritmos utilizados en AV1, la codificación de este formato requiere significativamente más recursos que otros formatos; por ejemplo, el codificador estándar del proyecto AV1 requiere 5721, 5869 y 658 veces más cálculos en comparación con los codificadores x264 (perfil "main"), x264 (perfil "high") y libvpx-vp9.
Entre los cambios en la nueva versión de SVT-AV1:
- Se ha realizado una optimización de los compromisos entre calidad/velocidad para los preajustes que fijan niveles de calidad medio y alto. En el modo "fast-decode 2" para los preajustes M3-M10, la velocidad aumentó entre un 15% y un 25% manteniendo el nivel de calidad. Para los preajustes M0-M2, el nivel de calidad ha mejorado aproximadamente un 1% según la evaluación mediante el método BD-Rate (Bjontegaard-Delta).
- En el modo "fast-decode 1" en comparación con "fast-decode 0", el número de ciclos de decodificación se ha reducido aproximadamente en un 10% con un aumento de las pérdidas de solo un 1% según la métrica BD-Rate.
- En sistemas ARM se han implementado optimizaciones utilizando extensiones Neon y SVE2, lo que ha permitido aumentar el rendimiento de la codificación de flujos con alta profundidad de color y resoluciones de 480p a 1080p entre un 10% y un 25%.
- Se han trasladado cambios del fork SVT-AV1-SPY que mejoran la percepción de calidad al usar el modo "tune 0".
- Se ha añadido el modo "avif", que consume menos recursos al codificar imágenes estáticas.
- Se han mejorado las pruebas unitarias para el código que utiliza instrucciones Arm Neon y SVE2.
Fuente: opennet.ru
