# Instalace

Jednoduchý návod na instalaci naleznete v souboru `README`. Přečtěte si nejprve tento soubor a poté se vraťte zde pro další podrobnosti.

V této části vás provedeme procesem kompilace a konfigurace programu MPlayer. Není to snadné, ale nemusí to být nutně těžké. Pokud zaznamenáte rozdílné chování, než zde popisuji, prostudujte si prosím tuto dokumentaci a naleznete své odpovědi. Pokud narazíte na odkazy, následujte je a pečlivě si prostudujte jejich obsah. Bude vás to stát trochu času, ale STOJÍ to za to.

Budete potřebovat poměrně zánovní systém. Na Linuxu doporučujeme jádro řady 2.4.x.

## Softwarové požadavky

- binutils – Doporučená verze je 2.11.x. Tento program zajišťuje generování MMX/ 3DNow!/atd. instrukcí, které jsou velmi důležité.

- gcc – Doporučené verze jsou 2.95 a 3.3+. 2.96 a 3.0.x jsou známy generováním vadného kódu, 3.1 a 3.2 měly rovněž problémy.

- XFree86 – Doporučená verze je vždy ta nejnovější (4.3). Normálně by to měl chtít každý, jelikož od verze XFree86 4.0.2 obsahuje rozšíření XVideo (místy zmiňované jako Xv) které je nutné k zapnutí hardwarové YUV akcelerace (rychlé vykreslování obrázku) na kartách, které to podporují. Ujistěte se že máte nainstalován i vývojový (dev) balíček, jinak to nebude pracovat. Pro některé video karty nepotřebujete XFree86. Viz seznam níže.

- make – Doporučená verze je vždy ta nejnovější (aspoň 3.79.x). Obvykle to není důležité.

- FreeType 2.0.9 nebo pozdější je vyžadována, abyste měli font pro OSD a titulky.

- SDL – není vyžadována, ale může pomoci v některých případech (špatný zvuk, video karty které se podivně opožďují s xv rozhraním). Vždy použijte nejnovější (počínaje 1.2.x).

- libjpeg – volitelný JPEG dekodér, používaný volbou `-mf` a některými QT MOV soubory. Použitelný pro MPlayer i MEncoder pokud chcete pracovat se soubory JPEG.

- libpng – doporučený a výchozí (M)PNG dekodér. Vyžadován pro GUI. Použitelný pro MPlayer i MEncoder.

- lame – doporučený, nutný pro enkódování MP3 zvuku v MEncoderu, doporučená verze je vždy ta nejnovější (aspoň 3.90).

- zlib – doporučená, nutná pro komprimovanou MOV hlavičku a podporu PNG.

- libogg – volitelná, nutná pro přehrávání souborového formátu OGG.

- libvorbis – volitelná, nutná pro přehrávání OGG Vorbis zvuku.

- LIVE555 Streaming Media - volitelná, nutná pro přehrávání RTSP/RTP datových proudů.

- directfb – volitelný, z . Vyžadujeme aspoň 0.9.13.

- cdparanoia – volitelná, pro podporu CDDA

- libxmms – volitelná, pro podporu XMMS vstupního pluginu. Vyžadujeme aspoň 1.2.7.

- libsmb – volitelná, pro podporu Samby.

- ALSA – volitelná, pro podporu ALSA zvukového výstupu. Vyžadujeme aspoň 0.9.0rc4.

- bio2jack – volitelný, pro podporu JACK audio výstupu, potřebný pouze při kompilaci. Můžete jej získat z http://bio2jack.sf.net. Protože nemá volbu install, uložte ručně soubor `libbio2jack.a` někam do knihovní vyhledávací cesty (např. `/usr/local/lib`) nebo volbou `--with-bio2jack=DIR` sdělte `./configure` kde ten soubor najde.

## Video karty

Obecně máme dva druhy video karet. Jedny (ty novější) mají podporu pro hardwarové škálování a YUV akceleraci, druhé ji nemají.

### YUV karty

Mohou zobrazit a škálovat (zvětšit/zmenšit) obraz na jakoukoli velikost, která se jim vejde do paměti, při nízkém zatížení CPU (dokonce i při zoomu), takže je zobrazení na celou obrazovku hezké a velmi rychlé.

- Karty Matrox G200/G400/G450/G550: ačkoli je pro ně Vidix ovladač, doporučuje se místo něj raději použít modul mga_vid, jelikož pracuje mnohem lépe. Podívejte se do části mga_vid na informace o jeho použití a instalaci. Je důležité provést všechny tyto kroky před kompilací MPlayeru, jinak nebude zabudována podpora pro mga_vid. Rovněž nahlédněte do části Matrox TV-out. Pokud nepoužíváte Linux, je vaší jedinou volbou VIDIX ovladač: přečtěte si sekci VIDIX.

