10.1. TV bemenet
Előző | 10. fejezet - TV | Következő

## 10.1. TV bemenet

Ez a rész arról szól, hogy hogyan lehet adást nézni/lementeni V4L kompatibilis TV tunerrel. Lásd a man oldalt a TV-s kapcsolók és a vezérlő billentyűk listájáért.

### 10.1.1. Fordítás

1. Először is újra fordítanod kell. A `./configure` automatikusan megtalálja a v4l dolgok kernel fejléceit és a `/dev/video*` bejegyzéseket. Ha léteznek, a TV támogatás be lesz építve (lásd a `./configure` kimenetét).

2. Győződj meg róla, hogy a tunered működik másik Linuxos TV szoftverrel is, például a XawTV-vel.

### 10.1.2. Használati tippek

A kapcsolók teljes listája a man oldalon található. Itt csak pár tippet említünk meg:

- Használd a `channels` kapcsolót. Például:

      -tv channels=26-MTV1,23-TV2

  Magyarázat: ha ezt a kapcsolót használod, akkor csak a 26-os és a 23-as csatorna lesz használható, és szép OSD szöveg lesz csatorna váltáskor, mely a csatorna nevét jelzi ki. A csatorna nevében lévő szóközöket a "_" karakterrel kell kicserélni.

- Válassz valamilyen értelmes képméretet. A kp méreteinek oszthatónak kell lennie 16-tal.

- Ha videót mentesz el úgy, hogy a függőleges felbontás nagyobb, mint a teljes felbontás fele (pl. 288 a PAL-nál és 240 az NTSC-nél), akkor a kapott 'képkockák' tényleg átlapolt mezőpárok lesznek. Attól függően, hogy mit akarsz csinálni a videóval, hagyhatod ebben a formában, veszteséges deinterlacing-et hajthatsz végre vagy szétszedheted a párokat egyedi mezőkre.

  Különben a filmed torzul a gyors mozgású jelenetek alatt és a bitráta vezérlő is valószínűleg képtelen lesz az előírt bitráta megtartására, ahogy az interlacing változások nagy mennyiségű adatot eredményeznek és így nagy sávszélességet vesznek el. A deinterlacing-et bekapcsolhatod a `-vf pp=DEINT_TYPE` kapcsolóval. Általában a `pp=lb` jó, de ez az egyéni beállításokon is múlik. A többi deinterlacing algoritmust lásd a manuálban és próbálgasd ki őket.

- Vágd le a felesleges helyet. Ha videót mentesz, a sarki arénák teljesen feketék és némi zajt tartalmaznak. Ezek szintén nagy sávszélességet foglalnak el feleslegesen. Pontosabban nem maguk a fekete területek, hanem az éles átmenetek a fekete és a világosabb videó kép között, de ez most nem fontos igazából. Mielőtt elindítanád a mentést, állítsd be a `crop` kapcsoló argumentumait, így a széleknél lévő vackok le lesznek vágva. És ne feledd a képméreteket ésszerű keretek között tartani.

- Figyelj a CPU terhelésre. Legtöbbször átlépi a 90%-os határt. Ha nagy mentési buffered van, a MEncoder túlél egy esetleges túlterhelést pár másodpercig, de semmi több. Jobb kikapcsolni a 3D OpenGL képernyővédőket és a hasonló dolgokat.

- Ne szórakozz a rendszer órával. A MEncoder a rendszer órát használja az A/V szinkronhoz. Ha átállítod a rendszer órát (különösen vissza az időben), a MEncoder összezavarodik és képkockákat veszítesz. Ez egy fontos dolog, ha hálózathoz kapcsolódsz és futtatsz valamilyen idő szinkronizációs szoftvert, mint pl. NTP. Ki kell kapcsolnod az NTP-t a mentési folyamat alatt, ha megbízható mentést akarsz.

