Выпуск rav1e 0.2, кодировщика AV1 на языке Rust

Доступен выпуск rav1e 0.2, высокопроизводительного кодировщика формата кодирования видео AV1, развиваемого сообществами Xiph и Mozilla. Кодировщик написан на языке Rust и отличается от эталонного кодировщика libaom значительным увеличением скорости кодирования и повышенным вниманием к обеспечению безопасности. Код проекта распространяется под лицензией BSD.

Поддерживаются все основные возможности AV1, включая поддержку
внутренне- и внешне-кодированных кадров (intra- и inter-кадров), суперблоков 64×64, цветовой субдискретизации 4:2:0, 4:2:2 и 4:4:4, 8-, 10- и 12-разрядного кодирования глубины цвета, RDO (Rate-distortion optimization) оптимизации искажений, различные режимы предсказания межкадровых изменений и выявления трансформаций, управление скоростью потока и выявление усечения сцены.

Формат AV1 заметно опережает x264 и libvpx-vp9 по уровню сжатия, но из-за усложнения алгоритмов требует существенно больше времени для кодирования (по скорости кодирования libaom отстаёт от libvpx-vp9 в сотни раз, а от x264 в тысячи раз).
Кодировщик rav1e предоставляет 11 уровней производительности, наивысшие из которых позволяют добиться скорости, близкой к кодированию в режиме реального времени. Кодировщик доступен как в форме утилиты командной строки, так и в виде библиотеки.

В новой версии:

  • Проведены оптимизации, которые позволили увеличить производительность на 40%-70%, по сравнению с первым выпуском (в зависимости от настроек кодирования);
  • В cli-интерфейс добавлена опция «serialize» для сериализации и десериализации параметров кодирования;
  • Добавлена генерация отладочной информации в формате dwarf;
  • В cli для macOS и Linux добавлен флаг «—benchmark»;
  • Добавлена возможность настройки сегментации при помощи опции SpeedSetting (отключена по умолчанию так как может привести к рассинхронизации).

Источник: opennet.ru

Добавить комментарий