aboutsummaryrefslogtreecommitdiff
path: root/documentation/content/hu/books/handbook/multimedia/_index.adoc
diff options
context:
space:
mode:
Diffstat (limited to 'documentation/content/hu/books/handbook/multimedia/_index.adoc')
-rw-r--r--documentation/content/hu/books/handbook/multimedia/_index.adoc1093
1 files changed, 1093 insertions, 0 deletions
diff --git a/documentation/content/hu/books/handbook/multimedia/_index.adoc b/documentation/content/hu/books/handbook/multimedia/_index.adoc
new file mode 100644
index 0000000000..dadf4a8ce0
--- /dev/null
+++ b/documentation/content/hu/books/handbook/multimedia/_index.adoc
@@ -0,0 +1,1093 @@
+---
+title: 7. Fejezet - Multimédia
+part: II. Rész Gyakori feladatok
+prev: books/handbook/desktop
+next: books/handbook/kernelconfig
+---
+
+[[multimedia]]
+= Multimédia
+:doctype: book
+:toc: macro
+:toclevels: 1
+:icons: font
+:sectnums:
+:sectnumlevels: 6
+:source-highlighter: rouge
+:experimental:
+:skip-front-matter:
+:toc-title: Tartalom
+:table-caption: Táblázat
+:figure-caption: Ábra
+:example-caption: Példa
+:xrefstyle: basic
+:relfileprefix: ../
+:outfilesuffix:
+:sectnumoffset: 7
+
+ifeval::["{backend}" == "html5"]
+:imagesdir: ../../../images/books/handbook/multimedia/
+endif::[]
+
+ifeval::["{backend}" == "pdf"]
+:imagesdir: ../../../../static/images/books/handbook/multimedia/
+endif::[]
+
+ifeval::["{backend}" == "epub3"]
+:imagesdir: ../../../../static/images/books/handbook/multimedia/
+endif::[]
+
+include::shared/authors.adoc[]
+include::shared/releases.adoc[]
+include::shared/hu/mailing-lists.adoc[]
+include::shared/hu/teams.adoc[]
+include::shared/hu/urls.adoc[]
+
+toc::[]
+
+[[multimedia-synopsis]]
+== Áttekintés
+
+A FreeBSD a hangkártyák széles választékát ismeri, ami által képesek vagyunk számítógépünkkel hi-fi minõségû hangzást létrehozni. Ennek részeként rögzíteni és visszajátszani tudunk többek közt MPEG Audio Layer 3 (MP3), WAV és Ogg Vorbis formátumokban. A FreeBSD Portgyûjteménye ezenkívül tartalmaz még olyan alkalmazásokat is, amelyekkel szerkeszteni lehet a felvett hangokat, effekteket hozzátenni és vezérelni a hangkártyánkhoz csatlakoztatott MIDI eszközöket.
+
+Némi kísérletezéssel a FreeBSD még videoállományok és DVD-k lejátszására is rávehetõ. A különféle videoanyagok kódolására, konvertálására és visszajátszására alkalmas programok száma azonban jóval kisebb, mint a hanganyagok esetén. Például az írás pillanatában nincs a FreeBSD Portgyûjteményében a formátumok közti konvertálásra alkalmas, a videókat olyan jól újrakódolni tudó alkalmazás, amilyen az audio esetén az package:audio/sox[]. Azonban ezen a területen a szoftverek palettája gyorsan változik.
+
+Ebben a fejezetben bemutatjuk a hangkártyánk beállításához szükséges lépéseket. Az X11 telepítése és beállítása (crossref:x11[x11,Az X Window System]) során ugyan már foglalkoztunk a videokártyánkkal kapcsolatos hardveres problémákkal, azonban a jobb visszajátszás érdekében további cselfogásokat is be kell majd vetnünk.
+
+A fejezet elolvasása során megismerjük:
+
+* hogyan állítsuk be úgy a rendszerünket, hogy felismerje a hangkártyánkat;
+* hogyan bizonyosodjuk meg róla, hogy a kártyánk valóban mûködik;
+* hogyan oldjuk meg a hangkártya beállítása során felmerülõ problémákat;
+* hogyan játsszunk le és kódoljunk MP3-at vagy más egyéb hangformátumot;
+* hogyan támogatja a videokat az X szerver;
+* hogyan adnak az egyes lejátszók és kódolók még jobb eredményt
+* hogyan játsszunk le DVD-ket, [.filename]#.mpg# és [.filename]#.avi# állományokat;
+* hogyan mentsük a CD-k és DVD-k tartalmát állományokba;
+* hogyan állítsuk be a TV kártyánkat
+* hogyan állítsunk be egy scannert.
+
+A fejezet elolvasásához ajánlott:
+
+* egy új rendszermag beállításának és telepítésének ismerete (crossref:kernelconfig[kernelconfig,A FreeBSD rendszermag testreszabása]).
+
+[WARNING]
+====
+
+Ha zenei CD-ket próbálunk meg a man:mount[8] paranccsal csatlakoztatni, akkor az hibával, vagy a legrosszabb esetben akár _teljes rendszerösszeomlással_ is járhat. Az ilyen típusú lemezek az ISO szabványú állományrendszerekétõl eltérõ kódolással rendelkeznek.
+====
+
+[[sound-setup]]
+== A hangkártya beállítása
+
+[[sound-device]]
+=== A rendszer beállítása
+
+A mûvelet megkezdése elõtt ki kell derítenünk, milyen típusú hangkártyánk van, milyen chip van rajta, PCI vagy ISA buszon csatlakozik-e. A FreeBSD rengeteg PCI és ISA buszos kártyát ismer egyaránt. A sajátunk beazonosításához a támogatott hangeszközök listáját a link:{u-rel120-hardware}[Hardware Notes] (Hardverjegyzék) oldalán találhatjuk meg. Ebbõl a jegyzékbõl mellesleg azt is megtudhatjuk, hogy melyik meghajtó kezeli a kártyánkat.
+
+A hangeszközünk használatához be kell töltenünk a neki megfelelõ meghajtót. Ez két módon is megtehetõ. Ezek közül az a legkönnyebb, ha a man:kldload[8] paranccsal egyszerûen betöltjük a rendszermag hangkártyánkhoz tartozó modulját. Ezt megtehetjük közvetlenül parancssorból:
+
+[source,bash]
+....
+# kldload snd_emu10k1
+....
+
+vagy a [.filename]#/boot/loader.conf# állományból az alábbihoz hasonló sor hozzáadásával:
+
+[.programlisting]
+....
+snd_emu10k1_load="YES"
+....
+
+A fenti példák a Creative SoundBlaster(R) Live! hangkártyára vonatkoznak. A többi betölthetõ hangkártya-modul felsorolása a [.filename]#/boot/defaults/loader.conf# állományban található. Ha nem vagyunk benne biztosak, hogy melyik meghajtót is akarjuk pontosan használni, akkor próbálkozzunk az [.filename]#snd_driver# modul betöltésével:
+
+[source,bash]
+....
+# kldload snd_driver
+....
+
+Ez egy olyan metameghajtó, ami egyszerre betölti az összes érintett eszközmeghajtót, és segítségével felgyorsíthatjuk a megfelelõ meghajtó megtalálását. A [.filename]#/boot/loader.conf# használatával is be tudjuk ugyanígy tölteni az összes meghajtót.
+
+Az [.filename]#snd_driver# metameghajtó betöltése után úgy kereshetjük meg a ténylegesen használatban levõ meghajtót, ha megnézzük a [.filename]#/dev/sndstat# állományt a `cat /dev/sndstat` paranccsal.
+
+A második módszer szerint a hangkártyánk támogatását statikusan beépítjük a rendszermagba. A lentebb található szakaszban olvashatjuk mindazok az információkat, amelyekre szükségünk lehet ennek elvégzése közben. A rendszermag újrafordításával kapcsolatban forduljunk a crossref:kernelconfig[kernelconfig,A FreeBSD rendszermag testreszabása]hez.
+
+==== A hangkártya támogatásával rendelkezõ saját rendszermag összeállítása
+
+Elsõként hozzá kell adnunk a rendszermaghoz a hangeszközök alapmeghajtóját, a man:sound[4] eszközt. Ezt a rendszermag beállításait tartalmazó állományban az alábbi sor felvételével tehetjük meg:
+
+[.programlisting]
+....
+device sound
+....
+
+Ezután tegyük még hozzá a hangkártyánkhoz kapcsolódó támogatást is. Ehhez viszont pontosan tudunk kell, melyik meghajtó képes mûködtetni a kártyát. A hangkártyához tartozó meghajtót a link:{u-rel120-hardware}[Hardware Notes] (Hardverjegyzék)-ben található eszközök listájából deríthetjük ki. Például a Creative SoundBlaster(R) Live! hangkártyát a man:snd_emu10k1[4] meghajtó kezeli. Ennek a hangkártyának a támogatását az alábbi sorral állíthatjuk be:
+
+[.programlisting]
+....
+device snd_emu10k1
+....
+
+Az itt használatos formátumot a meghajtó man oldalának átolvasásából tudhatjuk meg. Azonban az összes támogatott hangkártya meghajtó megadásának pontos formátuma megtalálható a [.filename]#/usr/src/sys/conf/NOTES# állományban is.
+
+A PnP (Plug n Play)-t nem ismerõ ISA kártyák esetén az összes többi nem PnP-s ISA kártyához hasonlóan szükséges lehet a rendszermag számára megadnunk a kártya hardveres beállításait (IRQ, I/O port stb). Ezt a [.filename]#/boot/device.hints# állományon keresztül tehetjük meg. A rendszerindítási folyamat során a man:loader[8] beolvassa ezt az állományt, majd átadja a benne szereplõ információkat a rendszermagnak. Például a Creative SoundBlaster(R) 16, nem PnP-s ISA kártya az `snd_sb16` meghajtóval együtt az man:snd_sbc[4] meghajtót használja. A kártya használatához a rendszermag beállításait tartalmazó állományba ezeket a sorokat kell megadni:
+
+[.programlisting]
+....
+device snd_sbc
+device snd_sb16
+....
+
+valamint a [.filename]#/boot/device.hints# állományba ezeket:
+
+[.programlisting]
+....
+hint.sbc.0.at="isa"
+hint.sbc.0.port="0x220"
+hint.sbc.0.irq="5"
+hint.sbc.0.drq="1"
+hint.sbc.0.flags="0x15"
+....
+
+Ekkor a kártya a `0x220` I/O portot és `5` IRQ-t használja.
+
+A [.filename]#/boot/device.hints# állományban alkalmazott felírási módról bõvebben a man:sound[4], valamint a kérdéses meghajtó man oldalán tájékozódhatunk.
+
+A fentiekben bemutatott beállítások alapértelmezettek, néhány esetben azonban a kártyánknak megfelelõen meg kell változtatnunk az IRQ és egyéb értékeket. Errõl a kártyáról konkrétan a man:snd_sbc[4] man oldalon olvashatunk részletesebben.
+
+[[sound-testing]]
+=== A hangkártya kipróbálása
+
+Miután újraindítottuk a számítógépünket a módosított rendszermaggal, vagy miután betöltöttük a szükséges modult, a hangkártyának valahogy így kell megjelennie a rendszerünk üzenetpufferében (man:dmesg[8]):
+
+[source,bash]
+....
+pcm0: <Intel ICH3 (82801CA)> port 0xdc80-0xdcbf,0xd800-0xd8ff irq 5 at device 31.5 on pci0
+pcm0: [GIANT-LOCKED]
+pcm0: <Cirrus Logic CS4205 AC97 Codec>
+....
+
+A hangkártyánk állapota a [.filename]#/dev/sndstat# állományon keresztül ellenõrizhetõ:
+
+[source,bash]
+....
+# cat /dev/sndstat
+FreeBSD Audio Driver (newpcm)
+Installed devices:
+pcm0: <Intel ICH3 (82801CA)> at io 0xd800, 0xdc80 irq 5 bufsz 16384
+kld snd_ich (1p/2r/0v channels duplex default)
+....
+
+Ez a kiírás rendszerenként eltérhet. Ha nem látunk semmilyen [.filename]#pcm0# eszközt, akkor menjünk vissza és nézzük át újra, pontosan mit is csináltunk. Vizsgáljuk át a rendszermagunk beállításait tartalmazó állományt és gyõzõdjünk meg róla, hogy a megfelelõ meghajtót adtuk meg. Az itt felmerülõ gyakori gondokkal a <<troubleshooting>> foglalkozik.
+
+Ha azonban minden remekül haladt, akkor most már van egy mûködõ hangkártyánk. Ha rendesen összekapcsoltuk hangkártyánkat a CD- vagy DVD-meghajtónk audio csatlakozásával, akkor tegyünk egy CD-t a meghajtóba és kezdjük el játszani a man:cdcontrol[1] paranccsal:
+
+[source,bash]
+....
+% cdcontrol -f /dev/acd0 play 1
+....
+
+Az olyan alkalmazások, mint például az package:audio/workman[], ehhez egy sokkal barátságosabb felületet nyújtanak. Az MP3 formátumú állományok meghallgatásához pedig minden bizonnyal jól fog jönni egy olyan alkalmazás is, mint például az package:audio/mpg123[].
+
+A kártyát úgy is tesztelhetjük, ha az alábbihoz hasonló módon adatokat küldünk a [.filename]#/dev/dsp# állományba:
+
+[source,bash]
+....
+% cat állománynév > /dev/dsp
+....
+
+ahol az _állománynév_ tetszõleges állomány neve lehet. A parancs hatására valamilyen zajt kell hallanunk, és ez egyben meg is erõsíti, hogy a hangkártyánk mûködik.
+
+A hangkártyánk csatornáinak jellemzõit a man:mixer[8] paranccsal állíthatjuk. Errõl további részleteket a man:mixer[8] man oldalon olvashatunk.
+
+[[troubleshooting]]
+==== Gyakori problémák
+
+[.informaltable]
+[cols="1,1", frame="none", options="header"]
+|===
+| Hiba
+| Megoldás
+
+|`sb_dspwr(XX) timed out`
+|Nem állítottuk be jól az I/O portot.
+
+|`bad irq XX`
+|Nem állítottuk be jól az IRQ értékét. Gondoskodjunk róla, hogy a beállított érték megegyezik a hangkártyánkéval.
+
+|`xxx: gus pcm not attached, out of memory`
+|Nincs elég memória az eszköz használatához.
+
+|`xxx: can't open /dev/dsp!`
+|A `fstat \| grep dsp` parancs kiadásával ellenõrizzük, hogy valamelyik alkalmazás használja-e már az eszközt. Gyakori bajkeverõ az esound és a KDE hangtámogatása.
+|===
+
+[[sound-multiple-sources]]
+=== Több hangforrás kihasználása
+
+Gyakran szükségünk lehet több hangforrás egyidejû használatára, fõleg olyankor, amikor az esound vagy az artsd bizonyos alkalmazásokkal nem hajlandó megosztani a hangeszközt.
+
+A FreeBSD ezt a _virtuális hangcsatornák_ használatával oldja meg, amit a man:sysctl[8] eszközön keresztül tudunk engedélyezni. Amikor a rendszermagban virtuális csatornák használatával keverünk, akkor lényegében képesek vagyunk a hangkártyánk által egyszerre játszható hangok számát megtöbbszörözni.
+
+A virtuális csatornák számának beállításához a sysctl három változóját kell módosítanunk, amelyet `root` felhasználóként így tehetünk meg:
+
+[source,bash]
+....
+# sysctl dev.pcm.0.play.vchans=4
+# sysctl dev.pcm.0.rec.vchans=4
+# sysctl hw.snd.maxautovchans=4
+....
+
+A fenti példa négy virtuális csatornát hoz létre, ami egészen jellemzõ a mindennapi használatban. A `dev.pcm.0.play.vchans` és `dev.pcm.0.rec.vchans` a [.filename]#pcm0# eszköz lejátszásra és felvételre használt virtuális csatornáinak számát adja meg, amelyet az eszköz csatlakoztatása után tudunk beállítani. A `hw.snd.maxautovchans` az új eszközhöz tartozó virtuális csatornákat adja meg, ami akkor állítódik be, amikor a man:kldload[8] paranccsal csatlakoztatjuk. Mivel a [.filename]#pcm# modul a többi eszközmeghajtótól függetlenül töltõdik be, ezért a `hw.snd.maxautovchans` azt tárolja, hogy a késõbb hozzá csatlakozó eszközök mennyi virtuális csatornát fognak majd kapni. Errõl részletesebben a man:pcm[4] man oldalon olvashatunk.
+
+[NOTE]
+====
+A használatban levõ eszközöknél nem tudjuk megváltoztatni a virtuális csatornák számát. Ehhez elõször le kell állítanunk az eszközt használó összes programot, tehát a zenelejátszókat és hangdémonokat.
+====
+
+Amennyiben nem használjuk ki a man:devfs[5] által nyújtott lehetõségeket, az összes alkalmazásnak a [.filename]#/dev/dsp0.x# eszközre kell mutatnia, ahol az _x_ értéke 0-tól 3-ig terjedhet attól függõen, hogy a `dev.pcm.0.rec.vchans` értékét a fenti példához hasonlóan 4-re állítottuk-e. A man:devfs[5] megoldását használó rendszerek esetén ez a folyamat automatikusan lezajlik, tehát az összes [.filename]#/dev/dsp# eszközre irányuló kérés magától átirányítódik.
+
+=== A keverõ alapértelmezett értékeinek beállítása
+
+A keverõben megjelenõ különbözõ csatornák alapértékei a man:pcm[4] meghajtó forráskódjában huzalozottan találhatóak meg. Számos alkalmazás és démon segít két hívás közt megõrizni a keverõben beállított értékeket, azonban ez nem teljesen tiszta megoldás. A meghajtó szintjén is be tudjuk állítani a keverõ alapértékeit - ezt a [.filename]#/boot/device.hints# állomány megfelelõ módosításával érhetjük el, például:
+
+[.programlisting]
+....
+hint.pcm.0.vol="50"
+....
+
+Ezzel a man:pcm[4] modul betöltése során a hangerõ (volume) csatorna alapértelmezett értéket 50-re állítjuk.
+
+[[sound-mp3]]
+== MP3
+
+Az MP3 (MPEG Layer 3 Audio) használatával közel CD minõségû hangot lehet elérni, ezért a mi FreeBSD munkaállomásunk sem maradhat ki elõnyeinek élvezetébõl.
+
+[[mp3-players]]
+=== MP3 lejátszók
+
+Az XMMS (X Multimedia System) kiemelkedõen a legnépszerûbb X11-es MP3 lejátszó. Mivel az XMMS grafikus felhasználói felülete szinte teljesen megegyezik a Nullsoft Winampjának felületével, ezért még a Winamp skinjeit is használhatjuk vele. Az XMMS-ben ezenkívül még a natív pluginek támogatását is megtalálhatjuk.
+
+Az XMMS a package:multimedia/xmms[] portból vagy csomagból telepíthetõ.
+
+Az XMMS használatára könnyû ráérezni: megtaláljuk benne a lejátszandó számok listáját, egy grafikus hangszínszabályzót és még sok minden mást. Akik már ismerik a Winamp mûködését, azok az XMMS-t is egyszerûnek érzik majd.
+
+Mellette az package:audio/mpg123[] port egy másik, parancssoros MP3 lejátszót kínál fel.
+
+Az mpg123 futtatásához paraméterként meg kell adnunk a hangeszközt és lejátszandó MP3 állományt. Ha a hangeszközünk a [.filename]#/dev/dsp1.0# és a _IzéMizé-Sláger.mp3_ nevû MP3 állományt akarjuk rajta lejátszatni, akkor a következõt kell begépelnünk:
+
+[source,bash]
+....
+# mpg123 -a /dev/dsp1.0 IzéMizé-Sláger.mp3
+High Performance MPEG 1.0/2.0/2.5 Audio Player for Layer 1, 2 and 3.
+Version 0.59r (1999/Jun/15). Written and copyrights by Michael Hipp.
+Uses code from various people. See 'README' for more!
+THIS SOFTWARE COMES WITH ABSOLUTELY NO WARRANTY! USE AT YOUR OWN RISK!
+
+Playing MPEG stream from IzéMizé-Sláger.mp3 ...
+MPEG 1.0 layer III, 128 kbit/s, 44100 Hz joint-stereo
+....
+
+[[rip-cd]]
+=== Sávok lementése CD-rõl
+
+Mielõtt MP3 formátumba tömörítenénk egy CD-t vagy annak egy sávját, a CD-n található audio adatot valahogy le kell tudnunk szedni a merevlemezre. Ezt úgy tehetjük meg, ha a nyers CDDA (CD Digital Audio) adatot WAV formátumú állományokba mentjük.
+
+A package:sysutils/cdrtools[] csomag részeként elérhetõ `cdda2wav` segédprogrammal tudjuk a CD-ken levõ audio és a hozzájuk tartozó egyéb információkat leszedni.
+
+A meghajtóban levõ CD teljes tartalmát (`root` felhasználóként) a következõ parancs kiadásával lehet (sávonként) különálló WAV állományokba menteni:
+
+[source,bash]
+....
+# cdda2wav -D 0,1,0 -B
+....
+
+A cdda2wav ismeri az ATAPI (IDE) CD-meghajtókat, használatukhoz a SCSI egység sorszáma helyett az eszköz nevét kell megadni. Tehát például így szedjük le egy IDE-meghajtóról a 7. sávot:
+
+[source,bash]
+....
+# cdda2wav -D /dev/acd0 -t 7
+....
+
+A `-D __0,1,0__` a [.filename]#0,1,0# sorszámú SCSI eszközre utal, ami megfelel `cdrecord -scanbus` parancs eredményének.
+
+Az egyes sávok lementéséhez a `-t` kapcsoló használható:
+
+[source,bash]
+....
+# cdda2wav -D 0,1,0 -t 7
+....
+
+A példa szerint a zenei CD-rõl a hetedik sávot szedjük le. Egyszerre több sávot, például az elsõtõl a hetedikig, egy tartomány megadásával menthetünk le:
+
+[source,bash]
+....
+# cdda2wav -D 0,1,0 -t 1+7
+....
+
+A man:dd[1] segédprogram is használható ATAPI eszközökön levõ hangsávok kimentéséhez. Ennek lehetõségérõl részletesebben a crossref:disks[duplicating-audiocds,Audio CD-k másolása]ban olvashatunk.
+
+[[mp3-encoding]]
+=== MP3 állományok tömörítése
+
+Az MP3 állomány tömörítésére manapság a legtöbben a lame elnevezésû kódolót választják. A portfában a lame az package:audio/lame[] helyen található meg.
+
+Az elõbb kimentett WAV állományok felhasználásával az alábbi paranccsal tudjuk átalakítani a [.filename]#audio01.wav# állományt [.filename]#audio01.mp3# állománnyá:
+
+[source,bash]
+....
+# lame -h -b 128 \
+--tt "Izé dal címe" \
+--ta "Izé-mizé előadó" \
+--tl "Izé-mizé album" \
+--ty "2001" \
+--tc "Leszedte és tömörítette: Izé" \
+--tg "Műfaj" \
+audio01.wav audio01.mp3
+....
+
+A 128 kbites tömörítés a gyakorlatban leginkább használt kódolási arány, sokan azonban a sokkal jobb minõségû 160 vagy 192 kbites tömörítést szeretik. Minél nagyobb a kódolási arány, annál több helyet fog foglalni a keletkezõ MP3 állomány - habár a minõsége is jobb lesz. A `-h` kapcsoló alkalmazásával tudjuk aktivizálni a "jobb minõségû de valamivel lassabb" módot. A `--t` kezdetû paraméterek ID3 tageket adnak meg, amelyek segítségével az MP3 állományokba rájuk vonatkozó információkat tudunk beágyazni. A tömörítés további beállításairól a lame man oldalán tájékozódhatunk.
+
+[[mp3-decoding]]
+=== MP3 állományok kitömörítése
+
+Ha MP3 formátumú állományokat szeretnénk audio CD-re írni, akkor ehhez elõször tömörítetlen WAV formátumba kell ezeket alakítanunk. Az XMMS és az mpg123 is egyaránt lehetõséged ad az MP3 állományok kitömörítésére.
+
+Lemezre írás az XMMS-sel:
+
+[.procedure]
+====
+. Indítsuk el az XMMS alkalmazást.
+. Az XMMS menüjének felhozásához kattinsunk jobb gombbal az ablakjára.
+. Válasszuk az `Options` almenüben található `Preference` menüpontot.
+. Változtassuk meg az "Output Plugin" beállítást a "Disk Writer Plugin" értékre.
+. Nyomjunk a `Configure` gombra.
+. Írjuk be (vagy válasszuk ki a `Browse` gombbal) a könyvtárat, ahová majd a kitömörített állományok kerülnek.
+. Az eddig megszokottak szerint töltsük be az XMMS-be az MP3 állományt, állítsuk 100%-ra a hangerõt és kapcsoljuk ki a hangszínszabályzót (EQ, equalizer).
+. Nyomjuk le a `Play` gombot - úgy fog tûnni, mintha az XMMS játszaná az MP3 állományt, de nem hallunk semmit. Ekkor a tartalmát állományba menti.
+. Mikor befejeztük a kitömörítést, ne felejtsük el visszaállítani az "Output Plugin" értékét az alapértelmezettre.
+====
+
+Írás a szabványos kimenetre az mpg123-mal:
+
+[.procedure]
+====
+. Futtassuk le a `mpg123 -s audio01.mp3 > audio01.pcm` parancsot.
+====
+
+Az XMMS az állományokat WAV formátumban írja, miközben az mpg123 nyers PCM hangadatokat képez belõlük. A cdrecord használata során mind a két formátumból hozhatóak létre audio CD-k. A nyers PCM a man:burncd[8] programmal használható. Amikor WAV állományokkal dolgozunk, minden egyes sáv elején egy apró kattanást hallhatunk: ez a WAV állomány fejléce lesz. A (package:audio/sox[] portból vagy csomagból telepíthetõ) SoX segédprogrammal a WAV formátumú állományok fejléce pillanatok alatt eltávolítható:
+
+[source,bash]
+....
+% sox -t wav -r 44100 -s -w -c 2 track.wav track.raw
+....
+
+A CD-írók FreeBSD alatti használatával kapcsolatban olvassuk el a crossref:disks[creating-cds,Lézeres tárolóeszközök (CD-k) létrehozása és használata]t.
+
+[[video-playback]]
+== Videók lejátszása
+
+A videolejátszás egy nagyon friss és gyorsan fejlõdõ alkalmazási terület. Legyünk türelmesek, ez nem minden fog annyira könnyen menni, mint a hangok esetében.
+
+A kezdéshez nem árt tudnunk, hogy a videokártyánk milyen gyártmányú és milyen chipet használ. Míg az Xorg és az XFree86(TM) számos különféle videokártyát ismer, csupán töredékükkel lehet jó lejátszási teljesítményt elõhozni. Az X11 futtatása közben az man:xdpyinfo[1] parancs kiadásával kérdezhetjük le az X szervertõl a kártyánk használatával elérhetõ kiterjesztéseket.
+
+Érdemes a kezünk ügyében tartani egy rövidke MPEG formátumú állományt, amellyel majd ki tudjuk próbálni a különféle lejátszókat és azok beállításait. Mivel egyes DVD lejátszók alapértelmezés szerint a [.filename]#/dev/dvd# helyen keresik a lejátszandó DVD eszközt, vagy egyszerûen csak így írták meg ezeket, mindenképpen hasznos lehet, ha szimbolikus linkeket hozunk létre a megfelelõ eszközökre:
+
+[source,bash]
+....
+# ln -sf /dev/acd0 /dev/dvd
+# ln -sf /dev/acd0 /dev/rdvd
+....
+
+A man:devfs[5] mûködése miatt azonban ezek a kézzel létrehozott linkek az újraindítás után már nem maradnak meg. A szimbolikus linkeket a rendszer minden egyes indulásakor úgy tudjuk automatikusan létrehozni, hogyha az [.filename]#/etc/devfs.conf# állományba felvesszük az alábbi sort:
+
+[.programlisting]
+....
+link acd0 dvd
+link acd0 rdvd
+....
+
+Emellett a DVD-k titkosításának feloldása, mely a DVD-meghajtók speciális funkcióit igényli, a DVD eszközökön írási jogot is igényel.
+
+Az X11 osztott memóriát kezelõ felületének gyorsításához javasolt néhány man:sysctl[8] változó értékének megnövelése is:
+
+[.programlisting]
+....
+kern.ipc.shmmax=67108864
+kern.ipc.shmall=32768
+....
+
+[[video-interface]]
+=== A megjelenítõ képességeinek megállapítása
+
+Több különbözõ úton lehet X11 alatt videókat nézni, de ennek tényleges módját igazából a rendelkezésre álló hardver határozza meg. Az itt leírt módszerek által kihozható minõség hardverenként eltérhet. Másodsorban a videók megjelenítése az X11-ben az utóbbi idõben igen nagy hangsúlyt kapott, ezért az Xorg és az XFree86(TM) minden egyes változatával jelentõsen javulhat a helyzet ezen a téren.
+
+A videók megjelenítésére használt gyakori felületek:
+
+. X11: az X11 normális kimenete osztott memórián keresztül
+. XVideo: az X11 felületének kiterjesztése, ami tetszõleges X11 által kirajzolható objektum esetén támogat videót
+. SDL: a Simple Directmedia Layer
+. DGA: a Direct Graphics Access (közvetlen grafikus hozzáférés)
+. SVGAlib: alacsonyszintû konzolos grafikus réteg
+
+[[video-interface-xvideo]]
+==== XVideo
+
+Az Xorg és az XFree86(TM) 4.X rendelkezik egy _XVideo_ (avagy Xvideo, Xv, xv) elnevezésû kiterjesztéssel, amelyen keresztül egy speciális gyorsítás segítségével a kirajzolható objektumokban közvetlenül meg tudunk jeleníteni videókat. Ezzel a kiterjesztéssel még a gyengébb gépeken is nagyon jó minõségû lejátszást tudunk elérni.
+
+A kiterjesztés mûködésérõl az `xvinfo` parancs kiadásával gyõzõdhetünk meg:
+
+[source,bash]
+....
+% xvinfo
+....
+
+Ha a parancs eredménye ehhez hasonló, akkor a kártyánk támogatja az XVideót:
+
+[source,bash]
+....
+X-Video Extension version 2.2
+screen #0
+ Adaptor #0: "Savage Streams Engine"
+ number of ports: 1
+ port base: 43
+ operations supported: PutImage
+ supported visuals:
+ depth 16, visualID 0x22
+ depth 16, visualID 0x23
+ number of attributes: 5
+ "XV_COLORKEY" (range 0 to 16777215)
+ client settable attribute
+ client gettable attribute (current value is 2110)
+ "XV_BRIGHTNESS" (range -128 to 127)
+ client settable attribute
+ client gettable attribute (current value is 0)
+ "XV_CONTRAST" (range 0 to 255)
+ client settable attribute
+ client gettable attribute (current value is 128)
+ "XV_SATURATION" (range 0 to 255)
+ client settable attribute
+ client gettable attribute (current value is 128)
+ "XV_HUE" (range -180 to 180)
+ client settable attribute
+ client gettable attribute (current value is 0)
+ maximum XvImage size: 1024 x 1024
+ Number of image formats: 7
+ id: 0x32595559 (YUY2)
+ guid: 59555932-0000-0010-8000-00aa00389b71
+ bits per pixel: 16
+ number of planes: 1
+ type: YUV (packed)
+ id: 0x32315659 (YV12)
+ guid: 59563132-0000-0010-8000-00aa00389b71
+ bits per pixel: 12
+ number of planes: 3
+ type: YUV (planar)
+ id: 0x30323449 (I420)
+ guid: 49343230-0000-0010-8000-00aa00389b71
+ bits per pixel: 12
+ number of planes: 3
+ type: YUV (planar)
+ id: 0x36315652 (RV16)
+ guid: 52563135-0000-0000-0000-000000000000
+ bits per pixel: 16
+ number of planes: 1
+ type: RGB (packed)
+ depth: 0
+ red, green, blue masks: 0x1f, 0x3e0, 0x7c00
+ id: 0x35315652 (RV15)
+ guid: 52563136-0000-0000-0000-000000000000
+ bits per pixel: 16
+ number of planes: 1
+ type: RGB (packed)
+ depth: 0
+ red, green, blue masks: 0x1f, 0x7e0, 0xf800
+ id: 0x31313259 (Y211)
+ guid: 59323131-0000-0010-8000-00aa00389b71
+ bits per pixel: 6
+ number of planes: 3
+ type: YUV (packed)
+ id: 0x0
+ guid: 00000000-0000-0000-0000-000000000000
+ bits per pixel: 0
+ number of planes: 0
+ type: RGB (packed)
+ depth: 1
+ red, green, blue masks: 0x0, 0x0, 0x0
+....
+
+Az XVideo nem mindegyik implementációjában vannak jelen a felsorolt formátumok (YUV2, YUV12 stb.), ami viszont néhány lejátszó számára akadályokat jelenthet.
+
+Amennyiben viszont ezt látjuk:
+
+[source,bash]
+....
+X-Video Extension version 2.2
+screen #0
+no adaptors present
+....
+
+Akkor a kártyánk nem rendelkezik XVideo támogatással.
+
+Ha az XVideo nem támogatott a kártyánk számára, akkor az csupán csak annyit jelent, hogy a gépünknek nehéz dolga lesz a videók megjelenítéséhez szükséges számítási kapacitás kiszolgálásában. Azonban a videokártyánktól és processzorunktól függõen még így is kielégítõ eredményt tudunk elõcsalni. Ekkor viszont minden bizonnyal érdemes lesz átolvasnunk a <<video-further-reading>>ban, miként tudjuk növelni a teljesítményét.
+
+[[video-interface-SDL]]
+==== A Simple Directmedia Layer
+
+A Simple Directmedia Layer, vagy SDL, eredetileg a Microsoft(R) Windows(R), BeOS és UNIX(R) közti hordozhatóságot szándékozta megvalósítani, aminek segítségével a hangot és grafikát hatékonyan használni tudó alkalmazások hozhatóak létre. Az SDL által nyújtott réteg a hardver olyan alacsonyszintû absztrakcióját öleli fel, amely gyakran még az X11 felületénél is hatékonyabb.
+
+Az SDL a package:devel/sdl12[] helyen található.
+
+[[video-interface-DGA]]
+==== Direct Graphics Access (Közvetlen grafikus hozzáférés)
+
+A közvetlen grafikus hozzáférés az X11 egy olyan kiterjesztése, ami lehetõvé teszi a programok számára az X szerver megkerülését és így közvetlenül a videokártya memóriáját képesek elérni. Mivel a megosztás hatékony megvalósításához ez nagyban építkezik alacsonyszintû leképzési mûveletekre, ezért az ilyet használó programokat `root` felhasználóként kell futtatni.
+
+A DGA kiterjesztés a man:dga[1] segítségével tesztelhetõ és mérhetõ. A `dga` parancs kiadása után minden billentyû lenyomására megváltoztatja a képernyõn látható színeket. A kilépéshez a kbd:[q] billentyût kell lenyomni.
+
+[[video-ports]]
+=== A videókkal foglalkozó portok és csomagok
+
+Ebben a szakaszban a FreeBSD Portgyûjteményébõl a videók lejátszására alkalmas programokat vesszük számba. A videolejátszás nagyon gyorsan fejlõdõ terület, ezért az itt említett különbözõ alkalmazások képességei az itt leírtaktól némileg eltérhetnek.
+
+Elõször is fontos tisztában lennünk azzal, hogy számos FreeBSD-n futó videoalkalmazás eredetileg linuxos alkalmazásként indult, és közülük sokan még csak béta minõségûek. Íme a FreeBSD-n is megtalálható videocsomagokkal kapcsolatos néhány olyan gond, amivel esetleg összefuthatunk:
+
+. Az egyik alkalmazás nem képes visszajátszani olyan állományt, amit egy másik alkalmazás hozott létre.
+. Az alkalmazás nem képes visszajátszani a saját maga által készített állományokat.
+. Ugyanazon alkalmazás két különbözõ gépen, amikor mind a kettõn az adott konfigurációra fordítjuk le, ugyanazt az állományt másképpen játssza vissza.
+. Egy olyan látszólag egyértelmû szûrõ, mint például a kép átméretezése, a hibás átméretezõ rutin miatt nagyon csúnya eredményt produkál.
+. Az alkalmazás gyakran elszáll.
+. A porthoz nem találjuk a dokumentációt, egyedül csak az interneten vagy a port [.filename]#work# könyvtárában van.
+
+Sok alkalmazás a "linuxizmus" jeleit is hordozza, vagyis gondok adódhatnak abból, hogy a szerzõk az alkalmazások mûködtetéséhez a Linux rendszermag és a különféle terjesztésekben megtalálható módosított szabványos könyvtárak különlegességeit használják ki. Ezeket a portok karbantartói nem mindig észlelik és javítják ki, ami miatt az alábbiak bármikor bekövetkezhetnek:
+
+. A processzor jellemzõit a [.filename]#/proc/cpuinfo# állományon keresztül állapítják meg.
+. A szálak helytelen használatuk miatt a program befejezõdésekor összeakadnak.
+. Az alkalmazással gyakran együtt használt egyéb alkalmazások még nem nincsenek benne a FreeBSD Portgyûjteményében.
+
+Az ilyen alkalmazások fejlesztõi a hordozhatóság javításával és a problémák megoldásával kapcsolatban eddig mindig igyekeztek együttmûködni a portok karbantartóival.
+
+[[video-mplayer]]
+==== MPlayer
+
+Az MPlayer az utóbbi idõben felbukkant, gyorsan fejlõdõ videolejátszó. Fejlesztõinek célja a sebesség és rugalmasság a Linux, illetve más UNIX(R) rendszereken. A kezdeményezés abból fakadt, hogy a fejlesztés mögött álló csapat alapítójának elege lett az akkoriban elérhetõ lejátszók teljesítményébõl. Mondhatnánk, hogy ez a program feláldozta a grafikus felületet az áramvonalas kialakításért, azonban ha hozzászokunk a parancssori beállításokhoz és a billentyûkön keresztüli vezérléshez, remekül mûködik.
+
+[[video-mplayer-building]]
+===== Az MPlayer lefordítása
+
+Az MPlayer a package:multimedia/mplayer[] helyen található. A program a fordítási folyamat során elvégez számos hardverellenõrzést, aminek eredményeképpen az egyik rendszeren fordított program nem vihetõ a másikra. Ezért különösen fontos portból fordítani és nem pedig bináris csomagot használni. Mindezek mellett a [.filename]#Makefile# állományban még számos, a `make` parancsnak a fordítás megkezdésekor átadható beállítást találhatunk:
+
+[source,bash]
+....
+# cd /usr/ports/multimedia/mplayer
+# make
+N - O - T - E
+
+Take a careful look into the Makefile in order
+to learn how to tune mplayer towards you personal preferences!
+For example,
+make WITH_GTK1
+builds MPlayer with GTK1-GUI support.
+If you want to use the GUI, you can either install
+/usr/ports/multimedia/mplayer-skins
+or download official skin collections from
+http://www.mplayerhq.hu/homepage/dload.html
+....
+
+Az üzenet fordítása:
+
+[source,bash]
+....
+F - I - G - Y - E - L - E - M
+
+Az mplayert személyes igényeinkhez úgy tudjuk igazítani, ha
+figyelmesen átnézzük a Makefile állományt! Például a WITH_GTK1
+megadásával az MPlayer GTK1 alapú grafikus felülettel jön létre.
+A grafikus felület használatához telepítenünk kell a
+/usr/ports/multimedia/mplayer-skins portot is, vagy letölteni a
+hivatalos skingyűjteményt a http://www.mplayerhq.hu/homepage/dload.html
+oldalról.
+....
+
+A port alapbeállításai a legtöbb felhasználó számára megfelelõek, habár az Xvid kódek használatához meg kell adnunk a `WITH_XVID` beállítást. Rajta kívül még az alapértelmezett DVD eszközt is érdemes megadni a `WITH_DVD_DEVICE` beállítással, amelynek alapértéke a [.filename]#/dev/acd0#.
+
+A leírás elkészítésének idõpontjában az MPlayer portja létrehozza a HTML dokumentációt és a két végrehajtható állományt: az `mplayer` lejátszót és a videók újrakódolásáért felelõs `mencoder` segédprogramot.
+
+Az MPlayer HTML dokumentációja nagyon közlékeny, és ha az olvasó nem találná valamelyik videohardver vagy felület leírását ebben a fejezetben, akkor ez a dokumentáció mindenképpen hasznos olvasnivalónak bizonyul. Ha a UNIX(R)-ok alatt elérhetõ videotámogatás leírását keressük, határozottan megéri idõt szánni az MPlayer dokumentációjának alapos végigolvasására.
+
+[[video-mplayer-using]]
+===== Az MPlayer használata
+
+Az MPlayer használatához a felhasználói könyvtárunkban rendelkeznünk kell egy [.filename]#.mplayer# elnevezésû könyvtárral. Ezt a következõ paranccsal tudjuk létrehozni:
+
+[source,bash]
+....
+% cd /usr/ports/multimedia/mplayer
+% make install-user
+....
+
+Az `mplayer` parancssori paraméterei a hozzá tartozó man oldalon találhatóak meg, valamint mindezek a HTML dokumentációban még részletesebben. Ebben a szakaszban csupán néhányukat mutatjuk be.
+
+Egy állomány, mint például a [.filename]#tesztvideo.avi#, a `-vo` beállításával játszható le a különbözõ felületeken:
+
+[source,bash]
+....
+% mplayer -vo xv tesztvideo.avi
+....
+
+[source,bash]
+....
+% mplayer -vo sdl tesztvideo.avi
+....
+
+[source,bash]
+....
+% mplayer -vo x11 tesztvideo.avi
+....
+
+[source,bash]
+....
+# mplayer -vo dga tesztvideo.avi
+....
+
+[source,bash]
+....
+# mplayer -vo 'sdl:dga' tesztvideo.avi
+....
+
+Érdemes az itt felsorolt konfigurációk mindegyikét kipróbálni, mivel az egymáshoz mért teljesítményük rengeteg tényezõn múlik, de közülük talán maga a hardver a legjelentõsebb.
+
+A DVD-k lejátszásához cseréljük ki a [.filename]#tesztvideo.avi# paramétert a `dvd://_N_ -dvd-device _ESZKÖZ_` paraméterekkel, ahol az _N_ a lejátszandó fejezet sorszáma, valamint az [.filename]#ESZKÖZ# a DVD-hez tartozó eszközleíró. Például így tudjuk elkezdeni [.filename]#/dev/dvd# eszközrõl a 3. fejezet lejátszását:
+
+[source,bash]
+....
+# mplayer -vo xv dvd://3 -dvd-device /dev/dvd
+....
+
+[NOTE]
+====
+A port fordítása során a `WITH_DVD_DEVICE` paraméter segítségével megadható az alapértelmezett DVD eszköz, amely alapból a [.filename]#/dev/acd0#. Errõl többet a port [.filename]#Makefile# állományában találhatunk.
+====
+
+A leállításhoz, szüneteltetéshez, továbblépéshez és többi hasonló funkcióhoz tartozó billentyûket a `mplayer -h` parancs kimenetébõl vagy a man oldal elolvasásából deríthetjük ki.
+
+A lejátszáshoz tartozó néhány viszonylag fontos beállítás: az `-fs -zoom` teljesképernyõs módra vált, valamint a `-framedrop` segít növeli a teljesítményt.
+
+A lejátszáskor kiadandó parancs túlburjánzását el tudjuk kerülni, ha létrehozunk egy [.filename]#.mplayer/config# állományt és itt állítjuk be a gyakori opciókat:
+
+[.programlisting]
+....
+vo=xv
+fs=yes
+zoom=yes
+....
+
+Végezetül megemlítjük, hogy az `mplayer` segítségével a DVD-n található fejezeteket ki tudjuk menteni [.filename]#.vob# állományokba. A DVD második fejezetének kimentéséhez gépeljük be ezt:
+
+[source,bash]
+....
+# mplayer -dumpstream -dumpfile out.vob dvd://2 -dvd-device /dev/dvd
+....
+
+A parancs eredményeképpen keletkezõ [.filename]#out.vob# állomány formátuma MPEG lesz, amit a fejezetben bemutatott további csomagokkal tudunk feldolgozni.
+
+[[video-mencoder]]
+===== mencoder
+
+A `mencoder` használatának megkezdése elõtt javasolt alaposan beleásnunk magunkat a HTML dokumentációba és megismerkednünk az alapvetõ beállításaival. Van külön man oldala is, azonban a HTML leírás nélkül önmagában ez nem túl sokat ér. Megszámlálhatatlan úton és módon növelhetõ benne a minõség, csökkenthetõ a kódolási arány, változtatható a formátum, és ezen apró finomságok felelõsek a jó vagy éppen a rossz teljesítményért. A témába néhány példa bemutatásával igyekszünk beavatni az olvasót. Elõször vegyünk egy egyszerû másolást:
+
+[source,bash]
+....
+% mencoder bemenő.avi -oac copy -ovc copy -o eredmény.avi
+....
+
+A parancssori paraméterek helytelen kombinációja olyan állományokat eredményezhet, amelyeket még maga az `mplayer` sem képes lejátszani. Ezért ha csak le akarunk szedni egy állományt, akkor maradjunk meg az `mplayer` `-dumpfile` opciójánál.
+
+A [.filename]#bemenõ.avi# állományt MPEG4 video- és MPEG3 hangtömörítéssel (amihez kell majd a package:audio/lame[]) így tudjuk lekódolni:
+
+[source,bash]
+....
+% mencoder bemenõ.avi -oac mp3lame -lameopts br=192 \
+ -ovc lavc -lavcopts vcodec=mpeg4:vhq -o eredmény.avi
+....
+
+Ezzel az `mplayer` és `xine` programok számára is egyaránt lejátszható állomány jön létre.
+
+A DVD fejezeteit úgy tudjuk közvetlenül kódolni, ha a parancssorban kicseréljük a [.filename]#bemenõ.avi# állományt az `dvd://1 -dvd-device /dev/dvd` beállításra, illetve ha a programot `root` felhasználóként futtatjuk. De mivel elsõre általában ritkán vagyunk elégedettek a kódolással, érdemes elõször inkább lementeni az egész fejezetet egy állományba, majd azon dolgozni.
+
+[[video-xine]]
+==== A xine videolejátszó
+
+A xine egy széles hatókörû projekt, amelynek nem csak az a célja, hogy egy "mindenes" videolejátszó alkalmazást fejlesszenek, hanem az is, hogy újrahasznosítható függvénykönyvtárakat és egy moduláris felépítésû programot hozzanak létre, amely kiegészítûkkel bûvíthetû. A package:multimedia/xine[] helyen portként, valamint csomagként is elérhetõ.
+
+A xine itt-ott még valamelyest durva, de mindenképpen egy dicséretes kezdeményezés. A xine a gyakorlatban erõs processzort és mellé gyors videokártyát kíván, vagy pedig az XVideo kiterjesztés támogatását. A grafikus felhasználói felülete ugyan használható, de még kicsit esetlen.
+
+Az írás pillanatában a xine mellé még nem kapunk olyan modult, amivel le tudnánk játszani a CSS kódolású DVD-ket. Léteznek azonban olyan külsõs modulok, amelyekkel meg lehet valósítani ezt a feladatot, azonban a FreeBSD Portgyûjteményében ezeket még nem találhatjuk meg.
+
+A xine az MPlayerhez képes többet tesz a felhasználóért, azonban ezzel egyidõben el is veszi tõle a finomhangolás lehetõségét. A xine legjobban az XVideót ismerõ felületeken teljesít.
+
+A xine alapértelmezés szerint grafikus felülettel indul, ahol a menük segítségével tudunk megnyitni egy adott állományt:
+
+[source,bash]
+....
+% xine
+....
+
+Vagy a grafikus felület használata nélkül kiadhatjuk közvetlenül is az állomány lejátszását:
+
+[source,bash]
+....
+% xine -g -p kedvencmozim.avi
+....
+
+[[video-ports-transcode]]
+==== A transcode
+
+A transcode nem egy újabb lejátszó, hanem a video- és audio állományok újratömörítésére használható programok gyûjteménye. A transcode segítségével a szabványos be- és kimeneten keresztül parancssoros programokkal képesek vagyunk videoállományokat összefûzni, megjavítani.
+
+A package:multimedia/transcode[] port fordítása során temérdek beállítást adhatunk meg, amelyek közül az alábbi parancsban foglaljuk össze az általunk javasolandókat:
+
+[source,bash]
+....
+# make WITH_OPTIMIZED_CFLAGS=yes WITH_LIBA52=yes WITH_LAME=yes WITH_OGG=yes \
+WITH_MJPEG=yes -DWITH_XVID=yes
+....
+
+Ezek a beállítások a legtöbb felhasználó számára elegendõek.
+
+A `transcode` képességeinek illusztrálásához lássunk egy példát, amiben megmutatjuk, hogyan kell egy DivX állományt PAL szabványú MPEG-1 formátumú (PAL VCD) állománnyá alakítani:
+
+[source,bash]
+....
+% transcode -i bemenõ.avi -V --export_prof vcd-pal -o output_vcd
+% mplex -f 1 -o eredmény_vcd.mpg eredmény_vcd.m1v eredmény_vcd.mpa
+....
+
+Az eredményül keletkezõ [.filename]#eredmény_vcd.mpg# MPEG állomány akár már játszható is MPlayerrel. Ha az állományt kiírjuk egy írható CD-re, akkor ezzel video CD-t is létre tudunk hozni, amihez viszont szükségünk van mind a package:multimedia/vcdimager[] és package:sysutils/cdrdao[] programokra.
+
+A `transcode` parancsnak van saját man oldala, azonban ehelyett a http://www.transcoding.org/cgi-bin/transcode[transcode wiki]ben érdemes inkább további információkat és példákat keresni.
+
+[[video-further-reading]]
+=== Ajánlott olvasmányok
+
+A FreeBSD-hez tartozó videoszoftverek nagyon gyorsan fejlõdnek. Könnyen elképzelhetõ, hogy az imént tárgyalt problémák legtöbbje a közeljövõben hamarosan megoldódik. Addig viszont bárkinek, aki a legtöbbet szeretné kihozni a FreeBSD audio- és video lehetõségeibõl, rengeteg leírás és dokumentáció elolvasása alapján kell összecsiszolnia a különbözõ beállításokat, és csak néhány alkalmazás mellett érdemes kitartania. Ebben a szakaszban igyekszünk segíteni az olvasónak megtalálni az ilyen jellegû információkat.
+
+Az http://www.mplayerhq.hu/DOCS/[MPlayer dokumentációja] szakmai szempontból igen közlékeny. Ezt mindenkinek érdemes elolvasnia, aki a késõbbiekben magasabb szakmai szinten akar foglalkozni a UNIX(R)-os videózással. Az MPlayer levelezési listája viszont alig tolerálja a dokumentációt rendesen el nem olvasó emberek kérdéseit, ezért minden egyes hiba bejelentése elõtt lehetõleg rendesen nézzük át a dokumentáció odavágó részeit.
+
+A http://dvd.sourceforge.net/xine-howto/en_GB/html/howto.html[xine HOGYAN] egyik külön fejezetében az összes lejátszó esetén érvényesíthetõ teljesítménynövelési módszereket mutat be.
+
+Végül íme néhány ígéretes alkalmazás, amelyeket érdemes kipróbálnunk:
+
+* http://avifile.sourceforge.net/[Avifile], ami egyben a package:multimedia/avifile[] port
+* http://www.dtek.chalmers.se/groups/dvd/[Ogle], ami a package:multimedia/ogle[] port
+* http://xtheater.sourceforge.net/[Xtheater]
+* package:multimedia/dvdauthor[], egy nyílt forráskódú DVD-tartalom szerkesztõ
+
+[[tvcard]]
+== TV kártyák beállítása
+
+=== Bevezetés
+
+A TV kártyák segítségével kábeles vagy antennás televízióadásokat tudunk nézni a számítógépünkön. A legtöbbjük RCA vagy S-video bemenettel rendelkezik, valamint néhányukon még FM rádiókészülék is megtalálható.
+
+A FreeBSD a man:bktr[4] meghajtón keresztül a Brooktree Bt848/849/878/879, illetve a Conexant CN-878/Fusion 878a típusú, PCI-os videorögzító chipeket ismeri. Ügyelnünk kell arra, hogy a kártyánkon levõ vevõkészülék is használható legyen, amit pedig a man:bktr[4] man oldalán megtalálható támogatott eszközök listájából ellenõrizhetünk.
+
+=== A meghajtó beállítása
+
+A kártyánk használatához be kell töltenünk a man:bktr[4] meghajtót, ami csupán annyiból áll, hogy a [.filename]#/boot/loader.conf# állományhoz hozzáadunk egy ilyen sort:
+
+[.programlisting]
+....
+bktr_load="YES"
+....
+
+Másik lehetõségünk, ha a TV kártya támogatását statikusan beleépítjük a rendszermagba. Ha ezt a megoldást választjuk, a következõ sorokat kell elhelyeznünk a rendszermag beállításait tartalmazó állományba:
+
+[.programlisting]
+....
+device bktr
+device iicbus
+device iicbb
+device smbus
+....
+
+A fentebb látható egyéb eszközök megadása azért szükséges, mert a kártya részegységei egy I2C buszon csatlakoznak egymáshoz. Miután beillesztettük a szükséges változtatásokat, fordítsuk le és telepítsük az új rendszermagot.
+
+A támogatás hozzáadása után újra kell indítanunk a számítógépünket. A rendszerindítási folyamat során meg kell jelennie a TV kártyánknak is, valahogy így:
+
+[.programlisting]
+....
+bktr0: <BrookTree 848A> mem 0xd7000000-0xd7000fff irq 10 at device 10.0 on pci0
+iicbb0: <I2C bit-banging driver> on bti2c0
+iicbus0: <Philips I2C bus> on iicbb0 master-only
+iicbus1: <Philips I2C bus> on iicbb0 master-only
+smbus0: <System Management Bus> on bti2c0
+bktr0: Pinnacle/Miro TV, Philips SECAM tuner.
+....
+
+Természetesen a fenti üzenetek az aktuális hardvereszközünknek megfelelõen némileg eltérhetnek. Ellenõrizzük, hogy a vevõkészüléket helyesen ismerte-e fel a rendszer. Ha nem sikerült volna, akkor a man:sysctl[8] és a rendszermag beállításai segítségével még mindig van lehetõségünk állítani rajta. Például, ha egy Philips SECAM vevõkészüléket akarunk beállítani, akkor a rendszermag beállításaihoz még hozzá kell adni a következõ sort:
+
+[.programlisting]
+....
+options OVERRIDE_TUNER=6
+....
+
+vagy erre közvetlenül használhatjuk a man:sysctl[8] programot is:
+
+[source,bash]
+....
+# sysctl hw.bt848.tuner=6
+....
+
+A man:bktr[4] man oldalán és a [.filename]#/usr/src/sys/conf/NOTES# állományban megtalálhatjuk a többi beállítás részletes leírását is.
+
+=== Hasznos alkalmazások
+
+A TV kártyánk tényleges használatához azonban még a következõ alkalmazások valamelyikét is telepítenünk kell:
+
+* A package:multimedia/fxtv[] használatával ablakban tévézhetünk, valamint lehetõségünk van kép/audio/video kimentésére is.
+* A package:multimedia/xawtv[] az fxtv-hez hasonló lehetõségekkel bíró tévénézõ alkalmazás.
+* A package:misc/alevt[] dekódolja és megjeleníti a mûsorhoz kapcsolódó Videotex/Teletext üzeneteket.
+* Az package:audio/xmradio[] segítségével az egyes TV kártyákon megtalálható FM rádiókészülékeket tudjuk használatba venni.
+* Az package:audio/wmtune[] a rádióvevõkhöz használható hasznos grafikus alkalmazás.
+
+Ebben a témában a FreeBSD Portgyûjteményében további érdekes alkalmazások találhatóak még.
+
+=== Hibakeresés
+
+Ha bármilyen gond adódna a TV kártyánkkal kapcsolatosan, akkor elõször mindenképpen érdemes megnézni, hogy a rajta levõ videorögzítõ chipet és vevõkészüléket a man:bktr[4] meghajtó ténylegesen ismeri-e, illetve hogy jól állítottuk-e be. A TV kártyákra irányuló különféle egyéb kérdések és segítség tekintetében érdemes lehet még levelet küldeni a {freebsd-multimedia} címére is.
+
+[[scanners]]
+== Lapolvasók
+
+=== Bevezetés
+
+A FreeBSD lapolvasókhoz a SANE (Scanner Access Now Easy) elnevezésû API (alkalmazásfejlesztõi felület) segítségével képes hozzáférni, amelyet a Portgyûjteményben találhatunk meg. A lapolvasást végzõ hardvereszközök használatához a FreeBSD a SANE mellett még néhány eszközmeghajtóra is támaszkodik.
+
+A FreeBSD egyaránt ismeri az SCSI és USB csatlakoztatású lapolvasókat is. Még mielõtt nekikezdenénk a lapolvasó beállításához, bizonyosodjuk meg róla, hogy a SANE támogatja. A SANE http://www.sane-project.org/sane-supported-devices.html[által ismert eszközök] felsorolásában ellenõrizhetjük a lapolvasónk támogatottságának állapotát. A FreeBSD 8._X_ elõtti kiadásaiban ezenkívül még a man:uscanner[4] man oldalon is láthatjuk az ismert USB-s lapolvasók listáját.
+
+=== A rendszermag beállítása
+
+A korábbiak értelmében tehát mind a SCSI, mind pedig a USB felületen csatlakozó eszközök támogatottak. A lapolvasónknak megfelelõen eltérõ eszközmeghajtók szükségesek.
+
+[[scanners-kernel-usb]]
+==== Beállítás USB felületen
+
+A [.filename]#GENERIC# rendszermag alapértelmezés szerint tartalmazza az USB-s lapolvasók használatához szükséges eszközmeghajtókat. Ha valamiért azonban mégis saját rendszermagot akarunk használni, akkor ne felejtsük el ellenõrizni, hogy a rendszermag beállításai között megtalálhatóak a következõ sorok:
+
+[.programlisting]
+....
+device usb
+device uhci
+device ohci
+device ehci
+....
+
+A FreeBSD 8._X_ elõtti kiadásaiban még a következõ sorra is szükségünk lesz:
+
+[.programlisting]
+....
+device uscanner
+....
+
+A FreeBSD ezen változataiban a man:uscanner[4] eszközmeghajtón keresztül tudjuk használni az USB csatolóval rendelkezõ lapolvasókat. A FreeBSD 8.0 változatától kezdõdõen pedig ehhez a man:libusb[3] függvénykönyvtár nyújt közvetlen támogatást.
+
+A megfelelõen elõkészített rendszermag elindítása után csatlakoztassuk az USB-s lapolvasónkat. Ez a sor fog megjelenni a rendszer üzenetpufferében (man:dmesg[8]):
+
+[source,bash]
+....
+ugen0.2: <EPSON> at usbus0
+....
+
+Vagy FreeBSD 7._X_ rendszerek esetében:
+
+[source,bash]
+....
+uscanner0: EPSON EPSON Scanner, rev 1.10/3.02, addr 2
+....
+
+Ezek az üzenetek elárulják nekünk, hogy a lapolvasóhoz mostantól a használt FreeBSD verziótól függõen a [.filename]#/dev/ugen0.2# vagy a [.filename]#/dev/uscanner0# eszközleíró tartozik. A fenti példában egy EPSON Perfection(R) 1650 típusú USB lapolvasót láthatunk.
+
+==== Beállítás SCSI felületen
+
+Ha a lapolvasónk SCSI felületen csatlakozik, fontos tisztában lennünk azzal, hogy pontosan milyen SCSI-vezérlõn keresztül is érhetjük el, ugyanis a rajta található SCSI chipkészletnek megfelelõen kell majd hangolnunk a rendszermag beállításait. A [.filename]#GENERIC# rendszermag alapból ismeri a leggyakrabban elõforduló SCSI-vezérlõket. Mindenképpen olvassuk át a [.filename]#NOTES# nevû állományt és adjuk hozzá a rendszermag beállításaihoz a megfelelõ sort. A SCSI-kártya meghajtóján kívül még az alábbi beállításokat is meg kell adnunk a rendszermagunk számára:
+
+[.programlisting]
+....
+device scbus
+device pass
+....
+
+Ahogy sikerült a rendszermagot sikeresen lefordítani és telepíteni, a rendszer indulása során az üzenetpufferben már láthatjuk is a felismert eszközt:
+
+[source,bash]
+....
+pass2 at aic0 bus 0 target 2 lun 0
+pass2: <AGFA SNAPSCAN 600 1.10> Fixed Scanner SCSI-2 device
+pass2: 3.300MB/s transfers
+....
+
+Ha a rendszer indulásakor még nem kapcsoltuk volna be a lapolvasónkat, a man:camcontrol[8] parancs segítségével késõbb külön kérhetjük a SCSI buszon található eszközök újbóli felderítését:
+
+[source,bash]
+....
+# camcontrol rescan all
+Re-scan of bus 0 was successful
+Re-scan of bus 1 was successful
+Re-scan of bus 2 was successful
+Re-scan of bus 3 was successful
+....
+
+Ekkor a lapolvasó megjelenik a SCSI eszközök felsorolásában:
+
+[source,bash]
+....
+# camcontrol devlist
+<IBM DDRS-34560 S97B> at scbus0 target 5 lun 0 (pass0,da0)
+<IBM DDRS-34560 S97B> at scbus0 target 6 lun 0 (pass1,da1)
+<AGFA SNAPSCAN 600 1.10> at scbus1 target 2 lun 0 (pass3)
+<PHILIPS CDD3610 CD-R/RW 1.00> at scbus2 target 0 lun 0 (pass2,cd0)
+....
+
+A SCSI eszközökrõl további leírásokat a man:scsi[4] és man:camcontrol[8] man oldalakon találhatunk.
+
+=== A SANE beállítása
+
+A SANE rendszere két részre oszlik: a backendekre (package:graphics/sane-backends[]) és a frontendekre (package:graphics/sane-frontends[]). Ezek közül maguk a backendek szolgáltatják a lapolvasó hozzáférhetõségét. A SANE által http://www.sane-project.org/sane-supported-devices.html[ismert eszközeinek] listájából kifürkészhetjük, hogy lapolvasónkat melyik backenden keresztül érhetjük el. Az eszköz megfelelõ használatához döntõ fontosságú megállapítani a hozzá tartozó backendet. A frontendek között találjuk meg a lapolvasást felügyelõ grafikus felületeket (mint például az xscanimage).
+
+Elsõként telepítsük a package:graphics/sane-backends[] portot vagy csomagot. Ezután ellenõrizzük, hogy a SANE felismeri a lapolvasót, és ehhez adjuk ki a `sane-find-scanner` parancsot:
+
+[source,bash]
+....
+# sane-find-scanner -q
+found SCSI scanner "AGFA SNAPSCAN 600 1.10" at /dev/pass3
+....
+
+A kimenetében jelzi a felületet, amin a lapolvasó csatlakozik, valamint a hozzá tartozó eszközleírót. A gyártó neve és a termék típusa nem minden esetben jelenik meg, de ez nem is annyira fontos.
+
+[NOTE]
+====
+Némely USB-s lapolvasók esetén még egy firmware-t is be kell töltenünk, amirõl bõvebben a backendhez tartozó man oldalokon olvashatunk. Ajánlott még elolvasni a man:sane-find-scanner[1] és man:linprocfs[7] man oldalakat is.
+====
+
+Most pedig nézzük meg, hogy vajon a frontend is be tudja-e azonosítani a lapolvasónkat. Alapértelmezés szerint a SANE backendjéhez tartozik még egy man:sane[1] nevû segédprogram is, aminek segítségével listázni tudjuk a használható eszközöket és képeket tudunk beolvasni parancssorból. Közülük a `-L` kapcsoló listáz:
+
+[source,bash]
+....
+# scanimage -L
+device `snapscan:/dev/pass3' is a AGFA SNAPSCAN 600 flatbed scanner
+....
+
+Vagy ha a <<scanners-kernel-usb>>ban szereplõ USB lapolvasóval nézzük:
+
+[source,bash]
+....
+# scanimage -L
+device 'epson2:libusb:/dev/usb:/dev/ugen0.2' is a Epson GT-8200 flatbed scanner
+....
+
+Ezt a kimenetet egy FreeBSD 8._X_ rendszeren kaptuk, ahol a `'epson2:libusb:/dev/usb:/dev/ugen0.2'` az eszközhöz tartozó backendet (`epson2`) és eszközleírót (`/dev/ugen0.2`) adja meg.
+
+[NOTE]
+====
+Ha ennek eredményeképpen semmi sem jelenik meg, vagy a man:sane[1] látszólag nem talált semmilyen eszközt, akkor a lapolvasó azonosítása nem sikerült. Ilyen esetekben valószínûleg módosítanunk kell a backend beállításait tartalmazó állományt a használni kívánt lapolvasó eszköz szerint. A backendek beállításait a [.filename]#/usr/local/etc/sane.d/# könyvtárban találjuk. Ez a probléma bizonyos USB-s lapolvasók esetében jelentkezik.
+
+Például, ha <<scanners-kernel-usb>>ban használt USB-s lapolvasónkat FreeBSD 8._X_ alatt tökéletesen felismeri a rendszer, de a FreeBSD korábbi változatai esetén (ahol a man:uscanner[4] eszközmeghajtót használják) a `sane-find-scanner` parancs a következõket adja vissza:
+
+[source,bash]
+....
+# sane-find-scanner -q
+found USB scanner (UNKNOWN vendor and product) at device /dev/uscanner0
+....
+
+Akkor a lapolvasót sikerült megtalálni, és láthatjuk, hogy USB-n keresztül csatlakozik és a [.filename]#/dev/uscanner0# eszközleíró tartozik hozzá. Most már ellenõrizhetjük a lapolvasó helyes beazonosítását is:
+
+[source,bash]
+....
+# scanimage -L
+
+No scanners were identified. If you were expecting something different,
+check that the scanner is plugged in, turned on and detected by the
+sane-find-scanner tool (if appropriate). Please read the documentation
+which came with this software (README, FAQ, manpages).
+....
+
+Az üzenet fordítása:
+
+[source,bash]
+....
+Nincs azonosítható lapolvasó. Ha nem erre számítottunk, akkor ellenőrizzük,
+hogy az eszközt tényleg bekapcsoltuk, csatlakoztattuk és észlelte a
+sane-find-scanner segédprogram (amennyiben szükséges). Kérjük, olvassa el a
+szoftverhez tartozó dokumentációt (README, FAQ, man oldalak)!
+....
+
+Mivel a lapolvasót nem sikerült azonosítani, át kell írnunk a [.filename]#/usr/local/etc/sane.d/epson2.conf# állományt. A használt lapolvasó típusa EPSON Perfection(R) 1650, ezért hozzá az `epson2` backendet fogjuk használni. Ehhez feltétlenül olvassuk el a konfigurációs állományban található megjegyzéseket is. A sorokat igen könnyû átírni: tegyük megjegyzésbe az összes olyat, ahol a lapolvasónk számára nem megfelelõ felületek találhatóak (a mi esetünkben tehát megjegyzésbe fogjuk tenni az összes `scsi` szóval kezdõdõ sort, hiszen nekünk USB-s eszközünk van), majd az állomány végére írjuk be a használni kívánt felületet és eszközleírót. Ez ebben a konkrét esetben ennyi lenne:
+
+[.programlisting]
+....
+usb /dev/uscanner0
+....
+
+A megfelelõ formátum és a további részletek leírásához ne felejtsük el azonban elolvasni a backend konfigurációs állományában felbukkanó megjegyzéseket és az ide tartozó man oldalt sem. Most már megpróbálkozhatunk újra a lapolvasó azonosításával:
+
+[source,bash]
+....
+# scanimage -L
+device `epson:/dev/uscanner0' is a Epson GT-8200 flatbed scanner
+....
+
+Láthatjuk, hogy az USB-s lapolvasónkat sikerült azonosítani. Nem számít, ha esetleg nem egyezne a valósággal a gyártó vagy a típus megjelölése. Itt a valóban lényeges elem az `epson:/dev/uscanner0` mezõ lesz, melynek a backend és az eszközleíró nevét kell helyesen tartalmaznia.
+====
+
+A beállítást akkor zárhatjuk le, miután a `scanimage -L` parancs képes észlelni a lapolvasót. A eszköz ekkor már készen áll a beolvasásra.
+
+Míg a man:sane[1] parancssorból teszi lehetõvé számunkra a lapolvasást, addig érdemesebb a képek olvasását egy grafikus felületen keresztül végeznünk. A SANE egy egyszerû, ám hatékony grafikus felületet ajánl fel ehhez, ez az xscanimage (package:graphics/sane-frontends[]).
+
+Az Xsane (package:graphics/xsane[]) egy másik népszerû grafikus frontend. Segítségével speciális lehetõségeket is kihasználhatunk, mint például többféle képolvasási mód (fénymásoló, fax stb.), színkorrekció, kötegelt beolvasás, stb. Mind a két említett alkalmazás elérhetõ a The GIMP bõvítményeként is.
+
+=== A lapolvasó használatának engedélyezése más felhasználók számára
+
+A korábban tárgyalt mûveletek mindegyikét `root` felhasználóként tudjuk csak végrehajtani. Azonban elõfordulhat, hogy más felhasználók számára is szeretnénk hozzáférést biztosítani a lapolvasóhoz. Ehhez az érintett felhasználóknak a lapolvasóhoz tartozó eszközleíróhoz olvasási és írás joggal kell rendelkezniük. Például az USB-s lapolvasónk a [.filename]#/dev/ugen0.2# eszközleírót használja, amely valójában csak a [.filename]#/dev/usb/0.2.0# eszközleíróra mutató szimbolikus link (ezt gyorsan le tudjuk ellenõrizni, ha megnézzük a [.filename]#/dev# könyvtár tartalmát). Az eszközleíró és a rá mutató szimbolikus link rendre a `wheel` és `operator` csoportok birtokában van. Ha a `_pgj_` nevû felhasználót felvesszük ezekbe a csoportokba, akkor ezáltal hozzá tud majd férni a lapolvasóhoz. Nyilvánvaló biztonsági megfontolásokból azonban kétszer is javasolt meggondolni, mely felhasználókat mely csoportokba vesszük fel, különösen, ha `wheel` csoportról van szó. Ennél valamivel jobb megoldást kínál, ha létrehozunk külön az USB eszközök használatára vonatkozó csoportot és a lapolvasót ezen csoport tagjainak számára elérhetõvé tesszük.
+
+Tehát erre a célra például megalkotjuk a `_usb_` csoportot. Ehhez elsõ lépésként a man:pw[8] parancs segítségével hozzuk létre magát a csoportot:
+
+[source,bash]
+....
+# pw groupadd usb
+....
+
+Ezután a [.filename]#/dev/usb/0.2.0# eszközleírót és a rá mutató [.filename]#/dev/ugen0.2# szimbolikus linket kell az `usb` csoport részére elérhetõvé tennünk, a megfelelõ írási engedélyekkel (`0660` vagy `0664`) együtt, mivel alapértelmezetten csak a tulajdonosuk (`root`) tudja írni ezeket. Mindezt úgy tudjuk megtenni, ha az [.filename]#/etc/devfs.rules# állományhoz hozzáadjuk a megfelelõ sorokat:
+
+[.programlisting]
+....
+[system=5]
+add path ugen0.2 mode 0660 group usb
+add path usb/0.2.0 mode 0660 group usb
+....
+
+A FreeBSD 7._X_ változatok esetén valószínûleg a következõ sorokra lesz szükségünk a [.filename]#/dev/uscanner0# eszközleíróhoz:
+
+[.programlisting]
+....
+[system=5]
+add path uscanner0 mode 0660 group usb
+....
+
+Ezt követõen az [.filename]#/etc/rc.conf# állományba írjuk be az alábbi sort és utána indítsuk újra a számítógépet:
+
+[.programlisting]
+....
+devfs_system_ruleset="system"
+....
+
+Az itt szereplõ sorok pontos jelentésérõl a man:devfs[8] man oldaláról tájékozódhatunk.
+
+Ezután már csak fel kell vennünk azokat a felhasználókat a `_usb_` csoportba, amelyeknek engedélyezzük a lapolvasó használatát:
+
+[source,bash]
+....
+# pw groupmod usb -m pgj
+....
+
+A további részletekrõl a man:pw[8] man oldalon olvashatunk.