FFmpeg 8.1 现已推出,支持 JPEG XS、新增 3D 音频功能和 Vulkan 加速。

经过七个月的开发,FFmpeg 8.1 多媒体软件包正式发布。它包含一系列应用程序和库,用于处理各种多媒体格式(包括音频和视频格式的录制、转换和解码)。该软件包使用 C 语言编写,并以 LGPL 和 GPL 许可证发布。

FFmpeg 8.1 的变化包括:

  • JPEG XS 图像格式新增了解析器、编码器和解码器,以及多媒体容器打包器和解包器(复用器/解复用器)。JPEG XS 定位为轻量级图像编码系统,可最大限度地降低编码和解码延迟,并专注于优化超高质量图像序列(最高可达 8K)的传输。JPEG XS 显著降低了所需的通信带宽,且不会造成明显的质量损失。该实现基于 libsvtjpegxs 库。
  • 新增了一个实验性解码器,用于支持 xHE-AAC(高效高级音频编码)音频编码格式,并采用 Mps212 环绕声方案(212 声道布局的 MPEG 环绕声)。xHE-AAC 被 Netflix 流媒体服务采用,并应用于 Digital Radio Mondiale 数字广播技术。该编解码器的显著特点包括:支持广泛的比特率范围(12 至 300 kbps)、高压缩比、恒定音量播放功能、在任何音量下都能保持高清音质、针对嘈杂环境的动态范围管理配置文件,以及添加元数据以允许接收端进行信号丢失恢复。
  • libmpeghdec 库用于实现 NGA(下一代音频)格式的交互式和环绕声解码器,该格式在 MPEG-H 音频和视频编码标准中定义。
  • 增加了对 IAMF(沉浸式音频模型和格式)格式的空间音频进行打包和解包的支持,以及 Ambisonics 模式下的环绕声,它不仅考虑了声音在水平面上的传播,还考虑了声音在垂直面上的传播(以确定声源是在上方还是下方)。
  • 新增了对 LCEVC(低复杂度增强视频编码)格式元数据的解析和重定向支持。LCEVC 格式在标准编解码器之上增加了一个元数据层,以提升视频质量。新增了对将 LCEVC 质量增强层导出到 MPEG-TS(MPEG 传输流)多媒体容器的支持。
  • 本文使用 Vulkan 图形 API 实现了 Apple ProRes 编解码器和 DPX(数字图像交换)帧速率格式(用于电影制作)的解码器。基于 Vulkan 的实现通过硬件加速、操作并行化和计算着色器的应用,显著提升了性能。基于 Vulkan AI 的编解码器实现也得到了优化。为了加快编解码器初始化速度,本文实现了使用预编译 GLSL 着色器的功能,从而无需在运行时进行编译。
  • ffmpeg 中使用的 swscale(软件缩放器)库用于软件缩放和颜色转换,它实现了一个使用 Vulkan 图形 API 的后端来加速操作。
  • 添加了使用 D3D12 (Direct3D 12) API 进行硬件加速编码的 H.264 和 AV1 编码器变体。
  • 新增了 H.264/HEVC 编码器的变体,该变体利用了瑞芯微芯片中可用的硬件视频编码功能。
  • 为 IP 摄像机中使用的 HXVS 和 HXVT 格式的多媒体容器添加了解包器(解复用器)。
  • 我们已经实现了 EXIF 元数据解析器以及用于解析元数据的配套 API。
  • ffprobe 工具已更新,新增了“-codec”(“-c”)选项,用于选择特定的解码器实现。
  • ffmpeg 工具已更新,支持 HEIF 图像的分块存储(将非常大的图像保存为一组较小的图像)。
  • 旧的HLS协议处理程序已被移除。
  • 新过滤器:
    • drawvg 使用 libcairo 库在视频帧上渲染矢量图形。
    • vpp_amf 使用 AMD 高级媒体框架进行硬件加速,实现视频缩放和色彩空间转换。
    • vf_scale_d3d12、vf_deinterlace_d3d12、vf_mestimate_d3d12 用于使用 Direct3D 12 图形 API 进行硬件加速的视频缩放、反交错和运动分析。
    • gfxcapture 用于使用 Windows.Graphics.Capture API 在 Windows 平台上捕获窗口和屏幕内容。
    • 为LCEVC元数据添加了比特流过滤器。

来源: opennet.ru

添加评论