# Nosné formáty (Containers)

Považujeme za důležité vyjasnit všeobecný omyl. Když lidé vidí soubor s příponou `.AVI`, automaticky se domnívají, že to není MPEG soubor. To však není pravda. Aspoň ne úplně. Narozdíl od všeobecného mínění tyto soubory mohou obsahovat MPEG-1 video.

Jak vidíte, kodek není to samé jako nosný formát. Příklady video kodeků jsou: MPEG-1, MPEG-2, MPEG-4 (DivX), Indeo5, 3ivx. Příklady nosných formátů jsou: MPG, AVI, ASF.

Teoreticky můžete vložit OpenDivX video a MP3 audio do nosného formátu MPG. Většina přehrávačů jej však nepřehraje, jelikož zde očekávají MPEG-1 video a MP2 audio (narozdíl od AVI, MPG nemá potřebná pole k popisu svých video a audio datových proudů). Nebo můžete vložit MPEG-1 video do AVI souboru. FFmpeg a MEncoder mohou tyto soubory vytvořit.

## Video formáty

### MPEG soubory

MPEG soubory se vyskytují v různých obálkách:

- MPG: Toto je nejjednodušší forma souborových formátů MPEG. Obsahuje MPEG-1 video a MP2 (MPEG-1 layer 2) nebo méně často MP1 audio.

- DAT: Toto je naprosto stejný formát jako MPG, jen s jinou příponou. Používá se na Video CD. Díky způsobu, jak jsou VCD vytvářeny a Linux navržen, nemohou být DAT soubory přehrávány nebo kopírovány z VCD jako běžné soubory. Musíte použít `vcd://` pro přehrávání Video CD.

- VOB: Toto je souborový formát MPEG na DVD. Je stejný jako MPG, plus schopnost obsahovat titulky nebo ne-MPEG (AC3) audio. Obsahuje video enkódované do MPEG-2 a obvykle AC3 audio, ale DTS, MP2 a nekomprimovaný LPCM jsou rovněž povoleny. Přečtěte si DVD sekci!

- TY: Toto je TiVo MPEG datový proud. Obsahuje MPEG PES data pro audio a video datové proudy, spolu s dodatečnými informacemi jako closed captions. Kontejner není produktem MPEG programu, ale je to uzavřený formát vytvořený firmou TiVo. Více informací o TiVo proudovém formátu naleznete na stránkách TyStudia.

Série snímků tvoří nezávislé skupiny v MPEG souborech. To znamená, že můžete MPEG soubory stříhat/spojovat pomocí standardních souborových nástrojů (jako je `dd`, `cut`) a soubor zůstává naprosto funkční.

Důležitou vlastností MPG je pole obsahující poměr stran obsaženého videa. Například SVCD mají rozlišení videa 480x480 a v hlavičce mají nastaven poměr stran na 4:3, takže jsou přehrávány na 640x480. AVI soubory toto pole neobsahují, takže musí být přeškálovány během enkódování, nebo přehrávány s volbou `-aspect`.

### AVI soubory

Navrženy Microsoftem, AVI (Audio Video Interleaved) je rozšířený víceúčelový formát. V současnosti je většinou používaný pro MPEG-4 (DivX a DivX4) video. Má mnoho známých nedostatků a nedokonalostí (například ve streamování). Podporuje jeden video datový proud a 0 až 99 audio proudů a může být veliký až 2GB, avšak existuje rozšíření umožňující větší soubory nazývané OpenDML. V současnosti Microsoft velmi odrazuje od jeho používání a podporuje ASF/WMV. Ne že by to někoho zajímalo.

Existuje hack, který umožňuje vkládat do AVI souborů Ogg Vorbis audio proudy, ale činí je nekompatibilní se standardním AVI. MPlayer podporuje přehrávání těchto souborů. Převíjení je rovněž implementováno, ale často znemožňováno špatně enkódovanými soubory se zmatenými hlavičkami. Naneštěstí jediný enkodér schopný vytvořit tyto soubory, NanDub, má tento problém.

DV kamery vytváří surové DV datové proudy, které jsou konvertovány DV grabovacími utilitami do dvou odlišných AVI souborů. AVI pak obsahuje buď oddělené video a audio proudy které MPlayer umí přehrávat, nebo surový DV proud, jehož podpora je ve vývoji.

Známe dva druhy AVI souborů:

- Prokládaný: Audio a video obsah je proložený. Toto je obvyklé použití. Doporučené a většinou používané. Některé nástroje vytvářejí AVI se špatnou synchronizací. MPlayer detekuje tyto soubory jako prokládané a to vyvrcholí ztrátou A/V synchronizace, pravděpodobně při přetáčení. Tyto soubory by měly být přehrávány jako neprokládané (s volbou `-ni`).

