Opus (кодек)

Opusвільний та відкритий звуковий кодек, прийнятий у вересні 2012 Internet Engineering Task Force (IETF) як стандартний аудіо-кодек для інтернет-застосунків[3] та стандартизований у RFC 6716.

Opus
Розширення файлу: ..opus
MIME-тип: audio/opus[1]
Розробник: Jean-Marc Valin, Koen Vos
Тип ліцензії: 3-пунктова ліцензія BSD[2]
Рік випуску: вересень 2012
Остання версія: 1.3.1
Дата випуску останньої версії: 12 квітня, 2019 (2019-04-12)
Тип формату: аудіокодек
Міститься у: Ogg, Matroska, WebM, MPEG-TS
Розширений з: SILK, CELT
Стандарт(и): RFC 6716
Сайт: opus-codec.org

Історія

Перший стабільний реліз кодека відбувся одночасно зі стандартизацією кодека комітетом IETF, що займаються розвитком протоколів і архітектури Інтернету. Кодек Opus та його еталонна реалізація стандартизовані у RFC 6716, в якому Opus першим визначений як стандартний аудіо-кодек для інтернету, що не вимагає ліцензійних відрахувань і не перетинається з запатентованими технологіями.

Формуванню RFC передував трирічний підготовчий етап, в рамках якого було випущено 16 попередніх варіантів специфікації. Наступною стадією розвитку стане додання RFC статусу чорнового стандарту (Draft Standard), що фактично означає повну стабілізацію протоколу та врахування всіх висловлених зауважень. На стадії чорнового стандарту перебуває більшість протоколів мережі, і лише одиниці після багатьох років існування досягають найвищого статусу — стандарт Інтернету (всього статус стандарту отримали близько 70 RFC).

Кодек створений шляхом комбінації найкращих технологій з розробленого організацією Xiph.org кодека CELT і відкритого компанією Skype кодека SILK. Крім Skype і Xiph.org в розробці Opus також взяли участь такі компанії, як Mozilla, Octasic, Broadcom і Google.

Ліцензування

Еталонні реалізації кодувальника і декодувальника Opus поширюються під 3-пунктовою ліцензією BSD. Повні специфікації формату загальнодоступні і безплатні. Всі використовувані в Opus патенти надані компаніями, котрі брали участь у розробці, для необмеженого користування без виплати ліцензійних відрахувань. Всі пов'язані з Opus інтелектуальні права і ліцензії на патенти автоматично делегуються для застосунків і продуктів, що використовують Opus, без необхідності додаткового погодження. Відсутні будь-які обмеження на область застосування і створення альтернативних сторонніх реалізацій. При цьому всі надані права відкликаються у разі розв'язування патентного розгляду, що зачіпає технології Opus, проти будь-якого користувача Opus.

Основні можливості

Кодек Opus відрізняється високою якістю кодування і мінімальною затримкою як при стисненні потокового звуку з високим бітрейтом, так і при стисненні голосу в обмежених за пропускною здатністю застосунках VoIP-телефонії.

Основні можливості Opus:

  • дискретизація від 8 до 48KHz;
  • бітова швидкість від 6 до 510 Kbit;
  • підтримка постійного (CBR) і змінного (VBR) бітрейтів;
  • підтримка вузькосмугового та широкосмугового звуку;
  • підтримка голосу і музики;
  • підтримка стерео і моно;
  • тривалість блоків даних від 2,5 до 60 мілісекунд;
  • підтримка динамічного налаштування бітової швидкості, пропускної здатності та розміру блоків даних;
  • можливість відновлення звукового потоку в разі втрати кадрів (PLC);
  • доступність реалізацій з використанням арифметики з рухомою і фіксованою комами.

Opus продемонстрував високу якість[4] та був визнаний найкращим кодеком при використанні бітрейта 64Kbit, обігнавши таких конкурентів, як Apple HE-AAC, Nero HE-AAC, Vorbis та AAC LC[5]. З теоретичної та технічної точок зору Opus має замінити інші звукові кодеки стиснення з втратами, включно з MP3, Vorbis і Speex і поширеними пропрієтарними кодеками[6], такими як AAC та іншими, як для музики, так і для мовлення[7].

Підтримування

Формат та алгоритм мають відкриту документацію, референсна реалізація опублікована як вільне програмне забезпечення. Референсна реалізація Xiph називається opus-tools, і складається з окремих кодера та декодера; вона опублікована на умовах BSD-подібної ліцензії. Кодек написаний на C і може бути зібраний для апаратних архітектур як з підтримкою обчислень з рухомою комою, так і без неї. Супровідний інструмент діагностики opusinfo надає докладну технічну інформацію про файли Opus, включаючи інформацію про відповідність стандарту формату бітового потоку. Він заснований на ogginfo з vorbis-tools і тому, на відміну від кодера та декодера, доступний на умовах 2-ї версії ліцензії GPL.