- Karty 3Dfx Voodoo3/Banshee: prostudujte si sekci tdfxfb pokud chcete velké zrychlení. Je důležité provést všechny tyto kroky před kompilací MPlayeru, jinak nebude zabudována podpora pro 3Dfx. Pokud používáte X, použijte alespoň 4.2.0, protože 3dfx Xv ovladač je vadný v 4.1.0 a předchozích.

- Karty ATI: VIDIX ovladač je k dispozici pro následující karty: Radeon, Rage128, Mach64 (Rage XL/Mobility, Xpert98). Rovněž nahlédněte do sekce ATI karet s dokumentací pro TV-out, kde se dozvíte zda je pod Linuxem/MPlayerem podporován TV-out vaší karty.

- Karty S3: Savage a Virge/DX čipy mají hardwarovou akceleraci. Použijte tak novou verzi XFree86 jak je jen možné, starší ovladače jsou plné chyb. Čipy Savage mají problémy se zobrazováním YV12, viz sekci S3 Xv pro více detailů. Starší Trio karty nemají žádnou, nebo jen pomalou hardwarovou podporu.

- Karty nVidia: mohou, ale nemusí být dobrou volbou pro přehrávání videa pod Linuxem. Pokud nemáte kartu GeForce2 (nebo novější), nejspíše nebude pracovat bezchybně. Vestavěný nVidia ovladač v XFree86 nepodporuje hardwarovou YUV akceleraci na všech nVidia kartách. Budete muset stáhnout closed-source ovladače od nVidie z nVidia.com. Viz sekci nVidia Xv ovladač pro více detailů. Rovněž navštivte sekci nVidia TV-out pokud chcete používat TV.

- 3DLabs GLINT R3 a Permedia3: k dispozici máte VIDIX ovladač (pm3_vid). Rovněž nahlédněte do části VIDIX pro více informací.

