Ogg est un format de conteneur ouvert de la Xiph.Org Foundation, une organisation à but non lucratif qui développe des technologies média libres de redevances. Un fichier se terminant par .ogg contient presque toujours Ogg avec du Vorbis, un codec audio avec pertes conçu comme une alternative sans brevet au MP3, si bien que l'on parle souvent d'Ogg Vorbis pour désigner l'ensemble. Vous rencontrez ces fichiers dans des logiciels open source, dans des bandes-son de jeux, dans des archives de langues et de prononciation, et sur des sites qui ne souhaitaient pas payer de licence pour héberger de l'audio.
Un conteneur avec un codec à l'intérieur
Ogg en lui-même ne compresse rien. C'est un conteneur qui découpe un flux média en pages, chacune contenant une somme de contrôle et un marqueur de position, afin qu'un lecteur puisse vérifier les données, passer à un point au milieu et même suivre une diffusion en direct sans fin. Plusieurs flux peuvent être entrelacés dans un même fichier, ce qui permet de transporter l'audio et la vidéo ensemble. En plus de Vorbis, Ogg peut contenir Opus, FLAC, Speex et le codec vidéo Theora, ce qui explique pourquoi Xiph recommande l'extension .oga pour l'audio Ogg qui n'est pas Vorbis et .ogv pour la vidéo.
Vorbis, le codec généralement utilisé à l'intérieur, est avec pertes : il convertit de courts blocs de la forme d'onde en fréquences et supprime les détails qu'un auditeur a peu de chances de remarquer, et ce qui est supprimé ne revient jamais. Son débit binaire est naturellement variable : il consacre plus de données aux passages où la musique en a besoin et se relâche dans les passages calmes. Il repose aussi sur des codebooks que chaque fichier transporte dans son propre en-tête, ce qui explique en partie pourquoi sa qualité tient bien la comparaison avec le MP3 à taille égale.
Les métadonnées qu'un fichier OGG contient
Vorbis stocke ses balises dans un paquet d'en-tête dédié en utilisant les commentaires Vorbis, le même système que FLAC. Un commentaire Vorbis se compose simplement d'un nom de champ, d'un signe égal et d'une valeur en texte brut, ce qui rend le système particulièrement flexible : les noms de champs ne sont pas limités à une liste officielle, et le même champ peut apparaître plusieurs fois. Ainsi, une piste attribuée à trois interprètes contient simplement trois lignes ARTIST.
Les noms recommandés couvrent ce à quoi vous vous attendez : TITLE, ARTIST, ALBUM, TRACKNUMBER, DATE, GENRE, DESCRIPTION, COMPOSER, PERFORMER, COPYRIGHT, LICENSE, ORGANIZATION, VERSION et ISRC. Deux des champs standard contiennent par conception des informations personnelles et méritent d'être signalés. LOCATION indique l'endroit où l'enregistrement a été réalisé, et CONTACT indique comment joindre la personne ou l'organisation à l'origine de l'enregistrement, ce qui signifie en pratique une adresse email ou un site personnel. Aucun des deux n'est rempli automatiquement, mais les apps d'enregistrement et de travail de terrain les utilisent.
Au-delà des noms standard, il faut s'attendre à tout ce que la chaîne logicielle a ajouté. ENCODER indique précisément le programme et la version qui ont créé le fichier, et vous pouvez aussi trouver des mesures de replay gain, des identifiants reliant l'album à une base de données musicale en ligne, ainsi qu'un champ COMMENT contenant tout ce qu'une personne a saisi. Les pochettes d'album sont traitées de façon particulière : au lieu d'avoir leur propre structure, elles sont stockées comme une image encodée à l'intérieur d'un champ de commentaire. Les fichiers plus anciens ont parfois une balise ID3 ajoutée au début par un tagueur mal conçu. Les lecteurs peuvent l'ignorer, mais un rapport de métadonnées vous indiquera tout de même ce qu'elle contient.
Quand utiliser OGG
Ogg Vorbis est un bon choix lorsque les licences sont importantes, lorsque vous intégrez de l'audio dans un logiciel ou un jeu, ou lorsque vous souhaitez simplement une bonne qualité avec pertes sans payer de redevances. Les navigateurs et les lecteurs de bureau le gèrent bien. Sa faiblesse est le matériel : les autoradios, les anciens téléphones et de nombreux lecteurs portables attendent du MP3 ou de l'AAC, si bien qu'un fichier qui se lit parfaitement sur un ordinateur portable peut être invisible sur un tableau de bord. Au sein de la famille Xiph, Opus est désormais le codec à privilégier pour les nouveaux projets, et il circule dans les mêmes pages Ogg, c'est pourquoi ces fichiers utilisent l'extension .opus.