Spis treści
Jeżeli instalujesz Mplayera po raz pierwszy: koniecznie przeczytaj wszystko, stąd do końca sekcji Instalacja i prześledź linki, które znajdziesz po drodze. Jeśli będziesz miał jakieś inne jeszcze pytania, wróć do spisu treści i wyszykaj odpowiedni temat, przeczytaj FAQ lub spróbuj przegrepować pliki dokumentacji pod kątem swojego problemu.
Podstawowa zasada dokumentacji: jeśli coś nie jest udokumentowane, to to nie istnieje. Jeśli nie powiem ci, że możesz kodować dźwięk z tunera TV, to nie możesz. Zdrowa dawka pomysłowości jest jednak mile widziana. Życzę dużo szczęścia. Będziesz go potrzebował :)
MPlayer jest odgrywarką filmów pod LINUXem (działa pod wieloma innymi Unixami, i systemami opartymi na innych procesorach niż x86, zobacz sekcja 6). Wyświetla większość plików MPEG, VOB, AVI, VIVO, ASF/WMV, QT/MOV, FLI, RM, NuppelVideo, yuv4mpeg, FILM, RoQ korzystając z wielu własnych, XAnim oraz Win32 DLL kodeków. Możesz również oglądać VideoCD, SVCD, DVD, 3ivx, a nawet filmy DivX (i nie potrzebujesz wcale biblioteki avifile!). Kolejną dużą zaletą mplayera jest szeroki wachlarz sterowników wyjścia. Mplayer działa z X11, Xv, DGA, OpenGL, SVGAlib, fbdev, AAlib, DirectFB, ale możesz też korzystać z GGI i SDL (i w ten sposób z wielu sterowników dostarczanych przez SDL), a także z niskopoziomowych sterowników specyficznych dla danej karty (Matrox, 3Dfx i Radeon)! Większość dostępnych sterowników wspiera programowe i sprzętowe skalowanie, możesz więc cieszyć się oglądaniem filmów w trybie pełnoekranowym. MPlayer obsługuje wyświetlanie poprzez pewne sprzętowe karty dekodujące MPEG , takie jak DVB i DXR3/Hollywood+ ! A co powiesz na ładne, duże, antyaliasowane i cieniowane napisy (wspieranych jest 10 typów!!!) z europejskim ISO 8859-1,2 (węgierskimi, angielskimi, czeskimi itd.), cyrylicą, koreańskimi fontami oraz OSD?
MPlayer jest oparty na GPL, ale zawiera pewien kod nie-GPL, którego nie wolno rozpowszechniać w formie binarnej, a także zawiera bibliotekę OpenDivX, która jest na specjalnej licencji. Wciaż jednak rozwijamy się w kierunku GPL.
Rozprowadzanie MPlayera w formie binarnej i/lub w pakietach binarnych jest aktualnie niemożliwe, zarówno ze względów technicznych, jak i prawnych. O szczegółach na ten temat można przeczytać, i jest to zalecane, w drugiej części tego pliku.
Nie napisałem żadnych kodeków, tylko kilka odgrywarek. Spędziłem wiele czasu poszukując najlepszego sposobu, aby rozkodować złe, uszkodzone pliki wejściowe (zarówno MPEG jak i AVI) oraz by zrobić perfekcyjną synchronizację A-V z możliwością przeszukiwania. Moja odgrywarka jest wybitnie dobra w odgrywaniu uszkodzonych plików MPEG (co jest użyteczne w pewnych VCD), a także odgrywa złe pliki AVI, których nie potrafi odtworzyć słynny windows media player. Nawet pliki AVI bez indeksowania są odgrywane i możesz tymczasowo przebudować ich indeksy za pomocą opcji -idx, albo na stałe, za pomocą MEncoder, co umożlliwia przeszukiwanie. Jak widzisz, stabilność i jakość, to rzeczy dla mnie najważniejsze, ale prędkość jest również zadziwiająca.
Wszystko zaczęło się rok temu... Próbowałem wielu odgrywarek pod linuxa (mtv, xmps, dvdview, livid/oms, VideoLAN, xine, xanim, avifile, xmmp), ale wszystkie miały jakieś wady, głównie dotyczące odtwarzania plików specjalnych oraz synchronizacji obrazu i dźwięku. Większość z nich nie potrafi odgrywać plików w obu formatach MPEG1/2 i AVI (DivX). Wiele z nich miało również problemy z jakością obrazu lub prędkością. Postanowiłem więc napisać nowy lub zmodyfikować jeden z tych programów...
W tym rozdziale spróbuję przeprowadzić cię przez proces kompilacji i konfiguracji MPlayera. Nie jest to proste, ale też niekoniecznie musi być trudne. Jeśli zaobserwujesz inne zachowanie, niż to, które opiszę, proszę, przeszukaj tą dokumentację, a znajdziesz wyjaśnienie. Kiedy zobaczysz linki, przeczytaj uważnie dokumenty, które one wskazują. Zajmie ci to trochę czasu, ale warto to zrobić.
Potrzebna ci będzie dość nowa wersja systemu. W Linuksie zalecane są jądra 2.4.x.
WYMAGANE OPROGRAMOWANIE
KODEKI
KARTY GRAFICZNE
Generelnie istnieją dwa rodzaje kart graficznych. Karty posiadające obsługę sprzętowej akceleracji YUV (nowsze) oraz pozostałe karty, nie posiadające tego.
KARTY YUV
Potrafią one wyświetlać i skalować (zoom) obrazki do dowolnego rozmiaru, jaki mieści się w ich pamięci, z małym zużyciem CPU (zooming nie zwieksza go!), dzięki czemu masz bardzo szybkie pełnoekranowe odtwarzanie.
Karty bez YUV
Pełnoekranowe odgrywanie może być osiągnięte albo przez zooming (sprzętowy jest
zbyt wolny), albo przez zmianę, na mniejszy, trybu video (videomode), np.
na 352x288. Jeśli nie masz akceleracji YUV, to rekomendowana jest ta druga metoda.
Za pomocą MPlayera, można to włączyć za
pomocą opcji -vm
z następującymi sterownikami:
KARTY DŻWIĘKOWE
WŁAŚCIWOŚCI
usleep()
, aby dostroić A/V sync, z
dokładnością +/- 10ms. Jakkolwiek, czasami synchronizacja musi być dostrojona
nawet lepiej. Nowy kod zegara w tym celu RTC (Real Time Clock) komputera,
ponieważ ma on precyzyjność taką, jak zegary 1ms. Wymaga to uprawnień roota
(ew. setuid root) dla binariów MPlayera (lub drobnych zmian w
jądrze, ale to jest odradzane). Możesz zobaczyć wydajność nowego zegaraa w lini
statusu. Trzeci kod zegara jest włączany za pomocą opcji
-softsleep
. Ma on wydajność RTC, ale nie wymaga uprawnień roota.
Z drugiej strony, zużywa on więcej CPU. Uwaga: NIGDY nie instaluj binariów
MPlayera, jako setuid w systemie wielu użytkowników! To prosta droga dla
każdego, by zdobyć uprawnienia roota.Następnie zbuduj MPlayera:
./configure make make install
Na tym etapie MPlayer jest gotowy do używania. Katalog
/usr/local/share/mplayer
zawiera plik codecs.conf
,
który jest używany, aby poinformować program o wszystkich kodekach i ich
możliwościach. Ten plik powinien być zawsze uaktualniany wraz z biblioteką
main!
Użytkownicy Debiana mogą samodzielnie budować pakiety .deb, to bardzo
proste. Po prostu wywołaj fakeroot debian/rules binary
w głównym
katalogu MPlayera. Szczegółowe instrukcje można znaleźć tu.
ZAWSZE przeglądaj komunikaty z ./configure oraz zawartość
pliku configure.log
, możesz tam znaleźć informacje o tym, co
zostanie zbudowane, a co nie. Możesz również przejrzeć pliki config.h i
config.mak.
Choć to nie jest niezbędne, fonty powinny być zainstalowane, aby można było osiągnąć funkcjonalność OSD i napisy. Ściągnij mp-arial-iso-8859-*.zip i/lub opcjonalnie (jeśli istnieją) uaktualnienia językowe. BARDZO ZALECANE jest sprawdzenie szczegółów w sekcji 1.5.
mkdir ~/.mplayer/font cd ~/.mplayer/font unzip mp-arial-iso-8859-1.zip
GUI wymaga GTK (nie jest ono napisane w GTK, ale panele są). Skórki są przechowywane
w formacie PNGt, więc gtk i libpng (oraz ich części devel) muszą być zainstalowane.
Możesz zbudować GUI specyfikując --enable-gui
podczas ./configure .
Jest kilka sposobów na włączenie trybu GUI:
-gui
gui=yes
w pliku konfiguracyjnymln -s /usr/local/bin/mplayer /usr/local/bin/gmplayer
i używaj gmplayer
.
WSKAZÓWKA: użyj środkowego przycisku myszki (w 2 przyciskowych myszkach wciśnij prawy i lewy przycisk jednocześnie), aby wywołać menu GTK, z opcją odgrywania DVD!
Ponieważ MPlayer nie zawiera skórek, musisz ściągnąć je, jeżeli
chcesz używać GUI. Zobacz
stronę download.
Skórki powinny być rozpakowane do typowego ogólnodostępnego katalogu
systemowego (/usr/local/share/mplayer/Skin
), lub do
$HOME/.mplayer/Skin
. MPlayer domyślnie szuka w tych
katalogach katalogu o nazwie default, ale możesz za pomocą opcji
-skin newskin, bądź dyrektywy skin=newskin w pliku
konfiguracyjnym wskazać użycie skórki z katalogu
*/Skin/newskin
.
Tak, MPlayer obsługuje wiele typów napisów. Obecnie 10 rodzajów napisów może być używanych przez kod subreadera. Informacje o formatach napisów znajdziesz w pliku subreader.c, w okolicach linii 30.
MPlayer obsługuje napisy VobSub. Napisy VobSub zawierają duży
(kilkumegabajtowy) plik .SUB, plik .IDX oraz plik .IFO. Sposób użycia: jeśli
masz pliki w rodzaju: sample.sub
, sample.ifo
,
sample.idx
- musisz podać opcje: -vobsub sample
-vobsubid0
(opcjonalnie ze ścieżką dopliku, oczywiście). Opcja
-vobsubid
jest odpowiednikiem opcji -sid
dla DVD. Z
tą opcją możesz wybierać wersję językową z dostępnych ścieżek napisów.
O napisach DVD przeczytać możesz w sekcji DVD.
MPlayer wprowadza nowy format napisów zwany MPsub. Został on zaprojektowany przeze mnie (Gabucino). Oznacza to przede wszystkim tyle, że jego podstawową cechą jest dynamiczniy tryb time-based (chociaż posiada on również tryb frame-based). Przykład (z DOCS/tech/mpsub.sub):
# pierwsza liczba : czekaj tyle sekund po zniknięciu porzedniego napisu
# druga liczba : wyświetlaj aktualny napis przez tyle sekund
15 3
A long, long time ago...
0 3
in a galaxy far away...
0 3
Naboo was under an attack.
A więc widzisz, że głównym celem było uczynienie napisów łatwymi w
edycji/taktowaniu/łaczeniu/obcinaniu. I jeżeli, powiedzmy, dostaniesz do
swojej wersji filmu napisy SSA, ale źle taktowane/opóźnione, wywołaj po prostu:
mplayer dummy.avi -sub source.ssa -dumpmpsub . Plik
dump.mpsub
będzie stworzony w aktualnym katalogu i będzie zawierał
źródłowy text napisów, ale w formacie MPsub. Wówczas możesz już w
dowolny sposób dodawać/usuwać sekundy do/z napisu.
Napisy są wyświetlane w technice nazywanej 'OSD', On Screen Display. OSD jest stosowane do wyświetlania aktualnego czasu, paska głośności, paska przeszukiwania itp.
INSTALACJA OSD i SUB
Potrzebny ci będzie pakiet z fontami MPlayera, aby móc korzystać z właściwości OSD/SUB. Jest wiele sposobów, aby je zdobyć:
Potem rozpakuj pliki, które ściągnąłeś, do ~/.mplayer
lub
$PREFIX/share/mplayer
. Następnie zmień nazwę lub stwórz link
symboliczny do jednego z nich o nazwie font
(np. tak: ln -s
~/.mplayer/arial-24~/.mplayer/font
).
Teraz powinieneś zobaczyć zegar w lewym górnym rogu ekranu (wyłączysz to za
pomocą klawisza 'o').
OSD ma 3 stany: (przełączane za pomocą 'o')
Możesz zmienić domyślne zachowanie, ustawiając zmienną osdlevel=
w pliku konfiguracyjnym.
2.3. Urządzenia wyjścia dla obrazu i dźwięku.
2.4. MEncoder - wielozadaniowy koder
2.5.1. O zagadnieniu
To jest sekcja o tym, jak włączyć oglądanie/nagrywanie z użyciem tunera TV komatybilnego z V4L .
2.5.2. Kompilacja
./configure
automatycznie wykryje nagłówki jądra związane z v4l oraz wejścia
/dev/video*. Jeśli one istnieją, obsługa TV będzie utworzona (zobacz komunikaty
configure!).Wskazówka: czy kolory są prawidłowe? Jeśli nie, to znaczy, że twój
tuner nie potrafi wyświetlać w modelu kolorów YV12. Spróbuj I420 (musisz użyć
także opcji -vc rawi420
!) lub w modelach YUY2, UYVY, RGB32 (tutaj
zastosuj opcję -vo sdl
). Możesz to wyspecyfikować za pomocą opcji
outfmt=YV12
, zobacz poniżej.
2.5.3. Dostępne opcje
on | użyj wejścia TV | ||
driver |
dummy - wejście TV jest NULL :) Używane tylko do testów, generuje
wejście dummy. v4l - zgrywa obrazki ze standardowego interfejsu V4L (domyślnie /dev/video0 ) |
||
device | określ inne niż domyślne /dev/video0 urządzenie |
||
input | podaj, z
jakiego wejścia tunera TV chcesz odbierać (np.television,
s-video, composite, ...) Dostępne wejścia są wypisywane przy inicjalizacji. |
||
freq | określ częstotliwość, aby ustawić tuner (np. 511.250) | ||
outfmt | w jakim
formacie wyjściowym tuner powinien przetransportować obrazy do nas
(rgb32, rgb24, yv12, uyvy, i420 (dla i420
musisz podać opcję -vc rawi420 , z powodu konfliktu fourcc)) |
||
width | szerokość w pikselach okna wyjściowego | ||
height | wysokość w pikselach okna wyjściowego | ||
norm | dostępne: PAL, SECAM, NTSC | ||
channel | ustaw tuner na podany kanał | ||
chanlist |
dostępne: us-bcast, us-cable, europe-west, europe-east, itp. |
2.5.4. Sterowanie z klawiatury
h lub l | przełącz poprzedni/następny kanał | ||
n | zmień normę | ||
b | zmień listę kanałów | ||
2.5.5. Przykłady
Wyjście Dummy, dla AAlib :)
mplayer -tv on:driver=dummy:width=640:height=480 -vo aa
Wejście ze standardowego V4L
mplayer -tv on:driver=v4l:width=640:height=480:outfmt=i420 -vc rawi420 -vo xv
MPlayer używa complex playtree. Zawiera ono "domyślne" opcje zapisane
jako pierwsze (np.: mplayer -vfm 5
) jak i opcje zapisane za
nazwami plików, które są stosowane tylko do podanych plików/URL/czegokolwiek
(np.: mplayer -vfm 5 movie1.avi movie2.avi -vfm 4
).
file | mplayer [opcje] [path/]filename | ||
file | mplayer [default opcje] [path/]filename1 [opcje dla
filename1] filename2 filename3 [opcje dla filename3] | ||
VCD | mplayer [opcje] -vcd trackno /dev/cdrom | ||
DVD | mplayer [opcje] -dvd titleno [/dev/dvd] | ||
net | mplayer [opcje] http://site.com/file.[mpg|avi] (tu również
może być użyte playtree) | ||
mplayer -vo x11 /mnt/Films/Contact/contact2.mpg mplayer -vcd 2 /dev/cdrom mplayer -afm 3 /mnt/DVDtrailers/alien4.vob mplayer -dvd 1 /dev/dvd mplayer -abs 65536 -delay -0.4 -nobps ~/movies/test.avi
3.2. Sterowanie za pomocą kalwiatury
<- lub -> | poszukiwanie wstecz/naprzód o 10 sekund | ||
strzałka w górę lub w dół | poszukiwanie wstecz/naprzód o 1 minutę | ||
pgup/pgdown | poszukiwanie wstecz/naprzód o 10 minut | ||
< lub > | poszukiwanie wstecz/naprzód po playliście | ||
p lub spacja | zatrzymanie filmu (wciśnij jakikolwiek przycisk) | ||
q lub ESC | zakończenie odgrywania i wyjście z programu | ||
+ lub - | dopasuj opóźnienie dźwięku o +/- 0.1 sekundy | ||
/ lub * | zmniejsz/zwiększ głośność | ||
o | włącz/wyłącz OSD: nic /pasek poszukiwania / pasek poszukiwania + zegar | ||
m | włącz/wyłącz używanie dźwięku master/pcm | ||
z lub x | dopasuj opóźnienie napisów o +/- 0.1 sekundy | ||
(następujące klawisze są ważne tylko wtedy, gdy używasz opcji
| |||
1 lub 2 | dostosuj kontrast | ||
3 lub 4 | dostosuj jasność | ||
5 lub 6 | dostosuj odcień | ||
7 lub 8 | dostosuj nasycenie |
, i . | poprzedni / następny plik | ||
szary - lub + | zmniejsz / zwiększ głośność | ||
enter | rozpocznij odgrywanie | ||
spacja | pauza | ||
s | stop | ||
a | informacje o programie | ||
l | wczytaj plik | ||
b | przeglądarka skórek | ||
e | włącz/wyłącz equalizer | ||
p | włącz wyłącz listę odtwarzania | ||
f | włącz/wyłącz pełny ekran | ||
m | włącz/wyłącz wyciszenie dźwięku |
Sterowanie wejściem TV
h lub l | wybierz porzedni / następny kanał | ||
n | zmień normę | ||
b | zmień listę kanałów |
3.3. Sterowanie za pomocą LIRC
Linux Infrared Remote Control - użyj łatwego w budowie, domowej roboty odbiornika IR, (prawie) dowolnego pilota i kontroluj za jego pomocą swoje linux box! Więcej na ten temat na www.lirc.org.
Jeśli zainstalowałeś pakiet lirc, możesz skompilować MPlayera z włączeniem obsługi LIRC stosując: ./configure --enable-lirc.
Jeżeli wszystko poszło dobrze, MPlayer wyśle na starcie komunikat, że inicjalizacja LIRC zakończyła się sukcesem. Zawiadomi cie także wtedy, gdy pojawią się błędy. Jeśli nie wspomni o LIRC w ogóle, oznacza to, że obsługa LIRC nie została wkompilowana. To tyle :-)
Aplikacja dla MPlayera nazywa się - nie zgadłbyś - mplayer_lirc. Rozumie ona następujące polecenia:
PAUSE | - zatrzymuje odgrywanie (pauza). Naciśnięcie dowolnego klawisza powoduje wznowienie odgrywania; | ||
QUIT | - wyjście z MPlayer; | ||
RWND | - 10 sek wstecz; | ||
FRWND | - 60 sek wstecz; | ||
FWD | - 10 secs naprzód; | ||
FFWD | - 60 sek naprzód; | ||
INCVOL | - zwiększenie głośności o 1%; | ||
DECVOL | - zmniejszenie głośności o 1%; | ||
MASTER | - użyj głównego kanału miksera; | ||
PCM | - użyj kanału pcm miksera; | ||
Nie zapomnij ustawić flagi powtarzania dla RWND/FWD w .lircrc. Oto fragment z mojego .lircrc:
begin remote = CU-SX070 prog = mplayer_lirc button = Tape_Play repeat = 1 config = FFWD end begin remote = CU-SX070 prog = mplayer_lirc button = Tape_Stop config = QUIT end
Jeśli nie odpowiada ci standardowa lokalizacja pliku lirc-config (~/.lircrc) użyj przełącznika -lircconf <nazwa_pliku>, aby podać inny plik.
3.4. Przesyłanie przez sieć, bądź za pomocą pipe
MPlayer potrafi odgrywać pliki przesyłane przez sieć, za pomocą protokołu HTTP. Skonfigurowanie go jest proste, przekompiluj tylko MPlayera z opcją:
./configure --enable-streaming
Odtwarzanie uruchamia się przez zwyczajne podanie adresu URL w linii poleceń. MPlayer honoruje również zmienną środowiskową HTTP_PROXY i używa proxy jeśli jest ono dostępne. Proxy może być również wymyszone:
mplayer
http_proxy://proxy.micorsops.com:3128/http://micorsops.com:80/stream.asf
MPlayer potrafi czytać ze standardowego wejścia (NIE z nazwanych potoków (pipes)). Można to zastosować do odgrywania z FTP:
wget ftp://micorsops.com/something.avi -O - | mplayer -
Aby zbudować pakiet, zdobądź wersję cvs, albo .tgz i rozpakuj ją. Przejdź do katalogu z programami:
cd main fakeroot debian/rules binary
(... mplayer wykrywa sprzęt/oprogramowanie, buduje się i ... ) dpkg-deb: building package `mplayer' in `../mplayer_0.18-1_i386.deb'.
A teraz jako root:
dpkg -i ../mplayer_0.18-1_i386.deb as root.
Oto, jak to wygląda:
eyck@incubus:/src/main$ sudo dpkg -i ../mplayer_0.18-1_i386.deb Password: (Reading database ... 26946 files and directories currently installed.) Preparing to replace mplayer 0.17a-1 (using ../mplayer_0.18-1_i386.deb) Unpacking replacement mplayer ... Setting up mplayer (0.18-1) ...
Aby zbudować pakiet, będziesz potrzebował GNU make (gmake, /usr/ports/devel/gmake), pochądzący z BSD make nie zadziała.
Aby uruchomić MPlayera, będziesz musiał rekompilować jądro z "options USER_LDT" (o ile nie używasz -CURRENT, gdzie to jest domyślne). Jeśli masz CPU z SSE, uzyj również "options CPU_ENABLE_SSE", aby go używać (FreeBSD-STABLE jest wymagane, albo użyj łat na jądro).
Jeśli MPlayer narzeka, że: "CD-ROM Device '/dev/cdrom' not found!",
stwórz link symboliczny: ln -s /dev/(your_cdrom_device)
/dev/cdrom
Nie ma obsługi DVD dla FreeBSD jak dotąd.
MPlayer powinien działać na Solaris 2.6 lub nowszym.
Odtwarzanie plików AVI najlepiej działa na Solaris x86, ponieważ jest opcja do użycia kodeków win32 na platformie x86 lub mogą być użyte instrukcje MMX/MMX2/3DNow/utp do MP3/DivX/DVD/czegokolwiek. Na Solaris SPARC naprawdę rzadko spotkać się możesz z niedziałaniem obrazu lub dźwięku w plikach AVI z powodu braku kodeków video/audio używających biblioteki Win32 DLL. Natomiast powinny działać filmy DivX/OpenDivX z kodekiem libavcodec.
Na systemach UltraSPARC, MPlayer korzysta z rozszerzeń VIS (równoważnym MMX), aktualnie tylko w libmpeg2, libvo i libavcodec, ale nie w mp3lib. Możesz oglądać plik VOB na 400Mhz CPU. Trzeba zainstalować mLib.
Aby zbudować pakiet, potrzebny ci będzie GNU make (gmake, /opt/sfw/gmake), pochądzący z Solarisa make nie zadziała. Typowy błąd, jaki się pojawi podczas budowania za pomocą solarisowego make zamiast GNU make, to:
% /usr/ccs/bin/make make: Fatal error in reader: Makefile, line 25: Unexpected end of line seen
Na Solaris SPARC potrzebować będziesz kompilatora GNU C/C++ Compiler; nie ma znaczenia czy kompilator GNU C/C++ jest skonfigurowany z czy bez GNU assemblera.
Na Solaris x86 potrzebny jest GNU assembler i kompilator GNU C/C++
skonfigurowany tak, aby używał GNU assemblera! Kod mplayera na platformie x86
dużo korzysta z instrukcji MMX, SSE i 3DNOW!, które nie mogą być skompilowane
za pomocą assemblera Sun'a /usr/ccs/bin/as
.
Skrypt configure usiłuje dowiedzieć się, który program assemblera jest używany przez twoje polecenie "gcc" (w przypadku nieudanej autodetekcji, użyj opcji "--as=/tam/gdzie/zainstalowales/gnu-as", aby poinformować skrypt configure, gdzie może on znaleźć GNU "as" w twoim systemie).
Komunikat o błędzie z configure w systemie Solaris x86, stosującym GCC bez GNU assemblera:
% configure ... Checking assembler (/usr/ccs/bin/as) ... , failed Please upgrade(downgrade) binutils to 2.10.1...
(Rozwiązanie: Zainstaluj i użyj gcc skonfigurowanego z "--with-as=gas")
Typowy błąd podczas użycia kompilatora GNU C nie stosującego GNU as:
% gmake ... gcc -c -Iloader -Ilibvo -O4 -march=i686 -mcpu=i686 -pipe -ffast-math -fomit-frame-pointer -I/usr/local/include -o mplayer.o mplayer.c Assembler: mplayer.c "(stdin)", line 3567 : Illegal mnemonic "(stdin)", line 3567 : Syntax error ... more "Illegal mnemonic" and "Syntax error" errors ...
Dla obsługi DVD musisz mieć zainstalowane libcss z nałożoną łatą. Łatę znajdziesz tu: http://www.tools.de/solaris/mplayer/.
Z powodu dwóch błędów w systemie solaris 8 x86, nie możesz wydajnie odtwarzać DVD przy pojemności >4GB:
On Solaris with an UltraSPARC CPU, you can get some extra speed by using the CPU's VIS instructions for certain time consuming operations. VIS acceleration can be used in MPlayer by calling functions in Sun's mediaLib.
VIS accelerated operations from mediaLib are used for mpeg2 video decoding and for color space conversion in the video output drivers.
MPlayer, jak doniesiono, kompiluje się na StrongARM. Zastosuj następującą linię poleceń:
./configure --target=arm-linux --disable-css --with-x11libdir=/usr/arm/lib --with-x11incdir=/usr/arm/lib --disable-gcc-checking
6.5. Silicon Graphics Indigo / IRIX
Doniesiono, że pracuje. Najprawdopodobniej musisz użyć sterownika sgi ao. Może ktoś ma bliższe informacje?
Działa. Musisz ściągnąć i zainstalować SDL dla QNX. Następnie uruchom
MPlayera z opcjami: -vo sdl:photon
i -ao
sdl:nto
, a powinno działać szybko.
Wyjście -vo x11
jest wolniejsze nawet niż w Linuksie, gdyż QNX
ma tylko emulację X-ów, która jest BARDZO wolna. Używaj więc SDL.
UWAGA: *NIE* wysyłaj raportów o błędach, próśb o pomoc i życzeń na przyszłość wprost do autorów!
Przeczytaj dodatek C i zasubskrybuj listę dyskusyjną użytkowników Mplayera
Projekt MPlayer:
zr
Główni testerzy:
Kodeki i biblioteki:
Ich kod nie jest używany w obecnej wersji odgrywarki, ale otrzymuję pewne pomysły i techniczne wsparcie z ich strony:
Dodatek A/2 - maintainerzy kodu i dokumentacji MPlayera
Strona domowa
Dokumentacja w języku angielskim
Tłumaczenia dokumentacji
Platformy sprzętowe/porty:
Kod MPlayera:
Sterowniki libvo:
Sterowniki libao2:
Narzędzia:
Pozostałe:
Istnieje kilka publicznych list dyskusyjnych o MPlayerze. Zasubskrybować je można pod podanymi adresami:
Jest to lista o rozwijaniu Mplayera! Mówi się tam o zmianach w interfejsie/API, nowych bibliotekach, optymalizacji kodu, zmianach w ./configure. Tu też są wysyłane łaty. NIE wysyła się na tę listę raportów o błędach, pytań użytkowników, żądań na przyszłość! Na tej liście powinien być zachowany mały ruch.
Tu możesz wysyłać:
Wysyłaj tu pytania związane z matrox
Sprawy związane ze sprzętowo dekodującą kartą DVB.
Wysyłaj tu pytania związane tylko ze zmianami w CVS (jeśli np. nie rozumiesz, dlaczego zmiana jest wymagana, albo jeśli masz lepszą poprawkę). Bądź pewien, że developer zajmujący się zagadnieniem, o które pytasz, czyta tą listę!
UWAGA: Językiem powyższych list jest ANGIELSKI o ile nie zaznaczono wyraźnie, że jest inaczej. Nie wysyłaj, proszę, wiadomości w innych językach!
UWAGA: Możesz skorzystać z przeszukiwalnego archiwum list tutaj.
Dodatek C - Jak zgłaszać błędy
Błędy/problemy związane z konkretnym systemem/procesorem:
Różne problemy z synchronizacją A-V dźwięku:
Ogólnie, opóźnienia dźwięku albo szarpany dźwięk (pojawiające się w wielu, bądź wszystkich plikach):Problemy z wyjściem wideo:
Pierwsza uwaga: opcje: -fs -vm i -zoom są tylko zalecane, nie są jak dotąd obsługiwane przez wszystkie sterowniki. Więc to nie jest błąd, jeśli nie działają. Tylko kilka sterowników wspiera skalowanie/zooming (zbliżanie/oddalanie), nie oczekuj tego od z11 czy dga.
Migotanie OSD/napisów:
- sterownik x11: przykro mi, ale na razie nie może to zostać naprawione
- sterownik xv: użyj opcji -double