Thư viện SVT-AV1 4.2.0 (Công nghệ Video Khả năng Mở rộng AV1) đã được phát hành, bao gồm các triển khai bộ mã hóa và giải mã định dạng mã hóa video AV1, được tăng tốc bởi các phần mở rộng tính toán song song phần cứng có trong bộ xử lý x86_64 và ARM. Dự án được Intel hợp tác với Netflix tạo ra nhằm đạt được mức hiệu suất phù hợp cho việc chuyển mã video tức thời và sử dụng trong các dịch vụ video theo yêu cầu (VOD). Quá trình phát triển hiện đang được tiến hành dưới sự bảo trợ của Liên minh Truyền thông Mở (AOMedia), đơn vị giám sát việc phát triển định dạng mã hóa video AV1. Dự án trước đây được phát triển trong dự án OpenVisualCloud, đơn vị cũng phát triển các bộ mã hóa SVT-HEVC và SVT-VP9. Mã nguồn được phân phối theo giấy phép BSD.
SVT-AV1 может быть собран для систем на базе любых архитектур, для которых имеется компилятор с поддержкой стандарта C99, но наилучшая производительность достигается на системах x86_64, для которых применяются ассемблерные оптимизации на базе инструкций SIMD (желательно наличие в CPU поддержки AVX2, но в качестве минимума достаточно и SSE2). Потребление памяти зависит от числа задействованных при кодировании процессорных ядер, регулируемых опцией «—lp». Из-за усложнения применяемых в AV1 алгоритмов, для кодирования данного формата требуется существенно больше ресурсов, чем для других форматов.
Trong số những thay đổi trong bản phát hành mới của SVT-AV1:
- Реализован новый режим оптимизации TUNE-VMAF, позволяющий экономить до 15% битрейта при том же уровне визуального качества в соответствии с метрикой VMAF, оценивающей человеческое восприятие, и незначительном уменьшении качества по метрике PSNR, оценивающей точность воспроизведения исходных данных на уровне пикселей.
- Реализован однопоточный режим кодирования, который можно использовать с режимом случайного доступа (Random Access).
- В пресетах M3-M5 проведена оптимизация компромиссов качество/скорость при кодировании в режиме случайного доступа.
- Добавлены новые опции командной строки: —cqp, —enable-intrabc, —hbd-mds, —enable-kf-tf.
- Добавлена поддержка вывода в raw-формате OBU в дополнение к ранее поддерживаемому формату IVF.
- Проведена оптимизация компромиссов качество/скорость при кодировании в режиме «—rtc» (Real-Time Communications), а также повышена эффективность сжатия и снижено потребление памяти при кодировании в низких разрешениях. Добавлены параметры «—max-intra-bitrate-pct» и «—max-inter-bitrate-pct».
- Добавлен режим кодирования в реальном времени с постоянным битрейтаом — CBR (Constant Bitrate), реализованный с использованием фильтра Калмана и поддерживающий цикличное обновление с размазыванием сложных изменений по нескольким кадрам и перекодирование кадров с худшим качеством, если они не укладываются в заданный битрейт.
- В режиме «—rtc» добавлена поддержка динамического изменения настроек битрейта и пресетов на лету.
- Добавлен API для управления опорными кадрами, поддерживающий LTR (Long-Term Reference) и двухуровневую структуру наборов опорных кадров (RPS, Reference Picture Set).
- Переработана реализация энтропийного кодирования, в которой обеспечена прямая запись в буфер сегментов (tile-buffer), упрощён арифметический кодер и реализовано отсечение остаточных данных после квантования.
- Добавлены новые оптимизации CDEF (Constrained Directional Enhancement Filter) для исключения размытия в областях смены контраста, MD (Mode Decision) и ME (Motion Estimation) для быстрой обработки статичных объектов.
- Оптимизировано определение наличия на видео изображения с содержимым экрана для применения специфичных методов кодирования для сохранения чёткости текста.
- Добавлена сборочная опция ENABLE_STACK_PROTECTOR для отключения флага «-fstack-protector», позволяющая убрать накладные расходы на проверку переполнения стека.
- Добавлены дополнительные оптимизации для архитектуры ARM и задействованы расширенные инструкции NEON для ускорения вычислений.
Nguồn: opennet.ru
