3.10. Csatorna többszörözés

3.10.1. Általános információk

Sajnos nincs szabvány a csatornák sorrendjére vonatkozóan. Az alábbi sorrend az AC-3-é, ami eléggé tipikus; próbáld meg ezt és meglátod, hogy a forrásod megfelel-e neki. A csatornák számozása 0-tól indul.

mono

  1. középső

sztereó

  1. bal

  2. jobb

kvadrafónikus

  1. bal első

  2. jobb első

  3. bal hátsó

  4. jobb hátsó

surround 4.0

  1. bal első

  2. jobb első

  3. közép hátsó

  4. közép első

surround 5.0

  1. bal első

  2. jobb első

  3. bal hátsó

  4. jobb hátsó

  5. közép első

surround 5.1

  1. bal első

  2. jobb első

  3. bal hátsó

  4. jobb hátsó

  5. közép első

  6. mélynyomó

A -channels kapcsolóval az audió dekódertől lekérdezhető a csatornák száma. Néhány audió codec a specifikált csatornák számát használja fel a downmixing szükségességének megállapítására. Figyelj rá, hogy ez nem mindig érinti a kimeneti csatornák számát. Például a -channels 4 használata egy sztereó MP3 fájl lejátszásánál továbbra is 2 csatornás kimenetet ad, mert az MP3 codec nem tud extra csatornákat készíteni.

A channels audió szűrő használható csatornák létrehozására vagy eltávolítására, a hangkártya felé kiküldött csatornák számának beállítására való. Lásd a következő fejezeteket a csatorna manipulációval kapcsolatos bővebb információkért.

3.10.2. Mono lejátszása két hangszóróval

A mono hangok sokkal jobbak, ha két hangszórón keresztül hallhatóak - különösen ha fülhallgatót használsz. Az audió fájlok, amik ténylegesen egy csatornásak, automatikusan két hangszórón keresztül kerülnek lejátszásra; sajnos, a legtöbb mono hangú fájl tulajdonképpen szereóként van elkódolva, amiben az egyik csatornát lenémították. A legkönnyebb és legbolondbiztosabb megoldás arra, hogy mindkét hangszórón ugyanaz a kimenet legyen, az extrastereo szűrő:

mplayer fájlnév -af extrastereo=0

Ez átlagolja mindkét csatornát, aminek eredményeként fele olyan hangosak lesznek, mint az eredeti. A következő fejezetekben találsz egyéb példákat is ennek megvalósítására a hangerő csökkentése nélkül, de azok komplexek és különböző kapcsolókat igényelnek attól függően, hogy melyik csatornát tartod meg. Ha tényleg szükséges a hangerő megtartása, könnyebb, ha a volume szűrővel kikísérletezed és megkeresed a helyes hangerőt. Például:

mplayer filename -af extrastereo=0,volume=5

3.10.3. Csatorna másolás/mozgatás

A channels szűrő bármelyik vagy az összes csatornát tudja mozgatni. A channels szűrő alopcióinak beállítása esetenként bonyolult és némi odafigyelést kíván.

  1. Döntsd el, hány kimeneti csatornára van szükséged. Ez az első alopció.

  2. Számold meg, hány csatornamozgatást fogsz véghezvinni. Ez a második alopció. Minden csatorna több különböző helyre mozgatható egy időben, de tartsd észben, hogy ha egy csatornát mozgatsz (még ha csak egy helyre is), a forrás csatorna üres lesz amíg másik csatornát nem mozgatsz a helyére. Csatorna másolásakor a forrás ugyan az marad, egyszerűen csak mozgasd a csatornát mind a cél mind a forrás helyre. Például:

    2-es csatorna --> 3-as csatorna
    2-es csatorna --> 2-es csatorna

  3. Írd le a csatorna másolásokat alopció párokként. Figyelj rá, hogy az első csatorna a 0, a második az 1, stb. Ezen alopciók sorrendje nem számít, amíg megfelelően vannak csoportosítva forrás:cél párokba.

Példa: egy csatorna két hangszóróra

