Přihlásit | Registrovat

Přehrávání multimediálních souborů pomocí mplayeru

mplayer představuje v linuxové obci stálici pro přehrávání multimédíí, ale svým věhlasem se dostal do i povědomí uživatelů M$ systémů. Říká se“co nejde přehrát, přehraje Mplayer“.V následujících několika řádcích se tedy podíváme na základy ovládání celého mplayeru.

Tato stránka si rozhodně neklade za cíl být úplným návodem pro mplayer, k tomuto slouží příkaz

man mplayer

Instalace mplayeru

Mplayer je běžně 'k dostání' ve zdrojích, ovšem v několika zdrojích a to v main a plf. mplayer ve zdroji plf má vlastní kodeky a přehraje de facto úplně všechno. Proto budete-li mít na výběr, instalujte ten, který má ve jménu plf ;-)

Základní ovládání mplayeru

V konzoli

mplayer byl napsán pro ovládání z terminálu a podle toho se k němu musí i přistupovat. Pusťte si konzoli nebo xterm a tak) a dostaňte se pomocí příkazů k souboru, který chcete přehrát. Nyní stačí napsat jen

 mplayer jmeno_souboru1 

tedy za příkaz mplayer napište jména všech souborů, které chcete přehrát. Toto je značně nepraktické v případě, že chcete přehrát například celý adresář. Pro přehrání obsahu celého adresáře, ve kterém se právě nacházíte, napište

 mplayer * 

V tuto chvíli hvězdička představuje názvy všech souborů, které se nachází v aktuálním adresáři.

Potřebujete-li přehrát video s titulky, tak stačí, aby byly titulky ve stejném adresáři a jmenovaly se stejně jako video, pouze měly správnou příponu (například 'jmeno_filmu.avi' a 'jmeno_filmu.srt' pro titulky). Co dělat v případě, že se titulky nachází jinde než film a/nebo se jmenují jinak? Ani nyní není problém. Přidejte přepínač -sub, za který napíšete cestu a/nebo název titulků:

 mplayer jmeno_souboru1 -sub jmeno/ci/cesta/k/titulkum

Poznamenejme ještě, že titulky nemusí být pojmenovány jen s příponou .srt, ale i dalšími. Pokud vám špatně funguje zobrazování českých znaků, podívejte se dolů na mam_spatnou_cestinu_v_titulkach_-_co_s_tim.

Přehrávání podadresářů v mplayeru

Videosoubory bývají velké a přehrávání může trvat i několik hodin. Není problém je tedy zadávat k přehrávání jednotlivě. U hudebních souborů je to jiné. Pokud máte na disku pořádek, zřejmě si hudební soubory řadíte systémem /home/user/multimedia/hudba/interpret/album/zvukové_soubory. Z toho budu vycházet.

Chci si přehrát konkrétní album

Přejdu do adresáře s hudebními soubory konkrétního alba zadám:

mplayer *

Přehrají se všechny soubory, které mplayer zná. Pokud adresář obsahuje i obrázky, pak zadám masku pro konkrétní hudební soubory, které tam mám:

mplayer *.mp3

Chci si přehrát všechny soubory (z více alb) od určitého interpreta

Přímé přehrávání

Zde máte dvě možnosti. Vytvořit si playlisty, nebo přehrávat přímo. K oběma přístupům bude třeba využít příkazu find. Podívejme se, jak přehrát všechny soubory mp3 v adresáři i podadresářích jediným příkazem:

 find . -type f -name '*.mp3' -exec mplayer '{}' \; 

Pokud odeberete -name '*.mp3' z příkazu, přehrajete všechny multimediální soubory v adresáři a podadresářích:

 find . -type f -exec mplayer '{}' \; 

Přehrávání s PlayListem

Pokud si chcete vytvořit playlist, budu postupovat ve dvou krocích. Za prvé si vytvořím playlist. V adresáři interpreta zadám příkaz:

find . -maxdepth 2 -type f -name \*.mp3 > pl_interpret

Budete-li chtít přidat další souborovou masku, lze to k vytvořenému souboru jednoduše přidat:

find . -maxdepth 2 -type f -name \*.wma >> pl_interpret

Aby jste měli možnost si příkaz upravit podle vlastních potřeb, uvedu zde význam jednotlivých parametrů:

  • maxdepth - hloubka prohledávání; 1=aktuální adresář, 2 aktuální adresář a nejbližší podřízeny atd.
  • type f - vyhledává tzv. normální soubory (find umí vyhledávat adresáře, speciální soubory atd atd)
  • name \*.mp3 - hledá soubory podle jména určeného souborovou maskou. V tomto případě všehny soubory, které mají příponu mp3.
  • znak “>“ přesměruje výstup do souboru, normálně by se vám vypsal na obrazovku. Název souboru je uveden za šipkou, v našem případě pl_interpret. Pokud použijete “»“, výstup se k existujícímu souboru připoji, přidá. Původní obsah bude nezměněn a nový výstup soubor zvětši.

