From Wikipedia, the free encyclopedia
Ogg je projekt, který si klade za cíl vytvořit svobodný software pro digitální multimédia. Datový formát Ogg propagovaný nadací Xiph.org byl vytvořen jako výchozí materiál větší iniciativy, která si klade za cíl vyvinout komponenty pro kódování a dekódování multimediálního obsahu, přičemž tyto komponenty budou svobodně dostupné a svobodně reimplementovatelné v softwaru (BSD licence). Formát Ogg je definován v RFC 3533 a jeho MIME typ application/ogg
v RFC 3534.
Různé části projektu jsou zamýšleny jako alternativy k nesvobodným standardům, jakými jsou formáty MPEG, Real, QuickTime, Windows Media Audio; formáty RIFF – WAV a AVI.
Přípona souboru | .ogg, .opus, .ogv, .oga, .ogx, .spx |
---|---|
Typ internetového média | video/ogg, audio/ogg, application/ogg |
Magické číslo | OggS |
Tvůrce | Xiph.Org Foundation |
Kontejner pro | Vorbis, Opus, Theora, Speex, FLAC, Dirac, Daala a další. |
Otevřený formát | ano |
Datový formát Ogg propagovaný nadací Xiph.org byl vytvořen jako výchozí materiál větší iniciativy, která si klade za cíl vyvinout komponenty pro kódování a dekódování multimediálního obsahu, přičemž tyto komponenty budou svobodně dostupné a svobodně reimplementovatelné v softwaru (BSD licence). Formát Ogg je definován v RFC 3533 a jeho MIME typ application/ogg
v RFC 3534.
Formát se skládá z kusů dat nazývajících se stránka ogg. Každá stránka začíná řetězcem „OggS“ k identifikaci souboru jako Ogg formátu. Sériové číslo a číslo stránky v záhlaví stránky identifikuje každou stránku jako část série stránek tvořících proud bitů (bitstream). Vícenásobný bitstreams může být multiplexní v souboru kde stránky z každého bitstreamu jsou seřazené podle doby hledání obsažených dat. Bitstream může být také připojený k existujícím souborům, proces známý jako spojování, způsobuje, že bitstreamy jsou dekódovány po sekvencích. Knihovna libogg, spadající pod BSD licenci, je k dispozici ke kódování a dekódování dat z Ogg streamů. Nezávislé implementace Ogg jsou užívány v několika projektech jako RealPlayer a sada DirectShow filtrů.
Následující je rozložení pole z hlavičky Ogg stránky:
0 1 2 3 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1| Byte +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | zachytávací_zdroj: kouzelné číslo pro začátek stránky "OggS" | 0-3 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | verze | typ_hlavičky | pozice_zrna | 4-7 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | | 8-11 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | | sériové_číslo bitstreamu | 12-15 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | | číslo_sekvence_stránky | 16-19 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | | CRC_kontrolní_součet | 20-23 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | | segmenty_str.|segment_tabulky | 24-27 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | ... | 28- +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
Bit | Hodnota | Příznak | Typ stránky |
---|---|---|---|
0 | 0x01 | Pokračující | První paket na této stránce je pokračováním předchozího paketu v logickém bitstreamu. |
1 | 0x02 | BOS | Začátek proudu (Beginning Of Stream). Tato stránka je první stránka logického bitstreamu. BOS příznak musí být nastaven na první stránku každého logického bitstreamu a nesmí být nastaven na jinou stránku. |
2 | 0x04 | EOS | Konec proudu (End Of Stream). Tato stránka je poslední stránka v logickém bitstreamu. EOS příznak musí být nastaven na konec stránky každého logického bitstreamu a nesmí být nastaven na jinou stránku. |
Segmenty poskytují způsob jak seskupit segmenty do paketů, které jsou smysluplnými jednotkami dat pro dekodér. Když délka segmentu ukazuje na 255, to ukazuje, že následující segment je zřetězený do jednoho a je částí stejného paketu. Když délka segmentu je 0–254, ukazuje to, že tento segment je konečný segment v tomto paketu. Kde délka paketu je násobek 255, konečná segment bude délky 0. Kde konečný paket pokračuje na další stránce, konečná hodnota segmentu bude 255 a pokračující příznak bude nastaven na následující stránku aby ukazovala, že začátek nové stránky je pokračováním poslední stránky.
Výchozí prací byl bezeztrátový kodek Squish. Dnes je základem ztrátový zvukový formát Vorbis (16–256 Kb/s na kanál). Dalšími jsou video formát Theora, který vychází z komerčního kodeku VP3 firmy On2 Technologies, zvukový kodek pro mluvenou řeč Speex (8–32 Kb/s na kanál) a bezeztrátový zvukový kodek pro kvalitní přenos zvuku FLAC. Writ je kodek pro vkládání titulků.
Laikové často předpokládají, že název Ogg je odvozen od postavy stařenky Oggové z fantasy série Terryho Pratchetta Zeměplocha. Ve skutečnosti jde o slangový termín pocházející z počítačové hry Netrek. Původně znamenal sebevražedný útok, později získal širší význam vrhat se do něčeho po hlavě –důrazně a možná bez rozmyslu, zejména bez ohledu na možné vyčerpání zdrojů: tak musel být projekt vnímán vzhledem k jeho hardwarovým požadavkům v době vzniku v roce 1994.
Ogg je jen kontejnerový formát. Vlastní audio nebo video zakódované kodekem bude uložené uvnitř Ogg kontejneru. Ogg kontejnery mohou obsahovat streamy zakódované s vícenásobnými kodeky, například, audio nebo video soubor může obsahovat data zakódovaná audio kodekem i video kodekem. Formát Ogg může uložit audio a video v různých formátech (jako MPEG-4 , MP3 a jiné), ale obvykle je Ogg používaný s následujícími:
Doporučené přípony ogg souborů podle Xiph.org:[1]
Seamless Wikipedia browsing. On steroids.
Every time you click a link to Wikipedia, Wiktionary or Wikiquote in your browser's search results, it will show the modern Wikiwand interface.
Wikiwand extension is a five stars, simple, with minimum permission required to keep your browsing private, safe and transparent.