- Ostatní karty: žádná z výše uvedených?

  - Zkuste zda XFree86 ovladač (a vaše karta) podporuje hardwarovou akceleraci. Pro více informací viz sekci Xv.

  - Pokud ne, pak nejsou video vlastnosti vaší karty podporovány vaším operačním systémem:( Jestliže hardwarové škálování pracuje ve Windows, ještě to neznamená, že bude funkční v Linuxu nebo jiném operačním systému. To závisí na ovladačích. Většina výrobců nedodává ovladače pro Linux ani nezveřejnila specifikace svých čipů -- pokud používáte jejich karty pak máte smůlu. Viz .

### Ne-YUV karty

Přehrávání na celé obrazovce může být dosaženo buď zapnutím softwarového škálování (použitím volby `-zoom` nebo `-vf`, ale varuji vás: je to pomalé), anebo přepnutím do menšího videorežimu, například 352x288. Pokud nemáte YUV akceleraci, doporučujeme druhou možnost. Přepínání videorežimu lze zapnout použitím volby `-vm`, což pracuje s těmito ovladači:

- používáte XFree86: viz detaily v části DGA ovladač a X11 ovladač. Doporučujeme DGA! Vyzkoušejte také DGA přes SDL, někdy je lepší.

- nepoužíváte XFree86: zkoušejte ovladače v následujícím pořadí: vesa, fbdev, svgalib, aalib.

### Karty Cirrus-Logic

- GD 7548: byla integrovaná na základní desce a testována v noteboocích řady Compaq Armada 41xx.

  - XFree86 3: pracuje v režimech 8/16bpp. Ovladač je ovšem velmi pomalý a nestabilní při 800x600@16bpp. Doporučujeme: 640x480@16bpp

  - XFree86 4: Xserver zamrznul brzy po startu pokud nebyla vypnuta akcelerace, ale pak se vše zpomalilo víc než v XFree86 3. Není XVideo.

  - FBdev: framebuffer lze zapnout pomocí modulu jádra clgenfb. Pracoval ovšem pouze v 8bpp barevné hloubce, což je k ničemu. Zdrojový kód clgenfb musí být rozšířen o ID 7548 před kompilací.

  - VESA: karta podporuje pouze VBE 1.2, takže výstup VESA nelze použít. Nelze to obejít pomocí UniVBE.

  - SVGAlib: detekuje starší Cirrus čip. Použitelné, ale pomalé při `-bpp 8`.

## Zvukové karty

- Soundblaster Live!: s touto kartou můžete použít 4 nebo 6 (5.1) kanálové AC3 dekódování místo 2 kanálového. Přečtěte si sekci Softwarové dekódování AC3. Pro hardwarové AC3 tunelování musíte použít ALSA 0.9 s OSS emulací!

- C-Media s S/PDIF výstupem: hardwarové AC3 tunelování je s těmito kartami možné, viz sekci Hardwarové AC3 dekódování.

- Vlastnosti ostatních karet nejsou MPlayerem podporovány. Velmi doporučujeme k přečtení sekci zvukové karty!

## Vlastnosti

- Rozhodněte se zda potřebujete GUI. Pokud ano, přečtěte si před kompilací sekci GUI.

- Pokud chcete nainstalovat MEncoder (náš skvělý všestranný enkodér), přečtěte si sekci MEncoder.

- Pokud máte V4L kompatibilní TV tuner kartu, a přejete si sledovat/grabovat filmy MPlayerem, přečtěte si sekci TV vstup.

- Pokud máte V4L kompatibilní radio tuner kartu a přejete si poslouchat nebo zachytávat zvuk MPlayerem, přečtěte si sekci radio.

- Připravena k použití je podpora pěkného OSD Menu. Přečtěte si sekci OSD menu.

Pak přeložte MPlayer:

      ./configure
      make
      make install

V tuto chvíli máte MPlayer připraven k použití. Adresář `$PREFIX/share/mplayer` obsahuje soubor `codecs.conf`. Ten se používá pro oznámení všech kodeků a jejich schopností. Tento soubor je potřeba pouze pokud chcete tyto předvolby změnit, protože jeho kopie je součástí vlastního programu. Zjistěte jestli máte v domácím adresáři soubor `codecs.conf` (`~/.mplayer/codecs.conf`) ze starých verzí MPlayeru a odstraňte ho.

Poznamenejme že pokud umístíte `codecs.conf` do `~/.mplayer/`, vestavěný a systémový `codecs.conf` budou zcela ignorovány. Nedělejte to pokud nechcete ošidit přednastavení MPlayeru, což může způsobit mnoho problémů. Pokud jen chcete změnit pořadí vyhledávání kodeků, použijte volby `-vc`, `-ac`, `-vfm` nebo `-afm` v příkazovém řádku, nebo konfiguračním souboru (viz manuálová stránka).

Uživatelé Debianu si mohou vyrobit .deb balíček, je to velmi jednoduché. Jen spusťte binárku

    fakeroot debian/rules

v MPlayerově kořenovém adresáři. Podrobnosti viz Balíčkování Debianu.

Vždy si prostudujte výstup skriptu `./configure`, a soubor `configure.log`, které obsahují informace o tom co bude zakompilováno a co ne. Také můžete chtít vidět soubory `config.h` a `config.mak`. Pokud máte některé knihovny nainstalovány, ale nebyly detekovány skriptem `./configure`, pak ověřte, zda máte příslušné hlavičkové soubory (obvykle -dev balíčky) a jejich verze jsou shodné. Soubor `configure.log` vám obvykle prozradí co vám chybí.

Ačkoli to není podmínkou, měli byste mít nainstalovány fonty pro funkci OSD a zobrazování titulků. Doporučujeme nainstalovat soubor fontu TTF a nařídit MPlayeru jej používat. Detaily viz sekce Titulky a OSD.

## Chtěli byste GUI?

GUI potřebuje GTK 1.2.x nebo GTK 2.0 (není plně GTK, ale panely jsou). Skiny jsou uloženy v PNG formátu, takže GTK, libpng (a jejich příslušenství, obvykle nazývané gtk-dev a libpng-dev) musí být nainstalovány. Můžete jej zakompilovat předáním volby `--enable-gui` skriptu `./configure`. Aktivaci GUI režimu pak provedete spuštěním binárky `gmplayer`.

V současnosti lze také předat volbu `-gui` na příkazovém řádku, z technických důvodů.

Protože MPlayer nemá přibalen žádný skin, budete si muset nějaký stáhnout abyste mohli používat GUI. Viz naši download stránku. Skiny by měly být rozbaleny do obvyklého systémového adresáře (`$PREFIX/share/mplayer/skins`), nebo do `$HOME/.mplayer/skins`. MPlayer ve výchozím stavu hledá v těchto adresářích podadresář jménem `default`, ale můžete použít volbu `-skin nový_skin` nebo direktivu `skin=nový_skin` konfiguračního souboru pro použití skinu v adresáři `*/skins/nový_skin`.

## Fonty a OSD

Abyste si mohli užívat OSD a titulků, musíte MPlayeru sdělit, který font má použít. Může to být jakýkoli TrueType font, nebo speciální bitmapový font. TrueType však doporučujeme, jelikož vypadají lépe, mohou být vhodně škálovány na rozměr filmu a lépe si poradí s různými znakovými sadami.

### TrueType fonty

Existují dva způsoby, jak zprovoznit TrueType fonty. První je použít volbu `-font` pro volbu TrueType fontu z příkazového řádku. Tato volba bude dobrým kandidátem pro umístění do konfiguračního souboru (detaily viz manuál). Druhá je vytvoření symlinku s názvem `subfont.ttf` na soubor s vámi vybraným fontem. Buď

    ln -s /cesta/k/sample_font.ttf ~/.mplayer/subfont.ttf

pro každého uživatele zvlášť, nebo systémový:

    ln -s /cesta/k/sample_font.ttf $PREFIX/share/mplayer/subfont.ttf

Pokud byl MPlayer kompilován s podporou fontconfig, výše uvedené nebude fungovat, místo toho `-font` očekává fontconfig název fontu a jako výchozí bere bezpatkový font. Seznam fontů známých fontconfigu, získáte pomocí `fc-list`. Příklad:

    mplayer -font 'Bitstream Vera Sans' anime.mkv

### bitmapové fonty

Pokud se z nějakého důvodu rozhodnete nebo potřebujete použít bitmapové fonty, stáhněte si sadu z našich stránek. Můžete si vybrat mezi různými ISO fonty a několika sadami fontů zaslaných uživateli v různých znakových sadách.

Rozbalte stažený archiv do `~/.mplayer` nebo `$PREFIX/share/mplayer`. Pak přejmenujte nebo slinkujte jeden z rozbalených adresářů na `font`, například:

    ln -s ~/.mplayer/arial-24 ~/.mplayer/font

    ln -s $PREFIX/share/mplayer/arial-24 $PREFIX/share/mplayer/font

Fonty by měly mít vhodný `font.desc` soubor, který mapuje unicode pozice ve fontu na aktuální znakovou sadu textu titulků. Dalším řešením je mít titulky kódované v UTF-8 a použití volby `-utf8`, nebo jen pojmenovat soubor s titulky `<video_název>.utf` a umístěte jej do adresáře s filmem.

### OSD menu

MPlayer má plně uživatelsky definovatelné rozhraní OSD Menu (nabídka na obrazovce).

Menu Preferences NENÍ v současnosti IMPLEMENTOVÁNO!

Instalace

1. zkompilujte MPlayer s volbou `--enable-menu` předanou do `./configure`

2. ujistěte se že máte nainstalován OSD font

3. zkopírujte `etc/menu.conf` do svého `.mplayer` adresáře

4. zkopírujte `etc/menu.conf` do svého `.mplayer` adresáře, nebo do systémového MPlayer konfiguračního adresáře (výchozí: `/usr/local/etc/mplayer`)

5. zkontrolujte a upravte `input.conf`, abyste zapnuli klávesy pro pohyb v menu (to je popsáno zde).

6. spusťte MPlayer podle následujícího příkladu:

       $ mplayer -menu file.avi

7. stiskněte některou z kláves, kterou jste definovali

## RTC

V MPlayer jsou zabudovány tři metody časování.

- Abyste použili starou metodu, nemusíte dělat vůbec nic. Ta používá usleep() pro hlídání A/V synchronizace s přesností +/- 10ms. Ačkoli někdy může být synchronizace hlídána ještě jemněji.

- Kód nového časovače používá pro tento účel RTC (hodiny reálného času), protože mají přesné 1ms časovače. Volba `-rtc` to zapíná, je však nutné vhodně nastavené jádro. Pokud používáte jádro 2.4.19pre8 nebo pozdější, můžete nastavit maximální RTC kmitočet pro normální uživatele pomocí systému souborů /proc . Použijte jeden z těchto dvou příkazů pro zapnutí RTC pro obyčejné uživatele:

      echo 1024 > /proc/sys/dev/rtc/max-user-freq

      sysctl dev/rtc/max-user-freq=1024

  Můžete tuto volbu učinit trvalou přidáním druhého příkazu do `/etc/sysctl.conf`.

  Efektivitu nového časovače uvidíte na stavovém řádku. Funkce power managementu některých notebookových BIOSů s speedstep procesory špatně komunikují s RTC. Audio a video se mohou rozejít. Zdá se že pomáhá připojení vnějšího napájení před zapnutím notebooku. V některých hardwarových kombinacích (zjištěno během používání ne-DMA DVD mechaniky na ALi1541 boardu) způsobuje použití RTC časování trhavé přehrávání. Pak doporučujeme použít třetí metodu.

- Třetí kód časovače se zapíná volbou `-softsleep`. Je stejně efektní jako RTC, ale nepoužívá RTC. Na druhou stranu více zatěžuje CPU.