Itt egy példa az egy csatorna több hangszóróra való kiküldésének egy másik módjára. Ebben a példában feltételezzük, hogy a bal csatornát kell lejátszani és a jobb csatornát eldobjuk. Követve a fenti leírást:

  1. Ahhoz, hogy egy-egy kimeneti csatorna legyen mindkét hangszóróhoz, az első alopciónak "2"-nek kell lennie.

  2. A bal csatornát kell mozgatni a jobb csatornára és saját magára is, hogy ne legyen üres. Ez összesen két mozgatás, ami miatt a második alopció is "2".

  3. A bal csatorna mozgatásához (0. csatorna) a jobb csatornára (1. csatorna) az alopció pár "0:1", "0:0" mozgatja a bal csatornát saját magára.

Mindezt összerakva kapjuk:

mplayer fájlnév -af channels=2:2:0:1:0:0

Ezen példa előnye az extrastereo-val szemben, hogy a hangerő mindegyik kimeneti csatornán a bemeneti csatornáéval megegyező lesz. A hátránya, hogy az alopciókat "2:2:1:0:1:1"-re kell változtatni, ha a kívánt audió a jobb csatornán van. Valamint nehezebb megjegyezni és begépelni.

Példa: bal csatorna két hangszóróra rövidítve

Van egy sokkal könnyebb mód a channels szűrő használatára, hogy a bal csatornát mindkét hangszórón megszólaltassuk:

mplayer fájlnév -af channels=1

A második csatorna figyelmen kívül marad és további alopciók nélkül az egyetlen megmaradó csatorna egyedül marad. A hangkártya vezérlők az egy csatornás audiót automatikusan lejátszák mindkét hangszórón. Ez csak akkor működik, ha a kívánt csatorna a bal.

Példa: az elülső csatornák duplázása hátra

Másik gyakori művelet az elülső csatornák duplázása és lejátszása hátul, a hátsó hangszórókon kvadrafónikus beállítással.

  1. Négy kimeneti csatorna kell. Az első alopció "4".

  2. A két elülső csatornát kell mozgatni a megfelelő hátsóra és saját magára. Ez négy mozgatás, a második alopció "4".

  3. A bal elsőt (0. csatorna) kell mozgatni a bal hátsóra (2. csatorna): "0:2". A bal elsőt saját magára is kell mozgatni: "0:0". A jobb elsőt (1. csatorna) a jobb hátsóra (3. csatorna): "1:3", és saját magára kell mozgatni: "1:1".

Az alopciók összeállításával kapjuk:

mplayer fájlnév -af channels=4:4:0:2:0:0:1:3:1:1

3.10.4. Csatorna keverés

A pan szűrő felhasználó által megadott arányban tudja keverni a csatornákat. Ezzel meg lehet csinálni mindent, amit a channels szűrővel, és még többet is. Sajnos az alopciók még komplikáltabbak.

  1. Döntsd el, hány csatornával akarsz dolgozni. Ezt a -channels és/vagy -af channels kapcsolókkal kell megadnod. A példák megmutatják, mikor melyiket kell használni.

  2. Döntsd el, hány csatornát adsz át a pan-nek (a további dekódolt csatornák figyelmen kívül maradnak). Ez az első alopció és szabályozza a kimeneti csatornák számát is.

  3. A fennmaradó alopciók megadják, hogy melyik csatornát milyen mértékben kell bekeverni mindegyik másik csatornába. Ez az igazán bonyolult dolog. Könnyítésként válaszd szét az alopciókat különböző részekre, egy rész minden egyes bemeneti csatornához. Minden egy részen belül található alopció egy kimeneti csatornának felel meg. A szám, amit megadsz, a bemeneti csatorna kimeneti csatornába történő bekeverésének százalékos aránya lesz.

    A pan 0 és 512 közötti értékeket fogad el, az eredeti hangerő 0% és 51200%-ának megfelelően. Légy óvatos, ha 1-nél nagyobb értékeket használsz. Nem csak nagy hangerőt adhat, de ha túlléped a hangkártyád mintavételezési rátáját, kellemetlen pukkanásokat és kattanásokat hallhatsz. Ha akarod, a pan-t követheti egy ,volume a vágás engedélyezéséhez, de jobb a pan értékeit olyan alacsonyan tartani, hogy ne kelljen vágni.

Példa: egy csatorna két hangszóróra

