IPTV KHnet

Z KHnetWiki

(Rozdíly mezi verzemi)
Přejít na: navigace, hledání
(Streaming pomocí TV karet a VLC)
 
(Není zobrazeno 29 mezilehlých verzí.)
Řádka 1: Řádka 1:
=Streaming pomocí TV karet a VLC=
=Streaming pomocí TV karet a VLC=
-
'''pozor!''' Dokud to zde trochu nezaktalizuju, tak je přístup v krátkosti asi tento:
 
verze 0.2, DVB-T
verze 0.2, DVB-T
-
http://media.khnet.info:PORT<br>
+
19.2.2012 projekt prakticky pozastaven, uvažujeme o zrušení. Jako náhrada je řešení [http://sledovani.khnet.tv sledovani.khnet.tv].
-
kde port se spočítá jako 8000 + (číslo_multiplexu * 10) + číslo_programu (tedy 8011-8014, 8021-8025, 8031-8033)<br>
+
-
menší streamy, ve čtvrtinovém rozlišení a v kodeku pro windows media player jsou o tisícovku níže (kromě PublicTV a Z1). A přístup je buď mms://media ... nebo mmsh://media ... (MP, VLC).
+
-
Playlisty jsou ke stažení [http://media.khnet.info na serveru]
+
10.12.2013 '''ZRUŠENO'''
==cíle==
==cíle==
-
Vyzkoušet možnosti a náročnost skutečné IPTV v síti khnet, všechny dostupné, volně šiřitelné programy (co lze chytit ve vzduchu, lze šířit v uzavřené síti, viz právní analýza od pilsfree). Upozorňuji, že pojem "síť khnet" znamená, že programy nelze sledovat nikde jinde a nikým jiným, než členy khnet.info. Tedy přes internet to nejde.
+
Vyzkoušet možnosti a náročnost skutečné IPTV v síti khnet, všechny dostupné, volně šiřitelné programy (co lze chytit ve vzduchu, lze šířit v uzavřené síti, viz právní analýza od pilsfree). Upozorňuji, že pojem "síť khnet" znamená, že programy nelze sledovat nikde jinde a nikým jiným, než členy khnet.info. Tedy přes internet to nejde. To, že je toto vysílání zdarma pro naše členy neznamená, že jsou členové oproštěni od placení poplatků České Televizi.
-
Kanály jsou šířeny v originálním formátu, tedy MPEG2 s průměrem 4Mbit datového toku.
+
Kanály jsou šířeny v originálním formátu, tedy MPEG2 s průměrem 4Mbit datového toku.<br>
 +
Restream je duplikát programu, ve čtvrtinovém rozlišení a kodeku mp43 (WMV9, DivX3) přehratelné i ve Windows Media Playeru. Datový tok cca 700kbit.
-
{|  
+
Jak spustit originál: http://media.khnet.info:PORT/nazevprogramu
-
! Program !! port !! multiplex
+
*kde port se spočítá jako 7010 + číslo_multiplexu
 +
 
 +
Jak spustit malý: mms://media.khnet.info:PORT
 +
*kde port je od 8001
 +
*do VLC je nutné místo "mms" psát "mmsh"
 +
 
 +
Playlisty jsou ke stažení [http://stream.khnet.tv na serveru]
 +
 
 +
{| border=1
 +
! Program !! url !! restream port
|-
|-
-
|ČT1 | 8011 | 1
+
|ČT1 || 7011/ct1 || 8001
|-
|-
-
|ČT2 | 8012 | 1
+
|ČT2 || 7011/ct2 || 8002
|-
|-
-
|ČT24 | 8013 | 1
+
|ČT24 || 7011/ct24 || 8003
|-
|-
-
|ČT4 | 8014 | 1
+
|ČT4 || 7011/ct4 || 8004
|-
|-
-
|Nova | 8021 | 2
+
|Nova || 7012/nova || 8005
|-
|-
-
|NovaCinema | 8022 | 2
+
|NovaCinema || 7012/novacinema || 8006
|-
|-
-
|Prima | 8023 | 2
+
|Prima || 7012/prima || 8007
|-
|-
-
|PrimaCool | 8024 | 2
+
|PrimaCool || 7012/primacool || 8008
|-
|-
-
|BarrandovTV | 8025 | 2
+
|BarrandovTV || 7012/barrandov || 8009
|-
|-
-
|Óčko | 8031 | 3
+
|PrimaLove || 7012/primalove || 8010
-
|-
+
-
|PublicTV | 8032 | 3
+
-
|-
+
-
|Z1 | 8033 | 3
+
|}
|}
'''na wifi připojeních to nikdy nezkoušejte moc dlouho (raději vůbec), zbytečně brzdíte ostatním provoz!'''
'''na wifi připojeních to nikdy nezkoušejte moc dlouho (raději vůbec), zbytečně brzdíte ostatním provoz!'''
-
Přehrávání vyzkoušeno pouze ve [http://www.videolan.org/vlc/ VLC] playeru (je naštěstí multiplatformní, funguje všude a na všem), ve windows MediaPlayer to nějak nejede. Je nutné mít nainstalovaný správný kodek, funguje to s ffdshow (lze využít balík [http://www.cccp-project.net CCCP]). VLC má ovšem kodeky vlastní.<br>
+
Přehrávání vyzkoušeno pouze ve [http://www.videolan.org/vlc/ VLC] playeru (je naštěstí multiplatformní, funguje všude a na všem), ve windows MediaPlayer to nějak nejede (krom těch menších streamů). Je nutné mít nainstalovaný správný kodek, funguje to s ffdshow (lze využít balík [http://www.cccp-project.net CCCP]). VLC má ovšem kodeky vlastní. Dle posledních zpráv lze originál přehrát snad ve všem, včetně set-top-boxu Amino a při troše snahy i v PopcornHour.<br>
-
Do VLC se to píše jako Network Stream ([[VLC_navod|malý návod]]) a vybrat se musí způsob HTTP/HTTPS/FTP/MMS - tam se vloží vybraný kanál z odstavce o trochu výše. Své dojmy, nápady, návrhy či jiná sdělení pište do [http://forum.khnet.info/viewforum.php?f=35 fóra IPTV].
+
Do VLC se to píše jako Network Stream ([[VLC_navod|malý návod]]) a vybrat se musí způsob HTTP/HTTPS/FTP/MMS - tam se vloží vybraný kanál z odstavce o trochu výše (případně se přímo otevře playlist zmíněný výše). Své dojmy, nápady, návrhy či jiná sdělení pište do [http://forum.khnet.info/viewforum.php?f=35 fóra IPTV].
-
 
+
-
Pro slabší spoje je již distribuován i méně náročnější stream. Je ve čtvrtinovém rozlišení (368x294) a datovým tokem cca 650kbit. Přehrát již jde i ve WindowsMediaPlayeru, kanály jsou shodné, pouze na portech o tisíc nižších, tedy např. mms://media.khnet.info:8001 (pozor, již bez toho za lomítkem; pro VLC je potřeba místo ''mms'' psát ''mmsh'').
+
-
 
+
-
<!--Kanály s číslem větším, než 4 jsou přebírané streamy. Většinou ve čtvrtinovém rozlišení a méně než polovičním datovým tokem. Bohužel moc nefungují.-->
+
<!--Rádio Beat:<br>
<!--Rádio Beat:<br>
Řádka 66: Řádka 65:
Karta č. 4 v PCI slotu, 1 až 3 v PCI-X slotech.
Karta č. 4 v PCI slotu, 1 až 3 v PCI-X slotech.
 +
 +
===anténní systém===
 +
ColorSuper (yagii) na nástavci [http://gallery.khnet.info/v/khnet/montaze/kix_tv/ příhradového stožáru] serveru [http://mapa.czfree.net/#lat=49.9607128154837&lng=15.2796944975853&zoom=17&autofilter=1&type=k&node=19823& KIX]. Nasměrovaná na Bukovou Horu. Vzdálenost cca 110km, nepřímá viditelnost.
 +
 +
Anténa má v sobě cosi jako bleskojistku, je ale osazena ještě samostatná, zeměná přímo na stožáru.
 +
 +
Koax (KH21, útlum cca 28db/100m) stažen do horní serverovny, kde je provedena příprava pro druhou anténu (tedy slučovač) a laděným kanálovým zesilovačem (Teroz, kanály 33 a 55-62 se zesílením 25dB) puštěno cca 40m kabelem do spodní serverovny, kde je již pouze šestinásobný rozbočovač. Dvounásobný rozbočovač je též v horní serverovně, je připraven pro rozvod STA v paneláku (přes galvanický oddělovač). Celé toto řešení dle měření přenosnou LCD televizí Sencor přináší přibližně nulový zisk, tedy ani ztráty. Pozdější měření profi měřákem ovšem ukázalo, že tam chybí cca 20db. Takže v rámci zapojení STA rozvodů v paneláku byl vyhozen náš rozbočovač a do kabelu puštěn signál z domovního zesilovače. Tím máme v serverovně o nějakých 50db víc, než předtím.
 +
 +
[[Tabulka_televiznich_kanalu]]
 +
 +
Stav signálu, měřeno utilitou femon 9.7.2009 12:00
 +
'''MUX 1''' signal baba | snr fefe | ber 00000a84 | unc 00000000
 +
'''MUX 2''' signal bcbc | snr ffff | ber 00000310 | unc 00000000
 +
'''MUX 3''' signal a2a2 | snr fefe | ber 000009a6 | unc 00000000
 +
 +
Buková Hora momentálně vysílá 100kW multiplexy 1 až 3.
 +
 +
Od 4.5.2011 není tento anténní systém používán. STA v domě má vlastní antény (rybí kost) a my signál bereme z linkového zesilovače. Jako primární je vysílač Krásno (Pardubice), jen Multiplex 3 je stále přijímán z Bukové Hory.
==software==
==software==
Řádka 75: Řádka 92:
  options saa7134-alsa index=1,2,3,4
  options saa7134-alsa index=1,2,3,4
-
modul saa7134-alsa natahován explicitně v rc.conf, automaticky v modprobe.conf to nějak nefungovalo.
+
modul saa7134-alsa natahován explicitně v rc.conf, automaticky v modprobe.conf to nějak nefungovalo. Pro DVB-T není potřeba.
 +
 
 +
Pro funkčnost DVB části této karty je nutné mít v /lib/firmware soubor s firmware dvb-fe-tda10046.fw. V jádru 2.6.24 nebyl.
 +
je nutné opravit script Documentation/dvb/get_dvb_firmware
 +
v procedurách tda10045 a tda10046 opravit:
 +
my $url = "http://www.tt-download.com/download/updates/219/$sourcefile"
 +
a spustit ./get_dvb_firmware tda10046
 +
výsledný soubor dvb-fe-tda10046.fw zkopírovat do /lib/firmware a reloadovat všechny saa moduly
[http://www.videolan.org VLC]<br>
[http://www.videolan.org VLC]<br>
Závislosti vyřešeny pomocí balíčku (pacman -Sy vlc), posléze odinstalovány balíčky ffmpeg, x264 a vlastní vlc (překlad ze zdrojáků). <br>
Závislosti vyřešeny pomocí balíčku (pacman -Sy vlc), posléze odinstalovány balíčky ffmpeg, x264 a vlastní vlc (překlad ze zdrojáků). <br>
[http://gpac.sourceforge.net/home_download.php gpac]
[http://gpac.sourceforge.net/home_download.php gpac]
 +
 +
VLC má problém s memory leak při mpeg2 inputu. Zjevně záleží na kvalitě příjmu, pokud je to v pohodě, bez velkých výpadku, funguje to správně. A je jedno, jestli je to přímo z DVB karty, nebo restream s inputem z http. Na webu je k nalezení spousta řešení ([https://trac.videolan.org/vlc/changeset/4774dc6c9f7b04b40f90e4edc9ad1a1f8d256f1d]), žádné prý nefunguje dokonale. Vyřešeno je to prý až ve verzi 1.0.0 (ale nezkoušel jsem). Zatím se jako dostatečné řešení jeví toto:
 +
/modules/demux/mpeg/mpga.c
 +
řádek cca 360, static void Close( vlc_object_t * p_this)
 +
přidat if ( p_sys->p_block_in ) block_Release( p_sys->p_block_in );
 +
za obdobný týkající se p_block_out
 +
 +
a také možná pomáhá parametr --no-spu
 +
 +
Po těchto úpravách vypadá streaming pomocí VLC stabilnější, než getstream ([http://silicon-verl.de/home/flo/projects/streaming/download/getstream2-20081204.tgz]), který též padal jak hrušky.
 +
 +
Streaming hlídá sada scriptů:
 +
#multiplexy každé 4 minuty, [[IPTV_KHnet_dvbtwatchdog|zkouška]] pokusem o připojení (wget) na jeden z http portů. Nepovede-li se, pokusí process shodit a nastartovat spouštěcím [[IPTV_KHnet_dvbstartscript|scriptem]] znovu.
 +
#restreaming každých 5 minut, [[IPTV_KHnet_dvbtwatchdog2|zkouška]] pokusem o připojení (scan přes nc). Zkouší se každý port. Nepovede-li se, spustí se startovací [[IPTV_KHnet_dvbrestreamstartscript|script]], který si ohlídá, zda proces ještě neběží (tedy ho zabije).
 +
#všechny procesy VLC jsou každých 15 minut kontrolovány na obsazenou [[IPTV_KHnet_vlcmemorycheck|paměť]] (RSS). Při přesáhnutí 300MB jsou nekompromisně zabité. Nahození zajistí předchozí scripty.
 +
#RSS procesů jednotlivých multiplexů je vynášená do [http://media.khnet.info/hotsanic/vlcmem/connections.html grafu].
 +
 +
neexistuje žádný start/script, i spouštění zajistí tyto scripty z cronu.
...<br>
...<br>
Řádka 88: Řádka 130:
balík x264 je kompilovaný ze zdrojů, ovšem bez valného výsledku. Stream se mi nedaří přehrát. Nemluvě o znatelně vyšší náročnosti na CPU (odhad 2-3x).
balík x264 je kompilovaný ze zdrojů, ovšem bez valného výsledku. Stream se mi nedaří přehrát. Nemluvě o znatelně vyšší náročnosti na CPU (odhad 2-3x).
-
při definici input streamu (tedy čtení z tv karty) vlc ignoruje cestu adev=/dev/dsp# (zvuk), vždy použije /dev/dsp. Je nutné přidat parametr --v4l-dev /dev/dsp#
+
streaming pomocí rtsp je ve verzi 0.8.6f prakticky nepoužitelné, nefunguje žádný timeout (ani nelze ladit). Pokud klient skončí s příjmem kanálu neregulérně (zásek widlí, pád VLC nebo sítě), server stream posílá pořád dál, nelze to ukončit jinak, než zhozením procesu na serveru. Je to vlastnost protokolu, dle bugzilly vlc se plánuje nějaké řešení, asi do verze pozdější 1.0.0
-
je nutné parametrizovat sampling zvuku. default je asi 48kHz a u těchto karet způsobuje MickeyMouseSound (terminus technicus z nějaké diskuse). Musí se použít 32kHz.
+
nefunguje parametr --ttl (je zjevně pouze pro multicast), lze obejít nastavením iptables (-t mangle -A POSTROUTING ... -j TTL --set-ttl ##)
-
streaming pomocí rtsp je ve verzi 0.8.6f prakticky nepoužitelné, nefunguje žádný timeout (ani nelze ladit). Pokud klient skončí s příjmem kanálu neregulérně (zásek widlí, pád VLC nebo sítě), server stream posílá pořád dál, nelze to ukončit jinak, než zhozením procesu na serveru.
+
rádio se nedaří naladit přímo VLCčkem, je nutné vedle pustit pomocí [http://www.stanford.edu/~blp/fmtools/ fmtools] (a nechat běžet). VLC jsem na toto zavrhnul a použit je [http://www.icecast.org/ices.php ices2] a stream (po dvojitém recodingu do ogg) posílán na IceCast server (již běží na http://hekate.khnet.info:9000).
-
nefunguje parametr --ttl, lze obejít nastavením iptables (-t mangle -A POSTROUTING ... -j TTL --set-ttl ##)
+
[http://media.khnet.info/hotsanic/media.html Náročnost] CPU se pohybuje okolo 30-40 každé jádro, load okolo 4. Není zajištěna závislost na počtu on-line klientů, maximum zatím bylo cca 3 a na vytížení to nijak extra poznat nebylo. Pokus spustit 14 instancí VLC na jednom počítači byl poměrně úspěšný, byť toho Core2 na 2.6GHz mělo naprosto plné zuby. Ale server to kromě datového toku na síťovce (přes 80Mbit, trochu jsem při pokusu zvýšil bitrate) nijak nepoznal. Největší část výkonu berou restreamy do mp43, stream čistého multiplexu stojí pouhých pár procent CPU.
-
rádio se nedaří naladit přímo VLCčkem, je nutné vedle pustit pomocí [http://www.stanford.edu/~blp/fmtools/ fmtools] (a nechat běžet). VLC jsem na toto zavrhnul a použit je [http://www.icecast.org/ices.php ices2] a stream (po dvojitém recodingu do ogg) posílán na IceCast server (již běží na http://hekate.khnet.info:9000).
+
EPG: http://epg.evkanet.czf/export2.php (je to blokovaný pro servery, tak to nikdo ani nezkoušejte).
-
[http://media.khnet.info/hotsanic/media.html Náročnost] CPU se pohybuje okolo 20-30 každé jádro, load okolo 1. Není zatím zajištěna závislost na počtu on-line klientů, maximum zatím bylo cca 3 a na vytížení to nijak extra poznat nebylo. Pokus spustit 14 instancí VLC na jednom počítači byl poměrně úspěšný, byť toho Core2 na 2.6GHz mělo naprosto plné zuby. Ale server to kromě datového toku na síťovce (přes 80Mbit, trochu jsem při pokusu zvýšil bitrate) nijak nepoznal.
+
==HW přehrávače==
 +
===Asus O!Play HDP-R1===
 +
Možná to bude platit i o novějších verzích. Stačí se přihlásit telnetem a zadat tyto příkazy. A pořád do kolečka pro všechny kanály. Asus to používá bez nějakých indexů, takže řádek v jednom souboru musí odpovídat stejnému v tom druhém.
-
Náročnost na sběrnice. Odhaduji na cca 25MB/s pro jeden analogový kanál. Karta je poměrně blbá, data dává v kódování [http://wiki.multimedia.cx/index.php?title=YCbCr_4:2:0 I420] (12 bitů na pixel). Naštěstí by měla používat DMA (existuje vůbec něco, co to neumí?). <!--V serveru je ještě Adaptec3960 SCSI řadič (pro streamer) a tři síťové karty na PCIe (integrovaná a dual intel1000/PT). Určen je především pro routing a firewalling - server masarka. Potenciál routingu je možná až ke gigabitu (30 panelákových klientů), což je dalších 5 virtuálních TV karet ... -->
+
echo "KHnet CT1" >>/usr/local/etc/dvdplayer/TVStationFavorite
 +
echo "http://media.khnet.info:8011" >>/usr/local/etc/dvdplayer/TVStationUrl
-
Nehodlám řešit streaming pro WindowsMediaPlayer. Prostě to nejde. V nejlepším případě jsem to rozjel pouze za pomoci proprietálního kodeku MS ([http://wiki.multimedia.cx/index.php?title=FourCC FourCC] MP43), který ale zjevně není kompatibilní s MPEG4-ASP. Také mám pocit, že je náročnější na CPU a kvalita je o něco horší. Ze všech ostatních testů je výsledek - nejde to. Maximálně zvuk, obraz jenom černý ... Závislost na instalovaných kodekách nezjištěna. Používám balík CCCP a v něm je ffdshow, které umí snad vše. WMP si prostě něco myslí a neumím to ohnout. Možná je problém ve verzi ffmpeg kodecích (viz poznámka o nutnosti rok staré verze), ale nové zkoušet nemá smysl. Kromě toho soubor kódovaný stejným kodekem jako stream přehrát lze. Online ale ne.<br>
+
Po této úpravě je IPTV k nalezení v menu Online média / Internet TV / Favorite. Je to na konci seznamu ... ale přerovnání těch dvou souborů asi nic nebrání.
-
Vzhledem k dostatku výpočetního výkonu ale asi poběží duplikát všech programů pustitelný i v media playeru. Případné podrobnosti v první kapitole.
+
-
EPG: http://epg.evkanet.czf/export2.php (je to blokovaný pro servery, tak to nikdo ani nezkoušejte).
+
Trochu nevýhoda této krabičky (a jí podobných) je jejich univerzálnost. Pokud někdo nenaprogramuje extra podporu pro "televizi", chová se k tomu vlastně jako k jiným souborům. Tedy nelze přepínat sem tam jedním čudlíkem, nelze zvolit přímo kanál. Musí se najít v menu, stisknout enter. Pro přechod na jiný kanál se aktuální musí stopnout, nalistovat jiný a opět enter. A je to o dost pomalejší, než přepínání na běžné normální televizi. Ale zase je hodně moc na výběr, byť většinou zahraničních kanálů.
==Odkazy==
==Odkazy==
-
[http://www.digizone.cz/clanky/kodovani-pro-dvb-t-mpeg-2-nebo-mpeg-4-avc/ Typy kódování]
+
[http://www.digizone.cz/ www.digizone.cz]<br>
 +
[http://www.digizone.cz/clanky/kodovani-pro-dvb-t-mpeg-2-nebo-mpeg-4-avc/ Typy kódování]<br>
 +
[http://www.digitalne.tv/ www.digitalne.tv]<br>
[[IPTV_KHnet_oldanalog|Původní článek o analogové verzi]]
[[IPTV_KHnet_oldanalog|Původní článek o analogové verzi]]
[[Kategorie:Howto]][[Kategorie:Zdroje]][[Kategorie:System]]
[[Kategorie:Howto]][[Kategorie:Zdroje]][[Kategorie:System]]

Aktuální verze z 10. 12. 2013, 09:10

Obsah

Streaming pomocí TV karet a VLC

verze 0.2, DVB-T

19.2.2012 projekt prakticky pozastaven, uvažujeme o zrušení. Jako náhrada je řešení sledovani.khnet.tv.

10.12.2013 ZRUŠENO

cíle

Vyzkoušet možnosti a náročnost skutečné IPTV v síti khnet, všechny dostupné, volně šiřitelné programy (co lze chytit ve vzduchu, lze šířit v uzavřené síti, viz právní analýza od pilsfree). Upozorňuji, že pojem "síť khnet" znamená, že programy nelze sledovat nikde jinde a nikým jiným, než členy khnet.info. Tedy přes internet to nejde. To, že je toto vysílání zdarma pro naše členy neznamená, že jsou členové oproštěni od placení poplatků České Televizi.

Kanály jsou šířeny v originálním formátu, tedy MPEG2 s průměrem 4Mbit datového toku.
Restream je duplikát programu, ve čtvrtinovém rozlišení a kodeku mp43 (WMV9, DivX3) přehratelné i ve Windows Media Playeru. Datový tok cca 700kbit.

Jak spustit originál: http://media.khnet.info:PORT/nazevprogramu
*kde port se spočítá jako 7010 + číslo_multiplexu
Jak spustit malý: mms://media.khnet.info:PORT
*kde port je od 8001
*do VLC je nutné místo "mms" psát "mmsh"

Playlisty jsou ke stažení na serveru

Program url restream port
ČT1 7011/ct1 8001
ČT2 7011/ct2 8002
ČT24 7011/ct24 8003
ČT4 7011/ct4 8004
Nova 7012/nova 8005
NovaCinema 7012/novacinema 8006
Prima 7012/prima 8007
PrimaCool 7012/primacool 8008
BarrandovTV 7012/barrandov 8009
PrimaLove 7012/primalove 8010

na wifi připojeních to nikdy nezkoušejte moc dlouho (raději vůbec), zbytečně brzdíte ostatním provoz!

Přehrávání vyzkoušeno pouze ve VLC playeru (je naštěstí multiplatformní, funguje všude a na všem), ve windows MediaPlayer to nějak nejede (krom těch menších streamů). Je nutné mít nainstalovaný správný kodek, funguje to s ffdshow (lze využít balík CCCP). VLC má ovšem kodeky vlastní. Dle posledních zpráv lze originál přehrát snad ve všem, včetně set-top-boxu Amino a při troše snahy i v PopcornHour.

Do VLC se to píše jako Network Stream (malý návod) a vybrat se musí způsob HTTP/HTTPS/FTP/MMS - tam se vloží vybraný kanál z odstavce o trochu výše (případně se přímo otevře playlist zmíněný výše). Své dojmy, nápady, návrhy či jiná sdělení pište do fóra IPTV.


hardware

server Fujitsu Econel 200 S2 Xeon E5310 1.6GHz (quadcore, 2ks), chipset intel5000V, 2GB RAM
TV Asus P7131 Hybrid (4ks)

Je inzerovaný jako tichý. Ale v pojetí fujitsu je to tiché tak možná do hlučné kanceláře. Pokud běží všechny větráky, je to docela turbína (3x 120mm větrák cca 1500 otáček, plus zdroj a aktivní 1U na druhém procesoru). Tok vzduchu uvnitř moc dobře vyřešen není.
Ale nebyl moc drahý, 18 tisíc s daní plus processor a karty.

Karta č. 4 v PCI slotu, 1 až 3 v PCI-X slotech.

anténní systém

ColorSuper (yagii) na nástavci příhradového stožáru serveru KIX. Nasměrovaná na Bukovou Horu. Vzdálenost cca 110km, nepřímá viditelnost.

Anténa má v sobě cosi jako bleskojistku, je ale osazena ještě samostatná, zeměná přímo na stožáru.

Koax (KH21, útlum cca 28db/100m) stažen do horní serverovny, kde je provedena příprava pro druhou anténu (tedy slučovač) a laděným kanálovým zesilovačem (Teroz, kanály 33 a 55-62 se zesílením 25dB) puštěno cca 40m kabelem do spodní serverovny, kde je již pouze šestinásobný rozbočovač. Dvounásobný rozbočovač je též v horní serverovně, je připraven pro rozvod STA v paneláku (přes galvanický oddělovač). Celé toto řešení dle měření přenosnou LCD televizí Sencor přináší přibližně nulový zisk, tedy ani ztráty. Pozdější měření profi měřákem ovšem ukázalo, že tam chybí cca 20db. Takže v rámci zapojení STA rozvodů v paneláku byl vyhozen náš rozbočovač a do kabelu puštěn signál z domovního zesilovače. Tím máme v serverovně o nějakých 50db víc, než předtím.

Tabulka_televiznich_kanalu

Stav signálu, měřeno utilitou femon 9.7.2009 12:00

MUX 1 signal baba | snr fefe | ber 00000a84 | unc 00000000
MUX 2 signal bcbc | snr ffff | ber 00000310 | unc 00000000
MUX 3 signal a2a2 | snr fefe | ber 000009a6 | unc 00000000

Buková Hora momentálně vysílá 100kW multiplexy 1 až 3.

Od 4.5.2011 není tento anténní systém používán. STA v domě má vlastní antény (rybí kost) a my signál bereme z linkového zesilovače. Jako primární je vysílač Krásno (Pardubice), jen Multiplex 3 je stále přijímán z Bukové Hory.

software

Linux kernel 2.6.24 (x86_64)
modul saa7134 a saa7134-alsa

modprobe.conf:

options saa7134 card=112,112,112,112 tuner=54,54,54,54 video_nr=1,2,3,4 vbi_nr=1,2,3,4 radio_nr=1,2,3,4 gpio_tracking=1,1,1,1 i2c_scan=1,1,1,1
options saa7134-alsa index=1,2,3,4

modul saa7134-alsa natahován explicitně v rc.conf, automaticky v modprobe.conf to nějak nefungovalo. Pro DVB-T není potřeba.

Pro funkčnost DVB části této karty je nutné mít v /lib/firmware soubor s firmware dvb-fe-tda10046.fw. V jádru 2.6.24 nebyl.

je nutné opravit script Documentation/dvb/get_dvb_firmware
v procedurách tda10045 a tda10046 opravit:
my $url = "http://www.tt-download.com/download/updates/219/$sourcefile"
a spustit ./get_dvb_firmware tda10046
výsledný soubor dvb-fe-tda10046.fw zkopírovat do /lib/firmware a reloadovat všechny saa moduly

VLC
Závislosti vyřešeny pomocí balíčku (pacman -Sy vlc), posléze odinstalovány balíčky ffmpeg, x264 a vlastní vlc (překlad ze zdrojáků).
gpac

VLC má problém s memory leak při mpeg2 inputu. Zjevně záleží na kvalitě příjmu, pokud je to v pohodě, bez velkých výpadku, funguje to správně. A je jedno, jestli je to přímo z DVB karty, nebo restream s inputem z http. Na webu je k nalezení spousta řešení ([1]), žádné prý nefunguje dokonale. Vyřešeno je to prý až ve verzi 1.0.0 (ale nezkoušel jsem). Zatím se jako dostatečné řešení jeví toto:

/modules/demux/mpeg/mpga.c
řádek cca 360, static void Close( vlc_object_t * p_this)
přidat if ( p_sys->p_block_in ) block_Release( p_sys->p_block_in );
za obdobný týkající se p_block_out

a také možná pomáhá parametr --no-spu

Po těchto úpravách vypadá streaming pomocí VLC stabilnější, než getstream ([2]), který též padal jak hrušky.

Streaming hlídá sada scriptů:

  1. multiplexy každé 4 minuty, zkouška pokusem o připojení (wget) na jeden z http portů. Nepovede-li se, pokusí process shodit a nastartovat spouštěcím scriptem znovu.
  2. restreaming každých 5 minut, zkouška pokusem o připojení (scan přes nc). Zkouší se každý port. Nepovede-li se, spustí se startovací script, který si ohlídá, zda proces ještě neběží (tedy ho zabije).
  3. všechny procesy VLC jsou každých 15 minut kontrolovány na obsazenou paměť (RSS). Při přesáhnutí 300MB jsou nekompromisně zabité. Nahození zajistí předchozí scripty.
  4. RSS procesů jednotlivých multiplexů je vynášená do grafu.

neexistuje žádný start/script, i spouštění zajistí tyto scripty z cronu.

...
poznámečky:

nové verze kodeků ffmpeg (2.5.2008, poslední balíček archlinux i svn snapshot) mají nemilou vlastnost - nelze určit bitrate ve vlc, parametr je naprosto ignorován. Pro plný PAL (720x576) nebyl problém generovat 16Mbit datový tok (přitom vizuálně to nebylo nijak znatelně lepší, než současný 2Mbit). Stejně se chová i binární instalace windows VLC (0.8.6f). Je nutné použít verzi starší - vyzkoušen ffmpeg-20070505.tar.gz, funguje bezproblémově (tedy pro mp4v).

balík x264 je kompilovaný ze zdrojů, ovšem bez valného výsledku. Stream se mi nedaří přehrát. Nemluvě o znatelně vyšší náročnosti na CPU (odhad 2-3x).

streaming pomocí rtsp je ve verzi 0.8.6f prakticky nepoužitelné, nefunguje žádný timeout (ani nelze ladit). Pokud klient skončí s příjmem kanálu neregulérně (zásek widlí, pád VLC nebo sítě), server stream posílá pořád dál, nelze to ukončit jinak, než zhozením procesu na serveru. Je to vlastnost protokolu, dle bugzilly vlc se plánuje nějaké řešení, asi do verze pozdější 1.0.0

nefunguje parametr --ttl (je zjevně pouze pro multicast), lze obejít nastavením iptables (-t mangle -A POSTROUTING ... -j TTL --set-ttl ##)

rádio se nedaří naladit přímo VLCčkem, je nutné vedle pustit pomocí fmtools (a nechat běžet). VLC jsem na toto zavrhnul a použit je ices2 a stream (po dvojitém recodingu do ogg) posílán na IceCast server (již běží na http://hekate.khnet.info:9000).

Náročnost CPU se pohybuje okolo 30-40 každé jádro, load okolo 4. Není zajištěna závislost na počtu on-line klientů, maximum zatím bylo cca 3 a na vytížení to nijak extra poznat nebylo. Pokus spustit 14 instancí VLC na jednom počítači byl poměrně úspěšný, byť toho Core2 na 2.6GHz mělo naprosto plné zuby. Ale server to kromě datového toku na síťovce (přes 80Mbit, trochu jsem při pokusu zvýšil bitrate) nijak nepoznal. Největší část výkonu berou restreamy do mp43, stream čistého multiplexu stojí pouhých pár procent CPU.

EPG: http://epg.evkanet.czf/export2.php (je to blokovaný pro servery, tak to nikdo ani nezkoušejte).

HW přehrávače

Asus O!Play HDP-R1

Možná to bude platit i o novějších verzích. Stačí se přihlásit telnetem a zadat tyto příkazy. A pořád do kolečka pro všechny kanály. Asus to používá bez nějakých indexů, takže řádek v jednom souboru musí odpovídat stejnému v tom druhém.

echo "KHnet CT1" >>/usr/local/etc/dvdplayer/TVStationFavorite
echo "http://media.khnet.info:8011" >>/usr/local/etc/dvdplayer/TVStationUrl

Po této úpravě je IPTV k nalezení v menu Online média / Internet TV / Favorite. Je to až na konci seznamu ... ale přerovnání těch dvou souborů asi nic nebrání.

Trochu nevýhoda této krabičky (a jí podobných) je jejich univerzálnost. Pokud někdo nenaprogramuje extra podporu pro "televizi", chová se k tomu vlastně jako k jiným souborům. Tedy nelze přepínat sem tam jedním čudlíkem, nelze zvolit přímo kanál. Musí se najít v menu, stisknout enter. Pro přechod na jiný kanál se aktuální musí stopnout, nalistovat jiný a opět enter. A je to o dost pomalejší, než přepínání na běžné normální televizi. Ale zase je hodně moc na výběr, byť většinou zahraničních kanálů.

Odkazy

www.digizone.cz
Typy kódování
www.digitalne.tv

Původní článek o analogové verzi

Osobní nástroje