Ogg to otwarty format kontenera stworzony przez Xiph.Org Foundation, organizację non-profit rozwijającą wolną od opłat licencyjnych technologię multimedialną. Plik z rozszerzeniem .ogg to prawie zawsze Ogg zawierający Vorbis, stratny kodek audio zaprojektowany jako pozbawiona patentów odpowiedź na MP3, więc mówiąc Ogg Vorbis ludzie zwykle mają na myśli ten zestaw. Z takimi plikami spotykasz się w oprogramowaniu open source, w ścieżkach dźwiękowych gier, w archiwach językowych i wymowy oraz w serwisach, które nie chciały niczego licencjonować tylko po to, by udostępniać dźwięk.
Kontener z kodekiem w środku
Sam Ogg niczego nie kompresuje. Jest to kontener, który dzieli strumień multimedialny na strony, z których każda zawiera sumę kontrolną i znacznik pozycji, dzięki czemu odtwarzacz może zweryfikować dane, przeskoczyć do miejsca w środku, a nawet śledzić transmisję na żywo bez końca. W jednym pliku można przepleść kilka strumieni, co pozwala przesyłać razem dźwięk i obraz. Oprócz Vorbis, Ogg może przenosić Opus, FLAC, Speex oraz wideo zakodowane kodekiem Theora, dlatego Xiph zaleca rozszerzenie .oga dla dźwięku Ogg, który nie jest Vorbis, oraz .ogv dla wideo.
Vorbis, zwykle używany w środku, jest stratny: zamienia krótkie fragmenty fali dźwiękowej na częstotliwości i odrzuca szczegóły, których słuchacz prawdopodobnie nie zauważy, a tego, co odrzuci, nie da się odzyskać. Z natury działa z przepływnością zmienną, zużywając więcej danych tam, gdzie wymaga tego muzyka, i ograniczając je w spokojnych fragmentach. Opiera się też na księgach kodowych, które każdy plik przechowuje we własnym nagłówku, co częściowo tłumaczy, dlaczego jego jakość wypada dobrze w porównaniu z MP3 przy tym samym rozmiarze.
Jakie metadane zawiera plik OGG
Vorbis przechowuje swoje tagi w dedykowanym pakiecie nagłówka, wykorzystując komentarze Vorbis, ten sam mechanizm, którego używa FLAC. Komentarz Vorbis to po prostu nazwa pola, znak równości i wartość w postaci zwykłego tekstu, co sprawia, że system jest wyjątkowo elastyczny: nazwy pól nie są ograniczone do oficjalnej listy, a to samo pole może pojawić się kilka razy, więc utwór przypisany trzem wykonawcom ma po prostu trzy linie ARTIST.
Zalecane nazwy obejmują to, czego można się spodziewać: TITLE, ARTIST, ALBUM, TRACKNUMBER, DATE, GENRE, DESCRIPTION, COMPOSER, PERFORMER, COPYRIGHT, LICENSE, ORGANIZATION, VERSION i ISRC. Dwa standardowe pola celowo mogą zawierać dane osobowe i warto je wyróżnić. LOCATION jest przeznaczone na miejsce wykonania nagrania, a CONTACT na sposób kontaktu z osobą lub organizacją stojącą za nagraniem, co w praktyce oznacza adres e-mail lub prywatną stronę internetową. Żadne z nich nie jest wypełniane automatycznie, ale aplikacje do nagrywania i pracy terenowej z nich korzystają.
Poza standardowymi nazwami możesz trafić na wszystko, co dodał użyty zestaw aplikacji. ENCODER podaje dokładny program i wersję, które utworzyły plik, a dodatkowo możesz znaleźć dane o wzmocnieniu odsłuchu (replay gain), identyfikatory łączące album z internetową bazą muzyczną oraz pole COMMENT zawierające dowolny tekst wpisany przez użytkownika. Okładka albumu jest tu nietypowo przechowywana: zamiast własnej struktury zapisana jest jako zakodowany obraz wewnątrz pola komentarza. W starszych plikach czasem z przodu znajduje się znacznik ID3 dołączony przez program tagujący, który nie wiedział lepiej. Odtwarzacze mogą go ignorować, ale raport metadanych nadal pokaże, co tam zapisano.
Kiedy używać OGG
Ogg Vorbis jest rozsądnym wyborem, gdy liczą się kwestie licencyjne, gdy dołączasz dźwięk do oprogramowania lub gry albo gdy po prostu chcesz dobrą stratną jakość bez ponoszenia opłat. Przeglądarki i odtwarzacze desktopowe radzą sobie z nim dobrze. Jego słabą stroną jest sprzęt: radia samochodowe, starsze telefony i wiele przenośnych odtwarzaczy oczekuje MP3 lub AAC, więc plik, który idealnie odtwarza się na laptopie, może być niewidoczny na desce rozdzielczej. W samej rodzinie Xiph kodekiem zalecanym do nowych zastosowań jest teraz Opus, który korzysta z tych samych stron Ogg, dlatego takie pliki mają rozszerzenie .opus.