发布 rav1e 0.3,Rust 中的 AV1 编码器

发生 问题 拉夫1e 0.3、高性能视频编码格式编码器 AV1,由 Xiph 和 Mozilla 社区开发。 该编码器是用 Rust 编写的,与参考 libaom 编码器的不同之处在于显着提高了编码速度并更加注重安全性。 项目代码 分发者 在 BSD 许可下。

支持所有主要 AV1 功能,包括支持
内部和外部编码帧(内部 и 其中-帧)、64x64 超级块、4:2:0、4:2:2 和 4:4:4 色度子采样、8 位、10 位和 12 位色深编码​​、RDO(率失真优化)优化失真、用于预测帧间变化和识别变换、控制流量和检测场景截断的各种模式。

AV1格式引人注目 领先 H.264 和 VP9 在压缩能力方面优于 H.XNUMX 和 VPXNUMX,但由于实现它们的算法的复杂性 需要 编码时间显着增加(在编码速度上,libaom 落后 libvpx-vp9 数百倍,落后 x264 数千倍)。
rav1e 编码器提供 11 个性能级别,其中最高级别可提供接近实时的编码速度。 该编码器既可以作为命令行实用程序也可以作为库使用。

在新版本中:

  • 提出更快的编码模式 速度10;
  • 二进制程序集的大小已减小(在 x86_64/Linux 平台上,该库占用约 3MB);
  • 装配时间减少约 14%;
  • 添加了多线程过滤器,用于消除视频中的块伪影(去块);
  • 对于x86_64架构,使用SIMD指令实现了额外的优化,并扩展了自动矢量化的使用;
  • 内存分配操作次数减少了1/6;
  • 在RDO(速率失真优化)中,改进了抑制帧内失真的逻辑;
  • 一些运算已从使用浮点运算转移到整数计算;
  • 第二速度级别编码质量提升1-2%;
  • 额外 新的运动方向预测滤波器(帧内边缘);
  • 添加选项“-S”(--switch-frame-interval)来确定帧之间的切换间隔;
  • 添加了对 wasm32-wasi 平台的构建支持(WebAssembly 系统接口).

来源: opennet.ru

添加评论