Kodowane kanały telewizji satelitarnej w dowolnej aplikacji DVB

Wysłany przez kuba dnia 07-01-04 w dvb, linux

Sasc-ng jest programowym modu³em warunkowego dostêpu (SoftCAM) nowej generacji, przeznaczonym dla systemów linuksowych. Pozwala na ogl±danie kodowanych kana³ów za pomoc± dowolnej aplikacji, posiadaj±cej wsparcie dla DVB, bez modyfikacji jej kodu ¼ród³owego. Dekrypcja odbywa siê w tle i jest przezroczysta dla programu DVB, który traktuje wszystkie kana³y jak FTA.

¬ród³a sasc-ng zawieraj± modu³ j±dra (dvbloopback), który odpowiada za utworzenie wirtualnego adaptera DVB. Program sasc-ng jest mostem pomiêdzy wirtualnym, a prawdziwym urz±dzeniem. Wszystkie ¿±dania przekazywane s± do karty DVB, a wyniki wysy³ane s± spowrotem do wirtualnego urz±dzenia. Je¶li zostanie wykryty kana³ kodowany, strumieñ jest najpierw przepuszczany przez sc lub FFdecsa w celu dekrypcji (sasc opakowuje sc, aby dzia³a³o niezale¿nie i bez u¿ycia VDR). W ten sposób na wirtualny adapter wysy³ane s± tylko czyste dane. Aplikacje DVB powinny korzystaæ w³a¶nie z tego urz±dzenia.

Sasc-ng mo¿na pobraæ z repozytorium svn. Instalacja sprowadza siê do kompilacji programu i modu³u j±dra. W katalogu sc_files powinny znale¼æ siê pliki zwi±zane z sc (utworzy³em linki symboliczne do tych u¿ywanych z VDR).

~/ $ svn co http://OpenSVN.csie.org/sascng sasc-ng
~/ $ cd sasc-ng/
~/sasc-ng $ export DEFAULT_PORT='"/dev/ttyS0",0,0,0'
~/sasc-ng $ make
~/sasc-ng $ make module
~/sasc-ng $ ln -s /video/plugins/* ./sc_files/

Eksport zmiennej DEFAULT_PORT ma na celu ustalenie domy¶lnie u¿ywanego przez sc interfejsu smartcard (w tym przypadku podpiêty pod COM1 programator PHOENIX).

Po kompilacji trzeba za³adowaæ modu³ i uruchomiæ sasc-ng. Obie operacje musz± byæ wykonane z uprawnieniami u¿ytkownika root.

~/sasc-ng % insmod dvbloopback.ko
~/sasc-ng % ./sasc-ng -j 0:1

Opcja '-j 0:1' wskazuje na numery odpowiednio prawdziwego (0) i wirtualnego urz±dzenia (1). Wszystkie aplikacje, które maj± korzystaæ z sasc-ng musz± u¿ywaæ urz±dzenia wirtualnego. Dodatkowo wszystkie kana³y powinny byæ oznaczone jako niekodowane. Od tej pory to sasc-ng bêdzie odpowiedzialne za dekrypcjê, a aplikacji DVB to w ogóle nie bêdzie obchodziæ. Do ogl±dania telewizji mo¿emy u¿yæ nawet zwyk³ego mplayera:

~/ $ mplayer -dvbin card=2 dvb://"TVN"

W przypadku VDR dobrze jest wybraæ w 'Ustawienia' -> 'DVB' -> 'Aktualizuj kana³y' opcje inne ni¿ 'Nazwy i PIDy', czy 'Tylko PIDy'. W przeciwnym razie VDR oznaczy nam odpowiednie kana³y jako kodowane i przy próbie ich nastawienia wy¶wietli komunikat 'Kana³ niedostêpny'. W pliku channels.conf trzeba zmieniæ CAID ka¿dego z kana³ów na 0. VDR nale¿y uruchomiæ z opcj± -D, wskazuj±c± na urz±dzenie wirtualne.

Pomys³ jest na prawdê dobry, jednak prace nad implementacj± nadal trwaj±. Kod jest wysoce eksperymentalny, czêsto ma³o elegancki i pe³ny b³êdów. Lista mo¿liwo¶ci zmienia siê z ka¿dym dniem, dlatego po wiêcej szczegó³ów najlepiej udaæ siê na stronê wiki projektu i forum dvbn. Strona wiki stanowi systematycznie uzupe³nianan± dokumentacjê, a na forum mo¿na znale¼æ naj¶wie¿sze informacje dotycz±ce programu oraz rozwi±zania na potencjalnie napotkane problemy.

 

 

Napisz komentarz