Mplayer
Z openSUSE wiki
Ten artykuł jest niekompletny i wymaga rozbudowy. Szczegóły można znaleźć na stronie dyskusji lub na irc.
MPlayer jest jednym z najpopularniejszych odtwarzaczy multimediów dla linuksa. Jest wieloplatformowy, bardzo szybki oraz bardzo konfigurowalny. Mimo, iż posiada nakładki takie jak GMPlayer, SMPlayer czy KMPlayer, to jego możliwości najwidoczniejsze są przy uruchamianiu go z konsoli.
Spis treści |
Instalacja
Pakiet z programem znajduje się w repozytorium PackMan. Oprócz samego odtwarzacza w pakiecie MPlayer znajduje się również nakładka graficzna (gmplayer), narzędzie od enkodowania filmów (mencoder) oraz skrypt do konwersji filmów do formatu SVCD i VCD (mencvcd). W celu obsługi większej ilości formatów audio i wideo należy jeszcze zainstalować pakiet w32codec-all zawierający windowsowe kodeki których mplayer (oraz inne odtwarzacze działające na linuksie, takie jak xine) nie obsługuje natywnie.
Konfiguracja MPlayera
MPlayer trzyma pliki konfiguracyjne w katalogu ~/.mplayer, oddzielnie dla każdego użytkownika oraz globalnie w /etc/mplayer. Plik zawierający konfigurację dla konsolowej wersji MPlayera to ~/.mplayer/config. Konfigurując MPlayera należy pamiętać o priorytecie opcji:
- opcje podane w konsoli,
- konfiguracja użytkownika,
- ustawienia globalne.
Wyjścia Video
Aby użyć wyjścia video, innego niż domyślne, należy do polecenia mplayer dodać opcję -vo wraz z nazwą wyjścia. Przykład:
mplayer -vo x11 plik.mpg
W celu wybrania jakiegoś wyjścia video jako domyślne, należy w pliku konfiguracyjnym MPlayera (.mplayer/config) dodać linijkę:
vo=wybrane_wyjście_video
xv
Podstawowe i domyślne wyjście MPlayera używające przyśpieszenia sprzętowego. Używaj go, jeśli działa poprawnie w Twoim systemie.
x11
Programowe wyjście video. Jest znacznie wolniejsze od poprzedniego i nie skaluje filmu do pełnego ekranu przy naciśnięciu klawisza f - rozwiązaniem tego może być opcja -vm, zmieniająca rozdzielczość ekranu na odpowiadającą filmowi. Mimo tych wad, to wyjście ma kilka zalet: bez problemu działa z menadżerami okien takimi jak compiz, beryl czy innymi używającymi rozszerzenia composite, na zrzutach ekranu widać klatkę z filmu (a nie niebieski prostokąt) oraz działa z niektórymi kartami nie obsługującymi przyśpieszenia sprzętowego na 2 monitorze.
gl, gl2
Następne wyjścia video, tym razem używające OpenGL. Według dokumentacji MPlayera mają gorszą wydajność od xv. Niemniej, mogą być przydatne - np. przy oglądaniu filmu na dwóch monitorach podpiętych do karty intela. Największa zaleta tego wyjścia to umieszczanie napisów na dole ekranu/okna przy powiększeniu obrazu - bez żadnych specjalnych ustawień pozwala to wyświetlać napisy na "czarnym pasku".
mga/xmga
Wyjścia xmga (dla X'ów) i mga (konsolowe) działają tylko z kartami Matrox G200/G400/G450/G550. Są bardzo wydajne, lecz uruchomienie ich nie jest łatwe. Żeby to zrobić, należy mieć zainstalowane pakiety: gcc, make oraz kernel-source. Następnie trzeba ściągnąć źródła mga_vid z http://attila.kinali.ch/mga/ (dla openSUSE 10.2 to będzie to archiwum nazwane mga_vid-2.6.18-2006-09-27.tar.gz), rozpakować je:
tar -zxvf mga_vid-2.6.18-2006-09-27.tar.gz # lub inna wersja
przejść do nowo utworzonego katalogu (w tym przypadku to będzie mga_vid-2.6.18), a w nim wydać polecenie:
make
oraz później, z uprawnieniami administratora:
make install
null
"Zerowe" wyjście video. Prosty sposób na odtwarzanie tylko dźwięku z filmów, choć jeśli istnieje taka potrzeba jest lepiej używać opcji -novideo.
Wyjścia Audio
Aby użyć wyjścia audio, innego niż domyślne, należy do polecenia MPlayer dodać opcję -ao wraz z nazwą wyjścia. Przykład:
mplayer -ao esd plik.ogg
W celu wybrania jakiegoś wyjścia audio jako domyślne, należy w pliku konfiguracyjnym MPlayera (.mplayer/config) dodać linijkę:
ao=wybrane_wyjście_audio
oss
OSS (Open Sound System) stary system obsługi dźwięku w Linuksie. Używaj tego wyjścia tylko wtedy, gdy Twoja karta dźwiękowa nie współpracuje z ALSA lub masz problemy z wyjściem ALSA.
alsa
ALSA (Advanced Linux Sound Architecture) jest domyślnym systemem dźwięku w jądrach serii 2.6, kompatybilnym z poprzednim - OSS. Używaj tego wyjścia, jeśli używasz ALSY. Wyjścia opisane poniżej są zwykle nieprzydatne.
arts, esd, pulse
Wyjścia używające serwerów dźwięku aRts (domyślny w KDE 3.x) i ESD(domyślny w GNOME) oraz [PulseAudio] (począwszy od 11.0, domyślny w GNOME). Są przydatne tylko dla użytkowników wspomnianych środowisk graficznych, ale lepiej używać wyżej opisanego wyjścia audio.
| Uwaga: MPlayer dostępny w repozytorium PackMan nie posiada wsparcia dla wyjścia pulse. Ze względu na emulacje ESD, użytkownikom GNOME zaleca się używanie wyjścia esd |
jack
W porównaniu do dwóch poprzednich, JACK jest rozwiązaniem profesjonalnym. Wyjście to będzie działać tylko w przypadku gdy uruchomiony jest serwer dźwięku jack.
null
"Zerowe" wyjście audio. Prosty sposób na odtwarzanie filmu bez dźwięku, choć jeśli istnieje taka potrzeba jest lepiej używać opcji -nosound.
Napisy
Wybór czcionki
Żeby oglądać film z napisami w wybranej czcionce TrueType należy do katalogu konfiguracyjnego MPlayera skopiować zawierający ją plik który znajduje się w katalogu /usr/share/fonts/truetype. Jego nazwa powinna być zmieniona na subfont.ttf.
Lepiej jednak utworzyć dowiązanie symboliczne do konkretnej czcionki w /usr/share/fonts/truetype. Na przykład, dla czcionki DejaVu Sans wygląda to tak:
ln -s /usr/share/fonts/truetype/DejaVuSans.ttf ~/.mplayer/subfont.ttf
Problem kodowania pliku z napisami można rozwiązać na co najmniej dwa sposoby:
Pierwszy sposób - zmiana kodowania pliku z napisami
W systemach Windows powszechną stroną kodową znaków jest Windows-1250 (znane też jako CP-1250), popularnym standardem ISO jest ISO-8859-2 a openSUSE domyślnie używa kodowania UTF-8, będącego najlepszym rozwiązaniem pośród wymienionych tutaj kodowań. Z powodu tych różnic wynikają problemy takie jak brak lub zniekształcone "polskie znaki" w filmach z napisami - MPlayer oczekuje UTF-8. Na szczęście, łatwo pozbyć się tego problemu - najłatwiej jest to zrobić konwertując pliki z napisami za pomocą konsolowego programu iconv.
Najpierw należy rozpoznać kodowanie napisów, na przykład używając polecenia file:
file napisy.txt
Dla kodowania CP-1250 wynik wygląda tak:
napisy.txt: Non-ISO extended-ASCII text, with CRLF line terminators
Jeśli to ISO-8859-2 , wynik będzie taki:
napisy.txt: ISO-8859 text, with CRLF line terminators
Zwykle niespotykany UTF-8 da taki rezultat:
napisy.txt: UTF-8 Unicode text, with CRLF line terminators
Po rozpoznaniu czas na działanie.
iconv -f kodowanie_pliku_z_napisu -t docelowe_kodowanie plik_z_napisami > wynik
Czyli dla pliku napisy.txt w kodowaniu CP-1250 należy przeprowadzić taką operacje:
iconv -f CP1250 -t UTF-8 napisy.txt > wynik.txt
Pojawi się plik wynik.txt zawierający napisy zakodowane w UTF-8.
Wskazówka: Jeśli nadal pojawiają się znaki zapytania zamiast polskich znaków, należy dodać opcję -utf8 do polecenia mplayer.
mplayer -utf8 film.avi -sub napisy_do_filmu.txt |
Drugi sposób - zmiana oczekiwanego kodowania od pliku z napisami
Można też podać opcję -subcp z odpowiednim argumentem, zamiast konwertować kodowania plików z napisami.
mplayer film.avi -sub napisy_do_filmu.txt -subcp cp1250
Przy częstym używaniu nietypowego kodowania najlepiej jest dopisać w pliku konfiguracyjnym dopisać linijkę (tutaj kodowanie to cp1250):
subcp=cp1250
Używanie napisów
Następnym krokiem jest zmiana nazwy pliku z napisami, na taką samą jak ma film (z wyjątkiem rozszerzenia). Przykładowo jeśli film nazywa się:
fajny_film.avi
to plik z napisami powinien nazywać się:
fajny_film.txt
Oczywiście, można to zrobić w inny sposób - wystarczy podać po opcji -sub nazwę pliku z napisami, na przykład:
mplayer film.avi -sub napisy_do_filmu.txt
MPlayer nie ma również problemów z obsługą napisów zawartych na DVD albo w plikach (np. *.mkv). Informacje o dostępnych napisach MPlayer wyświetla po otworzeniu pliku/płyty, np:
[mkv] Track ID 3: subtitles (S_TEXT/ASS) "ASS", -sid 0, -slang eng
W tym wypadku, w celu wyświetlenia napisów wystarczy dopisać opcje -sid 0 lub -slang eng.
SSA/ASS
SSA/ASS to formaty napisów posiadające duże możliwości formatowania tekstu - kolorowanie, obracanie, itp. Są bardzo popularne wśród grup fansuberskich, a MPlayer w pełni obsługuje je po dodaniu opcji -ass do linii poleceń.
mplayer film.mkv -sid 0 -ass
Dość przydatna jest opcja -ass-font-scale, skalująca rozmiar czcionki o podaną wartość. W poniższym przykładzie rozmiar czcionki będzie dwa razy większy od ustalonego w pliku z napisami.
mplayer film.mkv -sid 0 -ass -ass-font-scale 2
W plikach mkv często są wbudowane czcionki używane w stylach napisów SSA/ASS. Chcąc ich użyć należy podać opcję -embeddedfonts.
mplayer film.mkv -sid 0 -ass -ass-font-scale 2 -embeddedfonts
Ścieżki dźwiękowe
Wiele ścieżek dźwiękowych
Procedura jest podobna do napisów "wbudowanych" w DVD czy mkv, należy odtworzyć DVD/plik i obejrzeć komunikaty wyświetlane w konsoli, np:
[Ogg] stream 1: audio (Vorbis), -aid 0, -alang eng [Ogg] stream 2: audio (Vorbis), -aid 1, -alang jpn
Parametr -aid lub -alang z odpowiednią wartością odpowiada za język ścieżki dźwiękowej w filmie.
Ilość kanałów
MPlayer bez problemu może odgrywać dźwięk na wiele kanałów, wystarczy podać opcje -channels z odpowiednim argumentem:
- 2
- dla dźwięku w systemie stereo
- 4
- dla dźwięku w systemie surround
- 6
- dla dźwięku w systemie 5.1
Używanie MPlayera
Filmy DVD, VCD, SVCD...
W przeciwieństwie do plików np. ściągniętych z internetu, do odtwarzania filmów DVD/VCS/SVCD nie podaje się ścieżki do pliku. Zamiast tego, podaję się opcję dvd:// (filmy na DVD) lub vcd:// (filmy na VCD/SVCD).
mplayer cdda://
mplayer vcd://
Usuwanie przeplotu
Niektóre filmy dostępne na płytach DVD-Video/VCD/SVCD mają przeplot, zwykle nie wyglądają najlepiej na komputerze. Na szcześcię, MPlayer bez problemu poradzi sobię z tą niedogodnością - jednym ze sposobów jest dopisanie opcji -vf pp=fd dvd://:
mplayer -vf pp=fd dvd://
| Wskazówka: Porównanie różnych metod pozbywania się przeplotu w mplayerze jest dostępne tutaj. |
Sceny
Domyślnie MPlayer wyświetla pierwszą scenę (ang. chapter), w celu zmiany tego zachowania wystarczy dopisać numer rozdziału po dvd://:
mplayer dvd://4
CD-Audio
Odtwarzanie płyt CD-Audio sprowadza się do podania cdda:// zamiast scieżki pliku.
mplayer cdda://