- Neprokládané: Nejprve jde celý video proud, pak celý audio proud. To vyžaduje mnoho hledání, což činí přehrávání ze sítě nebo CD-ROM obtížným.

MPlayer podporuje dva druhy časování pro AVI soubory:

- založený na bps: Vychází z bitové/vzorkové rychlosti video/audio proudu. Tuto metodu používá většina přehrávačů, včetně avifile a Windows Media Playeru. Soubory s poškozenými hlavičkami a soubory obsahující VBR audio nevytvořené VBR slučitelným enkodérem vyústí v rozejití zvuku a videa při použití této metody (zpravidla při převíjení).

- založený na prokládání: Nepoužívá hodnotu bitové rychlosti z hlavičky, místo toho využívá relativní pozici prokládaných audio a video chunků, což umožňuje přehrávat špatně enkódované soubory s VBR zvukem.

Jakýkoli audio a video kodek je povolen, ale berte na vědomí, že VBR audio není většinou přehrávačů dobře podporován. Formát souboru umožňuje použití VBR audia, ale většina přehrávačů očekává CBR zvuk, takže selžou s VBR. VBR je neobvyklé a Microsoftí AVI specifikace popisuje pouze CBR audio. Rovněž jsme si všimli, že většina AVI enkodérů/multiplexerů vytváří vadné soubory, když je použito VBR audio. Existují pouze dvě známé výjimky: NanDub a MEncoder.

### ASF/WMV soubory

ASF (Active Streaming Format) pochází z dílny Microsoftu. Tam vytvořili dvě varianty ASF, v1.0 a v2.0. v1.0 je používána jejich mediálními nástroji (Windows Media Playerem a Windows Media Encoderem) a je přísně tajný. v2.0 je publikován a patentován :). Samozřejmě se od sebe liší a nejsou vůbec kompatibilní (je to jen další právnická hra). MPlayer podporuje pouze v1.0, protože nikdo nikdy neviděl v2.0 soubory :). Poznamenejme že ASF soubory se v těchto dnech vyskytují s příponou `.WMA` nebo `.WMV`.

### QuickTime/MOV soubory

Tyto formáty byly vytvořeny v Apple a mohou obsahovat jakýkoli kodek, CBR nebo VBR. Obvykle mají příponu `.QT` nebo `.MOV`. Poznamenejme, že vzhledem k tomu, že si skupina MPEG-4 vybrala QuickTime jako doporučený formát souboru pro MPEG-4, jejich MOV soubory mají příponu `.MPG` nebo `.MP4` (Zajímavé je, že video a audio proudy v těchto souborech jsou skutečné MPG a AAC soubory. Dokonce je můžete extrahovat pomocí voleb `-dumpvideo` a `-dumpaudio`.).

### VIVO soubory

MPlayer šťastně demuxuje souborový formát VIVO. Největší nevýhoda tohoto formátu je, že nemá indexový blok ani pevnou délku paketu nebo synchronizační bity a mnoha souborům schází dokonce i klíčové snímky, takže zapomeňte na převíjení!

Video kodekem VIVO/1.0 souborů je standardní h.263. Video kodekem VIVO/2.0 souborů je upravený, nestandardní h.263v2. Zvuk mají stejný, může to být g.723 (standard) nebo Vivo Siren.

### FLI soubory

FLI je velmi starý souborový formát používaný Autodesk Animatorem, ale je běžným formátem pro krátké animace na netu. MPlayer demuxuje a dekóduje FLI filmy a je dokonce schopen v nich převíjet (použitelné při přeskakování s volbou `-loop`). FLI soubory neobsahují klíčové snímky, takže bude obraz ještě chvíli po převíjení roztříštěný.

### RealMedia (RM) soubory

Ano, MPlayer umí číst (demux) RealMedia (`.rm`) soubory.

### NuppelVideo soubory

NuppelVideo je nástroj pro zachytávání TV (AFAIK:). MPlayer umí číst tyto `.NUV` soubory (pouze NuppelVideo 5.0). Tyto soubory mohou obsahovat nekomprimované YV12, YV12+RTJpeg komprimované, YV12 RTJpeg+lzo komprimované a YV12+lzo komprimované snímky. MPlayer je dekóduje (a také je všechny enkóduje MEncoderem do MPEG-4 (DivX)/atd.!). Převíjení funguje.

### yuv4mpeg soubory

yuv4mpeg / yuv4mpeg2 je souborový formát používaný mjpegtools programy. Můžete zachytávat, vytvářet, filtrovat nebo enkódovat video v tomto formátu pomocí těchto nástrojů. Formát souboru je ve skutečnosti sekvence nekomprimovaných YUV 4:2:0 obrázků.

### FILM soubory

Tento formát používaly staré CD-ROM hry pro Sega Saturn.

### RoQ soubory

