Lanzamento de rav1e 0.5, o codificador AV1

Produciuse o lanzamento de rav1e 0.5.0, un codificador para o formato de codificación de vídeo AV1. O produto está desenvolvido polas comunidades Mozilla e Xiph e difire da implementación de referencia de libaom, escrita en C/C++, ao aumentar a velocidade de codificación e unha maior atención á seguridade (a eficiencia da compresión aínda queda atrás). O produto está escrito na linguaxe de programación Rust con optimizacións de montaxe (72.2% - ensamblador, 27.5% - Rust), o código distribúese baixo a licenza BSD. As compilacións listas están preparadas para Windows e macOS (as compilacións para Linux omítense temporalmente debido a problemas co sistema de integración continua).

rav1e admite todas as funcións fundamentais de AV1, incluíndo soporte para fotogramas intra e intercadros, superbloques 64x64, submostraxe cromático 4:2:0, 4:2:2 e 4:4:4. , 8, 10 e 12 codificación de profundidade de cor de bits, optimización da distorsión RDO (optimización de distorsión de velocidade), varios modos para predicir cambios entre cadros e detectar transformacións, control de taxa de bits e detección de truncamento de escenas.

O formato AV1 está notablemente por diante de H.264 e VP9 en canto a capacidades de compresión, pero debido á complexidade dos algoritmos que os implementan, require moito máis tempo para a codificación (en velocidade de codificación, libaom está centos de veces por detrás de libvpx-). vp9, e miles de veces detrás de x264). O codificador rav1e ofrece 11 niveis de rendemento, o máis alto dos cales ofrece velocidades de codificación case en tempo real. O codificador está dispoñible tanto como unha utilidade de liña de comandos como como unha biblioteca.

A nova versión contén os seguintes cambios:

  • Aceleración significativa do códec;
    Lanzamento de rav1e 0.5, o codificador AV1
  • Corrixiuse un erro que facía que o codificador fallase en determinados tamaños de vídeo;
  • Usando instrucións AVX2 para acelerar significativamente a estimación de Wiener de 13 bits por canle (ata 16 veces). Do mesmo xeito, engadiuse o uso de instrucións SIMD, o que permitiu acelerar os cálculos ata 7 veces en condicións similares;
  • Moitas correccións e optimizacións menores para plataformas x86, arm32 e arm64.

Fonte: opennet.ru

Engadir un comentario