- Ne változtasd meg az `outfmt`-t, hacsak vagy biztos benne, hogy mit csinálsz, vagy a kártyád/vezérlőd tényleg nem támogatja az alapértelmezést (YV12 színtér). A MPlayer/MEncoder régebbi verzióiban szükséges volt a kimeneti formátum megadása. Ez a jelenlegi kiadásban már javítva lett és az `outfmt` már nem szükséges, az alapértelmezés megfelel a legtöbb esetben. Például ha videót mentesz DivX-be a `libavcodec` használatával és megadod az `outfmt=RGB24`-t a mentett kép minőségének növelése érdekében, a mentett kép igazából később lesz visszakonvertálva YV12-be így az egyetlen, amit elérsz, az erőteljes CPU használat.

- Az I420 színtér megadásához (`outfmt=i420`) meg kell adnod egy `-vc rawi420` kapcsolót is, mivel fourcc ütközés van egy Intel Indeo videó codec-kel.

- Rengeteg módon menthetsz el audiót. A hangot grabbelheted a hang kártyáddal is egy a videó kártya és a line-in között lévő külső kábelen keresztül, vagy a bt878-as chip-be beépített ADC segítségével. A második esetben be kell töltened a btaudio vezérlőt. Olvasd el a `linux/Documentation/sound/btaudio` fájlt (a kernel fájában, nem az MPlayerében) némi leírásért ezen vezérlő használatával kapcsolatban.

- Ha a MEncoder nem tudja megnyitni az audió eszközt, győződj meg róla, hogy tényleg elérhető-e. Gond lehet a hang szerverekkel, mint pl. aRts (KDE) vagy ESD (GNOME). ha full duplex hang kártyád van (majdnem az összes hangkártya tudja már ezt manapság), és KDE-t használsz, próbáld meg bekapcsolni a "full duplex" opciót a hangkártya tulajdonságok menüben.

### 10.1.3. Példák

Dummy kimenet AAlib-re :)

    mplayer -tv driver=dummy:width=640:height=480 -vo aa tv://

Bemenet standard V4L-ről:

    mplayer -tv driver=v4l:width=640:height=480:outfmt=i420 -vc rawi420 -vo xv tv://

Egy sokkal mesterkéltebb példa. Ezzel a MEncoder elmenti a teljes PAL képet, levágja a széleket és deinterlace-eli a képet a linear blend algoritmus segítségével. Az audió 65 kbps-es állandó bitrátával kerül tömörítésre, a LAME codec felhasználásával. Ez a beállítás megfelelő a filmek elmentéséhez.

         mencoder -tv driver=v4l:width=768:height=576 \
         -ovc lavc -lavcopts vcodec=mpeg4:vbitrate=900 \
         -oac mp3lame -lameopts cbr:br=64 \
         -vf crop=720:544:24:16,pp=lb -o output.avi tv://

This will additionally rescale the image to 384x288 and compresses the video with the bitrate of 350kbps in high quality mode. The vqmax option looses the quantizer and allows the video compressor to actually reach so low bitrate even at the expense of the quality. This can be used for capturing long TV series, where the video quality isn't so important.

         mencoder -tv driver=v4l:width=768:height=576 \
         -ovc lavc -lavcopts vcodec=mpeg4:vbitrate=350:vhq:vqmax=31:keyint=300 \
         -oac mp3lame -lameopts cbr:br=48 \
         -vf crop=720:540:24:18,pp=lb,scale=384:288 -sws 1 -o output.avi tv://

Meg lehet adni kisebb képméretet is a `-tv` kapcsolónál és ki lehet hagyni a szoftveres méretezést, de ez a megközelítés a lehető legtöbb információt használja fel és egy kicsit ellenállóbb a zajokkal szemben. A bt8x8 chip-ek a pixel átlagolást csak vízszintesen tudják hardveres korlátok miatt.

Előző | Fel | Következő
10. fejezet - TV | Tartalom | 11. fejezet - Rádió