RoQ soubory jsou multimediální soubory používané v některých hrách od ID, jako Quake III a Return to Castle Wolfenstein.

### OGG/OGM soubory

Toto je nový souborový formát od Xiphophorus. Může obsahovat jakýkoli video nebo audio kodek, CBR nebo VBR. Budete potřebovat libogg a libvorbis nainstalovány před kompilací MPlayeru, aby byl schopen je přehrávat.

### SDP soubory

SDP je IETF standardní formát pro popis video a/nebo audio RTP datových proudů. (Vyžaduje "LIVE555 Streaming Media".)

### PVA soubory

PVA je formát podobný MPEG, používaný softwarem pro DVB TV desky (např.: MultiDec, WinTV pod Windows).

### NSV soubory

NSV (NullSoft Video) je souborový formát používaný přehrávačem Winamp pro streamování audia a videa. Video je VP3, VP5 nebo VP6, audio je MP3, AAC nebo VLB. Jen zvuková verze NSV užívá příponu `.nsa`. MPlayer umí přehrávat jak NSV datové proudy, tak soubory. Poznamenejme, že většina souborů ze stránek Winampu používá VLB audio, které zatím nelze dekódovat. Mimo to proudy z tohoto serveru vyžadují další depaketovací vrstvu, která ještě musí být implementována (stejně jsou ty soubory nepřehratelné, protože mají VLB audio).

### Soubory Matroska

Matroska je otevřený nosný (container) formát. Více se dozvíte na oficiálním serveru.

### Soubory NUT

NUT je nosný formát vyvíjený týmy MPlayer a FFmpeg. Oba projekty jej podporují. Více se dozvíte na oficiálním serveru.

### GIF soubory

Formát GIF je obecný formát pro webovou grafiku. Existují dvě verze GIF specifikace, GIF87a a GIF89a. Hlavní rozdíl je, že GIF89a umožňuje animaci. MPlayer podporuje oba formáty pomocí libungif nebo jiné libgif-kompatibilní knihovny. Neanimované GIFy budou zobrazeny jako jednoobrázková videa. (Použijte volby `-loop` a `-fixed-vo` pro delší zobrazení.)

MPlayer v současnosti nepodporuje převíjení v GIF souborech. GIF soubory nemusí mít nutně pevnou velikost rámce, anebo pevnou snímkovou rychlost. Spíše má každý snímek nezávislou velikost a předpokládá se jeho umístění do určitého místa v poli pevné velikosti. Snímková rychlost je ovládána volitelným blokem před každým snímkem, který udává zpoždění dalšího snímku v setinách sekundy.

Standardní GIF soubory obsahují 24-bitové RGB snímky s maximálně 8-bitovou indexovanou paletou. Snímky jsou obvykle komprimovány algoritmem LZW, ačkoli některé GIF enkodéry produkují nekomprimované snímky, aby se vyhnuly patentovým problémům s LZW kompresí.

Pokud vaše distribuce neobsahuje libungif, stáhněte si ji z domácí stránky libungif . Podrobné technické informace naleznete v GIF89a specifikaci.

## Audio formáty

MPlayer je filmový, nikoli multimediální přehrávač, ačkoli umí přehrát některé zvukové formáty (ty jsou vyjmenovány v následujících sekcích). Toto není doporučené použití MPlayeru, raději použijte XMMS.

### MP3 soubory

Můžete mít problémy s přehráním určitých MP3 souborů, které MPlayer nesprávně detekuje jako MPEGy a přehrává je nesprávně nebo vůbec. Toto nelze opravit bez vyřazení podpory pro některé poškozené MPEG soubory, proto to tak v dohledné době zůstane. Příznak `-demuxer` popsaný v man stránce vám pomůže v těchto případech.

### OGG/OGM soubory (Vorbis)

Vyžaduje správně nainstalované libogg a libvorbis.

### CD audio

MPlayer umí použít cdparanoia pro přehrávání CDDA (Audio CD). Zaměření této části nezahrnuje výčet vlastností cdparanoia.

Viz volbu `-cdda` v man stránce, která může být použita pro propašování voleb do cdparanoia.

### XMMS

MPlayer může použít vstupní pluginy pro XMMS pro přehrávání mnoha souborových formátů. Jsou to pluginy pro SNES herní melodie, SID melodie (z Commodore 64), mnoho Amiga formátů, .xm, .it, VQF, musepack, Bonk, shorten a mnoho dalších. Můžete je najít na stránce XMMS input pluginů.

Pro tuto vlastnost musíte mít XMMS a zkompilovat MPlayer s `./configure --enable-xmms`. Pokud to nebude fungovat, budete muset nastavit cestu k XMMS pluginu a knihovně explicitně konfiguračními volbami `--with-xmmsplugindir` a `--with-xmmslibdir`.