Cookies de statistiques et de publicité
Nous utilisons des cookies de statistiques et de publicité, tous deux destinés à Google. Si vous refusez, rien ne change visiblement pour vous.Aller à la page de confidentialité
OGG
Le format audio libre de redevances. Courant dans les jeux et sous Linux, rare sur mobile.
OGG
OGG est un conteneur : une enveloppe pour des flux encodés par autre chose. Il est utilisé pour le web et la remise d’un fichier fini.
L’extension est .ogg et le nom complet Ogg Audio. L’un et l’autre comptent moins que ce que le fichier peut contenir, et c’est le sujet du reste de cette page.
Xiph.Org l’a publié en 2000. La spécification est RFC 3533.
L’âge est utile à connaître pour une raison pratique : plus un format est ancien, plus les programmes ont eu le temps de l’apprendre.
Elle est publiée intégralement : n’importe qui peut l’implémenter à partir du document plutôt qu’en l’observant, et c’est pourquoi ce format apparaît dans tant de programmes et pourquoi des fichiers écrits il y a vingt ans s’ouvrent encore. Une spécification publiée n’est pas pour autant libre de redevances : quand un format enveloppe un codec, les brevets sont une question à part, que la norme ne tranche pas.
Il contient d’ordinaire Vorbis, Opus et FLAC. Cette distinction est derrière presque toutes les questions du type « pourquoi ça ne se lit pas » : deux fichiers portant la même extension peuvent contenir des encodages entièrement différents, et un lecteur qui refuse l’un s’entend parfaitement avec l’autre.
Elle explique aussi pourquoi changer de conteneur est souvent rapide et sans perte alors que changer de codec n’est ni l’un ni l’autre. Déplacer le même flux dans une autre boîte réécrit la boîte ; réencoder réécrit l’image.
OGG peut contenir une disposition qui lui permet de commencer à jouer avant d’être arrivé en entier.
Cela compte surtout à la conversion : ce que la cible ne peut pas contenir est abandonné, en général sans avertissement.
Audacity, VLC et foobar2000 le lisent, comme la plupart des programmes du même genre.
Quand un fichier ne s’ouvre pas, le format est rarement en cause : le plus souvent, c’est le programme qui est plus ancien que lui. Convertir vers quelque chose de plus ancien est le contournement fiable, et c’est à cela que sert le reste de ce site.
Les navigateurs actuels le lisent, les anciens non.
Là où la prise en charge est inégale, servir un second format à côté est la réponse habituelle : le navigateur prend celui qu’il comprend et personne n’est laissé dehors.
OGG peut contenir les propriétés du document.
Que quoi que ce soit survive à une conversion dépend entièrement de la cible, et la réponse honnête est le plus souvent « une partie ».
OGG est fait pour être transmis, pas pour travailler dedans. Modifier un tel fichier est possible et rarement agréable ; la voie raisonnable passe par la source et un nouvel export.
Les reproches qui reviennent : hors de son terrain, la prise en charge est inégale.
Rien de tout cela n’est une raison d’éviter le format. Ce sont les choses à connaître avant que l’une d’elles vous surprenne, ce qui est une affirmation différente et plus utile.
Ogg est un conteneur, pas une méthode de compression. Un fichier se terminant en .ogg contient le plus souvent de l’audio Vorbis, mais il peut contenir de l’Opus, du FLAC, du Speex ou même de la vidéo, et rien dans le nom ne les distingue. C’est la source de confusion la plus fréquente autour du format.
La fondation Xiph.Org, qui le maintient, a demandé .oga pour l’audio et .ogv pour la vidéo pour réduire l’ambiguïté. Presque personne n’a adopté la convention, donc .ogg reste un fichier dont il faut inspecter le contenu plutôt que de présumer. Si un lecteur en refuse un, c’est le codec à l’intérieur qu’il faut vérifier.
Ogg et Vorbis ont été créés à la fin des années 1990 précisément parce que le MP3 était couvert par des brevets et que chaque encodeur exigeait une licence. C’était un véritable obstacle pour les logiciels libres et pour quiconque livrait un produit sans département juridique.
Le format existe donc comme réponse à un problème de licence plutôt qu’à un problème technique, et il a réussi sur ces bases. Ses descendants sont partout : Opus est le codec à l’intérieur de chaque appel de navigateur, et la mécanique de conteneur développée ici a nourri WebM.
Vorbis était compétitif avec et généralement meilleur que le MP3 au même débit, particulièrement en dessous de 128 kbit/s. Pendant une décennie, c’était le choix libre sensé, et c’est encore de l’audio parfaitement bon — un fichier Vorbis de 2008 sonne exactement comme il sonnait alors.
Il a été surpassé, toutefois, et pas de justesse. Opus le bat à tous les débits, vient de la même organisation, et est tout aussi libre. Il ne reste aucune raison d’encoder du nouvel audio en Vorbis, ce qui fait d’un .ogg qui en contient un fichier à garder plutôt qu’un format à choisir.
Les jeux vidéo, de manière écrasante. Ogg Vorbis est devenu la norme pour l’audio de jeu parce qu’il était libre d’utilisation commerciale, et décompresser les assets de pratiquement n’importe quel jeu des vingt dernières années fait apparaître des dossiers qui en sont pleins. Unity et Godot l’utilisent encore par défaut.
Au-delà : Spotify a streamé du Vorbis pendant des années, Wikipédia et Wikimedia hébergent de l’audio dedans par principe, d’anciens enregistrements Android l’utilisaient, et un éparpillement d’applications open source en produisent. C’est un format qu’on rencontre plutôt qu’un format qu’on choisit.
Ogg utilise les commentaires Vorbis — de simples paires nom-et-valeur sans liste fixe de champs autorisés. Le titre, l’artiste et l’album sont conventionnels, mais tout peut être ajouté, et contrairement à ID3 il n’y a pas de structure à taille fixe avec laquelle composer.
La pochette est la partie maladroite. Elle est stockée sous forme d’image encodée en base64 dans un champ de commentaire, ce qui fonctionne mais est une convention ajoutée après coup à un design qui ne l’anticipait pas. Certains lecteurs l’affichent et d’autres non, ce qui explique pourquoi un Ogg avec une illustration semble parfois en être dépourvu.
Le conteneur entrelace les données en petites pages, chacune suffisamment auto-descriptive pour qu’un décodeur qui arrive en cours de route puisse se repérer rapidement. Il a été construit pour la radio internet à une époque où les connexions lâchaient constamment, et il gère bien le fait d’être coupé et repris.
Une conséquence utile est que les fichiers Ogg se concatènent : en joindre deux avec rien de plus qu’une copie de fichier produit généralement un fichier lisible contenant les deux. C’est inhabituel et c’est pourquoi le format persiste dans les pipelines de streaming et d’audio de jeu où les fichiers sont assemblés par programme.
Apple, notamment et depuis longtemps — QuickTime et iOS n’ont historiquement pas géré l’Ogg sans logiciel tiers, ce qui est en grande partie pourquoi le format n’a jamais atteint le grand public. Aussi la plupart des autoradios, des lecteurs matériels anciens, et un nombre appréciable de formulaires de téléversement.
Tout le reste s’en sort : tous les navigateurs, VLC, Android, Windows depuis la version 10, et essentiellement tous les logiciels multimédias de bureau. Comme pour les autres formats de ce site, la question avant de convertir est de savoir si la destination est réellement sur la courte liste de ce qui ne peut pas.
Vers MP3 quand la destination est du matériel ancien, en acceptant que Vorbis vers MP3 soit de la perte à perte et coûte une génération — utilisez 192 kbit/s ou plus pour que ça reste inaudible. Vers WAV quand un outil de transcription ou un éditeur audio veut une entrée non compressée.
Vers Opus si vous voulez tout simplement le même audio en plus petit, en étant clair sur ce que c’est : c’est un autre réencodage avec perte, donc c’est sensé pour un fichier qui est trop gros à stocker et pas pour un fichier qui est tout simplement ancien. Un fichier Vorbis qui lit là où il doit lire est mieux laissé tel quel.
| Extension | .ogg, .oga |
|---|---|
| Type de média | audio/ogg |
| Publié par | Xiph.Org |
| Première publication | 2000 |
| Spécification | RFC 3533 |