Opus Interactive Audio Codec
| Opus | |
|
|
|
| Extension | .opus |
|---|---|
| Type MIME | audio/opus[1] |
| Développé par | Groupe de travail IETF codec |
| Type de format | Audio |
| Contenu par | Ogg, Matroska |
| Extension du | SILK, CELT |
| Standard(s) | Oui, RFC 6716[2] |
| Spécification | Format ouvert |
| modifier |
|
| libopus | |
| Développeur | Xiph.org |
|---|---|
| Première version | 26 août 2012 |
| Dernière version | 1.0.1 (26 septembre 2012) |
| Écrit en | C89 |
| Environnement | Multiplate-forme |
| Type | Format audio, reference implementation |
| Licence | 3-clause BSD license |
| Site web | opus-codec.org/downloads/ |
| modifier |
|
Opus (à l'origine Harmony[3]) est un format ouvert de compression audio avec pertes, libre de redevances, développé par l'Internet Engineering Task Force (IETF) dans le but d'être utilisé par des applications interactives sur Internet[4].
Opus est la proposition, en format standard, acceptée dans la compétition codec de l'IETF pour un "nouvel Internet à large bande audio", actuellement en développement par le groupe de travail IETF codec. Il est basé sur deux propositions standards, initialement séparées, de la Fondation Xiph.org et Skype Technologies : respectivement le codec CELT, à faible temps de latence, et le codec SILK, orienté sur la communication à distance.
Ses principaux développeurs sont Jean-Marc Valin (Xiph.org, Octasic, Mozilla Corporation), Koen Vos (Skype Technologies) et Timothy B. Terriberry (Mozilla Corporation). Raymond Chen (Broadcom), Gregory Maxwell (Xiph.org) et Christopher Montgomery (Xiph.org), entre autres, ont également participé.
Sommaire |
Historique [modifier]
L'IETF a validé ce standard le 10 septembre 2012[5][6].
Technique [modifier]
Ce codec utilise deux algorithmes : celui utilisé dans SILK (créé par Skype), qui est plus orienté sur la voix humaine, et celui utilisé dans CELT (créé par la fondation Xiph.org ), plus orienté sur la musique[7]. Opus choisit celui est le plus adapté en fonction de la bande passante et du son qu'il doit transmettre. Il peut utiliser les deux algorithmes de manière simultanée. De manière plus précise, Opus utilise soit la prédiction linéaire et la transformation en cosinus discrète pour encoder le flux audio.
Selon ses concepteurs[8], ce codec est très adapté à Internet, où la question de la bande passante est cruciale, notamment pour les téléphones mobiles ou les utilisateurs ayant un faible débit de connexion. Google et Nokia ont fait des études qui confirmeraient ces affirmations[9][10][11].
Licence et brevets [modifier]
Opus étant un standard de l'IETF, il est publié sous licence BSD. Le texte descriptif peut donc être diffusé, réutilisé, modifié si et seulement il est marqué comme venant de l'IETF, avec un moyen de retrouver la documentation[12]. Petite incongruité dans les spécifications de l'IETF : on retrouve le code qui fait référence directement dans la spécification[13]. Ce code est publié sous licence BSD et une bibliothèque logicielle a été publiée par la fondation Xiph.org. Mozilla a proposé des fichiers binaires, servant à l'encodage ou au décodage, pour les environnement Mac OSX et Windows.
Tout utilisateur du codec Opus ne peut engager de contentieux envers tout autre utilisateur d'Opus sur la technologie couverte par le brevet[14].
L'IETF demande, lors de la création d'une norme, si ses membres possèdent des brevets touchant le standard en création. Pour le codec Opus, plusieurs entreprises ont déposé des brevets[15]: Fondation Xiph.org (4)[16], Broadcom (3)[17][18][19], Skype Technologies (11)[20], Qualcomm (12)[21], Huawei Technologies (2)[22][23].
Tous les propriétaires de ces brevets ont autorisé une utilisation ouverte sans redevance à l'IETF pour le codec Opus. L'autorisation s'étend aux brevets qui découleraient des premiers. Skype ayant été racheté par Microsoft entre temps, ce dernier a autorisé l'emploi des brevets venant de Skype Technologies[24]. Certains brevets sont aussi enregistrés auprès d'autres office de brevets.
Prise en charge [modifier]
VoIP [modifier]
- Teamspeak 3.0.10 devrait ajouter le codec Opus [25].
- Mumble 1.2.4 devrait ajouter le codec Opus [26].
- Le logiciel client SFLphone ( SIP et IAX2) travaille sur l'intégration du codec[27].
- Jitsi 2.0 ajoute le VP8 et Opus parmi les codecs pris en charge[28] [29].
- Le logiciel SIP csipsimple l'a intégré [30]
- Skype: bien que les développeurs de Skype ont participé à l'élaboration[31] de ce codec (qui repose sur un algorithme utilisé dans SILK), il n'y a pour l'instant aucune date de l'utilisation de ce code dans Skype.
[modifier]
- Le codec Opus a été proposé comme socle audio du standard WebRTC[32].
- Mozilla a intégré Opus depuis les versions 15 de Firefox et de Thunderbird, ainsi que dans la version 2.12 de SeaMonkey[33],[34],[35].
- Le navigateur Opera prévoit de l'intégrer prochainement [36].
- Google Chrome et Chromium ne l'ont pas encore pris en charge[37].
- La prise en charge par Internet Explorer est inconnue en août 2012.
- La prise en charge par Safari est inconnue en décembre 2012[38][39].
Flux de diffusion audio [modifier]
Systèmes d'exploitation [modifier]
- Le système GNU/Linux Debian, dans sa prochaine version stable appelé Wheezy, devrait avoir les bibliothèques libopus et opus-tool installées par défaut[42].
- Windows : grâce aux logiciels filtres DC-Bass Source Mod et LAV Filters, DirectShow devrait disposer de jeux de codecs permettant au système d'exploitation Windows de prendre en charge ce codec[43][44].
Briques pour logiciels multimédia [modifier]
- La brique GStreamer intègre le codec Opus dans gst-plugins-bad 0.10.36 en février 2012 [45].
- Pour libavcodec (de FFmpeg ou Libav), il existe des rustines pour utilisation de la bibliothèque libopus[46][47]. La version 1.1 de FFmpeg lit opus avec une bibliothèque associée par défaut[48]
Intégration dans les firmwares [modifier]
Lecteurs multimédia [modifier]
- VLC : le décodage est possible depuis la version 2.0.4 [51].
- foobar2000 intègre le format natif depuis la version 1.1.14 beta[52].
- firefox : permet de lire les fichiers .opus
Liens externes [modifier]
- http://www.opus-codec.org/
- RFC 6716
- "Opus un format audio meilleur que le mp3", article du journal Le Monde daté du 29/11/2012 [2]
Références [modifier]
- (en) Network Working Group, « RTP Payload Format and File Storage Format for Opus Speech and Audio Codec », Opus codec, IETF, July 4, 2011. Consulté le October 26, 2011
- (en) Request for Comments no 6716.
- (en) Harmony became Opus, 2010-10-15. Consulté le 2011-06-19
- (en) Skype Limited's Statement about IPR related to draft-ietf-codec-opus-07, IETF, July 23, 2011. Consulté le October 26, 2011
- http://www.bortzmeyer.org/6716.html
- https://tools.ietf.org/html/rfc6716
- The innovation in Opus fuses SILK for voice with Xiph.Org's CELT codec for music
- http://opus-codec.org/comparison/
- http://opus-codec.org/comparison/GoogleTest1.pdf
- http://opus-codec.org/comparison/GoogleTest2.pdf
- http://research.nokia.com/files/public/%5B16%5D_InterSpeech2011_Voice_Quality_Characterization_of_IETF_Opus_Codec.pdf
- https://www.rfc-editor.org/rfc/rfc6716.txt
- et c'est elle qui fait autorité
- You may not do these things if you engage in Opus-related patent litigation against any user of Opus
- https://datatracker.ietf.org/ipr/search/?option=rfc_search&rfc_search=6716
- https://datatracker.ietf.org/ipr/1524/
- https://datatracker.ietf.org/ipr/1445/
- https://datatracker.ietf.org/ipr/1447/
- https://datatracker.ietf.org/ipr/1526/
- https://datatracker.ietf.org/ipr/1602/
- https://datatracker.ietf.org/ipr/1520/
- https://datatracker.ietf.org/ipr/1712/
- https://datatracker.ietf.org/ipr/1741/
- https://datatracker.ietf.org/ipr/1670/
- [1]
- Next generation audio codec
- Implement opus
- http://linuxfr.org/news/jitsi-2-0-est-sorti
- https://jitsi.org/index.php/GSOC/WidebandCodecs
- https://code.google.com/p/csipsimple/
- http://blogs.skype.com/en/2012/09/skype_and_a_new_audio_codec.html
- https://www.ietf.org/mail-archive/web/rtcweb/current/msg04953.html
- https://www.mozilla.org/en-US/firefox/15.0/releasenotes/
- https://bugzilla.mozilla.org/show_bug.cgi?id=674225
- https://developer.mozilla.org/en-US/docs/Media_formats_supported_by_the_audio_and_video_elements#Ogg_Opus
- http://my.opera.com/community/forums/topic.dml?id=1491802
- https://code.google.com/p/chromium/issues/detail?id=104241
- http://www.html5audio.org/2012/07/safari-6-arrives-bringing-web-audio-api-to-apples-browser.html
- https://developer.apple.com/technologies/safari/html5.html
- http://lists.xiph.org/pipermail/icecast/2012-July/012237.html
- https://github.com/krad-radio/krad_radio
- http://packages.debian.org/wheezy/opus-tools
- http://reino.degeelebosch.nl/dc-bsm/main.htm
- https://code.google.com/p/lavfilters/
- http://gstreamer.freedesktop.org/news/#2012-02-21T14:00:00Z
- http://ffmpeg.org/trac/ffmpeg/ticket/1343
- http://patches.libav.org/patch/24558/
- http://linuxfr.org/news/cube-2-sauerbraten-ffmpeg-1-1
- http://www.rockbox.org/mail/archive/rockbox-dev-archive-2012-08/0007.shtml
- http://www.rockbox.org/wiki/RockboxAsAnApplication2010
- http://www.clubic.com/telecharger/logiciel-lecteur-multimedia/vlc-media-player/actualite-517267-vlc-2-4-opus-blu-ray-youtube.html VLC: Add support for decoding new audio format: Opus
- http://www.hydrogenaudio.org/forums/?showtopic=96057