2.3.2. Támogatott audio kimenetek:

2.3.2.1. Az MPlayer hang/kép szinkronizáló metódusa

Az MPlayer audio interfészének a neve libao2. Jelenleg a következő meghajtókat tartalmazza :

Általános:
  oss  OSS (ioctl) meghajtó
sdlSDL meghajtó (up/downsampling támogatás, ESD, ARTS, stb)
nasNAS (Network Audio System) meghajtó
alsa5natív ALSA 0.5 meghajtó
alsa9natív ALSA 0.9 meghajtó (működik, de vannak vele problémák -> használd az OSS meghajtót)
sunSUN audio meghajtó (/dev/audio) BSD-re és Solaris-ra
artsnatív ARTS meghajtó (KDE lusereknek)

A helyzet az, hogy a Linux hangkártyameghajtói nem túl jók. Az MPlayer a hangkártyameghajtók egyik olyan funkcióját használja a kép illetve a hang lejátszásának szinkronizálásához, melyet a meghajtókészítők előszeretettel felejtenek el helyesen implementálni, mivel ez szükségtelen MP3-ak, hangeffektek és egyebek lejátszásához.

Más médialejátszók (mint például az aviplay, a xine) általában működni szoktak (már ha éppen szoknak:) az ilyen meghajtókkal, tekintve hogy belső időzítéssel szinkronizálnak. Megjegyzendő hogy az idő az MPlayer módszerét hozta ki hatékonyabbnak.

Normálisan megírt hangkártyameghajtó használatával semmiféle hangból eredő szinkronizációs probléma nem adódhat, kivéve ha már maga a file is hibás.

Ha rossz audiomeghajtód van, az -autosync opció használata jó eséllyel segíteni fog. A pontos használatát és leírását lásd a man page-ben.

Néhány megjegyzés:

Solaris rendszeren természetesen a SUN audio meghajtót kell használni, az -ao sun opcióval, különben lőttek mind a video, mind az audio lejátszásnak.

2.3.2.1. Ajánlott beállítások különféle hangkártyákhoz

VIA alaplapi chipset (via82cxxx) 48Khz-ra limitált
Driver:innen
Aureal Vortex 2
    OSS:nincs
OSS/Pro:OK
ALSA:nincs
Max kHz:48
Driver:aureal.sourceforge.net
Driver2: innen
(bufferméret megnövelve 32k-ra)
GUS PnP
OSS:nincs
OSS/Pro:OK
ALSA:OK
Max kHz:48
SB Live!
OSS:Analóg OK, SP/DIF nem megy
ALSA:mindkettő OK
Max kHz:192
SB AWE 64
OSS:max 44kHz
ALSA:48kHz rosszul hangzik
Max kHz:48
Gravis UltraSound ACE
OSS:OKAz új audio kóddal is bugzik...
ALSA:OK
Max kHz:44
Gravis UltraSound MAX
OSS:OK
ALSA:OK (?)
Max kHz:48
ESS 688
OSS:OK
ALSA:OK (?)
Max kHz:48
C-Media kártyák (melyik típusok?)
OSS:nem OK (sistereg) (?)
ALSA:OK (?)
Max kHz:?
Yamaha kártyák (*ymf*)
OSS:nem OK (?) (talán -ao sdl ?)
ALSA:csak (?) ALSA 0.5-tel, OSS emulációval, ÉS -ao sdl-el jó (!) (?)
Max kHz:?
envy24 chip-es kártyák (mint pl Terratec EWS88MT)
OSS:?
OSS/Pro:OK
ALSA:?
Max kHz:?
PC Speaker vagy DAC
OSS:OK (használd az SDL meghajtót : -ao sdl)
ALSA:nincs
Max kHz:a meghajtó 44.1Khz-t emulál, vagy többet
Driver:ftp://ftp.infradead.org/pub/pcsp

2.3.2.2. Audio pluginek

Az MPlayer tartalmaz néhány audio plugint. Ezek a hang tulajdonságainak megváltoztatására használhatóak. A használatuk az -aop opcióval történik, amit a list=plugin1,plugin2,... opció követ. A list kapcsoló elhagyhatatlan, itt adható meg a használandó pluginek listája, valamint a sorrendjük. Például a következő parancs:

  mplayer media.avi -aop list=resample,format

először a resample pluginen, aztán a format pluginen keresztül vezeti a hangot.