Soubor s playlistem obsahuje seznam vyhledaných souborů včetně cesty od aktuálního adresáře, tedy asi takto:

./Alizee - Gourmandises/Alizee - 06. Parler Tou Bas.mp3
./Alizee - Gourmandises/Alizee - 03. L'Alize.mp3
./Alizee - Gourmandises/Alizee - 02. Lui ou Toi.mp3
./Alizee - Mes Courants Electriques/Alizee - J'en Ai Marre.mp3
./Alizee - Mes Courants Electriques/Alizee - Coeur Deja Pris.mp3
./Alizee - Mes Courants Electriques/Alizee - Amelie m'a Dit.mp3

Přehrávání spustím příkazem:

mplayer -playlist pl_interpret

Místo vyhledávaného vzoru \*.mp3 Lze samozřejmě použít i \*.\*, ovšem pokud máte v adresářich s alby například obrázky alb (obrazové soubory nejrůznějších formátů), může se mplayer zadrhnout. Raději si to vyzkoušejte.

Pokud je chci přehrávat „na přeskáčku“, tedy v náhodném pořadí, přidám jeden parametr:

mplayer -shuffle -playlist pl_interpret

Chci si přehrávat celou sbírku

Postup je obdobný, jen bude potřeba nastavit větší hloubku prohledávaných podadresářů. Příkaz zadáte v nejvyšším adresáři s hudbou:

find . -maxdepth 4 -type f -name \*.mp3 > pl_all

Playlisty se připraví jen před prvním přehrávání, v adresáři zůstanou i pro budoucí použití. Při doplnění skladeb není problém je vygenerovat znovu. Případně si (za domácí úkol) vytvořte jednoduchý skript, který projde všechny adresáře interpretů, a když zjistí více než jeden podadresář (více alb), automaticky vygeneruje playlist. ;-)

Klávesy při přehrávání

  • šipky vpravo a vlevo

Posun vpřed či vzad o deset vteřin

  • nahoru a dolů

Posun vpřed či vzad o minutu

  • pageup/pagedown

Posun vpřed či vzad o deset minut

  • [ a ]

Snížení či snížení rychlosti přehrávání o deset procent

  • Backspace

Reset přehrávací rychlosti

  • < a >

Pohyb v playlistu

  • Enter

Skok na další položku v playlistu

  • p či mezerník

Pauza a odpauzování

  • q či ESC

Zruší přehráváví

  • lomítko / a hvězdička *

Změna hlasitosti

  • m

mute / ztišení hlasitosti

  • f

Zapnutí/vypnutí celoobrazového režimu

Pro plný seznam všech zkratek se podívejte do manuálových stránek mplayeru. Vyvoláte je příkazem

man mplayer

Přehrávání multimédií nenacházejících se na disku

Nyní již umíme přehrát soubor(y), které jsou na disku. Ale to není vše. mplayer přehrává snad naprosto všechno. V následujících několika odstavcích si si ukážeme přehrávání DVD, VCD, DVB i rádií.

Přehrávání DVD

V DVD bývá uloženo typicky několik audio-stop, titulků a mnoho dalších. Pro prohlédnutí všech možností přehrávání se podívejte do manuálových stránek. Ukážeme si, jak přehrát DVD, jak vybrat tu 'správnou' audiostopu a jak si přehrát video s titulky.

mplayer dvd://

Tímto jednoduchým příkazem přehrajete DVD s 'defaultním' nastavením. Tedy s audiem na stopě 1 a bez titulků. U českých DVD je to vše, co musíte zadat, protože defaultně je to čeština a k té nejsou třeba titulky.

Pokud se ovšem jedná o film cizí, máme několik možností. Buďto je přítomna i česká audiostopa (dubbing), české titulky a nebo oboje či nic z toho. V případě, že je na DVD přítomen i český dubbing, je třeba mplayeru říct, že má použít českou audio-stopu. Uděláme to jednoduše přidáním přepínače -alang (z audio-language):

mplayer dvd:// -alang cs

Za přepínač -alang se přidává dvoupísmenný parametr značící jazyk, který se má použít. Stejně pracujeme s titulky, pouze přepínač je -slang (z subtitle-language):

mplayer dvd:// -slang cs

za který se přidává název titulků. V případě, že máme turecký film, kde se nachází francouzský dubbing a anglické titulky.

mplayer dvd:// -alang fr -slang en

Mplayer,resp. jeho součást mencoder, umí i ripovat DVD. Více zde.

Přehrávání AudioCD

