Свободный аудиокодек Opus официально стал стандартом IETF

    Описание алгоритма и эталонная реализация на языке Си теперь содержатся в документе RFC 6716. Это большая победа открытых стандартов. Впечатляющие характеристики кодека Opus уже публиковались на Хабре (раз, два). Он совершенно бесплатен для любого использования. Кодек включен в браузер Firefox 15-й версии, в ближайшее время его поддержка появится и в Skype — работа по интеграции Opus в Skype практически завершена. Это неудивительно, так как Mozilla и Skype (то есть теперь уже Microsoft) — главные разработчики Opus.




    Слухи о том, что корпорация Google не рада новому кодеку, безосновательны. По словам одного из разработчиков Opus, Жана-Марка Валина, Google оказала большую помощь в разработке и тестировании. В сообщении Google в списке рассылки WebRTC от 29 июля именно Opus назван предпочтительным кодеком для стандартизации. В черновике стандарта WebRTC от 7 сентября поддержка Opus является обязательной для всех WebRTC-совместимых браузеров. Это значит, что и Google Chrome, и Opera, и Internet Explorer должны будут его поддерживать.

    Кодеки Opus будут включены не только в браузеры. В следующей стабильной версии Debian их можно будет установить из стандартных репозиториев. Opus поддерживают GStreamer, FFMpeg, foobar2000, K-Lite Codec Pack, LAV filters. VLC player 2.0.4 выйдет с поддержкой Opus. Идёт работа по включению Opus в голосовой чат Mumble и прошивку для аудиоплееров Rockbox.

    Больной вопрос многих открытых технологий — патентные претензии. Так, консорциум MPEG LA выступил с заявлением, что 12 компаний, входящих в него, имеют патенты, которые, возможно, нарушает видеокодек VP8, продвигаемый корпорацией Google. Похожие претензии к Opus предъявили компании Qualcom и Huawei. Представители фонда xiph.org (организации, созданной для совместной разработки и продвижения открытых мультимедийных стандартов, в том числе и Opus, в интернете), утверждают, что
    "… это обычная попытка вытрясти лёгкие деньги, в расчёте на то, что юридические разборки обойдутся нам слишком дорого и проще будет заплатить. Это злоупотребление законом и мы уже подали жалобы. Ответ Qualcom на наше обращение сводится к тому, что «Мы имеем на это право, а на остальное нам наплевать».

    Хорошая новость состоит в том, что в претензиях упоминались конкретные патенты. Наши юристы проверили их, и пришли к выводу, что всё чисто. Мы не стали бы публиковать код или стандарт, в котором мелким шрифтом пришлось бы писать о лицензионных отчислениях".


    Share post

    Similar posts

    Comments 34

      +1
      Учитывая принадлежность Скайпа Майкрософту, кодек ещё могут успеть встроить в IE10, особенно если над этим уже работали раньше. Известно, что Опера собирается его внедрить. Не уверен насчёт Вебкита, но им нет причины не делать этого тоже, особенно при поддержке Гугля. Тем более они падки на новые штуки. Возможно, это будет быстрым взлётом нового кодека в браузерах.
        0
        Но сразу возникает другой вопрос: если кодек быстро внедрят в браузеры, станет ли возможным его использования вместо MP3 и OGG, в поддерживаемые разными браузерами? Неужто среди браузеров наконец-то будет единство хотя бы в сфере кодека аудио?
          0
          Если во всех браузерах быстро внедрят, то тогда да, будет тотчас же достигнуто единство.

          Разумеется, достижение единства всё равно будет означать необходимость дождаться вымирания старых браузеров.

          Так, например, IE8 вымрет только вместе с Windows XP (или только после повсеместного распространения альтернативных браузеров на Windows XP), а этого не так-то просто будет дождаться.
            +2
            Ну почему же, ничто не мешает на XP использовать другие браузеры.
              –1
              Почему же непросто?
              Поддержка Windows XP полностью завершается примерно через 1,5 года.
              И сейчас нет никаких причин не использовать Windows 7.
                +3
                Причина номер раз: тьма устареваюшего, но еще работающего железа, на котором семерка или тормозит, или не работает вообще.
                  0
                  Нет никаких причин не менять настолько устаревшее железо. Прогресс не стоит на месте.
                  На десктопе новое железо практически необходимо.
                  На сервере — тем более.
                    0
                    Ваши бы слова — да в уши начальства :)
                      0
                      Ну это да, об этом не подумал, признаюсь. Только вот там, где эксплуатируют старые компьютеры, аудио как правило в Интернете особо не послушаешь и видео не посмотришь.
                      0
                      У многих нету желания(а иногда и возможности) покупать новое железо если их устраивает текущее.
                        0
                        Ну это всё же их проблемы.
                        Насчет возможности — дома у всех есть, железо сейчас стоит копейки, вполне приличный комп под семерку сейчас стоит ну 30-40 тысяч.
                          0
                          Ну вот представьте среднестатистического человека, с небольшой зп, в месяц после траты на необходимое(еда, одежда, комуналка, и тд) остается тысячи 2-3 на моб.связь и что-то еще. Может что-то и повеселее есть, но, вроде все учел. При таком раскладе когда все устраивает смысл брать новое железо?
                            0
                            Много взяли. Я тут уже писал — ноутбук, на котором семёрка будет отлично работать, можно взять тысяч за 15. А если постараться — то и за 10-12к можно найти.
                      0
                      Ну вот и некий не буду называть кто поставил минус комментарию и в карму.
                      За частное мнение.
                      Свобода слова, всё такое. Хихи :)
                        0
                        Вообще-то правильно, поддержка поддержкой, а всякие говносборки и миллионы людей очень сильно не желающих менять ХР на что-то иное будут еще долго.
                          0
                          Это повод написать критический комментарий, наподобие того, что находится выше.
                          Это не повод портить карму.
                +2
                Хотелось бы отметить что разработчики Icecast добавили поддержку Opus в Icecast 2.3.4-beta.
                Кстати, Opus и Icecast оба принадлежат Xiph.org
                  0
                  У айскаста достаточно простой плагинный интерфейс для новых форматов, можно стримить что угодно при минимальных усилиях.
                  0
                  Осталось только дождаться счастья с видео-кодеком… VP8 так им и не стал, увы :(
                    0
                    Если VP8 не стал, то другие и подавно обречены.
                      0
                      Быть может, я слишком мрачен? Вообще поддержка не такая плохая. Выбивается только IE, которому требуется дополнительный плагин. Опера, Хром и Лис поддерживают вроде.
                        0
                        А вот iOS нет… С 2.3.3 (стрим с 4.0) Android-а уже тоже поддерживается.
                          0
                          Нету комплексного решения, типа Apple HLS. Есть MPEG Dash, есть MediaSource API, но они далеки от совершенства. А с прямыми трансляциями вообще все сложно, поддержка VP8 отсутствует во всех аппаратных решениях, типа ATEM Television Studio. MPEG-LA добились своего, я теперь вообще сомневаюсь, что они с кем-то судиться собирались, просто нужно было посеять неуверенность у приверженцев открытых стандартов и максимально отложить повсеместное внедрение WebM.
                            0
                            Я извиняюсь, в каком месте HLS является комплексным решением? Можно по сравнению с другими решениями?
                              0
                              VOD, Live, черновик стандарта, софт для сегментирования и валидации, поддержка мультязычных субтитров, переменного битрейта, реализация HLS для httpd. Это то, что поддерживается самим Apple.

                              С другой стороны каждый стримминговый сервер поддерживает HLS: Wowza, Erlyvideo, IIS etc. Куча стороннего софта и аппаратных решений позволяет создавать и транслировать h.264 в формате пригодном для сегментации на вышеуказанных серверах, А Akamai сможет доставить этот поток по всему миру. И даже для флэшплеера есть фоллбэк, который позволяет забирать и отображать тот же поток, что и устройства поддерживающие HLS напрямую.

                              А да, еще аппаратное ускорение даже на холодильниках.

                              По большому делу, создать грубый прототип, который сможет отдавать как live, так и vod можно с помощью MediaSource API, вот только поддерживается он только в последних тестовых версиях Хрома и Оперы.
                                0
                                Я же просил по сранению, а не кучу маркетиновых слов от фирмочки из Купертино (не знал, что она еще и холодильники выпускает). Что там поддерживает вовза и прочая проприетарщина — совсем неинтересно.
                                  0
                                  Знаете, чем глупы такие диалоги? Ты человеку выкладываешь простыню текста, ключевые слова которые можно погуглить, а он тебе отвечает, что-то в духе, не, я тебе не верю, ты все придумываешь, мне лень погуглить, я в этом вообще не разбираюсь, так что будь добр, напиши еще 5 тыщ символов, после которых я все равно буду гнать свою телегу.

                                  Проходили уже, знаем. Приятного вам вечера, уважаемый.
                                    0
                                    К моему сожалению, я в этом немного разбираюсь. HLS — это типичное решение из серии «костыль на костыле», выдаваемое за стандарт (а кроме драфта с плейлистами ничего нет). Это решение поддерживается одной единственной конторой (которая наверное еще и холодильники выпускает) и их недодевайсами с закругленными уголками. Все. На этом мир HLS заканчивается. Вы что, сами не в состоянии написать сегментатор, что так уцепились за него? Это задача для школьника. Переключение на альтернативные стримы (битрейт) сделано через глубочайшую жопу. Если посмотреть на HDS — в принципе теже яйца, только более доведенные до ума, видна более глубокая проработка, можно смело переключать сегменты, но… Опять имеем завязку на мелкую фирмочку, с немного большей совместимостью. HSS от рождения мертв, равно как и сервелат для которого он сделан. Остается DASH… И тут мы просыпаемся в реальном мире.

                                    Спокойной ночи, уважаемый, приятного стриминга, да увидите вы покусанное яблоко.
                                      0
                                      Здрасте, одной единственной, а то, что Андроид поддерживает? Где костыль, раньше надо было сегментировать, теперь просто в ts загнать. Переключение на отдельные стримы интегрировано в QuickTime API и происходит автоматом на iOS и Mac OS, какая жопа где? DASH этот тот же HLS только в профиль, более того, он не завязан на кодек, а раз он не завязан на кодек, он никому не нужен.

                                      У MediaStream API есть плюс, есть кодек VP8, но нет формата, можно составить JSON, сегментировать файлы, а на клиенте разобрать js'ом. Но это все как раз костыли.

                                      Проблема не с VOD, а с Live стриммингом. Вот надо вам сделать трансляцую на 4 камеры, какое решение отличное от HLS вы предложите?
                                        0
                                        Привет, а что для Андроида родным является RTSP, который он поддерживает с древних версий — ничего? И что RTSP является стандартом, в отличии от HLS? Да, я в курсе, что Андроид-девайсы умеют играть и HLS, но не вижу стандарта, а пока стандарта нет — поддерживает его только одна левая фирмочка (между прочим, эта фирмочка продолжает лепить новые драфты).

                                        Если не сегментировать файлы, а «теперь просто в ts загнать», то мы теряем все фичи HLS, получая классический Progressive Streaming. Внимание, вопрос: зачем тогда HLS?

                                        «QuickTime API и происходит автоматом на iOS и Mac OS» — ничего не понимаю. Что такое QuickTime API? Какая-то проприетарщина? А что такое Mac OS? Что-то открытое и свободное? Вот libavcodec я понимаю, все открыто и можно спокойно использовать его в своих проектах.

                                        Что касается завязки на кодек, то ее как раз и не должно быть, ибо все эти ваши HLS/HDS/HSS/DASH — это ТРАНСПОРТный уровень, но почему-то надо каждый раз изобретать свой костыль.

                                        Теперь по Live-стриминг. Не совсем понимаю что такое «на 4 камеры», видимо подразумевается что-то вроде квадратора? Если так, то надо сначала получить готовую картинку, а вот дальше… Можно закодировать видео в VP8, звук в Vorbis, а упаковать все это в новомодный webm, все это отдать айскасту. Получаем классический Progressive Streaming. И что интересно, это будет играть. Как альтернатива, можно кино закодировать в h264, но чем такое играть? Кому его отдавать? А отдавать некому, разве что во флеш, который как известно принадлежит другой левой фирмочке.
                                        0
                                        Боюсь, что вы совершенно в этом не разбираетесь =)

                                        HLS — это не только айфоны. Это ещё и андроиды (включая телевизоры), новые приставки (HLS в опере, да-да). Т.е. практически всё новое видеопросматривающее железо, создающееся сегодня, жует HLS.

                                        По поводу того, чем HLS плох, ваши аргументы смешны. К HLS можно предъявлять претензии о том, что большие накладные расходы контейнера, но на этом в целом на сегодня всё.
                                          0
                                          1. Где стандарт? Есть RFC? Или вы предлагаете поддерживать технологию какой-то левой фирмочки?
                                          2. Я не видел железок, которые умеют HLS, зато практически все умеют RTSP. Дайте ссылок на эти чудо-железки скорее! (надеюсь, это будут железки без обгрызенных яблок)
                                          3. Сделайте мне на HLS трансляцию на 2 языках и с разными битрейтами звука/видео и раздайте через CDN. А точнее, расскажите сколько комбинаций стримов вам придется создать. Расскажите про точки синхронизации, где можно переключить поток. Расскажите про круглосуточные живые трансляции с возможностью перемотать «назад».
                        0
                        В ffmpeg поддержка опуса была добавлена совсем недавно и через libopus. Есть забавный сайтик: libopus.sourceforge.net/ — посмотрите дату обновления.

                        Собрал opus_demo, а он желает выбора от меня:
                        mode: voip | audio | restricted-lowdelay
                        Что оно хотело этим?

                        Ну так как у меня просто музончик для тестов, то решил покодировать в audio 64 килобита, а оно мне говорит:
                        Supported sampling rates are 8000, 12000, 16000, 24000 and 48000

                        Не чуваки, вы там с ума сошли? Радио у меня кодит звук в 44100, на 48000 я перейти не могу из-за говнофлеша, который умеет 44100, но не умеет 48000. Делать ресемплинг на лету — это все равно что сначала закодить звук в mp3@32000, а потом во что-то еще.

                        Ладно, потом оно говорит мне, дескать совсем:
                        Could not open input file — Ладно, /dev/stdin сожрало, аналогично не смогло выкинуть данные в stdout.

                        Зато порадовала производительность — процессор кушает на уровне libmp3lame c патчами SSE*

                        Если бы не жесткие 48 килогерц, то можно было бы прямо сейчас сделать радио с ним.
                          0
                          На низких битрейтах (<64 kbps) 44100 2 ch AAC SBR+PS все равно выигрывает, причем ощутимо.

                          Only users with full accounts can post comments. Log in, please.