Tartalomjegyzék

DVB-T Linux alatt

Ezen az oldalon a DVB-T Linux alatti tapasztalataim írom le. Nyilván nem átfogó teszt, mivel egyetlen hardvert próbáltam ki, azt is csak a saját gépemen (vagyis egyetlen Linux disztribúció alatt), de remélhetően megspórol némi időt azoknak, akik hasonlóval kísérletezgetnek. (Vagy nekem, ha kis idő múlva már nem emlékszem, pontosan mi működött, és mi nem).

Az itt leírtak Mandriva 2010.0 disztribúcióra vonatkoznak. A hivatalos csomagokon kívül PLF csomagok is vannak a gépemen.

A leírás eredetileg 2010. februárjában készült, így a sugárzási adatok/táblázatok azóta már változhattak.

Hardver

Teszteléshez egy viszonylag olcsó, egyszerű, USB-s Alcor DTV-1000 DVB-T tuneret választottam.

A tuner pár jellemzője:

tuner botantenna atalakito

Installálás

Miután bedugtam egy szabad USB portra, a számítógép automatikusan betöltötte a szükséges kernel modulokat: mt2060, af9013, dvb_usb_af9015, dvb_usb, dvb_core.

Log alapján az is látszik, hogy a működéséhez szükség van firmware-re is. A firmware-t /lib/firmware alkönyvtárba kell másolni. A szükséges dvb-usb-af9015.fw fájl én erről a címről töltöttem le.

Ettől a ponttól kezdve mindig azt írom le, én milyen programmal, parancssori kapcsolóval értem el a működést. Elegánsan átugrom azt a másik 5-10 módszert, ami webes leírások alapján pont ennyire kellene hogy működjön, de valamiért mégsem megy.

Csatornák keresése

Csatornák keresésénél alapvetően 2 módszer közül választhatunk: vagy átvizsgáljuk a teljes frekvenciatartományt (w_scan programmal), vagy tudjuk melyik torony jeleit van esélyünk fogni, és csak azt ellenőrizzük.

Mivel szerencsére dvb-apps csomag tartalmazza a magyar tornyok adatait (itt találhatunk arról információt, vajon melyik tornyot érdemes választani), így ezt a módszer választottam

scan /usr/share/dvb/dvb-t/hu-Budapest > channels.conf

Segítségül idemásolom a hu-Budapest és channels.conf tartalmát:

hu-Budapest

# Hungary / Budapest
# T freq bw fec_hi fec_lo mod transmission-mode guard-interval hierarchy
# A1.multiplex UHF-55:
# MTV-1 HD Budapest, MTV-2 HD, ATV (Hungary), Hir TV, MR-1 Kossuth R, MR-2 Petofi R, MR-3 Bartok R, Katolikus R
T 746000000 8MHz 3/4 NONE QAM64 8k 1/8 NONE
# C.multiplex UHF-62:
# Duna TV HD, Duna-II. Autonomia, RTL Klub, TV-2 (Hungary), Euronews
T 802000000 8MHz 3/4 NONE QAM64 8k 1/8 NONE

channels.conf

m1 HD:746000000:INVERSION_AUTO:BANDWIDTH_8_MHZ:FEC_3_4:FEC_1_2:QAM_64:TRANSMISSION_MODE_8K:GUARD_INTERVAL_1_8:HIERARCHY_NONE:1001:1002:100
m2 HD:746000000:INVERSION_AUTO:BANDWIDTH_8_MHZ:FEC_3_4:FEC_1_2:QAM_64:TRANSMISSION_MODE_8K:GUARD_INTERVAL_1_8:HIERARCHY_NONE:1011:1012:101
ATV:746000000:INVERSION_AUTO:BANDWIDTH_8_MHZ:FEC_3_4:FEC_1_2:QAM_64:TRANSMISSION_MODE_8K:GUARD_INTERVAL_1_8:HIERARCHY_NONE:1021:1022:102
HirTV:746000000:INVERSION_AUTO:BANDWIDTH_8_MHZ:FEC_3_4:FEC_1_2:QAM_64:TRANSMISSION_MODE_8K:GUARD_INTERVAL_1_8:HIERARCHY_NONE:1031:1032:103
Rádió DVB-T teszt 1:746000000:INVERSION_AUTO:BANDWIDTH_8_MHZ:FEC_3_4:FEC_1_2:QAM_64:TRANSMISSION_MODE_8K:GUARD_INTERVAL_1_8:HIERARCHY_NONE:0:1041:104
Rádió DVB-T teszt 2:746000000:INVERSION_AUTO:BANDWIDTH_8_MHZ:FEC_3_4:FEC_1_2:QAM_64:TRANSMISSION_MODE_8K:GUARD_INTERVAL_1_8:HIERARCHY_NONE:0:1051:105
Rádió DVB-T teszt 3:746000000:INVERSION_AUTO:BANDWIDTH_8_MHZ:FEC_3_4:FEC_1_2:QAM_64:TRANSMISSION_MODE_8K:GUARD_INTERVAL_1_8:HIERARCHY_NONE:0:1061:106
Bootloader_A:746000000:INVERSION_AUTO:BANDWIDTH_8_MHZ:FEC_3_4:FEC_1_2:QAM_64:TRANSMISSION_MODE_8K:GUARD_INTERVAL_1_8:HIERARCHY_NONE:0:0:170
DunaTV HD:802000000:INVERSION_AUTO:BANDWIDTH_8_MHZ:FEC_3_4:FEC_1_2:QAM_64:TRANSMISSION_MODE_8K:GUARD_INTERVAL_1_8:HIERARCHY_NONE:2001:2002:200
Autonomia:802000000:INVERSION_AUTO:BANDWIDTH_8_MHZ:FEC_3_4:FEC_1_2:QAM_64:TRANSMISSION_MODE_8K:GUARD_INTERVAL_1_8:HIERARCHY_NONE:2011:2012:201
RTL Klub:802000000:INVERSION_AUTO:BANDWIDTH_8_MHZ:FEC_3_4:FEC_1_2:QAM_64:TRANSMISSION_MODE_8K:GUARD_INTERVAL_1_8:HIERARCHY_NONE:2021:2022:202
TV2:802000000:INVERSION_AUTO:BANDWIDTH_8_MHZ:FEC_3_4:FEC_1_2:QAM_64:TRANSMISSION_MODE_8K:GUARD_INTERVAL_1_8:HIERARCHY_NONE:2031:2032:203
Euronews EN Teszt:802000000:INVERSION_AUTO:BANDWIDTH_8_MHZ:FEC_3_4:FEC_1_2:QAM_64:TRANSMISSION_MODE_8K:GUARD_INTERVAL_1_8:HIERARCHY_NONE:2041:2042:204
Euronews FR Teszt:802000000:INVERSION_AUTO:BANDWIDTH_8_MHZ:FEC_3_4:FEC_1_2:QAM_64:TRANSMISSION_MODE_8K:GUARD_INTERVAL_1_8:HIERARCHY_NONE:2041:2045:205
Euronews GER Teszt:802000000:INVERSION_AUTO:BANDWIDTH_8_MHZ:FEC_3_4:FEC_1_2:QAM_64:TRANSMISSION_MODE_8K:GUARD_INTERVAL_1_8:HIERARCHY_NONE:2041:2044:206

