Porty Linux Główną platformą rozwojową jest Linux x86, chociaż MPlayer pracuje również na wielu innych portach tego systemu. Pakiety binarne są dostępne z kilku źródeł, jednakże żaden z nich nie jest przez nas obsługiwany. Zgłaszaj problemy do ich opiekunów, a nie do nas. Pakiety Debiana Aby zbudować pakiet dla Debiana, wywołaj poniższą komendę w katalogu ze źródłami MPlayera: fakeroot debian/rules binary Jeśli chcesz przekazać własne opcje do skryptu configure, możesz ustawić zmienną środowiskową DEB_BUILD_OPTIONS. Na przykład, jeśli chcesz obsługi menu i GUI, wyglądało by to tak: DEB_BUILD_OPTIONS="--enable-gui --enable-menu" fakeroot debian/rules binary Możesz przekazać również niektóre zmienne do Makefile. Na przykład, jeśli chcesz kompilować przy pomocy gcc 3.4, nawet jeśli nie jest to domyślny kompilator: CC=gcc-3.4 DEB_BUILD_OPTIONS="--enable-gui" fakeroot debian/rules binary Aby wyczyściś katalog ze źródłami wykonaj poniższa komendę: fakeroot debian/rules clean Jako superużytkownik możesz zainstalować pakiet .deb tak, jak zwykle: dpkg -i ../mplayer_wersja.deb Christian Marillat buduje dla Debiana nieoficjalne paczki MPlayera, MEncodera i naszych czcionek bitmapowych już przez jakiś czas, możesz je pobrać (apt-get) z jego strony domowej. Pakiety RPM Dominik Mierzejewski tworzy i opiekuje się oficjalnymi pakietami MPlayera dla Red Hata. Są one dostępne na jego stronie domowej. RPMy dla Mandrake są dostępne na P.L.F.. SuSE zawierał okrojoną wersję MPlayera w dystrybucji. Usunęli ją w swoich najnowszych wydaniach. W pełni funkcjonalne pakiety możesz pobrać z links2linux.de. ARM MPlayer działa również na PDA z procesorami ARM działających pod kontrolą Linuksa, np. Sharp Zaurus, Compaq iPAQ. Najprostszym sposobem, żeby uzyskać MPlayera, jest pobranie go z odpowiedniego źródła pakietów (stable, testing, unstable) z witryny OpenZaurus. Jeżeli chcesz go skompilować samodzielnie, powinieneś przyjrzeć się katalogom mplayera i biblioteki libavcodec w głównym katalogu źródłowym OpenZaurusa. Zawierają one najświeższe łatki i pliki Makefile, służące do samodzielnej kompilacji MPlayera z libavcodec. Jeżeli potrzebujesz interfejsu GUI, możesz użyć xmms-embedded. *BSD MPlayer działa na FreeBSD, OpenBSD, NetBSD, BSD/OS i Darwinie. Dostępne są wersje portów/pkgsrc/fink/itp., które prawdopodobnie są łatwiejsze w instalacji, niż kompilacja ze źródeł. Do zbudowania MPlayera będziesz potrzebował GNU make (gmake - rdzenne make BSD nie zadziała) i najnowszej wersji binutils. Jeżeli MPlayer nie może znaleźć /dev/cdrom lub /dev/dvd, stwórz odpowiednie dowiązanie symboliczne: ln -s /dev/twoje_urządzenie_cdrom /dev/cdrom Aby używać bibliotek Win32 z MPlayerem, będziesz potrzebował przekompilować jądro z opcją "USER_LDT" (chyba, że używasz FreeBSD-CURRENT, tam jest domyślnie włączona). FreeBSD Jeżeli Twój procesor ma rozszerzenie SSE, przekompiluj jądro z opcją "CPU_ENABLE_SSE" (wymagany FreeBSD-STABLE lub łaty na jądro). OpenBSD Ze względu na ograniczenia w różnych wersjach gas (GNU assemblera - przyp. tłumacza) (dotyczące relokacji i MMX), będziesz musiał przeprowadzić kompilację w dwóch krokach: Po pierwsze, upewnij się, że wersja nierdzenna występuje w zmiennej $PATH i wykonaj gmake -k, a następnie upewnij się, że używana jest wersja rdzenna i wykonaj gmake. Powyższa metoda nie jest już potrzebna w OpenBSD 3.4. Darwin Zobacz rozdział Mac OS. Sun Solaris MPlayer powinien działać na Solarisie 2.6 lub nowszym. Na UltraSPARCach, MPlayer korzysta z rozszerzenia VIS (odpowiednik MMX), obecnie tylko w libmpeg2, libavo i libavcodec, ale nie w mp3lib. Możesz oglądać plik VOB na procesorze z taktowaniem 400MHz. Będziesz potrzebował do tego biblioteki mLib. Aby zbudować pakiet, będziesz potrzebował GNU make (gmake, /opt/sfw/gmake), rdzenne make Solarisa nie zadziała. Typowy błąd jaki otrzymujesz, budując tym drugim zamiast GNU make, to: % /usr/ccs/bin/make make: Fatal error in reader: Makefile, line 25: Unexpected end of line seen W Solarisie przeznaczonym dla SPARC, potrzebujesz kompilatora GNU C/C++; nie ma znaczenia, czy jest on skonfigurowany z, czy bez GNU assemblera. Na Solarisie x86, potrzebujesz GNU assemblera i kompilatora GNU C/C++, skonfigurowanego do używania GNU assemblera! Kod MPlayera, na platformie x86, w znaczący sposób korzysta z instrukcji MMX, SSE i 3DNOW!, które nie mogą być skompilowane przy pomocy assemblera Sun /usr/ccs/bin/as. Skrypt configure stara się określić, jaki assembler wywoływany jest przez komendę "gcc" (jeżeli próba zakończy się fiaskiem, użyj opcji , żeby określić gdzie skrypt configure może znaleźć GNU "as" w Twoim systemie). Błąd jaki wyświetli configure na Solarisie x86, używają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żywaj gcc skonfigurowanego z opcją ) Typowy błąd, jaki otrzymasz przy próbie budowy kompilatorem GNU C, który nie używa 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 ... Ze względu na błędy występujące w Solarisie 8, możesz nie być w stanie odtwarzać płyt DVD o pojemności większej niż 4 GB: Sterownik sd(7D) dla Solarisa 8 x86 ma błąd ujawniający się przy próbie dostępu do bloku dyskowego >4GB urządzenia korzystającego z logicznego rozmiaru bloku !=DEV_BSIZE (np. nośnik CD-ROM i DVD). Ze względu na przepełnienie 32bitowych liczb całkowitych, odczytywany jest adres dysku modulo 4GB (). Ten problem nie występuje na Solarisie 8 przeznaczonym dla procesorów SPARC. Podobny błąd występuje w kodzie systemu plików hsfs(7FS) (znanym jako ISO9660), hsfs może nie obsługiwać partycji/dysków większych niż 4GB, wszystkie dane są odczytywane z bloku modulo 4GB (). Problem może być rozwiązany przy pomocy łatki 109764-04 (sparc) / 109765-04 (x86). Silicon Graphics Irix Możesz albo spróbować zainstalować program GNU install i (jeżeli nie umieściłeś go w globalnej ścieżce) wskazać go przez: ./configure --with-install= /ścieżka/i/nazwa/programu/instalacyjnego Albo użyć domyślnego programu instalacyjnego dostarczonego z IRIX 6.5, w tym wypadku należy ręcznie zmodyfikować plik Makefile w kilku miejscach. Zmień poniższe dwie linijki: $(INSTALL) -c -m 644 DOCS/mplayer.1 $(MANDIR)/man1/mplayer.1 $(INSTALL) -c -m 644 etc/codecs.conf $(CONFDIR)/codecs.conf na: $(INSTALL) -m 644 mplayer.1 $(MANDIR)/man1/ $(INSTALL) -m 644 codecs.conf $(CONFDIR)/ A potem wykonaj (w katalogu źródłowym MPlayera): cp DOCS/mplayer.1 . ; cp etc/codecs.conf . i dalej skompiluj i zainstaluj. QNX Działa. Będziesz musiał ściągnąć bibliotekę SDL dla QNX i zainstalować ją. Wtedy uruchom MPlayera a opcją i , powinno działać szybko. Wyjście będzie nawet wolniejsze niż na Linuksie, ponieważ QNX ma tylko emulację Xów, która jest bardzo wolna. Używaj SDL. Windows Tak, MPlayer działa na Windowsie pod Cygwinem i MinGW. Nie ma jeszcze interfejsu GUI, ale wersja dla wiersza poleceń jest już prawie w pełni funkcjonalna. Łatki są zawsze mile widziane. Powinieneś sprawdzić listę mplayer-cygwin, aby uzyskać pomoc albo otrzymać najnowsze informacje. Najlepsze wyniki są osiągane ze sterownikami wyjściowymi video DirectX () i rdzennym wyjściem dźwiękowym wave Windows (). Możesz skorzystać również z OpenGL lub SDL, jednak wydajność OpenGL w znacznym stopniu zależy od systemu, a SDL może powodować powstanie zakłóceń w dźwięku i obrazie albo wywołać błąd, i zakończyć działanie programu. Jeżeli występują zakłócenia obrazu, spróbuj wyłączyć sprzętową akcelerację przez opcję . Ściągnij pliki nagłówkowe DirectX 7, żeby skompilować sterownik do wyjścia video DirectX. Co więcej, musisz mieć zainstalowany DirectX 7 lub nowszy, aby to wyjście zadziałało. VIDIX działa teraz również pod Windowsem jako , chociaż jego obsługa jest eksperymentalna i wymaga trochę ręcznego przygotowania. Pobierz dhahelper.sys lub dhahelper.sys (z wsparciem dla MTRR) i skopiuj go do libdha/dhahelperwin w drzewie źródłowym MPlayera. Uruchom konsolę, następnie przejdź do tego katalogu i wykonaj gcc -o dhasetup.exe dhasetup.c i dhasetup.exe install jako Administrator. Będziesz musiał ponownie uruchomić komputer. Teraz, skopiuj wszystkie pliki z rozszerzeniem .so z katalogu vidix/drivers do mplayer/vidix względem położnia pliku mplayer.exe. Dla osiągnięcia najlepszych wyników MPlayer powinien korzystać z przestrzeni kolorów, którą Twoja karta wspiera sprzętowo. Niestety wiele sterowników graficznych Windowsa źle informuje o wspieranych przez kartę przestrzeniach. Aby sprawdzić które są źle obsługiwane, wykonaj poniższą komendę: mplayer -benchmark -nosound -frames 100 -vf format=przestrzeń film gdzie przestrzeń może być jakąkolwiek wartością spośród tych uzyskanych przez opcję . Jeśli, któraś z nich działa szczególnie źle, opcja zapobiegnie jej używaniu. Możesz to na stałe dodać do Twojego pliku konfiguracyjnego. Możesz wykorzystać kodeki Win32 i Real dla Win32 (nie kodeki Real dla Linuksa), jeżeli chcesz. Umieść je gdzieś w swojej ścieżce (zmienna PATH - przyp. tłumacza) albo użyj opcji (lub tylko na Cygwin) dla configure. Mieliśmy doniesienia, że biblioteki Real muszą być zapisywalne dla użytkownika, który korzysta z MPlayera, ale tylko na niektórych systemach. Spróbuj nadać im atrybut zapisywalności, jeżeli napotkasz jakieś problemy. Biblioteki DLL QuickTime również działają, ale będzisz musiał je umieścić w katalogu systemowym Windows (C:\Windows\system\). Możesz odtwarzać VCD, odtwarzając pliki .DAT lub .MPG, które Windows pokazuje na VCD. To działa mniej więcej tak (dopasuj literę dysku do Twojego CD-ROMu): mplayer d:/mpegav/avseq01.dat DVD również działa, podaj literę Twojego DVD-ROMu przez opcję : mplayer dvd://<tytuł> -dvd-device d: Konsola Cygwin/MinGW jest raczej wolna. Przekierowywanie wyjścia albo używanie opcji zgłoszono jako poprawiające wydajność na niektórych systemach. Bezpośrednie renderowanie () również może pomóc. Możesz zapobiec migotaniu OSD, włączając podwójne buforowanie opcją . Jeżeli odtwarzanie jest nierówne, spróbuj użyć . Jeżeli którakolwiek z tych opcji Ci pomogła, może będziesz chciał umieścić ją w swoim pliku konfiguracyjnym. Sascha Sommer wydaje, od czasu do czasu, oficjalne paczki dla Windowsa, Joey Parrish tworzy nieoficjalne paczki z instalatorem. Poszukaj ich w sekcji Windows na stronie naszych projektów. <application>Cygwin</application> Aby skompilować MPlayera wymagana jest wersja Cygwina 1.5.0 lub późniejsza. Pliki nagłówkowe DirectX muszą być rozpakowane do /usr/include/ lub /usr/local/include/. Instrukcje i pliki potrzebne do kompilacji SDLa dla Cygwin są dostępne na stronie libsdl. <application>MinGW</application> Zainstalowanie MinGW, który umożliwiłby kompilację MPlayera było zawiłe, ale teraz składa się tylko z trzech prostych kroków i niedługo powinno działać "prosto z pudełka". Zainstaluj MinGW 3.0.0 lub nowszy. Zainstaluj MSYS 1.0.9 lub nowszy i wskaż systemowi poinstalacyjnemu MSYSa, że MinGW jest zainstalowane. Rozpakuj pliki nagłówkowe DirectX do /mingw/include/. Do obsługi skompresowanych nagłówków MOV wymagana jest biblioteka zlib, która nie jest domyślnie dostępna w MinGW. Skonfiguruj ją z opcją i zainstaluj przed kompilacją MPlayera. Mac OS "Surowe" źródła MPlayera obsługują tylko Mac OS X w wersjach 10.2 i wyższych. Możesz spróbować umożliwić obsługę starszych wersji Mac OS oraz przysłać nam łaty! Zmodyfikowane GCC 3.X Apple jest zalecane do kompilacji MPlayera, szczególnie z libavcodec, ponieważ ich zmodyfikowane GCC 2.95.x nie obsługuje poprawnie składni C99. Możesz pobrać Aqua GUI dla MPlayera razem z jego skompilowanymi binariami dla Mac OS X ze strony projektu MPlayerOSX. HP-UX Joe Page umieścił na swojej stronie domowej dokument HOWTO stworzony przez Martina Gansser'a dotyczący MPlayera na HP-UX. Korzystając z zawartych tam intrukcji program powinien się skompilować bez najmnijeszych problemów. Amiga/MorphOS (zabawki dla zapaleńców) Nicholas Det at Genesi stworzył potężny port MPlayera dla MorphOS. Niestety oparty jest on o serię 0.90. Pobierz go z MorphZone: pakiet binarny MPlayer 0.91 źródła MPlayera 0.91 pakiet binarny MEncodera 0.91