Itt van egy újabb példa a bal csatorna két hangszórón történő lejátszására. Kövesd a fent leírt lépéseket:

  1. A pannek két kimeneti csatornája lesz, így az első alopció "2".

  2. Mivel két bemeneti csatornánk van, két alopció rész lesz. Mivel két kimeneti csatornánk van, két alopció lesz részenként. A fájl bal csatornája teljes hangerővel mehet az új bal és jobb csatornára. Így az első alopció rész "1:1". A jobb csatornát figyelmen kívül kell hagyni, így a második "0:0". A sorvégi 0 értékek elhagyhatóak, de a könnyebb megértésért most megtartjuk őket.

Ezen opciók összeállítása adja:

mplayer fájlnév -af pan=2:1:1:0:0

Ha inkább a jobb csatorna kell a bal helyett, a pan alopciói "2:0:0:1:1" lesznek.

Példa: bal csatorna két hangszóróra rövidítve

Amint a channels-el, itt is lehet rövidíteni, ha a csak a bal csatornával dolgozol:

mplayer fájlnév -af pan=1:1

Mivel a pan-nek csak egy bemeneti csatornája van (a másik csatorna figyelmen kívül marad), csak egy része van az alopcióknak, ami megadja, hogy az egyetlen csatorna saját maga 100%-át kapja.

Példa: 6 csatornás PCM lekeverése

Az MPlayer 6 csatornás PCM dekódolója nem tud lekeverni. Itt egy módszer a PCM lekeverésre a pan használatával:

  1. A kimeneti csatornák száma 2, így az első alopció "2".

  2. Hat bemeneti csatornával hat alopció rész lesz. Szerencsére mivel csak az első két csatorna kimenetével foglalkozunk, csak két részt kell készítenünk; a maradék négy elhagyható. Vigyázz, nem mindig ugyan az a csatornák sorrendje a többcsatornás audió fájlokban! Ez a példa egy olyan fájl lekeverését szemlélteti, amiben ugyan olyan csatornák vannak, mint az AC-3 5.1 esetén:

    0 - bal első
    1 - jobb első
    2 - bal hátsó
    3 - jobb hátsó
    4 - középső első
    5 - mélynyomó

    Az alopciók első csoportja az eredeti hangerő százalékát adja, sorrendben, amit mindegyik kimeneti csatorna a bal első csatornától kap: "1:0". A jobb első csatornának a jobb kimenetre kell mennie: "0:1". Ugyan ez a hátsó csatornákra: "1:0" és "0:1". A középső csatorna mindkét kimeneti csatornára átmegy fél hangerővel: "0.5:0.5", a mélynyomó pedig mindkettőre teljes hangerővel: "1:1".

Mindezt összerakva:

mplayer 6-channel.wav -af pan=2:1:0:0:1:1:0:0:1:0.5:0.5:1:1

A fenti példa százalékok csak durva példák. Nyugodtan játszadozz velük!

Példa: 5.1-es audió lejátszása nagy hangszórókon, mélynyomó nélkül

Ha egy pár nagy hangszóród van elől, nem kell pénzt áldoznod mélynyomóra a teljes 5.1-es hangzáshoz. Ha a -channels 5 használatával kéred, hogy a liba52 az 5.1-es audiót 5.0-ban dekódolja, a mélynyomó csatornája egyszerűen elmarad. Ha a mélynyomó csatornáját saját magad szeretnéd szétosztani, kézzel kell lekeverned a pan-nal:

  1. Mivel a pan-nak mind a hat csatornával kell foglalkoznia, add meg a -channels 6 kapcsolót, hogy a liba52 dekódolja őket.

  2. A pan csak öt csatornára küld kimenetet, az első alopció 5.

  3. Hat bemeneti csatorna van és öt kimeneti csatorna, ez hat részt jelent öt alopcióval.

    • A bal első csatornát csak saját magára kell ismételni: "1:0:0:0:0"

    • Ugyan ez a jobb első csatornára: "0:1:0:0:0"

    • Ugyan ez a bal hátsó csatornára: "0:0:1:0:0"

    • És a jobb hátsó csatornára: "0:0:0:1:0"

    • Közép első szintén: "0:0:0:0:1"

    • És most kell eldöntenünk, hogy mit csináljunk a mélynyomóval, pl. felezve a jobb elsőre és a bal elsőre: "0.5:0.5:0:0:0"

Ezen opciók összevonásával születik meg az eredmény:

mplayer dvd://1 -channels 6 -af pan=5:1:0:0:0:0:0:1:0:0:0:0:0:1:0:0:0:0:0:1:0:0:0:0:0:1:0.5:0.5:0:0:0