Ačkoli se stává pravdou, že většinou hudbu posloucháme ve formě mp3, tak milovníci dobrého zvuku stále nedají dopustit na klasické CD. Toto pustíme jednoduše přepínačem cdda: Je třeba za tento přepínač dát cestu k CD mechanice, ve které se AudioCD nachází. Obvykle je to /media/cdrom. Tedy výsledný příkaz pro přehrání audio CD bude:

mplayer cdda: //media/cdrom

Přehrávání VCD

VCD je předchůdce DVD, ovšem nestihl se příliš rozšířit. Krátce po svém uvedení totiž nastoupilo DVD a VCD bylo vytlačeno. Vzhledem k menší kapacitě CD oproti DVD zde není tolik možností.

mplayer vcd:// 

Je možné, že na VCD je více stop. Chcete-li nějakou určitou, zadejte ji misto stopa v:

mplayer vcd://stopa 

Přehrávání všeho možného - celkový přehled a shrnutí

videoDVD:

mplayer [dvd|dvdnav]://[titul|[počáteční_titul]-konečný_titul] [volby]

videoCD:

mplayer vcd://stopa[/zařízení]

zařízením je např. /dev/sr0

hudební (zvukové) CD

mplayer [cdda|cddb]://stopa[-poslední_stopa][:rychlost][/zařízení] [volby]

televize

mplayer tv://[kanál][/vstupní_id] [volby]

rádio

mplayer radio://[kanál|frekvence][/capture] [volby]

ostatní

PVR - Personal video recorder, zpravidla vybavený HDD, s možností připojení k počítači

mplayer pvr:// [volby]

DVB - digitální televizní vysílání

mplayer dvb://[číslo karty@]kanál [volby]

Vícestránkové obrázky JPG a PNG

mplayer mf://[souborová_maska|@seznam_souboru] [-mf volby] [volby]

Přehrávání vypalovaných CD (cue viz wikipedia)

mplayer cue://soubor[:stopa] [volby]

Streamy (vysílání)

mplayer sdp://soubor [volby]
mplayer [soubor|mms[t]|http|http_proxy|rt[s]p|ftp|udp|unsv|smb]:// [uživatel:heslo@]URL[:port] [volby]
mplayer mpst://host[:port]/URL [volby]

Soubory z digitálního videorekordéru firmy Tivo

mplayer tivo://host/[seznam|seznam|fsid] [volby]

(pro zajímavost se podívejte, jak Tivo zachází s volně šiřitelným softwarem)

Drobné problémy s mplayerem

Mám špatnou češtinu v titulkach - co s tím

mplayer, jak již bylo řečeno, zvládá titulky celkem automaticky. Ovšem nezvládá hned české znaky. Dá se to vyřešit buďto 'lokálně', nebo 'globálně'. Lokální řešení jsem označil přidání přepínače -subfont-encoding cp1250 do příkazu ke spuštění mplayeru:

mplayer volby_pro_spusteni_videa -subfont-encoding cp1250 

Pochybuji ovšem, že toto budete chtít psát při každém pouštění videa. Proto je zde nastavení globální, tedy rekonfigurace mplayeru. Zní to složitě, ale jediné, co musíte udělat, je vložit

subcp=cp1250

do tohoto souboru:

~/.mplayer/config

Přenastavení proveďte buďto ručním dopsáním, nebo

 echo subcp=cp1250 >> ~/.mplayer/config

překopírujte do konzole/terminálu a potvrďte enterem.

Nepustím video

Nejsnáze je chyba identifikovatelná, že pustíte-li video, objeví se v konzoli následující chyba

11 error: BadAlloc (insufficient resources for operation)?,?% 1 0

na dalším a dalším řádku, přičemž video nikde. Chyba je v nastavení video-output-driveru, tedy driveru výstupu. Řešení je opět - jako v předchozím problému s kódováním - lokální, tj, dočasné a nebo trvalé. Dočesné je dodání přepínače -vo x11, tedy:

mplayer volby_pro_spusteni_videa -vo x11

Trvalé řešení je přidání řádku

vo=x11

do tohoto souboru:

~/.mplayer/config

Přenastavení proveďte buďto ručním dopsáním, nebo

 echo vo=x11 >> ~/.mplayer/config

překopírujte do konzole/terminálu a potvrďte enterem. Driver x11 je univerzální a funguje skoro vždy.

Poznámka: Majitelé grafických karet intel Mandriva Linuxu 2009.0 32bit můžou zkusit nainstalovat nejnovější verzi grafického ovladače x11-driver-video-intel-2.5.1-2 který je v tuto chvíli v Peťošově repozitáři.

Odkazy

Mandriva Wiki
software/zvuk_a_video/mplayer.txt · Poslední úprava: 2011/01/05 18:39 autor: yullaw