Tartalomjegyzék
0. Hogyan olvasd ezt a dokumentációt
Ha ez az első találkozásod az MPlayer-rel, olvass el mindent innentől egészen az Installálás fejezet végéig, közben kövesd a linkeket. Ha van kérdésed, keress rá a tartalomjegyzékben, olvasd el a FAQ-t, vagy greppelj a file-okban.
Ezen dokumentáció legfőbb szabálya: ha nincs dokumentálva, nem létezik. Ha nincs leírva pl hogy tudsz a TV-ről hangot enkódolni, biztos lehetsz benne hogy nem tudsz. Egészséges mennyiségű kombinációs készség viszont jól jön. Sok szerencsét. Szükséged lesz rá :)
Az MPlayer egy LINUXON működő videolejátszó (fut sok más Unix-on és akár nem-x86 processzorokon is. Lásd a 6-os fejezetet). Le tudja játszani a legtöbb MPEG, VOB, AVI, OGG, VIVO, ASF/WMV, QT/MOV, FLI, RM, NuppelVideo, yuv4mpeg, FILM, RoQ file-t, és ezekhez felsorakoztat jónéhány natív, XAnim, és Win32 codecet. Nézhetsz vele VideoCD-t, SVCD-t, DVD-t, 3ivx-et, és még DivX-et is (és ezekhez egyáltalán nincs szüksége az avifile csomagra). Az MPlayer másik óriási tulajdonsága a megjelenítési módok széles választéka. Működik X11, Xv, DGA, OpenGL, SVGAlib, fbdev, aalib, DirectFb, sőt SDL-lel vagy GGI-vel is (beleértve ezáltal az SDL/GGI drivereit is), és néhány alacsonyszintű kártyaspecifikus driver (Matrox/3dfx/SiS) is használható! Legtöbbjük támogat szoftveres vagy hardveres skálázást, így a teljesképernyős mód is elérhető. Az MPlayer támogat továbbá hardveres MPEG kártyákkal történő dekódolást/megjelenítést, így például aDVB és DXR3/Hollywood+ kártyákon ! És még nem is szóltam a szép, élsímított, árnyékolt feliratozásról (9 támogatott típus!!!), ami támogat európai/ISO 8859-1,2 (magyar, angol, cseh, stb), cirill és koreai fontokat, valamint OSD-t!
Az MPlayer GPL v2 licensz alá tartozik.
A lejátszó sziklaszilárdan játszik le hibás MPEG file-okat (hasznos néhány VCD-nél), és lejátszik minden olyan hibás AVI-t, amit a csodás windows media player nem. Még az index chunk nélküli AVI-k is lejátszhatók, sőt az indexet ideiglenesen fel is lehet építeni az -idx opcióval (vagy véglegesen a MEncoder-rel), így tekerni is lehet bennük! Amint az látszik, a stabilitás és a minőség a legfontosabbak, és a sebesség is számít.
Egy éve kezdődött... Nagyon sok lejátszót kipróbáltam Linux alatt (mtv,xmps,dvdview,livid/oms, VideoLAN,xine,xanim,avifile,xmmp), de mindnek ugyanazok a problémái. Többnyire a különleges file-okkal, vagy a hang/kép szinkronnal. Legtöbbjük képtelen mind MPEG1, MPEG2 ÉS AVI (DivX) lejátszásra. Sokuknak gondjuk van a képminőséggel, vagy a sebességgel is. Elhatároztam, hogy (át)írok egyet...
Ez a fejezet arra szolgál hogy segítsen véghezvinni az MPlayer fordítását és konfigurálását. Nem könnyű, de nem is szükségszerűen nehéz. Ha a leírtaktól eltérő viselkedést tapasztalsz, nézd át a dokumentációt és bizonyos hogy megtalálod a választ. A linkek azért vannak hogy alaposan elolvasd ahova mutatnak. Időigényes lesz, de megéri.
Újabb keletű rendszer ajánlott. Linuxon a 2.4.x-es számú kernelek ajánlottak.
SZÜKSÉGES CSOMAGOK
A következő (és leírt verziójú) csomagokra lesz szükséged ha nem akarsz
problémákba ütközni:
CODECEK
libvorbis
, akár
deb/rpm-ből, akár
forrásból.VIDEOKÁRTYÁK
Itt kétféle videokártyát különböztetünk meg. Az egyik fajta (az újabbak) rendelkezik hardveres YUV gyorsítással és nagyítással, a másik pedig nem.
YUV kártyák
Kevés CPU idő felhasználásával tudják megjeleníteni vagy nagyítani a képet. Itt a nagyítás ugyanannyi CPU időt használ mint a síma megjelenítés, tekintve hogy a videokártya végzi. Így a teljes képernyős lejátszás szép és gyors lesz.
YUV gyorsítással nem rendelkező kártyák
Ezeknél vagy szoftveresen kell
nagyítani a képet (ez nagyon lassú), vagy le kell váltani egy kisebb
videomódba hogy pont akkora legyen a kép (pl 352x288). Ha nincs YUV
gyorsításod, az utóbbi módszer a célravezetőbb. Az MPlayerben
ez a -vm
opcióval kapcsolható be. A következő
meghajtókat érdemes kipróbálni :
HANGKÁRTYÁK
EGYÉB FUNKCIÓK
usleep()
-et használ az A/V szinkron javításához, +/- 10ms
pontossággal. Néha ez nem elég pontos. Az új kód a PC-k RTC-jét (Real Time
Clock) használja erre a célra, mivel ezzel sokkal pontosabb, +/- 1ms-os
időzítést lehet elérni. Ez root jogokat követel, vagy egy setuid root
MPlayer binárist (nos, vagy egy kis kernel átirást, ezt azért inkább
ne..). Az új időzítő kód hatékonysága szépen látszik a státuszsorban.
A harmadik módszer haszálatához a -softsleep
opciót kell megadni.
Ez van olyan hatékony mint az RTC, de nem használja az RTC-t.
Viszont sajnos több CPU-t igényel.
Megj.: SOHA ne installálj setuid MPlayer binárist többfelhasználós
gépre! Ez a legegyszerűbb módja hogy mindenki root jogot szerezzen.Ezután fordítsd le az MPlayer-t:
./configure make make install
Innentől használatra kész állapotban van az MPlayer. Az
$PREFIX/share/mplayer
könyvtár tartalmazza a
codecs.conf
file-t, ami megmondja a programnak a használható
codec-eket és azok tulajdonságait. Ezt a file-t mindig az MPlayer-rel
együtt kell frissíteni ! Ha a home könyvtáradban van egy régi codecs.conf
file, azt töröld !
Debian felhasználók egyszerűen készíthetnek .deb csomagot maguknak,
csak a fakeroot debian/rules binary
parancsot kell beírniuk az
MPlayer forrás gyökérkönyvtárában. Részletes információ itt.
Ajánlott átnézni a ./configure kimenetét valamint a
configure.log
file-t, fontos információkat tartalmaznak arra
vonatkozóan hogy mi lesz belefordítva és mi nem. Megnézheted továbbá a
config.h és config.mak file-okat. Ha valamilyen könyvtáradat nem találja
meg az MPlayer ellenőrizd hogy az illető csomag -dev csomagja is
fent van-e, és a verziójuk egyezik-e.
Bár nem kötelező, jobb ha felteszed a fontokat is, mert így kapsz OSD-t, és feliratok megjelenítésének képességét. Töltsd le az mp-arial-iso-8859-2.zip-et (és/vagy opcionálisan nyelvi kiegészítőket). Részletekért olvasd el az 1.5-ös fejezetet.
mkdir ~/.mplayer/font cd ~/.mplayer/font unzip mp-arial-iso-8859-2.zip ln -s ~/.mplayer/font/arial-24 font
Már csak egy dolog maradt hátra: másold át a codecs.conf file-t
az etc
könyvtárból (az MPlayer könyvtáron belül) a $HOME/.mplayer/codecs.conf-ba.
Ajánlatos továbbá az example.conf
és a manpage átnézése, hogy
képet kapj az opciókról.
A grafikus felület GTK-t használ (de alapban nem épül rá), így a gtk-t (és a
hozzávaló fejlesztői csomagokat) fel kell installálni. A lefordításhoz meg kell
adni a --enable-gui
opciót a ./configure-nak. Ezután, a GUI mód
bekapcsolásához :
-gui
opciótgui=yes
sort a konfigurációs file-baln -s $PREFIX/bin/mplayer $PREFIX/bin/gmplayer
,
és a gmplayer
file-t indítsd.
TIPP: az egér középső gombjának megnyomása (2 gombos egereken a bal és jobb gombok együttes megnyomása) egy GTK-s menűt hoz elő, amiben megtalálható a DVD lejátszás is.
Mivel az MPlayer alapban nem tartalmaz skineket, ezeket külön kell
letöltened. Lásd itt.
Ezeket a szokásos $PREFIX/share/mplayer/Skin
vagy $HOME/.mplayer/Skin
könyvtárak egyikébe kell kicsomagolni. Az MPlayer egy 'default'
nevű könyvtárat keres alapállapotban, de a -skin newskin opcióval, vagy
a konfigurációs file-ba a skin=newskin sor beírásával meg lehet adni
ehelyett másik alapban betöltendő skin-t. Ilyenkor a */Skin/newskin
könyvtárban lévő skin kerül betöltésre.
Az MPlayer képes lejátszás közben feliratozás megjelenítésére. Jelenleg a következő felirattipusok támogatottak:
A következő formátumokra más opciók érvényesek mint egyébként:
VobSub feliratok
Ezek a feliratok több fileból állnak: mindig van egy nagy méretű .SUB file,
továbbá opcionálisan egy .IDX és/vagy .IFO file.
Használatuk : például sample.sub
,
sample.ifo
, sample.idx
file-ok esetén a
-vobsub sample -vobsubid <id>
opciókat kell megadni
(opcionálisan természetesen az útvonalat is). A -vobsubid
opció a
DVD-knél használható -sid
opció VobSub-os megfelelője, azaz a
rendelkezésre álló nyelvek közül lehet vele választani.
Egyéb feliratok
Egy-egy szöveges fileból állnak, melyek időzítési, szöveghelyezési és
szöveges információt tartalmaznak.
Használatuk: ha van pl. egy példa.txt
nevű feliratod, add meg
a -sub példa.txt
opciót.
Feliratok időzítésének és elhelyezésének megváltoztatása
-subdelay <mp>
: feliratok időzítésének befolyásolása
<sec> másodperccel. Lehet negatív szám is.
-subfps <ráta>
: feliratok képkocka/másodperc értékének
megadása (törtszám)
-subpos <0 - 100>
: feliratok pozicionálása.
Ha MicroDVD formátumú felirat file használata esetén növekszik a szinkron
eltérése, akkor a felirat és a film FPS értéke különbözik. Mivel ezen
formátum abszolut képkockában adja meg az időzítést, a -subfps
opció hatástalan. Az MPlayer FTP site contrib/
könyvtárában
van egy egyszerű perl script az FPS konverzió elvégzéséhez.
A DVD feliratok használatához olvasd el a DVD fejezetet.
Az MPlayer tartalmaz egy új, MPsub nevű feliratformátumot. A tervezés az én (Gabucino) kezem munkáját dicséri. A legfőbb újítása hogy dinamikusan idő alapú (bár van képkocka alapú módja is). Példa (a DOCS/tech/mpsub.sub file-ból) :
# első szám : ennyi másodpercnyi szünet miután az előző felirat eltünt
# második szám : a jelenlegi feliratot ennyi ideig jeleníti meg
15 3
A long, long time ago...
0 3
in a galaxy far away...
0 3
Naboo was under an attack.
Tehát a fő cél a felirat szerkesztés/időzítés/összeillesztés/szétvágás
megkönnyítése. Valamint, ha - tegyük fel - szerzel egy SSA feliratot,
de a te filmedhez képest rosszul van időzítve, egyszerűen végrehajtasz egy
mplayer semmi.avi -sub forras.ssa -dumpmpsub parancsot. Ekkor egy
dump.mpsub
file jön létre a jelenlegi könyvtárban, a
forrás feliratfile szövegével, de MPsub formátumban. Ezekután
szabadon, röviden, gyorsan időzítheted.
A feliratok egy 'OSD', On Screen Display nevu módszerrel vannak megjelenítve. Ez az OSD használatos az idő, hangerő, stb megjelenítésére is.
OSD és feliratok installálása
Előszöris, egy MPlayer betűtipus csomag kell. Sok módszer van a megszerzésére:
Ezután, tömörítsd ki a letöltött file-t a ~/.mplayer
vagy a
$PREFIX/share/mplayer
könyvtárba. Ezután hozz létre egy symlink-et
a kívánt betűméretre, pl így : ln -s ~/.mplayer/arial-24
~/.mplayer/font
. Ha most elindítod a lejátszást, egy órát láthatsz a
film bal felső sarkában (kikapcsolás az 'o' billentyűvel).
Az OSD-nek 3 állása van: ('o' billentyűvel lehet váltani)
Az alapértelmezést megváltoztathatod az osdlevel=
változóval a
konfigurációs file-ban.
2.3. Video és audio kimeneti eszközök
2.5.1. Áttekintés
Ez a fejezet elmagyarázza hogy tudsz nézni/grabbelni egy V4L kompatibilis TV tuner-ről.
EZ A KÓDRÉSZLET JELENLEG NINCS FEJLESZTÉS ALATT! Ne várd hogy hosszadalmas kísérletezés nélkül majd hirtelen menni fog!
2.5.2. Fordítás
configure
autodetektálja hogy megvannak-e a szükséges bttv kernel headerek, valamint
a /dev/video* bejegyzések. Ha igen, kijelöli a TV bemenetet lefordításra
(lásd a kimenetét!).
Tipp : rosszak a színek? Ezekszerint a tunered nem tudja a képet
YV12 colorspace-ben grabbelni. Próbáld az I420-as colorspace-t (ennél meg kell adni a -vc rawi420
opciót is), vagy az
YUY2, UYVY, RGB32 colorspace-eket (ezutóbbit -vo sdl
-el). Ezeket a
outfmt=YV12
opcióval lehet megadni, lásd lent.
2.5.3. Rendelkezésre álló opciók
on | TV bemenet használata | ||
noaudio | kösz, hang nélkül is megvagyok | ||
driver |
dummy - NULL TV bemenet :) Csak tesztelésre, hamis TV bemenetet
generál. v4l - tényleges képgrabbelés V4L interface-ről (alapértelmezett : /dev/video0 ) |
||
device |
más eszköz megadása a /dev/video0 helyett |
||
input |
itt megadható hogy a tuner mely bemenetéről akarsz grabbelni (pl.: television,
s-video, composite, ...) Indításnál kiírja a lehetőségeket. |
||
freq | megadhatod hogy mely frekvenciára állítsa a tunert (pl. 511.250 ez a Magyar Királyi TV lesz:) | ||
outfmt |
az itt megadott formátumban fogja a tuner az MPlayer-nek szállítani a képet
(rgb32, rgb24, yv12, uyvy, i420
(ezutóbbinál meg kell adni a -vc rawi420 opciót is, fourcc
conflict miatt)) |
||
width | a megjelenítési ablak szélessége, pixelben | ||
height | a megjelenítési ablak magassága, pixelben | ||
norm | PAL, SECAM, NTSC | ||
channel | a tuner megadott csatornára állítása | ||
chanlist |
us-bcast, us-cable, europe-west, europe-east, etc |
2.5.4. Irányítás a billentyűzetről
h or l | előző/következő csatorna | ||
n | normaváltás | ||
b | csatornalista váltása | ||
2.5.5. Példák
Teszt kimenet, AAlib-re :)
mplayer -tv on:driver=dummy:width=640:height=480 -vo aa
Szabványos V4L-ről bemenet
mplayer -tv on:driver=v4l:width=640:height=480:outfmt=i420 -vc rawi420 -vo xv
2.6. Video filterek
2.6.1. Áttekintés
Mind az MPlayer, mind a MEncoder támogatja a nemrég elkészült univerzális video filter réteg használatát, ami számos pluginból áll - lásd lent. Ezek a pluginek sokféle műveletet tudnak a képpel elvégezni, mint például a szoftveres nagyítás, a fekete sávok levágása vagy éppen hozzátétele (a levágás nemcsak enkódolásnál, hanem a buszra nehezedő átvitelmennyiség csökkentésénél is fontos lehet).
Ezzel a filter réteggel lehetővé vált a gyors képformátum konverzió az
RGB és a YUV módok között. Például RGB kimenetű codec-ek mostmár
használhatóak az xv
és az xmga
kimeneteken is
(lásd a Scale filtert).
A layer Direct Rendert használ a pluginek között, ezzel is növelve a sebességet.
Megjegyzendő hogy mostantól a postprocess kód is a filter réteg egyik pluginje. Lásd alant.
2.6.2. Használat
mplayer/mencoder -vop filter1,filter2,filter3,...
Ez felállítja a használni kívánt filterek sorrendjét (természetesen bármilyen számú filter használható). A paramétereik opcionálisak, és ha nincsenek megadva, alapértelmezett értékre állnak. Például x és y a kép közepére, szélesség és magasság a film szélességére és magasságára.
A filterek megadott sorrendje a libvo után teendő, tehát a filter1 lesz az utolsó filter, utána már a libvo következik, illetve MEncoder esetén az enkódolás.
A rendelkezésre álló video filterek listája a
mplayer -vop help
paranccsal kérhető le.
2.6.3. Crop
Leírás:
A kép megadott részén kívüli részeket eldobja. Szélesvásznú filmek szélein lévő fekete sávok levágására használható.
Használat:
-vop crop[=szélesség:magasság:x:y]
2.6.4. Expand
Leírás:
Megnöveli (NEM nagyítja) a film felbontását a megadott értékre, és a nagyítatlan eredeti képet az x és y koordinátákra helyezi. Használható fekete sávok létrehozásához, melyek például SVCD-knél szükségesek, vagy MPlayer-rrel és az SDL video kimenettel, amely a fekete sávokon is képes feliratot megjeleníteni.
Használat:
-vop expand[=szélesség:magasság:x:y]
2.6.5. Fame/Lavc
Leírás:
Valósidejű MPEG1 enkóder (DVB és DXR3 kártyákhoz), libfame vagy libavcodec használatával.
Használat:
-vop fame
-vop lavc
2.6.6. Flip
Leírás:
Y tengely mentén megfordítja a képet. Hasznos az olyan régi codec-eknél melyek csak fejjel lefele képet tudnak kiadni (ezek autodetektálva vannak).
Használat:
-vop flip
2.6.7. Format
Leírás:
Ez a filter NEM képformátum koverter. Egyetlen feladata hogy kényszeríti a következő filtert (vagy a libvo-t) a megadott formátum használatára. Hasznos a lassú YV12-vel rendelkező kártyák használatakor, mint például a tdfx és a Savage4. Az igazi konverzióhoz a Scale filtert kell használni.
Használat:
-vop format[=formátum]
(ahol a
formátum
lehet például: rgb32, yuy2, stb...)
2.6.8. Postprocess
Leírás:
Ez a régi jó postprocess (minőségjavító), csak éppen át lett rakva a
filter layerhez. Javítja a kockásodást, deinterlace-el, stb, lásd az
-npp help
opciót.
Használat:
-vop pp[=postprocess opciók/kulcsszavak]
2.6.9. RGB2BGR
Leírás:
RGB 24/32 <-> BGR 24/32 képformátum konverziót végez (alapértelmezés), vagy RGB 24/32 <-> RGB 24/32 konverziót az R és B megcserélésével ('swap' opció)
Használat:
-vop rgb2bgr[=swap]
2.6.10. Rotate
Leírás:
Kép elforgatása (tükrözése). 'x' paraméter (lehetséges értékei: 0-3) a horizontális és vertikális tükrözést szabályozzák.
Használat:
-vop rotate[=x]
2.6.11. Scale
Leírás:
A kép nagyítását vagy kicsinyítését végzi (hasznos olyan kártyák
használatakor, melyek nem tudnak hardveresen kicsinyíteni), szoftveresen
(lassú). A minősége állítható az -sws
opcióval, lásd a
manpage-t. Természetesen a szebb minőség lassabb sebességet eredményez.
MEGJEGYZÉS: opciók nélkül (is) meghívva képformátum konvertálást eredményez! Ez olyan codeceknél nagy segítség, amelyek nem tudnak a kívánt video kimeneti eszköznek megfelelő formátumban dekódolni. Az ilyenek (remélhetőleg) autodetektálva vannak, és a scale filter a helyzetnek megfelelően konvertálást végez. Más esetekben meghívható manuálisan is.
Használat:
-vop scale[=szélesség:magasság]
2.6.12. YUY2
Leírás:
YV12/I420 --> YUY2 konverzió kényszerítése.
Használat:
-vop yuy2
2.6.13. Mirror
Leírás:
Kép tükrözése Y tengelyen.
Használat:
-vop mirror
2.6.14. DVBscale
Leírás:
Y tengely nagyítását számítja ki, DVB kártyákhoz.
Használat:
-vop dvbscale
2.6.15. Cropdetect
Leírás:
Kiszámítja a megfelelő vágáshoz szükséges paramétereket, és stdout-ra kiírja.
Használat:
-vop cropdetect
2.6.13. Mirror
Leírás:
Kép tükrözése Y tengelyen.
Használat:
-vop mirror
Az MPlayer képes "playtree" stílusban is kezelni az opcióit.
Ez abból áll hogy meg lehet adni opciókat amik globálisnak fognak
számítani (például mplayer -vfm 5
), valamint egyes filenevekre
vonatkoztatva olyan opciókat amelyek ezeket felülbírálják (az előbbi
példát folytatva : mplayer -vfm 5 movie1.avi movie2.avi -vfm 4
).
Lehet csoportokat is kialakítani a { és } karakterekkel. Ez a -loop opcióval
hasznos: >mplayer { 1.avi -loop 2 2.avi } -loop 3
ebben a
sorrendben fog lejátszani: 1 1 2 1 1 2 1 1 2
file | mplayer [opciók] [útvonal/]filenév1 [filenév1 opciói] filenév2 [filenév2 opciói] ... | ||
VCD | mplayer [opciók] -vcd trackszám [-cdrom-device /dev/cdrom] | ||
DVD | mplayer [opciók] -dvd titleno [-dvd device /dev/dvd] | ||
net | mplayer [opciók] http://site.com/file.[mpg|avi|asf] | ||
Az MPlayer új verzióinak URL stílusban is meg lehet adni a VCD
illetve DVD lemezeket, mint a Xine-nak : mplayer dvd://1
vagy
mplayer vcd://1
mplayer -vo x11 /mnt/Films/Contact/contact2.mpg mplayer -vcd 2 mplayer -afm 3 /mnt/DVDtrailers/alien4.vob mplayer -dvd 1 -dvd-device /dev/dvd mplayer -abs 65536 -delay -0.4 -nobps ~/movies/test.avi
3.2. Irányítás billentyűzetről
<- és -> | hátra/előre seek, 10 másodpercnyi | ||
fel vagy le | hátra/előre seek, 1 percnyi | ||
pgup/pgdown | hátra/előre seek, 10 percnyi | ||
p vagy SPACE | pillanatállj, bármely billentyűre tovább | ||
< or > | előző / következő file a lejátszási listában | ||
q vagy ESC | lejátszás leállítasa, kilépés | ||
+ vagy - | audio késleltetése +/- 0.1 másodperccel | ||
/ vagy * | hangerő csökkentése/növelése | ||
f | teljes képernyős mód ki/bekapcsolása | ||
o | OSD funkciók : nincs / seek / seek+idő | ||
z vagy x | feliratok késleltetése +/- 0.1 másodperccel | ||
(a következők csak a | |||
1 vagy 2 | kontraszt beállítása | ||
3 vagy 4 | fényerő beállítása | ||
5 vagy 6 | hue állítása | ||
7 vagy 8 | szaturáció állítása | ||
Grafikus felület billentyűi
, és . | előző / következő file | ||
numerikus - és + | hangerő csökkentése / növelése | ||
enter | lejátszás indítása | ||
space | pillanatállj | ||
s | stop | ||
a | about | ||
l | file betöltése | ||
b | skin böngésző | ||
e | equalizer ki/be | ||
p | lejátszási lista ki/be | ||
f | teljesképernyős mód ki/be | ||
m | hang ki/be | ||
TV interface irányítása
h or l | előző/következő csatorna | ||
n | normaváltás | ||
b | csatornalista váltása | ||
Linux Infrared Remote Control - használj egy otthon is könnyen elkészíthető infravörös távirányítót, hogy irányítsd vele a géped! Részletek a www.lirc.org címen.
Ha felinstalláltad a lirc csomagot, az MPlayer fordításnál automatikusan detektálni fogja.
Ha sikerült, az MPlayer ezt fogja kiírni induláskor: LIRC init was successful. Ha hibát talál, azt is kiírja. Ha semmi LIRC-szerűt nem mond, akkor nincs belefordítva.
A megadandó programnév - mily' csoda - mplayer. Bármilyen MPlayer parancsot hozzá lehet rendelni a gombokhoz, akár többet is. Utóbbi esetben \n karaktersorozattal kell a parancsokat egymástól elválasztani. Ne felejtsd bekapcsolni a repeat flag-et a RWND/FWD-hez a .lircrc-ben, ahol van értelme (pl. seek, volume, stb). És itt egy példa:
begin button = VOLUME_PLUS prog = mplayer config = volume 1 repeat = 1 end begin button = VOLUME_MINUS prog = mplayer config = volume -1 repeat = 1 end begin button = CD_PLAY prog = mplayer config = pause end begin button = CD_STOP prog = mplayer config = seek 0 1\npause end
Ha nem felel meg a lirc-config file eredeti helye (~/.lircrc), használd a -lircconf <filenév> kapcsolót.
3.4. Lejátszás hálózatról, vagy pipe-n keresztül
Az MPlayer a HTTP vagy MMS protokollal tud lejátszani hálózaton keresztül.
A lejátszás maga egyszerűen az URL megadásával történik. Az MPlayer automatikusan kezelni tudja továbbá a HTTP_PROXY környezeti változót. A proxy használatának kényszerítése :
mplayer http_proxy://proxy.micorsops.com:3128/http://micorsops.com:80/stream.asf
MPlayer tud a standard bemenetről (NEM named pipe-okról) beolvasni. Itt egy példa az FTP-n keresztüli lejátszásra ennek segítségével :
wget ftp://micorsops.com/something.avi -O - | mplayer -
Ajánlott a -cache
opció használata hálozatról történő
lejátszásnál :
wget ftp://micorsops.com/something.avi -O - | mplayer -cache 8192
-
6. Különböző operációs rendszerek
A csomag felépítéséhez töltsd le a cvs verziót vagy .tgz-t, tömörítsd ki, majd lépj bele :
cd main fakeroot debian/rules binary
(... mplayer detektálja a hardvert/szoftvert, lefordul, és..)
dpkg-deb: building package `mplayer' in `../mplayer_0.18-1_i386.deb'.
Most root-ként add ki a következő parancsot :
dpkg -i ../mplayer_0.18-1_i386.deb
Valahogy így kell kinéznie:
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) ...
A fordításhoz szükséged lesz GNU make-re (gmake, /usr/ports/devel/gmake), natív BSD make nem jó.
Az MPlayer futtatásához fordítsd újra a kernelt "options USER_LDT"-vel, kivéve ha -CURRENT-et használsz, ahol ez az alapállapot). Ha van SSE-t támogató CPU-d, használd az "options CPU_ENABLE_SSE"-t is. FreeBSD-STABLE kell, vagy kernel patch-ek.
Ha az MPlayer azt mondja hogy "CD-ROM Device '/dev/cdrom' not found!",
csinálj egy linket : ln -s /dev/(meghajtó) /dev/cdrom
Egyelőre nincs DVD támogatás FreeBSD-hez.
Az AVI file-ok lejátszása legjobban Solarix x86-on működik, mert itt megteheted hogy win32-es codec-eket használsz, az x86-os platform miatt. Solaris SPARC-on jónéhány AVI file lesz ami nem fog működni, mert csak win32-es codec van hozzá. DivX/OpenDivX filmek menni fognak, ha libavcodec-et használsz.
Az MPlayer kihasználja az UltraSPARC gépek VIS utasításkészletét (az MMX sparc-os megfelelője), bár jelenleg csak a libmpeg2-ben, libavcodec-ben, és a libvo-ban, mp3lib-ben nem. Egy 400Mhz-es CPU elég hogy megnézz egy VOB file-t. Szükséged lesz egy felinstallált mLib-re is.
A fordításhoz GNU make-re lesz szükséged (gmake, /opt/sfw/gmake), natív Solaris make nem jo. Egy tipikus hiba ha mégis azzal próbálkozol :
% /usr/ccs/bin/make make: Fatal error in reader: Makefile, line 25: Unexpected end of line seen
Solaris SPARC-on GNU C/C++ fordító is kell; az nem számít ha assemblerrel vagy nélküle van.
Solaris x86-on kell a GNU assembler is é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 Solaris standard assemblere
(/usr/ccs/bin/as
) nem támogat.
A configure script megpróbálja megkeresni hogy a "gcc" parancsod melyik assemblert indítja (ha nem sikerül neki, használd a "--as=/ahova/installáltad/gnu-as" parancsot).
GNU assembler nélküli GCC ilyet ír ki Solaris x86-on :
% configure ... Checking assembler (/usr/ccs/bin/as) ... , failed Please upgrade(downgrade) binutils to 2.10.1...
(Megoldás: "--with-as=gas"-al fordított GCC használata)
Tipikus hiba GNU as nem-használatára:
% 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 ...
DVD támogatáshoz patchelt libcss szükséges. Patch : http://www.tools.de/solaris/mplayer/
2 hiba miatt nem tudsz megbízhatóan DVD-t lejátszani Solaris 8 x86-on, ha annak kapacitása nagyobb mint 4 GB :
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.
Az MPlayer állítólag lefordul StrongARM-on. A következő opciókat használd :
./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
Azt mondják műxik. Használd az sgi ao meghajtót és jók leszünk. Közelebbi információ valakinél?
Működik. Töltsd le és installáld az SDL-t, és add meg az MPlayer-nek
a -vo sdl:photon
és -ao sdl:nto
opciókat.
A -vo x11
kimenet lassabb mintha Linuxon próbálnád, tekintve
hogy a QNX csak emulálja az X-et, és azt is lassan. Használd az
SDL-t.
A forditáshoz GNU make szükséges (gmake, /usr/ports/devel/gmake), a natív BSD make nem jó. Szükséges továbbá egy friss binutils (objcopy-val).
A gas különböző verzióinak hiányosságai miatt (relokáció vs mms),
két lépésben kell fordítani: először legyen a nem-natív verzió a PATH-ban
és add ki a gmake -k
parancsot, aztán a natív verzióval
gmake
.
Win32 DLL-ek használatához a kernelt option USER_LDT
-vel kell
fordítani.
Ha az MPlayer a /dev/cdrom
vagy /dev/dvd
hiányára panaszkodik, csinálj egy szimbolikus linket :
ln -s /dev/(cdrom egység) /dev/cdrom
B függelék - Levelezési listák
Jónéhány MPlayer lista van. A következő címeken lehet feliratkozni:
Ez az MPlayer fejlesztői lista! Témák: interface/API változások, új library-k, optimalizáció, ./configure, és IDE kell küldeni patch-eket. NE küldj ide bugreportot, kérdést, flamet! Ne növeljük a lista forgalmát.
Matrox-szal kapcsolatos kérdések helye,
A DVB nevű hardveres dekóderkártyával kapcsolatos kérdések helye (nem DXR3!).
CVS-beli változásokról kérdéseket ide küldj. (ha nem érted, mire kell egy változtatás, vagy jobb fixet tudsz, esetleg bugot találsz az illető commitban) Bizonyosodj meg róla, hogy a kívánt fejlesztő is olvassa a listát!
Megj.: a fenti listák nyelve ANGOL, kivéve ahol más van feltüntetve. Más nyelven ne írj!
Megj.: a kereshető archivum itt található.
C függelék - Hogyan jelents be hibát