Utóbbi fájlban érdemes lehet az ATV, HírTV sorait törölni (mert ezek kódolt adások), a 3 Euronews sorból kettőt törölni (ugyanaz az adás 3 különböző nyelven), és esetleg a rádióadások sorai is törölhetőek.

Jelerősség

Ha nem sikerül a fenti módszerekkel behangolni a csatornákat, akkor jó eséllyel nem elég erős/tiszta a jel. A botantennát különböző irányokba elforgatva kísérletezhetünk, vagy használhatunk nagyobb antennát is. (Az igazi a tetőantenna.) Én egy beépített erősítővel rendelkező Hama szobaantennát is próbáltam, az csak akkor működött ha az erősítő be volt kapcsolva, de nem volt maximumra állítva

Ha sikerül a csatornákat behangolni, az persze nem jelenti azt, hogy nézni is tudjuk majd őket :-)

TV nézés

Legkönnyebben a vlc programmal megy a TV nézés:

vlc channels.conf

Csatornát a view/playlist segítségével válthatunk

Érdemes megjegyezni, hogy az SD (720x576) adások (TV2, RTL Klub, ...) dekódolásához nem kell túl erős processzor, de a HD (1440x1080) adások (m1, m2, ...) vételekor bizony nem árt.

Adás felvétele

Tekintve, hogy a jel eleve digitálisan érkezik, az adás könnyen rögzíthető, és nagyon kevés erőforrás szükséges. Én a már korábban említett dvb-apps csomag gnutv programját használtam ehhez:

gnutv -channels channels.conf -out stdout "m1 HD" > teszt.ts

Az elmentett adás a sugárzásnak megfelelően MPEG-TS konténerben lesz elmentve, a videó h264 kódolással, az audió kódolása csatornafüggő. m1 például 2 hangsávot tartalmaz mp2 illetve ac3 kódolással, gnutv mindkét hangsávot rögzíti

A parancs nem túl sok információt ad felvétel közben, de pipe viewer segítségével látszik, hogy HD adás rögzítésekor kb. 820 kbyte/s, míg SD adás rögzítésekor kb. 240 kbyte/s sebességgel érkeznek az adatok. Ebből kiszámolható, hogy 1 órányi HD adás rögzítéséhez kb. 3GB hely szükséges.

Konvertálás

Tekintve, hogy a rögzített adat már megfelelő videó és audió kódolást használ, elvileg nem probléma az MPEG-TS konténer helyett valami más konténerbe (mp4, mkv, avi, ...) menteni az anyagot újrakódolás nélkül. A gyakorlatban ez nekem nem sikerült, pedig próbálkoztam a következőkkel: ffmpeg, transcode, mencoder, ts2ps,...

Ha nem gond az újrakódolás, akkor a következő paranccsal lehet (elég lassan) az előbbiekben elmentett HD adást matroska konténerbe konvertálni:

ffmpeg -threads 2 -i teszt.ts -map 0:0 -vcodec libx264 -vpre max -b 5000k -map 0:1 -acodec libfaac -ac 2 -ab 128k -ar 48000 teszt.mkv