После почти года разработки организация Xiph.Org, занимающаяся разработкой свободных видео- и аудиокодеков, представила релиз аудиокодека Opus 1.5, обеспечивающего высокое качество кодирования и минимальную задержку как при сжатии потокового звука с высоким битрейтом, так и при сжатии голоса в ограниченных по пропускной способности приложениях VoIP-телефонии. Эталонные реализации кодировщика и декодировщика распространяются под лицензией BSD. Полные спецификации формата Opus общедоступны, бесплатны и утверждены в качестве интернет-стандарта (RFC 6716).
Кодек создан путем комбинации лучших технологий из разработанного организацией Xiph.org кодека CELT и открытого компанией Skype кодека SILK. Кроме Skype и Xiph.Org в разработке Opus также приняли участие такие компании, как Mozilla, Octasic, Broadcom и Google. Задействованные в Opus патенты предоставлены участвовавшими в разработке компаниями для неограниченного пользования без выплаты лицензионных отчислений. Все связанные с Opus интеллектуальные права и лицензии на патенты автоматически делегируются для использующих Opus приложений и продуктов, без необходимости дополнительного согласования. Отсутствуют ограничения на область применения и создание альтернативных сторонних реализаций. При этом все предоставленные права отзываются в случае развязывания затрагивающего технологии Opus патентного разбирательства против любого пользователя Opus.
Opus отличается высоким качеством кодирования и минимальной задержкой как при сжатии потокового звука с высоким битрейтом, так и при сжатии голоса в ограниченных по пропускной способности приложениях VoIP-телефонии. Ранее Opus был признан лучшим кодеком при использовании битрейта 64Kbit (Opus обогнал таких конкурентов, как Apple HE-AAC, Nero HE-AAC, Vorbis и AAC LC). Из продуктов, поддерживающих Opus из коробки, можно отметить браузер Firefox, фреймворк GStreamer и пакет FFmpeg.
Основные возможности Opus:
- Битрейт от 5 до 510 Kbit/s;
- Частота дискретизации от 8 до 48KHz;
- Продолжительность кадров от 2.5 до 120 миллисекунд;
- Поддержка постоянного (CBR) и переменного (VBR) битрейтов;
- Поддержка узкополосного и широкополосного звука;
- Поддержка голоса и музыки;
- Поддержка стерео и моно;
- Поддержка динамической настройки битрейта, пропускной способности и размера кадра;
- Возможность восстановления звукового потока в случае потери кадров (PLC);
- Поддержка до 255 каналов (многопоточные кадры)
- Доступность реализаций с использованием арифметики с плавающей и фиксированной запятой.
Ключевые новшества Opus 1.5:
- Расширено применение технологий машинного обучения в кодировщике и декодировщике.
- Реализован механизм “Deep Redundancy” (DRED), использующий машинное обучение для восстановления фрагментов звука, утраченных из-за потери пакетов.
- Улучшено восстановление звукового потока в случае потери кадров при помощи механизма машинного обучения Deep PLC (Packet Loss Concealment).
- Улучшено качество передачи речи на низких битрейтах (~ 6 Кбит/с).
- Добавлены дополнительные оптимизации, использующие наборы инструкций AVX2 (x86) и Neon (ARM).
- Добавлена поддержка формата объёмного звучания Ambisonics 4-го и 5-го порядка, учитывающего распространение звука не только в горизонтальной плоскости, но и в вертикальной (для определения сверху или снизу источник звука).
По горячим следам сформирован выпуск Opus 1.5.1, в котором устранены проблемы со сборкой с использованием сборочной системы Meson (сборку с использованием CMake проблема не затронула).