Telepítés Egy rövid telepítési leírást találsz a README fájlban. Kérlek először azt olvasd el, és utána gyere vissza ide, hogy megtudd a részleteket! Ebben a fejezetben megpróbállak végigvezetni az MPlayer fordításának és beállításának menetén. Nem egyszerű, de nem is észveszejtően nehéz. Ha nálad máshogy viselkednek a dolgok, mint ahogy itt le van írva, nézd végig ezt a dokumentációt és (remélhetőleg) megtalálod a választ. Ha linkeket látsz, kövesd őket és olvasd el figyelmesen a tartalmukat. Időbe fog kerülni, de MEGÉRI. Nem árt, ha vmi újabb rendszered van. Linuxon a 2.4.x-es kernel javasolt. Szoftver követelmények binutils - A javasolt verzió a 2.11.x. Ez a program felelős az MMX/ 3DNow!/stb utasítások generálásáért, így nagyon fontos! gcc - A javasolt verziók a 2.95 és 3.4+. A 2.96 és 3.0.x tudvalevőleg hibás kódot generálnak, a 3.1-nek és a 3.2-nek is vannak problémái, a 3.3-nak kisebb hibái. PowerPC-n használj 4.x+ verziót. XFree86 - A javasolt verzió mindig a legújabb (4.3). Mindenki ezt akarja, mivel a 4.0.2-es XFree86-tól benne van az XVideo kiterjesztés (néhol Xv-ként hivatkoznak rá), ami szükséges a hardveres YUV gyorsítás engedélyezéséhez (gyors képmegjelenítés) azokon a kártyákon, amik támogatják. Győződj meg róla, hogy a fejlesztői csomagja is telepítve van, különben nem fog működni. Néhány videó kártyához nem kell XFree86. A listát lásd lejjebb. make - A javasolt verzió mindig a legújabb (legalább 3.79.x-es). Ez legtöbbször nem olyan fontos. FreeType 2.0.9 vagy későbbi szükséges, hogy legyen betűtípus az OSD-nek és a feliratoknak. SDL - nem feltétlenül szükséges, de segíthet pár esetben (hibás audió, videó kártya, ami késik az xv vezérlővel). Mindig használd a legújabbat (1.2.x-től kezdve). libjpeg - választható JPEG dekódoló, az kapcsoló használja és néhány QT MOV fájl. Hasznos mind az MPlayer, mind a MEncoder szempontjából, ha jpeg fájlokkal akarsz dolgozni. libpng - szükséges és az alapértelmezett (M)PNG dekóder. Kell a GUI-hoz is. Használja az MPlayer és a MEncoder is. lame - javasolt, szükséges MP3 audió MEncoderrel történő kódolásához, az ajánlott verzió mindig a legújabb (de legalább 3.90). zlib - javasolt, szükséges a tömörített MOV fejlécekhez és a PNG támogatáshoz. libogg - választható, szükséges az OGG formátumú fájlok lejátszásához. libvorbis - választható, szükséges az OGG Vorbis audiók lejátszásához. LIVE555 Streaming Media - választható, szükséges az RTSP/RTP folyamok lejátszásához. directfb - választható, elérhető itt: . Legalább 0.9.13-as szükséges. cdparanoia - választható, szükséges a CDDA támogatáshoz libxmms - választható, XMMS input plugin támogatáshoz kell. Legalább 1.2.7-es szükséges. libsmb - választható, Samba támogatáshoz kell. ALSA - választható, az ALSA audió kimenet támogatásához. Legalább 0.9.0rc4 szükséges. Videó kártyák Két nagy típusa van a videó kártyáknak. Az egyik (az újabbak) tudják a hardveres méretezést és YUV gyorsítást, a másik nem. YUV kártyák A képet bármilyen méretben meg tudják jeleníteni és átméretezni (nagyítani), ami belefér a memóriájukba, kevés CPU használattal (még nagyításnál is), így a teljes képernyős vetítés szép és nagyon gyors. Matrox G200/G400/G450/G550 kártyák: bár van Vidix vezérlő hozzájuk, inkább az mgs_vid modult használd, sokkal jobban működik. Nézd meg az mga_vid részt a telepítéséhez és használatához! Fontos, hogy az ott leírtakat az MPlayer fordítása előtt végezd el, különben nem lesz beépített mga_vid támogatásod. Szintén nézd meg a Matrox TV-kimenet részt! Ha nem használsz Linux-ot, csak a VIDIX vezérlőben bízhatsz: olvasd el a VIDIX részt. 3Dfx Voodoo3/Banshee kártyák: nézd meg a tdfxfb részt, ha nagy sebességnövekedést akarsz elérni! Fontos, hogy az ott leírtakat az MPlayer fordítása előtt végezd el, különben nem lesz beépített 3Dfx támogatásod. Ha X-et használsz, legalább 4.2.0-est használj, mert a 3dfx Xv vezérlő a 4.1.0 és korábbi verziókban hibás volt. ATI kártyák: VIDIX vezérlő elérhető a következő kártyákhoz: Radeon, Rage128, Mach64 (Rage XL/Mobility, Xpert98). Nézd meg a TV-out dokumentáció ATI kártyákra vonatkozó részét, hogy megtudd a kártyád TV-kimenete támogatott-e a Linux/MPlayer alatt! S3 kártyák: a Savage és Virge/DX chip-eknek van hardveres gyorsításuk. Használj olyan friss XFree86-ot, amilyet csak tudsz, a régebbi vezérlők hibásak. A Savage chip-eknek problémáik vannak a YV12 megjelenítéssel, lásd az S3 Xv részt a részletekért. Régebbi, Trio kártyákban nincs vagy lassú a hardveres támogatás. nVidia kártyák: talán jó választás a videó lejátszáshoz, talán nem. Ha nincs GeForce2 (vagy újabb) kártyád, valószínűleg nem fog menni hiba nélkül. Az XFree86 beépített nVidia vezérlője nem minden kártyán támogatja a hardveres YUV gyorsítást. Le kell töltened az nVidia zárt forrású vezérlőjét az nVidia.com-ról. Nézd meg az nVidia Xv vezérlő fejezetet bővebb információkért! Szintén nézd meg az nVidia TV-kimenet részt ha TV-t is akarsz használni. 3DLabs GLINT R3 és Permedia3: VIDIX vezérlő van hozzá (pm3_vid). Kérlek olvasd el a VIDIX fejezetet bővebb infókért! Egyéb kártyák: nincs a fentiekben? Próbáld ki, hogy az XFree86 vezérlő (és a kártyád) támogatja-e a hardveres gyorsítást! Lásd az Xv fejezetet a részletekért! Ha nem, akkor a kártyád videós tulajdonságai nem támogatottak az operációs rendszered alatt. :( Ha a hardveres méretezés működik Windows alatt, az nem jelenti azt, hogy Linux vagy más operációs rendszer alatt is fog menni, ez a vezérlőtől függ. A legtöbb gyártó sem Linuxos vezérlőt nem ad ki, sem a chip-jei specifikációját - így hát peched van, ha az ő kártyájukat használod. Lásd . Nem YUV-os kártyák A teljes képernyős lejátszás vagy a szoftveres méretezés engedélyezésével (használd a vagy a kapcsolót, de figyelmeztetlek: lassú lesz), vagy egy kisebb, pl. 352x288-as felbontásra való átváltással lehetséges. Ha nincs YUV gyorsításod, az utóbbi módszer javasolt. A videó mód váltást a kapcsolóval engedélyezheted, mely a következő vezérlőkkel működik: használsz XFree86-t: részleteket lásd a DGA vezérlőről és az X11 vezérlőről szóló fejezetekben. A DGA a javasolt! Megpróbálhatod a DGA-t SDL-en keresztül is, van amikor az a jobb. nem használsz XFree86-t: próbáld ezeket a vezérlőket ebben a sorrendben vesa, fbdev, svgalib, aalib. Cirrus-Logic kártyák GD 7548: alaplapi vezérlő, Compaq Armada 41xx notebook sorozatban tesztelve. XFree86 3: 8/16bpp módban működik. Bár a vezérlő borzasztóan lassú és hibás 800x600@16bpp-ben. Javasolt: 640x480@16bpp XFree86 4: az Xserver kifagy rögtön indítás után, ha a gyorsítás nincs kikapcsolva, de akkor meg az egész cucc lassabb lesz, mint az XFree86 3. Nincs XVideo. FBdev: a framebuffer-t a clgenfb kernel vezérlővel tudod bekapcsolni, de nekem csak 8bpp-ben működött, így használhatatlan. A clgenfb forrását ki kell egészíteni a 7548 ID-vel fordítás előtt. VESA: a kártya csak a VBE 1.2-t ismeri, így a VESA kimenet nem használható. UniVBE-vel sem lehet megkerülni. SVGAlib: régebbi Cirrus chip-nek ismeri fel. Használható de lassú a kapcsolóval. Hangkártyák Soundblaster Live!: ezzel a kártyával 4 vagy 6 (5.1) csatornás AC3 dekódolást használhatsz a 2 helyett. Olvasd el a szoftveres AC3 dekódolásról szóló fejezetet! Hardveres AC3 használathoz ALSA 0.9-et kell használnod OSS emulációval! C-Media S/PDIF kimenettel: hardveres AC3 áteresztés lehetséges ezeken a kártyákon, lásd a hardveres AC3 dekódolás fejezetet! Más kártyák tulajdonságait nem támogatja az MPlayer. Nagyon ajánlott, hogy elolvasd a hangkártyákról szóló részt! Jellemzők Döntsd el, hogy szükséged van-e GUI-ra. Ha igen, akkor nézd meg a GUI fejezetet a fordítás előtt! Ha telepíteni akarod a MEncodert is (a nagyszerű, mindent tudó kódolónkat), nézd meg a MEncoder részt! Ha V4L kompatibilis TV tuner kártyád van, és nézni/grabbelni vagy kódolni szeretnél filmeket az MPlayerrel, olvasd el a TV bemenet fejezetet. Ha van V4L kompatibilis rádió tuner kártyád és MPlayerrel szeretnél hallgatni vagy lementeni, olvasd el a rádió részt. Roppant jól sikerült OSD Menü támogatás vár használatra. Lásd az OSD menü fejezetet! Mindezek után fordítsd le az MPlayert: ./configure make make install Ezek után az MPlayer máris használatra kész. A $PREFIX/share/mplayer könyvtárban van a codecs.conf fájl, ami a codec-eket és azok tulajdonságait írja le a programnak. Ez a fájl csak akkor kell, ha meg akarod változtatni a képességeit, egyébként nem, mert a binárisban van egy másolat róla. Ellenőrizd le, hogy van-e codecs.conf nevű fájlod a home könyvtáradban (~/.mplayer/codecs.conf), melyet régebbi MPlayer verziók hagyhattak ott, és ha van, töröld le! Vedd figyelembe, hogy ha van egy codecs.conf fájlod a ~/.mplayer/ könyvtárban, a beépített és a fő codecs.conf teljesen figyelmen kívül lesz hagyva. Ne használd ezt, hacsak nem akarsz trükközni az MPlayerrel, mivel ez sok problémát okozhat. Ha meg akarod változtatni a codec-ek keresési sorrendjét, használd a , , , vagy kapcsolókat akár a parancssorban akár a konfigurációs fájlban (lásd man oldal). A Debian használók .deb csomagot is készíthetnek maguknak, roppant egyszerűen. Csak futtasd a fakeroot debian/rules binary parancsot az MPlayer főkönyvtárában. Lásd a Debian csomagolás fejezetet bővebb információkért! Mindig nézd végig a ./configure kimenetét, és a configure.log fájl, melyek információkat tartalmaznak arról, hogy mi is lesz lefordítva és mi nem. Szintén tanácsos megnézni a config.h és config.mak fájlokat. Ha van olyan telepített függvénykönyvtárad, amit a ./configure mégsem talált meg, ellenőrizd, hogy a megfelelő fejléc fájlok (általában a -dev csomagokban vannak) is elérhetőek-e, és egyező verziójúak. A configure.log fájl legtöbbször megmondja, hogy mi hiányzik. Bár nem kötelező, de a betűtípusoknak telepítve kell lenniük, hogy az OSD és a feliratozás működjön. A javasolt eljárás, hogy telepíted a TTF betűkészletet, majd megmondod az MPlayernek, hogy használja azt. Lásd a Feliratok és az OSD részt bővebben. Mi a helyzet a GUI-val? A GUI-hoz GTK 1.2.x vagy GTK 2.0 kell (nem teljesen GTK-s, de a panelek igen). A skinek sPNG formátumúak, így telepített GTK, libpng (és a fejlesztői cuccok, amik általában gtk-dev és libpng-dev néven futnak) szükséges. A ./configure-nak az kapcsoló megadásával írhatod elő, hogy GUI-t is készítsen. Ezután ha a GUI-s változatot akarod futtatni, akkor a gmplayer binárist kell elindítanod. Mivel az MPlayer nem rendelkezik beépített skin-nel, le kell töltened őket, ha a GUI-t használni akarod. Lásd a letöltési oldalt. Ajánlott egy rendszerszinten elérhető könyvtárba tenni őket ($PREFIX/share/mplayer/skins), vagy a $HOME/.mplayer/skins-be. Az MPlayer ezekben a könyvtárakban keres egy default nevű alkönyvtárat, amelyben az alapértelmezett skin van. Megadhatsz más könyvtárat is a kapcsolóval vagy a skin=newskin sorral a konfigurációs fájlban, és ekkor a */skins/newskin könyvtárban lévő skin lesz használatban. Betűtípusok és OSD Meg kell mondanod az MPlayernek, hogy melyik betűtípust szeretnéd használni az OSD-hez és a feliratokhoz. Bármilyen TrueType betűtípus vagy speciális bittérképes betű működni fog. Azonban ajánlott a TrueType használata, mivel sokkal jobban néz ki, megfelelően méretezhető a film méretéhez és jobban együttműködik a különböző kódolásokkal. TrueType betűk A TrueType betűtípusok kétféle módon használhatóak. Az egyik a opcióval egy TrueType betűtípus fájl megadása a parancssorban. Ez az opció jó eséllyel pályázik arra, hogy bekerüljön a konfigurációs fájlodba (lásd a man oldalt a részletekért). A másik, hogy készítesz egy subfont.ttf nevű symlink-et a választott betűtípus fájlhoz. Vagy ln -s /eleresi/ut/pelda_betu.ttf ~/.mplayer/subfont.ttf külön minden egyes felhasználóhoz, vagy az egész rendszerre vonatkozóan: ln -s /eleresi/ut/pelda_betu.ttf $PREFIX/share/mplayer/subfont.ttf Ha az MPlayer fontconfig támogatással lett lefordítva, a fenti módszerek nem fognak működni, helyettük a egy fontconfig betűtípus nevet vár és alapértelmezetté teszi a sans-serif betűt. Például: mplayer -font 'Bitstream Vera Sans' anime.mkv A fontconfig által ismert betűtípusok listáját az fc-list paranccsal nézheted meg. bittérképes betűk Ha valamilyen okból kifolyólag bittérképes betűtípusokat szeretnél vagy kell használnod, tölts le egy készletet a weboldalunkról. Választhatsz a különböző ISO betűk és néhány felhasználói készlet közül, különböző kódolásokban. Csomagold ki a letöltött fájlokat a ~/.mplayer vagy a $PREFIX/share/mplayer könyvtárba. Ezután nevezd át vagy készíts egy symlink-et valamelyik kicsomagolt könyvtárra font néven, például: ln -s ~/.mplayer/arial-24 ~/.mplayer/font ln -s $PREFIX/share/mplayer/arial-24 $PREFIX/share/mplayer/font A betűtípusoknak rendelkezniük kell egy megfelelő font.desc fájllal, ami leképezi a unicode betűpozíciókat az aktuális felirat szöveg kódlapjára. A másik megoldás UTF-8 kódolású feliratok használata és a kapcsoló megadása vagy add meg a felirat fájl neveként ugyan azt a nevet, mint a videó fájlé, de .utf kiterjesztéssel és tedd a videóval azonos könyvtárba. OSD menü Az MPlayernek az OSD Menüje teljesen igényre szabható. a Tulajdonságok menü még NINCS KIFEJLESZTVE! Telepítés fordítsd le az MPlayert a ./configure-nak az kapcsoló megadásával bizonyosodj meg róla, hogy van telepített OSD betűkészleted másold át az etc/menu.conf fájlt a .mplayer könyvtárba másold át az etc/input.conf fájlt a .mplayer könyvtárba, vagy egy rendszerszinten elérhető MPlayer konfigurációs könyvtárba (alapértelmezett: /usr/local/etc/mplayer) ellenőrizd le és írd át az input.conf fájlt a menüben történő mozgáshoz használt billentyűk engedélyezéséhez (ott le van írva). indítsd el az MPlayert az alábbi példa alapján: $ mplayer -menu file.avi nyomd meg valamelyik menü gombot, amit megadtál RTC Három fajta időzítési eljárás van az MPlayerben. A régi módszer használatához nem kell tenned semmit. Ez az usleep() függvényt használja az A/V szinkronizáláshoz, +/- 10ms-es pontossággal. Van amikor ennél is pontosabb szinkronizálás szükséges. Az új időzítő kód az RTC-t (RealTime Clock) használja, mert ennek pontos, 1 ms-es időzítői vannak. A kapcsoló engedélyezi, de megfelelően beállított kernel kell hozzá. Ha 2.4.19pre8 vagy későbbi kernelt használsz, beállíthatod a maximum RTC frekvenciát a sima felhasználóknak a /proc fájlrendszer segítségével. Használd az alábbi két parancs valamelyikét az RTC normál felhasználók számára történő engedélyezéséhez: echo 1024 > /proc/sys/dev/rtc/max-user-freq sysctl dev/rtc/max-user-freq=1024 Ezt a beállítást állandósíthatod az utóbbi /etc/sysctl.conf fájba történő írásával. Az új időzítő eredményét a státusz sorban láthatod. Néhány sebesség-léptetéses (speedstep) CPU-val rendelkező notebook BIOS-ának energia takarékossági funkciói rosszul működnek együtt az RTC-vel. Elromolhat az audió és a videó szinkronizációja. Úgy tűnik, ha bedugod a hálózati csatlakozót, mielőtt bekapcsolnád a notebookot, az segít. Néhány hardver összeállításban (ALi1541-es alaplapokkal használt nem DMA-s DVD meghajtók esetén erősítették meg) az RTC időzítő használata kihagyásokat okoz lejátszás közben. Ebben az esetben a harmadik módszer használata javasolt. A harmadik időzítő kód a kapcsolóval kapcsolható be. Az RTC hatékonyságával rendelkezik, de nem használja azt. Másrészről viszont jobban eszi a procit.