Portok
Az MPlayer bináris csomagjai számos forrásból elérhetőek.
Van egy listánk a számos rendszerhez elkészített
nem hivatalos csomagokról
a weboldalunkon.
Azonban ezen csomagok közül egyikhez sem nyújtunk támogatást.
A problémáidat a szerzőknek jelezd, ne nekünk.
LinuxDebian csomagolás
Debian csomag készítéséhez futtasd az alábbi parancsot az
MPlayer forrásának könyvtárában:
fakeroot debian/rules binary
Ha különleges kapcsolókat akarsz átadni a configure-nak, állítsd be a
DEB_BUILD_OPTIONS környezeti változót. például ha
szeretnél GUI-t és OSD menü támogatást, ezt kell használnod:
DEB_BUILD_OPTIONS="--enable-gui --enable-menu" fakeroot debian/rules binary
Pár változót is átadhatsz a Makefile-nak. Például ha gcc 3.4-et szeretnél
használni a fordításhoz annak ellenére, hogy nem az az alapértelmezett
fordító:
CC=gcc-3.4 DEB_BUILD_OPTIONS="--enable-gui" fakeroot debian/rules binary
A forrás fa kitakarításához add ki a következő parancsot:
fakeroot debian/rules clean
Rendszergazdaként a szokásos módszerrel telepíthető a .deb csomag:
dpkg -i ../mplayer_verziószám.debRedHat csomagolás
Az RPM csomag elkészítéséhez add ki a következő parancsot az
MPlayer forrás könyvtárában:
FIXME: megfelelő parancs beszúrásaARM Linux
Az MPlayer működik ARM CPU-val rendelkező PDA-kon is,
mint páldául a Sharp Zaurus, vagy a Compaq Ipaq. Megszerzésének legegyszerűbb
módja az OpenZaurus webhelyéről
történő letöltés. Ha saját erődből akarod lefordítani, érdemes körülnézni az
mplayer
és a
libavcodec
Openzaurus buildroot könyvtárakban, ezek ugyanis mindig tartalmazzák a legújabb
Makefile-okat és patcheket az MPlayer SVN verziójának
libavcodec-kel történő lefordításához.
Ha GUI frontend-et is szeretnél, használd az xmms-embedded-et.
*BSD
Az MPlayer fut az összes ismert BSD-n.
Léteznek ports/pkgsrc/fink/stb. verziók az
MPlayerből, amelyek nagy valószínűséggel
egyszerűbben fordíthatóak le, mint a mi nyers forrásaink.
Ha az MPlayer nem találja a
/dev/cdrom-ot vagy a /dev/dvd-t,
csinálj egy symlinket:
ln -s /dev/cdrom_egység /dev/cdrom
Ha Win32 DLL-eket akarsz használni az MPlayerrel,
újra kell fordítanod a kernelt "option USER_LDT"-vel
(kivéve, ha FreeBSD-CURRENT-et
használsz, ahol ez az alapállapot).
FreeBSD
Ha a processzorod támogatja az SSE-t, akkor ezen utasításkészlet kihasználásához
a kernelt az "options CPU_ENABLE_SSE" beállítással
kell fordítani (ehhez FreeBSD-STABLE vagy kernelpatchekre van szükség).
OpenBSD
A gas különböző verzióinak hiányosságai miatt (relokáció vs MMX), két
lépésben kell fordítani: előszőr legyen a nem-natív verzió a $PATH-ban,
majd add ki a gmake -k parancsot, majd a natív verzióval
gmake.
Az OpenBSD 3.4-től a fenti kavarás már nem szükséges.
Darwin
Lásd a Mac OS részt.
Kereskedelmi Unix
Az MPlayer számos kereskedelmi Unix variánsra
portolva lett. Mivel a fejlesztő környezet ezeken a rendszereken másfajta,
mint a szabad Unix-okon, lehet, hogy némi kézi beállítást igényel a
fordítás.
Solaris
A Solarisnak még mindig rossz, POSIX-inkompatibilis rendszer eszközei és shell-je
van az alapértelmezett helyeken. Amíg nem tesznek egy bölcs lépést a számítástechnikai
kőkorszak leváltására, addig a /usr/xpg4/bin könyvtárat
hozzá kell adnod a PATH-hoz.
Az MPlayer Solaris 2.6 vagy újabb rendszereken működik.
A SUN audió vezérlőjét a kapcsolóval használhatod.
Az MPlayer kihasználja az
UltraSPARC gépek VIS
utasításkészletét (az MMX-hez hasonló), bár jelenleg csak a
libmpeg2-ben,
libvo-ben és
a libavcodec-ben, de az
mp3lib-ben nem.
Egy 400Mhz-es CPU elég, hogy élvezhetően lejátsz egy VOB filet.
Szükséged lesz egy felinstallált
mLib-re
is.
Figyelmeztetés:
A mediaLibjelenleg le van tiltva alapértelmezésben
az MPlayerben, mivel hibás. A SPARC felhasználók,
akik az MPlayert mediaLib támogatással forgatták, egy vastag, zöld
csíkról számoltak be a libavcodec-kal kódolt és dekódolt videók esetén.
Ha mégis akarod, engedélyezheted:
./configure --enable-mlib
Azonban ezt a saját felelősségedre tedd. Az x86 felhasználóknak
soha sem ajánlott mediaLib-et használni,
mivel nagyon lerontja az MPlayer teljesítményét.
Solaris SPARC-on GNU C/C++ fordító is kell; az nem számít, hogy
assemblerrel vagy nélküle van.
Solaris x86-on kell a GNU assembler és a GNU C/C++ fordító is, aminek támogatnia
kell a GNU assemblert! Az MPlayer igencsak
támaszkodik az MMX, SSE és 3DNOW! utasításokra, amiket a Sun standard
assemblere (/usr/ccs/bin/as) nem támogat.
A configure script megpróbálja megkereseni, hogy a
"gcc" parancsod melyik assemblert indítja (ha nem sikerül neki,
használd a
kapcsolót, hogy megadd a configurenak az "as" helyét
a rendszeredben).
Megoldások a gyakori problémákra:
Hibaüzenet a configure-tól egy Solaris x86-os
rendszeren GNU assembler nélküli GCC használata esetén:
% configure
...
Checking assembler (/usr/ccs/bin/as) ... , failed
Please upgrade(downgrade) binutils to 2.10.1...
(Megoldás: -al fordított GCC
használata)
Tipikus hiba, ha a GNU C fordító nem GNU assemblert (GNU as)
használ:
% 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
... további "Illegal mnemonic" és "Syntax error" hibák ...
Az MPlayer segfault-olhat ha
win32codec-eket használó videót akarsz kódolni vagy dekódolni:
...
Trying to force audio codec driver family acm...
Opening audio decoder: [acm] Win32/ACM decoders
sysi86(SI86DSCR): Invalid argument
Couldn't install fs segment, expect segfault
MPlayer interrupted by signal 11 in module: init_audio_codec
...
Ez a Solaris 10-ben és a pre-Solaris Nevada b31-ben a sysi86() egyik
változtatása miatt van. Javítva lett a Solaris Nevada b32-ben; bár a
Sun-nak még vissza kell vezetnie a javítást a Solaris 10-be. Az
MPlayer Project felhívta a Sun figyelmét a problémára, a javítás
készülőben van a Solaris 10-hez. Ettől a hibáról további információt
itt találhatsz:
.
A Solaris 8 hibái miatt nem biztos,
hogy le tudsz játszani 4 GB-nál nagyobb DVD lemezt:
Az sd(7D) vezérlőnek a Solaris 8 x86-ban van egy hibája a >4GB lemez blokkok
elérésénél egy eszközön, melyen a logikai blokkméret != DEV_BSIZE-zel
(pl. CD-ROM és DVD média).
A 32 bites egész túlcsordulása miatt a lemez cím modulo 4GB kerül megcímzésre
().
Ez a probléma a SPARC alapú Solaris 8-on nincs.
Egy hasonló hiba van a hsfs(7FS) fájl rendszer kódjában is (alias ISO9660),
a hsfs nem támogatja a 4 GB-nál nagyobb partíciókat/lemezeket, minden adat
modulo 4GB-vel lesz elérve
().
Ez a hiba a 109764-04 (SPARC) / 109765-04
(x86) jelzésű patch-ek telepítése után megszűnik.
HP-UX
Joe Page ad helyet egy részletes HP-UX MPlayerHOGYAN-nak
a weboldalán, amit Martin Gansser írt. Ezekkel az utasításokkal a fordítás után
egyből kész programot kapsz. A következő információk a HOGYAN-ból lettek átvéve.
GCC 3.4.0 vagy későbbire lesz szükséged és SDL 1.2.7 vagy újabb. A HP cc nem
tud működő programot fordítani, a korábbi GCC verziók pedig hibásak.
Az OpenGL funkcionalításhoz telepítened kel a Mesa-t és így a gl és gl2 videó kimeneti
vezérlőknek működniük kell, bár nagyon lassúak is lehetnek a CPU sebességétől függően.
A meglehetősen gyenge natív HP-UX hangrendszer helyett inkább használd a GNU esound-ot.
Hozd létre a DVD eszközt
nézd végig a SCSI buszt:
# ioscan -fn
Class I H/W Path Driver S/W State H/W Type Description
...
ext_bus 1 8/16/5 c720 CLAIMED INTERFACE Built-in SCSI
target 3 8/16/5.2 tgt CLAIMED DEVICE
disk 4 8/16/5.2.0 sdisk CLAIMED DEVICE PIONEER DVD-ROM DVD-305
/dev/dsk/c1t2d0 /dev/rdsk/c1t2d0
target 4 8/16/5.7 tgt CLAIMED DEVICE
ctl 1 8/16/5.7.0 sctl CLAIMED DEVICE Initiator
/dev/rscsi/c1t7d0 /dev/rscsi/c1t7l0 /dev/scsi/c1t7l0
...
A képernyőn a kimenetben egy Pioneer DVD-ROM látszik a 2. SCSI címen.
A kártya a 8/16-os hardver útra az 1-essel hivatkozik.
Készíts egy linket a nyers eszközről a DVD eszközre.
# ln -s /dev/rdsk/c<SCSI busz hivatkozás>t<SCSI cél ID>d<LUN> /dev/<eszköz>
Például:
# ln -s /dev/rdsk/c1t2d0 /dev/dvd
Itt van pár gyakori probléma megoldása:
A rendzser összeomlik indításkor a következő hibaüzenettel:
/usr/lib/dld.sl: Unresolved symbol: finite (code) from /usr/local/lib/gcc-lib/hppa2.0n-hp-hpux11.00/3.2/../../../libGL.sl
Ez azt jelenti, hogy a .finite(). függvény
nincs benne a szabványos HP-UX math függvénykönyvtárban.
Ekkor .isfinite(). van helyette.
Megoldás: Használd a legújabb Mesa depot fájlt.
Összeomlás lejátszáskor a következő hibaüzenettel:
/usr/lib/dld.sl: Unresolved symbol: sem_init (code) from /usr/local/lib/libSDL-1.2.sl.0
Megoldás: Használd a configure extralibdir opcióját
Az MPlayer segfault-ol egy ilyesmi üzenettel:
Pid 10166 received a SIGSEGV for stack growth failure.
Possible causes: insufficient memory or swap space, or stack size exceeded maxssiz.
Segmentation fault
Megoldás:
A HP-UX kernel alapértelmezésként 8MB-os(?) méretű vermet használ
processzenként. (11.0 és az újabb 10.20 foltok engedik növelni a
maxssiz-t egészen 350MB-ig a 32-bit-es
programokhoz). Növelned kell a maxssiz-t
és újrafordítani a kernelt (majd reboot-olni). Ehhez használhatod
a SAM-ot. (Ha már itt tartunk, nézd meg a maxdsiz
paramétert is az egy program által használható maximum adatmennyiséghez.
Az alkalmazásaidon múlik, hogy az alapértelmezett 64MB elég vagy sem.)
AIX
Az MPlayer sikeresen fordul AIX 5.1-en,
5.2-n és 5.3-on, GCC 3.3 vagy újabbal. Az
MPlayer fordítását AIX 4.3.3 és
régebbi változaton nem teszteltük. Javasoljuk, hogy az
MPlayert GCC 3.4 vagy újabbal fordítsd
vagy ha POWER5-ön forgatsz, GCC 4.0 szükséges.
A CPU detektálás még fejlesztés alatt áll.
A következő architektúrákat teszteltük:
604ePOWER3POWER4
A következő architektúrák nem lettek tesztelve, de működhetnek:
POWERPOWER2POWER5
Az Ultimedia Services-en keresztüli hang nem támogatott, mert az Ultimedia-t
dobták az AIX 5.1-ben; ezért az egyetlen lehetőség az AIX Open
Sound System (OSS) vezérlők használata a 4Front Technologies-től
http://www.opensound.com/aix.html.
A 4Front Technologies szabadon biztosítja az OSS vezérlőket az AIX 5.1-hez
nem-üzleti felhasználásra; azonban jelenleg nincs hang kimeneti vezérlő
AIX 5.2 és 5.3 alá. Ez azt jelenti, hogy az AIX 5.2
és 5.3 alatt jelenleg az MPlayer nem képes audió kimenetre.Megoldás a gyakori problémákra:
Ha ezt a hibaüzenetet kapod a configure-tól:
$ ./configure
...
Checking for iconv program ... no
No working iconv program found, use
--charset=US-ASCII to continue anyway.
Messages in the GTK-2 interface will be broken then.
Ez azért van, mert az AIX nem-szabványos kódlap neveket használ;
ezért az MPlayer kimenetének másik kódlapra konvertálása jelenleg
nem támogatott. A megoldás:
$ ./configure --charset=noconvQNX
Le kell töltened és telepítened kell az SDL-t a QNX-re. Majd futtasd az
MPlayert a
és kapcsolókkal, így gyors lesz.
A kimenet még lassabb lesz, mint Linux-on,
mivel a QNX-nek csak X emulációja van, ami nagyon lassú.
Windows
Igen, az MPlayer fut Windows-on
Cygwin és
MinGW alatt.
Még nincs hivatalos GUI-ja, de a parancssoros verzió
teljes mértékben használható. Ajánlott megnézni az
MPlayer-cygwin
levelezési listát is segítéségért és a legfrissebb információkért.
A hivatalos Windows-os binárisok megtalálhatóak a
letöltési oldalon.
A külső forrásból származó telepítő csomagokat és egyszerű GUI frontend-eket
összegyűjtöttük a
kapcsolódó projektek oldal
Windows-os részében.
Ha el akarod kerülni a parancssor használatát, van egy egyszerű trükk.
Tegyél egy parancsikont az asztalodra, ami valami hasonló parancssort
tartalmaz:
c:\eleresi\ut\mplayer.exe %1
Ezután az MPlayer le fog játszani bármilyen
videót, amit erre a parancsikonra ejtesz. Írd hozzá a
kapcsolót a teljes képernyős módhoz.
A legjobb eredmény a natív DirectX videó kimeneti vezérlővel
(). Alternatívaként van OpenGL és SDL, de
az OpenGL teljesítménye nagyban változik a rendszerek között, az SDL pedig
torzítja a képet vagy összeomlik néhány rendszeren. Ha torz a kép,
próbáld meg kikapcsolni a hardveres gyorsítást a
kapcsolóval. Töltsd le a
DirectX 7 fejléc fájlokat
a DirectX videó kimeneti vezérlő beforgatásához.
A VIDIX is működik már Windows alatt
a kapcsolóval, bár még kisérleti fázisban
van és egy kis kézi állítgatás kell hozzá. Töltsd le a
dhahelper.sys vagy
dhahelper.sys (MTRR támogatással)
fájlt és másold be a vidix/dhahelperwin könyvtárba
az MPlayer forrás fádban.
Nyisd meg a konzolt és írd be:
make install-dhahelperwin
adminisztrátorként. Ezután újra kell indítanod a gépet.
A legjobb eredményhez az MPlayernek egy olyan
színteret kell használnia, amit a videó kártyád támogat. Sajnos sok Windows-os
grafikus vezérlő hibásan támogatottnak jelent pár színteret. Hogy megtudd,
melyiket, próbáld ki az
mplayer -benchmark -nosound -frames 100 -vf format=szinterfilm
parancsot, ahol a szinter bármelyik színtér lehet,
amit a kapcsoló kiír. Ha találsz
olyan színteret, amit a kártyád részben hibásan kezel,
kapcsolóval megakadályozhatod a használatát. Írd be ezt a konfigurációs fájlodba,
hogy véglegesen kimaradjon a használatból.
Vannak speciálisan Windowsra készített codec csomagok a
letöltési oldalunkon,
melyek segítségével azokat a formátumokat is lejátszhatod, amikhez még
nincs natív támogatás.
Tedd be a codec-eket valahova az elérési útvonaladba vagy add meg a
(alternatívaként
csak Cygwin alatt) kapcsolóval a configure-nak.
Kaptunk olyan visszajelzéseket, hogy a Real DLL-eknek írhatóaknak kell lenniük az
MPlayert futtató felhasználó által, de csak bizonyos
rendszereken (NT4). Próbáld meg írhatóvá tenni őket, ha problémáid vannak.
VCD-ket is lejátszhatsz a .DAT vagy
.MPG fájlok lejátszásával, amit a Windows meglát a VCD-n.
Így nagyszerűen működik (javítsd ki a CD-ROM-od betűjelét):
mplayer d:/mpegav/avseq01.dat
Alternatívaként lejátszhatsz egy VCD sávot közvetlenül így:
mplayer vcd://<sáv> -cdrom-device d:
A DVD-k is működnek, add meg a kapcsolóval
a DVD-ROM-od betűjelét:
mplayer dvd://<cím> -dvd-device d:
A Cygwin/MinGW
konzol meglehetősen lassú. Kimenet átirányítással vagy a
kapcsolóval a jelentések szerint javítható a
teljesítmény néhány rendszeren. A Direct renderelés ()
is segíthet. Ha a lejátszás szaggatott, próbáld meg a
opciót. Ha ezek közül bármelyik segít, írd
be a konfigurációs fájlodba.
Ha Pentium 4-ed van és fagyásokat tapasztalsz a RealPlayer
codec-ekkel, le kell tiltanod a hyperthread támogatást.
Cygwin
A Cygwin 1.5.0 vagy későbbi verziójára
lesz szükséged az MPlayer lefordításához.
A DirectX fejléc fájlokat ki kell csomagolni a
/usr/include/ vagy
/usr/local/include/ könyvtárba.
Az SDL előállításával és Cygwin alatti
használatával kapcsolatos utasítások és fájlok megtalálhatóak a
libsdl oldalon.
MinGW
A MinGW 3.1.0 vagy későbbi és az MSYS 1.0.9 vagy későbbi
verziójára lesz szükséged. Az MSYS postinstall-jának mondd meg, hogy telepítve van
a MinGW.
Csomagold ki a DirectX fejléc fájlokat a
/mingw/include/ könyvtárba.
A tömörített MOV fejlécek támogatásához
zlib kell, ami
alaphelyzetben nincs benne a MinGW-ben.
Állítsd be a kapcsolóval és
telepítsd, mielőtt az MPlayert fordítanád.
Az MPlayer és a szükséges függvénykönyvtárak
elkészítésének módját elolvashatod az
MPlayer MinGW HOGYAN-ban.
Mac OS
Az MPlayer nem működik a 10-esnél régebbi Mac OS-eken,
de könnyedén lefordítható Mac OS X 10.2 és későbbi verziók alatt.
A javasolt fordító a GCC 3.x vagy későbbi Apple féle változata.
Az alap fordítási környezetet az Apple
Xcode
telepítésével kapod meg.
Ha Mac OS X 10.3.9 vagy régebbi verziód és QuickTime 7-esed van,
használhatod a videó kimeneti vezérlőt is.
Sajnos az alap környezet nem teszi lehetővé az MPlayer
összes képességének kihasználását.
Például ha befordított OSD támogatást szeretnél, telepített
fontconfig és a
freetype függvénykönyvtárakra
lesz szükséged. Más Unix-okkal ellentétben, mint amilyen a legtöbb
Linux és BSD variáns, az OS X nem rendelkezik alapértelmezett csomag
kezelővel, ami az operációs rendszerhez tartozna.
Két független közül választhatsz:
Fink és
MacPorts.
Mindkettő nagyjából ugyan azt a szolgáltatást nyújtja (pl. rengeteg választható
csomag, függőségek kezelése, csomagok egyszerű telepítése/frissítése/eltávolítása,
stb...).
A Fink biztosít előfordított bináris csomagokat, de forrásból is lefordítható
bármi, míg a MacPorts csak forrásból történő fordítást tesz lehetővé.
Ezen leírás szerzője a MacPorts-ot választotta, azon egyszerű okból kifolyólag,
hogy a beállítása sokkal egyszerűbb.
A későbbi példák mind MacPorts-on alapszanak.
Például az MPlayer lefordítása OSD támogatással:
sudo port install pkg-config
Ez telepíti a pkg-config-ot, ami a függvénykönyvtárak
fordítási/szerkesztési flag-jeinek kezelését végző rendszer.
Az MPlayerconfigure script-je
is ezt használja a függvénykönyvtárak megfelelő detektálásához.
Ezután hasonló módon telepítheted a
fontconfig-ot:
sudo port install fontconfig
Ezek után indíthatod az MPlayerconfigure script-jét (figyelj a
PKG_CONFIG_PATH és PATH
környezeti változók beállítására, hogy a configure
megtalálja a MacPorts-szal telepített függvénykönyvtárakat):
PKG_CONFIG_PATH=/opt/local/lib/pkgconfig/ PATH=$PATH:/opt/local/bin/ ./configure
MPlayer OS X GUI
Van egy natív GUI az MPlayerhez egy előfordított
MPlayer binárissal együtt Mac OS X alá a
MPlayerOSX projektből, de
emlékezz rá: ez a projekt már nem aktív.
Szerencsére az MPlayerOSX projektet az
MPlayer csapat egyik tagja átvette.
Előzetes kiadások elérhetőek a
letöltési oldalunkról
és hamarosan jön a hivatalos kiadás is.
Ha saját magad akarod lefordítani forrásból az MPlayerOSXet,
szükséged lesz az mplayerosx-re, a
main-re és a
main SVN modul
main_noaltivec-re átnevezett másolatára.
mplayerosx a GUI frontend,
main az MPlayer és a
main_noaltivec az MPlayer AltiVec támogatás
nélkül.
Az SVN modulok letöltéséhez használt az alábbi parancsokat:
svn checkout svn://svn.mplayerhq.hu/mplayerosx/trunk/ mplayerosx
svn checkout svn://svn.mplayerhq.hu/mplayer/trunk/ main
Az MPlayerOSX elkészítéséhez valami ilyesmit kell
csinálnod:
MPlayer_forras_konyvtar
|
|--->main (MPlayer Subversion forrás)
|
|--->main_noaltivec (MPlayer Subversion forrás --disable-altivec -kel konfigurálva)
|
|--->mplayerosx (MPlayer OS X Subversion forrás)
Először a main és main_noaltivec-et kell lefordítanod.
Kezdetnek a maximális kompatibilítás biztosítása érdekében állíts be egy
környezeti változót:
export MACOSX_DEPLOYMENT_TARGET=10.3
Majd konfigurálj:
Ha a G4 vagy későbbi, AltiVec támogatással rendelkező CPU-ra konfigurálsz:
./configure --disable-gl --disable-x11
Ha G3-as, AltiVec nélküli gépre:
./configure --disable-gl --disable-x11 --disable-altivec
Lehet, hogy szerkesztened kell a config.mak fájlt és
át kell írnod az -mcpu-t és -mtune-t
74XX-ről G3-ra.
Folytasd a
make
paranccsal, majd menj a mplayerosx könyvtárba és írd be
make dist
Ez egy tömörített .dmg archívot hoz létre
egy használatra kész binárissal.
Használhatod az Xcode 2.1 projektet is;
a régi, Xcode 1.x projekt nem működik
már.