VoIP-програми

  • Голосовий чат Mumble у версії 1.2.4 підтримує Opus як свій основний кодек[8][9][10][11].
  • Програмні SIP-телефони Phoner і PhonerLite підтримують Opus: підтримка була забезпечена, коли Opus ще перебував на ранніх стадіях розробки.
  • SIP та IAX2 клієнти SFLphone забезпечені підтримкою Opus[12].
  • Інтеграція Opus у клієнти Skype завершена, хоча версія з підтримкою Opus досі не опублікована.
  • Відео конференція TrueConf підтримує Opus[13].
  • Jitsi підтримує Opus разом з VP8-відео[14][15] у релізі v2.0[16].
  • Empathy може використовувати будь-який формат, підтримуваний у GStreamer, включаючи Opus.
  • Line2 замінила свій власний кодек на Opus. Їхній iOS-застосунок став першим, хто реалізував Opus. Застосунок під Android має бути[17].
  • CSipSimple підтримує Opus через додатковий плагін
  • Голосовий чат TeamSpeak 3 підтримує Opus для голосу і музики з версії 3.0.7 і версії клієнта 3.0.10[18][19].
  • Bria X-Lite підтримує Opus.
  • Acrobits Softphone підтримує Opus.

Вебкаркаси і переглядачі

  • Підтримка Opus обов’язкова для реалізацій WebRTC[20].
  • Mozilla підтримує Opus починаючи з версії 15 своїх Firefox та Thunderbird[21].
  • Залежно від бекенду Opera підтримує відтворення вбудованих файлів Opus[22]. Офіційна підтримка Opus та WebRTC вписані в план розробки[23].
  • Chromium та Google Chrome повністю підтримують Opus з версії 26[24].

Потокове аудіо

  • Icecast[25]. Існують також стримові Icecast-радіостанції, які працюють у тестовому режимові з вересня 2012 року[26] та січня 2013 року[27].
  • Liquidsoap.
  • Airtime включає усталене підримування Opus з версії 2.4.0[28].

Операційні системи та настільні мультимедійні каркаси

  • У Debian GNU/Linux, Arch Linux та Ubuntu бібліотеки підтримки і інструменти розробника Opus можуть бути встановлені з перед-конфігурованих репозиторіїв[29].
  • Для Microsoft Windows існують фільтри DirectShow з підтримкою Opus, включаючи DC-Bass Source Mod та LAV Filters[30].
  • У GStreamer інтеграція підтримки Opus повна[31].
  • FFmpeg підтримує кодування та декодування Opus через зовнішню бібліотеку libopus з FFmpeg 1.1[32].

Підтримка у пристроях і вбудованих системах

  • Rockbox підтримує Opus, починаючи з версії 3.13[33]. Зокрема, підтримуються пристрої iPod від Apple, а також iriver, Archos і Sandisk. На пристроях з ОС Android opus підтримується при встановленні «Rockbox as an Application» (RaaA)[34].
  • Chromecast підтримує декодування Opus.
  • Harris Broadcast Intraplex IP Link підтримує Opus починаючи з версії 2.1.

Програмне забезпечення плеєрів

  • AIMP підтримує Opus з версії 3.20[35].
  • Amarok підтримує Opus з версії 2.8[36].
  • Audacious
  • Capriccio (музичний плеєр для iPhone) підтримує Opus у безплатній та платних версіях[37].
  • CMUS підтримує Opus з версії 2.5.0
  • foobar2000 має внутрішню підтримку формату починаючи з v1.1.14 beta 1[38].
  • mpv
  • Mpxplay підтримує Opus (використовує DLL для декодування) з v1.60 alpha 2
  • MusicBee має внутрішню підтримку Opus з версії 2.0[39].
  • VLC media player підтримує Opus з версії 2.0.4[40].
  • Winamp підтримує Opus (використовує сторонні DLL)[41].

Інші програми