A plugineknek is vannak opcióik, amelyek befolyásolják őket. Ezek részletesebben a következő fejezetekben vannak leírva. Ha egy pluginnak nem adsz meg beállításokat, az alapértelmezett beállításban fognak futni. Íme egy példa hogy hogyan használj több plugint, megadott opciókkal:

  mplayer media.avi -aop list=resample,format:fout=48000:format=0x8

Ez 44100Hz-es kimeneti frekvenciára mixel, és a kimeneti formátumot átállítja AFMT_U8-ra.

Currently audio plugins can not be used in MEncoder.

2.3.2.2.1. Up/Downsampling

Az MPlayer képes az audio stream frekvenciáját növelni illetve csökkenteni. Ennek szükségessége nincs autodetektálva, így külön meg kell adni például ha csak 44.1Khz-et tudó kártyád van, és 48Khz-es audiot akarsz lejátszani. Valamint: ez a funkció még nem működik a MEncoder-ben.

Használat :
  mplayer media.avi -aop list=resample:fout=<a kívánt frekvencia Hz-ben, pl 44100>

2.3.2.2.2. Térhatású hangok dekódolása

Az MPlayer-nek van egy audio pluginje ami a mátrix-kódolt hangok dekódolására szolgál (ilyen például a Dolby Surround).

Sok 2 csatornás file valójában mátrix-kódolt térhatású hangot tartalmaz.

Az ilyen dekódolás használatához egy legalább 4 csatornát támogató hangkártyára+meghajtóra van szükség.

Használat :
  mplayer media.avi -aop list=surround

2.3.2.2.3. Sample formátum konvertáló

Ha a hangkártyád nem támogatja a signed 16bit int formátumot, ezzel a pluginnel átalakíthatod a kimeneti hangot olyanba amit visz. Egy opciója van neki, a format, ami után megadandó a kívánt formátum száma (lásd libao2/afmt.h). Ez a plugin ritkán használandó..

Használat :
  mplayer media.avi -aop list=format:format=<kimeneti formátum>

2.3.2.2.4. Delay

Példa plugin, csak developereknek. Lásd angol dox.

2.3.2.2.5. Szoftveres hangerőszabályzás

Ez a plugin szoftveres hangerőállításra képes, ezáltal olyan gépeken is használható, ahol a hardveres mixer eszköz nem működik. Használható továbbá olyan esetekben, amikor a PCM hangerő megváltoztatása nélkül akarod a hangerőt megváltoztatni. Egyetlen opciója van, a volume ami 0 és 255 közötti értékeket vehet fel (az alapértelmezett érték a 101 - ez 0dB-nyi erősítést jelent). Óvatosan használd ezt a plugint. A legtöbb esetben sokkal célravezetőbb a hardveres mixeren a PCM csatorna maximálisra állítása, ezen plugin kihagyása, és a hangerő "mester" csatornával történő állítása. Ha külső erősítő is rá van kapcsolva a hangkártyádra, a zajszint minimálisra csökkentése érdekében érdemes a "mester" csatornával és az erősítő hangerőszabályzójával addig szórakozni amig a háttérben sziszegő zaj elenyészik.

Használata :
  mplayer media.avi -aop list=volume:volume=<0-255>

A pluginnek van úgynevezett "compressor" vagy "soft-clipping" képessége. Ez akkor használható, ha a hang dinamikus tartománya túl magas, vagy a hangszóróké túl alacsony. Az eljárás hátránya, hogy torzítást okoz, ezért csak akkor használandó ha nincs más lehetőség.

Használata :
  mplayer media.avi -aop list=volume:softclip

2.3.2.2.6. Extrastereo

Ez a plugin lineárisan növeli a bal és jobb hangcsatorna közti különbséget (mint az XMMS extrastereo plugin) ezáltal "életszerűbb" effektust kölcsönözve a hangnak.

Használat :
  mplayer media.avi -aop list=extrastereo
  mplayer media.avi -aop list=extrastereo:mul=3.45

A paraméter egy float szám (mul), aminek alapértéke 2.5. Ha 0.0-ra írod át, mono hangot kapsz.

2.3.2.2.7. Volume Normalizer

Ez a plugin beállítja a hangerőt arra a maximális erősségre, ahol még nem lép fel torzítás.

Használat :
  mplayer media.avi -aop list=volnorm