1.2. 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.

1.2.1. Szoftver követelmények

  • binutils - javasolt verzió: 2.11.x. Ez a program felelős az MMX/ 3DNow!/stb utasítások generálásáért, így nagyon fontos!

  • gcc - javasolt verziók: 2.95.3 (esetleg 2.95.4) és 3.2+. SOHA ne használd a 2.96-ot vagy a 3.0.x-et! Hibás MPlayer kódot generálnak. Ha úgy döntesz, hogy lecseréled a 2.96-os gcc-det, csak azért ne tegyél fel 3.x-est, mert újabb! A 3.x korai kiadásai még több hibát tartalmaztak, mint a 2.96. Tehát vagy állj vissza 2.95.x-re (és cseréld le a libstdc++-t is, más programoknak szükségük lehet rá) vagy ne frissíts/tegyél vissza semmit (de ebben az esetben készülj fel futási problémákra). Ha a 3.x-re szavazol, próbáld a legújabb verziót használni, a korai kiadásoknak számtalan hibájuk volt, így győződj meg róla, hogy legalább 3.1-eset használsz, ami ki lett próbálva és működik. Ha további infókat szeretnél a 2.96-os gcc hibáiról (amik még mindig NEM lettek kijavítva, csak meg lettek kerülve az MPlayerben!), nézd meg a FAQ 2.96-os gcc-re vonatkozó részét!

  • XFree86 - 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 - javasolt verzió: mindig a legújabb (legalább 3.79.x-es). Ez legtöbbször nem olyan fontos.

  • 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 -mf 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, a javasolt 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.

  • LIVE.COM Streaming Media - választható, szükséges az RTSP/RTP folyamok lejátszásához.

  • directfb - választható, elérhető itt: http://www.directfb.org. Legalább 0.9.13-as szükséges.

  • cdparanoia - választható, szükséges a CDDA támogatáshoz

  • libfreetype - választható, TTF betűtípusok támogatásához kell. Legalább 2.0.9-es szükséges.

  • 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.

  • bio2jack - választható, a JACK audió kimenet támogatásához kell, de csak a fordítás alatt. Beszerezheted a http://bio2jack.sf.net címről. Mivel nincs install opciója, kézzel kell bemásolnod a libbio2jack.a fájlt valahova a függvénykönyvtárakat tartalmazó könyvtáradba (pl. /usr/local/lib) vagy használnod kell a --with-bio2jack=DIR kapcsolót, hogy megmondd a ./configure scriptnek, hol van a fájl.

1.2.2. Codecek

  • libavcodec: Ez a codec csomag a H.263/MJPEG/RV10/DivX3/DivX4/DivX5/MP41/MP42/WMV1/WMV2/SVQ1/SVQ3 kódolású videó folyamokat és a WMA (Windows Media Audio) v1/v2 audió folyamokat tudja visszakódolni több platformon. Mindezt az elérhető programok közül ő végzi a leggyorsabban is. Lásd az FFmpeg bekezdést a részletekért. Jellemzők:

    • lehetővé teszi a fent említett formátumok dekódolását nem x86 gépeken
    • a legtöbb megemlített codec-kel kódolni is tud
    • ez a codec az elérhető leggyorsabb a DivX/3/4/5 és egyébb MPEG-4 típusú formátumoknál. Javasolt!

  • Win32 codecek: Ha x86-os gépen akarod használni az MPlayert, valószínűleg szükséged lesz rájuk. Töltsd le egy codec csomagot a codec oldalunkról és tedd be a codec-eket a /usr/local/lib/codecs könyvtárba az MPlayer fordítása ELŐTT, különben nem lesz befordított Win32 támogatásod!

    Megjegyzés

    Az avifile projektnek hasonló codec csomagja van, de az különbözik a mienkétől, így ha minden támogatott codecet használni akarsz, akkor a mi csomagunkra van szükséged (ne aggódj, az avifile-é is probléma nélkül működik).

    Jellemzők:

    • szükséged van erre, ha különböző hardveres tömörítőkkel, például tuner kártyákkal, digitális kamerákkal rögzített filmeket akarod lejátszani vagy átkódolni (például: DV, ATI VCR, MJPEG)
    • szükséges ha WMV9/WMA9 filmeket akarsz lejátszani.
    • Nem kell a régi ASF-ekhez MP41 vagy MP42 videóval (ezek gyakran VoxWare audiójú fájlok - ezt a Win32 codec elintézi), és az WMV7-hez. Szintén szükségtelen a WMA-hoz (Windows Media Audio), a libavcodecnek van nyílt forrású dekódolója ehhez.

  • QuickTime codecek: x86-os platformokon ezek a codecek az RPZA, egyébb QuickTime videók és QDesign audió folyamok lejátszására használható. A telepítéső útmutatók a Sorenson video codec részben találhatóak.

  • DivX4/DivX5: erről a codecről a információkat a DivX4/DivX5 részben találhatsz. Valószínűleg nincs szükséged erre a codecre, mert a libavcodec (lásd fent) sokkal gyorsabb és jobb minőséget biztosít, mint ez, mind kódolásban, mind visszakódolásban. Jellemzők:

    • egy vagy két menetes kódolás MEncoder-rel
    • le tudja játszani a régi DivX3 filmeket, sokkal gyorsabban, mint a Win32-es DLL-ekkel, de lassabban, mint a libavcodec-kel!
    • zárt forrású, és csak x86 változata elérhető.

  • XviD: Nyílt forráskódú, alternatív kódoló a DivX4Linux mellett. Jellemzők:

    • egy vagy két menetes kódolás MEncoder-rel
    • nyílt forráskódú, így multiplatformos.
    • kódolásban kb. kétszer gyorsabb, mint a divX4 - majdnem ugyan azzal a minőséggel

  • Az XAnim codecek a legjobbak (teljes képernyő, hardveres YUV nagyítás) a 3ivx és Indeo 3/4/5 filmek dekódolásához, és néhány régi formátumhoz. Ráadásul multiplatformos, így ez az egyetlen lehetőség az Indeo fájlok lejátszására nem-x86-os platformokon (nos, legalábbis az XAnim használatán kívül :). De például a Cinepak filmeket legjobb az MPlayer saját Cinepak dekódolójával lejátszani!

  • Az Ogg Vorbis audió dekódoláshoz helyesen telepített libvorbis kell. A bináris csomagokat és a forráskódot beszerezheted az Ogg Vorbis oldaláról

  • MPlayer tudja használni a RealPlayer 8 vagy a RealONE függvénykönyvtárait a RealVideo 3.0 és 4.0 videók lejátszásához, és a Sipro/Cook audióhoz. Lásd a RealMedia fájl formátumok részt a telepítési útmutatóért és egyébb információkért.

1.2.3. 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.

1.2.3.1. 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. Szintén nézd meg a 3dfx TV-kimenet részt! 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.

1.2.3.2. 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 -zoom vagy a -vf 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 -vm 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.

1.2.3.3. 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 -bpp 8 kapcsolóval.

1.2.4. 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!

1.2.5. 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.

  • 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 -vc, -ac, -vfm, vagy -afm 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.