Streaming digitálního satelitního vysílání a jeho distribuce v počítačové síti
Technická zpráva CESNETu
číslo 17/2004
k dispozici též ve formátech PDF,
PostScript a
XML.
Ivo Šmejkal, Bohumila Veselá, Pavel Dušánek
prosinec 2004
Příjem televizního vysílání šířeného prostřednictvím satelitů se stává běžnou součástí vybavení nejen mnohých domácností, ale též řady pracovišť (např. velkých hotelů, škol, informačních center, knihoven atd.). V prvých fázích se používala zpravidla analogová technologie, v posledních několika letech probíhá i zde velmi rychle digitalizace, která analogovou technologii dnes již prakticky vytlačila. Satelitní signál můžeme přijímat buď samostatným satelitním přijímačem nebo prostřednictvím satelitní karty vložené do běžného PC. Právě toto druhé řešení nabízí další zajímavé aplikace a to archivace, video na vyžádání (VOD) a obecně distribuci televizního vysílání v počítačové síti. Hlediska pedagogiky je možné využít satelitní vysílání nejen pro výuku cizích jazyků, ale i v jiných oborech (společenské vědy, geografie, historie atd.). Z pohledu nákladů se nejedná o žádné enormní částky, kromě víceméně standardního vybavení (osobní počítač), pak cena základní soupravy skládající se z paraboly, satelitní karty a digitálního konvertoru se pohybuje již od cca 3000 Kč výše.
Základním problémem distribuce televizního vysílání v počítačové síti není ani tak získávání digitálních dat, ale vzhledem k jejich objemu především jejich efektivní distribuce v počítačové síti.
1 Technická realizace satelitního příjmu
Jak již bylo řečeno v úvodu, základními stavebními prvky distribuce satelitního vysílaní v počítačové síti jsou
- parabola s digitálním konvertorem
- satelitní karta do PC
- osobní počítač pro zpracování a distribuci televizního vysílání
- počítačová síť
- programové prostředky
Základní podmínkou pro příjem satelitního vysílání je volný, nezastavěný výhled jižním směrem. Prakticky jsme příjem ověřovali ze dvou satelitů
- ASTRA (19,2° jihovýchodně)
- HOTBIRD (13,0° jihovýchodně)
V obou případech by pro příjem měla stačit parabola o průměru 60 - 70 cm; my jsme pro příjem používali parabolu o průměru 80 cm. Právě díky větší parabole jsme nezaregistrovali výraznější vliv použitého digitálního konvertoru, neboť u obou satelitů byla kvalita signálu velmi dobrá.
Satelitních karet vhodných pro příjem digitálního televizního vysílaní je celá řada, my jsme se s ohledem na použité programové vybavení (viz níže) zaměřili na doporučené produkty firmy Hauppauge. Prakticky jsme ověřili dva modely těchto karet a to Hauppauge WinTV Nova-s a WinTV Nexus-s. Vzájemný rozdíl mezi těmito kartami je v tom, že karta Nexus-s má navíc hardwarový MPEG-2 dekodér. Vzhledem k tomu, že možnosti tohoto dekodéru jsme nevyužívali vyhoví i jednodušší a lacinější karta Nova-s.
Na počítač, který zpracovává a distribuje digitální signál nejsou kladeny žádné speciální požadavky, v praxi by měl vyhovět každý, který má procesor alespoň s taktem 500 MHz, vnitřní paměti 256 MB a minimálně jeden volný PCI slot. Praktické experimenty jsme prováděli na počítači s procesorem Athlon s frekvencí 1 GHz a pamětí 256 MB. Datové toky pro distribuci jednoho televizního kanálu ve kvalitě MPEG-2 činí přibližně 4 Mbit/s, což je již na hranici reálné propustnosti 10 Mbit/s ethernetových adaptérů. Z tohoto důvodu je víceméně nutné v síti používat technologii FastEthernetu pracující na rychlosti 100 Mbit/s a datové toky v síti optimalizovat nejlépe prostřednictvím multicastu.
2 Programová realizace
Z hlediska programového vybavení padla poměrně jednoznačně volba na skupinu programů VideoLAN. Pod tímto názvem se skrývá kompletní programové řešení pro streaming videa a audia vyvinuté skupinou studentů Ecole centrale Paris a šířené na základě GNU General Public Licence (GPL). VideoLAN je tvořen dvěmi základními komponentami; VideoLAN Client (VLC) a VideoLAN Server (VLS). VLC je implementováno do řady operačních systémů z rodiny Windows, Linux i Mac OS, VLS s podporou satelitních karet je plně dostupné pouze pod operačním systémem Linux. Ideové schéma možností a vnitřních vazeb je na následujícím obrázku.
Obrázek 1: Komponenty a vazby systému VideoLAN
Ověřená implementace VideoLANu je tedy tvořena serverem VLS (verze 0.5.6), který zajišťuje příjem televizního vysílání a jeho distribuci v rámci počítačové síti. VLS může v daném okamžiku přijímat více satelitních programů, podmínkou však je, že všechny musí být vysílány satelitem na stejném kmitočtu a s toutéž polaritou (společný tranpordér). Pro implementaci VLS jsme použili operační systém Linux resp. jeho distribuci Fedora 2. Nové jádro Linuxu 6.2 má již implementovanou podporu pro satelitní karty, takže vlastní zprovoznění satelitního přijmu je jednodušší, než v předchozích verzích Linuxu. Pro zprovoznění je třeba provést několik úprav; zavést ovladače příslušné karty, vytvořit soubory zařízení v adresáři /dev/dvb a přeložit VLS s podporou vstupu z DVB. K překladu je nutné použít knihovnu libdvb verze 0.2.2. Konfiguraci serveru VLS najdete na obrázku.
Z konfigurace programu VLS je patrné, že jsou přijímány 2 satelitní programy (BBC_World a EuroNews), které jsou v multiplexu téhož transpordéru. V rámci počítačové sítě jsou tyto programy šířeny prostřednictvím multicastu na dvou adresách třídy D. Zjednodušeně to znamená, že příslušná data jsou až k poslednímu aktivnímu prvku sítě (router, switch), který má implementovánu podporu multicastu, šířena jediným streamem pro daný program bez ohledu na to, kolik klientů (VLC) prostřednictvím tohoto prvku data přijímá.
Obrázek 3: Výhoda multicastové distribuce
Multicast však často bývá "černou můrou" správců sítě, ale bez jeho podpory snadno může dojít k zahlcení počítačové sítě. Pokud je multicast v síti implementován, ale jsou v síti místa, kde není z nějakého důvodu podporován (nevhodný aktivní prvek, spojovací síť některých providerů atd.), pak můžeme k překlenutí tohoto místa použít gateway prostřednictvím klienta VLC, který přijímá data přes problémové místo unicastem a dále je již šíří standardně multicastem. Možností, jak v praxi realizovat distribuci satelitního vysílání je celá řada a v podstatě záleží především na zkušenostech správce, jak optimálně tuto distribuci navrhne. V prostředí počítačové sítě VŠE se podařilo dosáhnout stavu, že kromě několika výjimek je plně funkční multicast a to i bez nutnosti použití unicastové gateway přes metropolitní síť PASNET, která některé subnety počítačové sítě VŠE spojuje.
Klient VLC (verze 0.8.1) slouží především k velmi kvalitnímu přijmu multimediálních dat a jejich vizualizaci. Může pracovat v prostředí rodiny operačních systémů Windows, Linux, Mac OS a některých dalších. Pracuje velmi efektivně, pro příjem běžného satelitního vysílání postačí v podstatě jakýkoliv počítač s taktem alespoň 800 MHz. Prakticky jsme ověřili jeho použitelnost i k příjmu HDTV, kdy datový tok byl přibližně 18 Mbit/s. V takovém případě je však již nutný procesor třídy Pentium 4 s co možná nejvyšším taktem a samozřejmě síťový adapter třídy FastEthernet. Prostřednictvím klienta VLC můžeme velmi snadno data i zaznamenávat na disk, a pak je kdykoliv později stejným programem znovu přehrát.
Obrázek 4: VLC klient
3 Zkušenosti z provozu a náměty na další experimenty
Jak vyplývá z dosavadního popisu, pro příjem více satelitních kanálů je nezbytné, aby byly šířeny stejným transpordérem. Pokud potřebujeme současně přijímat a šířit více kanálů, které tuto podmínku nesplňují, je nejjednodušší cestou instalace více satelitních karet, eventuelně i parabol. Tento způsob dokonce pokryje i tu variantu, kdy potřebujeme přijímat data i z více satelitů současně.
Další relativně častý je požadavek dynamické změny transpodéru v závislosti na čase. Nabízí se k tomu telnetové rozhranní serveru VLS s příkazy start, stop, browse atd. Tento způsob se nám však nepodařilo úspěšně realizovat, takže bylo nutné spouštět a ukončovat činnost serveru VLS prostřednictvím programu CRON s odpovídajícícmi konfiguračními soubory.
VLS je náročnější na kvalitu a intenzitu přijímaného signálu než standardně dodávané aplikace k satelitním kartám Hauppange. Jestliže příjem prostřednictvím aplikace Digital TV byl bezproblémový, pak příjem s aplikací VLS byl subjektivně též stejně kvalitní, ale vyznačoval se jistou nestabilitou, spojenou s výpadky programu VLS. Přesnější nasměrování paraboly spojené se zvýšením úrovně přijímaného signálu problém odstranilo a v současné době příjem prostřednictvím programu VLS běží nepřetržitě již více než 30 dnů.
Další zajímavá aplikace satelitního příjmu je možnost využít tohoto způsobu i pro připojení k internetu. Technické vybavení pro obousměrné satelitní připojení je však výrazně nákladnější a poplatky za přenos dat nejsou zanedbatelné. Například ale pro školy, které nedisponují dostatečným kanálem pro připojení k internetu, může být zajímavá varianta,kdy data z internetu jsou směrována přes satelit a naopak data do internetu, kterých bývá výrazně méně, jsou distribuována klasickou technologií ( např. pevná linka, GPRS a.j.). Prakticky jsme toto řešení úspěšně ověřili se satelitní kartou Skystar 2 a službou Casablanca, která je poskytována bezplatně prostřednictvím satelitu ASTRA.