Виноски

  1. Network Working Group (4 липня 2011). RTP Payload Format and File Storage Format for Opus Speech and Audio Codec. Opus codec. IETF. Архів оригіналу за 29 вересня 2012. Процитовано 26 жовтня 2011.
  2. Opus Codec. Процитовано 1 травня 2016.
  3. Публикация RFC ознаменовала первый стабильный релиз свободного аудиокодека Opus
  4. Raymond Chen et al. Opus Testing. IETF 80
  5. Maxwell, Greg (2011). 64kbit/sec stereo multiformat listening test - unofficial results page. Xiph.org Foundation. Архів оригіналу за 29 вересня 2012. Процитовано 19 червня 2011.
  6. Does Opus make all those other lossy codecs obsolete?. OpusFAQ. Архів оригіналу за 3 березня 2016. Процитовано 1 травня 2016.
  7. vorbis.com. Архів оригіналу за 22 квітня 2016. Процитовано 1 травня 2016.
  8. Kommentare zu: Was ich so höre ... Liste freier Musik. Natenom.name. 14 жовтня 2010. Процитовано 12 вересня 2012.
  9. 1.2.4 - Mumble. Mumble. Процитовано 12 вересня 2012.
  10. Mumble-Server (Murmur) Opus-Codec
  11. Mumble (Client) Next generation audio codec
  12. SFLphone — Task #14602: [Codec] Implement opus. Savoir-faire Linux. 13 серпня 2012. Архів оригіналу за 17 грудня 2012. Процитовано 12 вересня 2012.
  13. TrueConf supports Opus. Архів оригіналу за 29 травня 2014. Процитовано 27 вересня 2013.
  14. (SIP Communicator) | GSOC / Opus and CELT support in. Jitsi. Архів оригіналу за 20 травня 2012. Процитовано 12 вересня 2012.
  15. (SIP Communicator) | Development / Roadmap. Jitsi. Архів оригіналу за 27 жовтня 2012. Процитовано 12 вересня 2012.
  16. Архівована копія. Архів оригіналу за 29 квітня 2016. Процитовано 27 вересня 2013.
  17. A new Line2 for iOS experience with improved sound quality. Line2. 18 жовтня 2012. Архів оригіналу за 15 березня 2013. Процитовано 15 березня 2013.
  18. [Beta Channel] TeamSpeak 3 Client 3.0.10. TeamSpeak Forums. Процитовано 10 грудня 2012.
  19. [PreRelease] TeamSpeak 3 Server 3.0.7 PreRelease 2. TeamSpeak Forums. Процитовано 10 грудня 2012.
  20. Zwei Audio-Codecs für Echtzeit-Kommunikation im Browser. Heise.de. Процитовано 12 вересня 2012.
  21. Media formats supported by the HTML audio and video elements. Developer.mozilla.org. 3 вересня 2012. Процитовано 12 вересня 2012.
  22. Why no official mention of Opus support?. My.opera.com. 19 липня 2012. Архів оригіналу за 14 вересня 2013. Процитовано 12 вересня 2012.
  23. Shankland, Stephen (17 серпня 2012). How corporate bickering hobbled better Web audio. CNET News. Процитовано 12 вересня 2012.
  24. https://code.google.com/p/chromium/issues/detail?id=104241
  25. Icecast 2.4 beta release. Lists.xiph.org. Процитовано 12 вересня 2012.
  26. Absolute Radio, Listen Labs. Opus Streaming Trial. Absolute Radio. Процитовано 30 жовтня 2012.
  27. Radio Jackie, Listen Now. Opus Stream. Radio Jackie. Процитовано 14 травня 2013.
  28. Airtime, Changelog. Airtime/changelog at 2.4.x. Sourcefabric. Процитовано 01 липня 2013.
  29. Debian Webmaster, webmaster@debian.org. Details of package opus-tools. packages.debian.org. Процитовано 7 травня 2013.
  30. lavfilters — Open-Source DirectShow Media Splitter and Decoders. Google Project Hosting. Архів оригіналу за 3 січня 2013. Процитовано 5 жовтня 2012.
  31. GStreamer: news. Gstreamer.freedesktop.org. Процитовано 5 жовтня 2012.
  32. http://ffmpeg.org/download.html#release_1.1
  33. Rockbox Contributors (5 березня 2013). Release notes for Rockbox v.3.13. Rockbox. Процитовано 21 березня 2013.
  34. RockboxAsAnApplication2010 < Main < Wiki. Rockbox.org. Процитовано 5 жовтня 2012.
  35. AIMP: Home Page. Aimp.ru. Процитовано 5 жовтня 2012.
  36. http://amarok.kde.org/en/releases/2.8
  37. Capriccio. Junho Choi, Seungjoon Lee. Процитовано 13 серпня 2013.
  38. foobar2000 v1.1.14 beta. Hydrogenaudio Forums. Процитовано 5 жовтня 2012.
  39. MusicBee. MusicBee Forum. Процитовано 17 серпня 2013.
  40. VLC 2.0.4 Twoflower. VideoLAN. Процитовано 19 жовтня 2012.
  41. Winamp. Winamp Forums. Процитовано 4 січня 2013.

Посилання

This article is issued from Wikipedia. The text is licensed under Creative Commons - Attribution - Sharealike. Additional terms may apply for the media files.