Организация Xiph.Org, занимающаяся разработкой свободных видео- и аудиокодеков, представила релиз аудиокодека Opus 1.4.0, обеспечивающего высокое качество кодирования и минимальную задержку как при сжатии потокового звука с высоким битрейтом, так и при сжатии голоса в ограниченных по пропускной способности приложениях 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.4:
- Проведена оптимизация параметров кодирования, нацеленная на повышение субъективных показателей качества звука при включении FEC (Forward Error Correction) для восстановления повреждённых или потерянных пакетов на битрейтах от 16 до 24kbs (LBRR, Low Bit-Rate Redundancy).
- Добавлена опция OPUS_SET_INBAND_FEC для включения режима коррекции ошибок FEC, но без принудительной активации режима SILK mode (FEC не будет использоваться в режиме CELT).
- Улучшена реализация режима DTX (Discontinuous Transmission), обеспечивающего приостановку передачи трафика при отсутствии звука.
- Добавлена поддержка сборочной системы Meson и улучшена поддержка сборки с использованием CMake.
- Добавлен экспериментальный механизм “Real-Time Packet Loss Concealment” для восстановления фрагментов речи, утраченных в результате потери пакетов, работающий через применение технологий машинного обучения.
- Добавлена экспериментальная реализация механизма “deep redundancy“, использующего систему машинного обучения для повышения эффективности восстановления звука после потери пакетов.