Después de casi un año de desarrollo, está disponible el paquete multimedia FFmpeg 8.0, que incluye un conjunto de aplicaciones y una colección de bibliotecas para realizar operaciones con varios formatos multimedia (grabación, conversión y decodificación de formatos de audio y video). El paquete está escrito en C y se distribuye bajo las licencias LGPL y GPL.
Entre los cambios en FFmpeg 8.0:
- Se han implementado los códecs FFV1 (codificación y decodificación) y ProRes RAW (solo decodificación) basados en la API gráfica Vulkan 1.3, notables por un aumento significativo en el rendimiento gracias a la paralelización de operaciones. Se están probando codificadores y decodificadores basados en la API Vulkan para formatos ProRes y VC-2. En los códecs basados en la API Vulkan se utilizan shaders computacionales y se proporciona aceleración por hardware.
- Se han utilizado extensiones de la API gráfica Vulkan para la aceleración por hardware de la decodificación de video VP9, VVC (basado en VAAPI) y H.264 (basado en OpenHarmony).
- Se han utilizado extensiones de la API gráfica Vulkan para la aceleración por hardware de la codificación de video AV1 y H.264 (basado en OpenHarmony).
- Se han añadido decodificadores para formatos de codificación de video APV (Advanced Professional Video), ProRes RAW y RealVideo 6.0.
- Se han añadido decodificadores para formatos de codificación de audio Sanyo LD-ADPCM, Xbox ADPCM IMA y G.728.
- Se ha implementado un codificador para el formato APV (Advanced Professional Video), construido sobre la biblioteca libopenapv.
- En el decodificador del formato de video VVC (Versatile Video Coding, H.266) se ha implementado soporte para las extensiones IBC (Inter Block Copy), SSC (Screen Content Coding) y ACT (Adaptive Color Transform), así como el modo de paleta. Se ha añadido una variante del decodificador del formato de video VVC que utiliza VAAPI. Se ha implementado la posibilidad de usar el formato VVC en el contenedor multimedia Matroska.
- Se ha añadido soporte para la codificación del canal alfa (transparencia) en la biblioteca libx265.
- Se ha añadido un envoltorio para utilizar codificadores y decodificadores acelerados por hardware del proyecto OpenHarmony.
- Se ha añadido soporte para la codificación de imágenes animadas en formato JPEG XL, utilizando la biblioteca libjxl.
- Se ha mejorado el soporte para audio y video multicanal en formato FLV v2.
- Se ha añadido soporte para formatos AV1 y APV en el empaquetador de contenedores multimedia MP4.
- Se ha eliminado la desactivación de la autovectorización durante la compilación en GCC en sistemas x86, ARM y AArch64.
- Se han implementado optimizaciones de ensamblador basadas en instrucciones AVX-512, lo que ha permitido acelerar significativamente algunas operaciones utilizadas en la decodificación de video.
- Nuevos filtros:
- whisper para el reconocimiento automático de voz utilizando el modelo AI Whisper.
- colordetect para determinar el rango efectivo de valores y el modo de canal alfa.
- pad_cuda para agregar campos a la entrada del flujo de video utilizando CUDA.
- scale_d3d11 para redimensionar videos usando la API gráfica Direct3D 11.
- Se ha descontinuado el soporte para versiones de la biblioteca OpenSSL anteriores a 1.1.0.
- Se ha descontinuado el soporte para el ensamblador yasm (solo se mantiene el soporte para nasm).
- Se han declarado obsoletos los codificadores basados en la API de OpenMAX (Open Media Acceleration).
- La verificación está habilitada por defecto. de certificados TLS (debido a un cambio en el comportamiento durante el procesamiento TLS, el número de versión de FFmpeg ha cambiado significativamente).
Fuente: opennet.ru
