Komplexní řešení plně digitální televize.
Digitální vysíláni je hrozně kontroverzní záležitost. Na jedné straně obchodníci vychvalující, jak je to úžasné, na straně druhé diváci zjišťující, že to nebude tak růžové jak obchodník vychvaloval a záměrně zatajil dost podstatné nevýhody. A že to, na co byli zvyklí z analogové televize tady není až takovou samozřejmostí. Snažil jsem se vytvořit takové řešení, aby všechny nevýhody pokud možno odstranilo a vrátil zpět komfort, na který byl člověk zvyklý u analogového vysílání.
Digitální vysílání jak ho známe
Výhody a nevýhody.
Začnu jednou velkou společnou nevýhodou, kterou je kvalita obrazu. Tu jedinou se zřejmě nikomu nepodaří vyřešit, protože co nebylo vysíláno nikde jinde nelze získat.
Plynule přejdeme na dnes nejvíce využívanou formu, tedy pozemní, kabelové či satelitní vzdušné vysílání. Je zdarma, vysílá v něm kolem patnácti stanic a něco málo rádii. Spolu s sebou ještě nese Digitální informaci o televizním programu na týden dopředu a samozřejmě teletext. Nevýhody vám jistě vyplynuly při pořízení SetTopBoxu ( dále jen STB). Lze se dívat s jedním STB jen na jednu televizi, nahrávat se musí starou analogovou cestou, případně zakoupit dražší STB s harddiskem. Jenže tu nahrávku pak nelze přenést do ložnice a tam si to pustit.
Druhou formou je IPTV, služba poskytované poskytovateli internetu. Na její příjem ani nemusíte mít anténu, stačí vám internetová přípojka. Nevýhody jsou ovšem ještě horší. Zatímco vzdušné vysílání lze sledovat, při koupi dalších STB i na několika přístrojích, IPTV nelze. Rozdíl je ve způsobu příjmu. Zatímco vzduchem vám na příslušné frekvenci letí celý balík programů najednou, IPTV STB si řekne vašemu poskytovateli o vysílání a ten mu pouští právě vždy jen ten jeden program ke sledování. Navíc IPTV sdílí šířku pásma s internetem, takže se mohou vzájemně ovlivňovat. Když byste chtěli sledovat na více televizích, je to buď zhola nemožné, nebo v lepším případě za příplatek a to ještě s omezením tak na dvě tři. Nahrávání by mohlo být řešeno na straně providera, ale buď není nebo opět za příplatek.
Koncept a teorie
Ať si výrobci či prodejci STB říkají co chtějí, krásnou vlastností digitálního vysílaní (dále jen DVB - digital video broadcast) je schopnost příjímat všechny programy, které se na dané frekvenci nacházejí a to najednou. Tedy na příjem, přehrávaní a nahrávání programů sítě 1 (CT1, CT2, CT24, CT4 a všechny stanice českého rozhlasu) stačí jedna televizní karta. Na příjem a zaznamenávání všech televizí, které se u nás vysílají stačí 3 DVB karty. To je šok co? Žádné vícetunerové STB. Pouze 3 karty na všechno. Díky tomu, že digitální vysílání není nic jiného než jednosměrný proud paketů MPEG kontejneru, o vše ostatní (množení pro víc příjmových míst, nahráváni) by se měl starat software.
Z této teorie jsem vycházel a pokusil jsem se jí dotáhnout do praxe. Samozřejmě toto řešení není reálné ani dosažitelné v okamžiku, kdy máte doma jeden počítač, který pouštíte pouze večer.
Praxe
Hardware:
Server na půdě velmi blízko antény. No, server je je poněkud nadnesené slovo. Malinký počítaček vybavený atomovou deskou Intel Little Valley s 1GB RAM a dvěma 4GB CF kartami, připojenými přes redukce na IDE a nakonfigurovaných do RAID 1 (instalace a konfigurace operačního systému nebude součástí článku), na který jsem nainstaloval v průběhu zkoušení Ubuntu server 9.10 bez grafického rozhraní. Ve finále mi ovšem vyplynulo, že stejnou práci by zastal i jiný linux, neboť software kvůli kterému jsem instaloval Ubuntu jsem nakonec nepoužil.
Server v racku uvnitř domu, vybavený velkým úložným prostorem a dostatečným výpočetním výkonem, který běží 24 hodin denně. Vzhledem k snadné instalaci MythTV ve verzi 0.22 jsem nainstaloval Ubuntu server 9.10. Není třeba pak nic kompilovat.
Bylo by teoreticky možné tyto dva systémy provozovat i v jednom stroji. Konfigurace je téměř stejná.
Za klienty slouží jak počítače a notebooky, tak dedikované STB, připojené k zobrazovacímu zařízení (televize, monitor místo televize). Pro příjem rádia klidně i nějaké PDA připojené na wifi.
Software:
Srdcem celého řešeni je MythTV, jako jeden z mála software umí architekturu klient-server, kde klient je jen uživatelské rozhraní a o nahrávání a správu se stará server, který obsah poskytuje klientům. Tento software umožňuje přijímat a obsah z různých zdrojů, DVB kartami počínaje a síťovým vysíláním konče.
Softwarem který se na půdě stará o přebírání vysílání z televizních karet a jeho přeposílání do počítačové sítě je, navzdory schopnosti MythTV také obsluhovat televizní karty, DVBlast. Software v raném stádiu vývoje z dílny chlapců z videolan.org, který je nutno kompilovat. Ale jeho vlastností je téměř primitivní konfigurace. Jediné, co totiž provádí je příjem DVB vysílání, jeho rozebrání do jednotlivých programů a posílání na určené síťové cíle UDP nebo RTP protokoly.
Třetím kouskem skládačky je starý známý přehrávač VLC, který snad není třeba blíže představovat.
MythTV i VLC jsou dostupné v Ubuntu 9.10 (doporučuji server, a neinstalovat grafické rozhraní, ačkoli lidem neznalým to může způsobit nemalé potíže).
A jdeme na to:
Upozornění předem, nejedná se o click&go instalaci, sám jsem strávil několik dní čistého času hledáním optimální cesty a zkoumáním vhodné konfigurace. A to se rozhodně nepovažuji za začátečníka v oboru.
Příjem programů s DVBLast:
Vzhledem k raném stádiu vývoje je o dokumentaci a konfigurační příklady dost nouze, ale naštěstí je to tak jednoduchý software, že běží po pár prvních pokusech.
Po kompilaci tedy spouštíme příkazem
./dvblast -f 730000000 -e -a 1 -c /root/trans1.conf
kde
"-f 730000000" je laděná frekvence transpondéru v Hz (zde 730MHz)
"-a 1" číslo použité televizní karty, v případě první karty (-a 0) není třeba uvádět
"-e" přidává do streamu i kompletní EPG informaci (nakonec není v systému využívána)
"-c /root/trans1.conf" konfigurační soubor využitý pro tuto kartu
Pozn: v případě, že si pustíte program bez parametru "-c", uvidíte krásně všechny stanice v daném transpondéru. U nich také SID (station ID), pro každou stanici, využívané v konfiguračním souboru.
Konfigurační soubor:
192.168.0.10:10001 1 257
192.168.0.10:20001 1 257
192.168.0.10:10002 1 258
192.168.0.10:20002 1 258
192.168.0.10:10003 1 259
192.168.0.10:20003 1 259
192.168.0.10:10004 1 260
192.168.0.10:20004 1 260
192.168.0.10:10101 1 16641
192.168.0.10:20101 1 16641
192.168.0.10:10102 1 16642
192.168.0.10:20102 1 16642
192.168.0.10:10103 1 16643
192.168.0.10:20103 1 16643
192.168.0.10:10104 1 16644
192.168.0.10:20104 1 16644
192.168.0.10:10105 1 16645
192.168.0.10:20105 1 16645
192.168.0.10:10106 1 16646
192.168.0.10:20106 1 16646
192.168.0.10:10107 1 16647
Více viz dvblast -h, v kostce "<IP cíle> <still up> <SID>
Důvod, proč vlastně vysílám každý program dvakrát na stejný server je uveden dále.
Vysílání dvou kompletních transpondérů dvojmo je tak tak akorát na 100Mbovou síť. Vezme si zhruba 91Mbit.
MythTV:
A jsme u jádra pudla. Úplně nejjednoduššim způsobem jak nainstalovat MythTV, je nainstalovat v Ubuntu balík mythtv-backend-master. Vzhledem k tomu, že mythTV využívá mysql databázi k činnosti (a klienti se k ní připojují a získávají informace o programech, nahrávkách a podobně), tento balíček vše nakonfiguruje do funkčního řešení za vás. Já, protože databázový server už mám, jsem konfiguroval ručně.
Po instalaci je nutné spustit
mythtv-setup
. Pozor, vyžaduje grafické rozhraní. Z jiného linuxu se lze vzdáleně připojit přes ssh s paramtrem -X
ssh root@recorder -X
, čímž dáte připojení k dispozici své zobrazovací rozhraní a po spuštění mythtv-setup se vše bude "renderovat" pomocí vašeho lokálního X rozhraní. I pro uživatele Windows je tu alternativa, Xming, ale jeho použití s PuTTy je nad rámec tohoto článku.
Přivítá vás grafické menu, které se ovládá klávesnicí. Myš byste hledali marně. Celé rozhraní, jak serveru, tak klienta, je určeno pro ovládání běžným dálkovým ovladačem, proto tam myš nemá místo.
Základní nastavení se provádí v menu General, důležité jsou zejména položky adresa serveru, podle které se budou klienti připojovat. Všechny položky jsou rozumně okomentované, aby bylo jasné, o co se vlastně jedná
a dále pak nastavení televizní normy:
Další důležitou položkou jsou zachytávací karty. I když v tomto případě budou jen virtuální. Vytvořil jsem m3u playlist:
#EXTM3U
#EXTINF:0,1 - CT1
#EXTMYTHTV:xmltvid=257.dvb.guide
rtp://192.168.0.10:10001
#EXTINF:0,2 - CT2
#EXTMYTHTV:xmltvid=258.dvb.guide
rtp://192.168.0.10:10002
#EXTINF:0,3 - CT24
#EXTMYTHTV:xmltvid=259.dvb.guide
rtp://192.168.0.10:10003
#EXTINF:0,4 - CT4 Sport
#EXTMYTHTV:xmltvid=260.dvb.guide
rtp://192.168.0.10:10004
#EXTINF:0,5 - Nova Cinema
#EXTMYTHTV:xmltvid=514.dvb.guide
rtp://192.168.0.10:10005
#EXTINF:0,6 - NOVA
#EXTMYTHTV:xmltvid=513.dvb.guide
rtp://192.168.0.10:10006
#EXTINF:0,7 - Barrandov TV
#EXTMYTHTV:xmltvid=2049.dvb.guide
rtp://192.168.0.10:10007
#EXTINF:0,8 - Prima COOL
#EXTMYTHTV:xmltvid=770.dvb.guide
rtp://192.168.0.10:10008
#EXTINF:0,9 - Prima
#EXTMYTHTV:xmltvid=769.dvb.guide
rtp://192.168.0.10:10009
#EXTINF:0,101 - Cro1
#EXTMYTHTV:xmltvid=16641.dvb.guide
rtp://192.168.0.10:10101
#EXTINF:0,102 - Cro2
#EXTMYTHTV:xmltvid=16642.dvb.guide
rtp://192.168.0.10:10102
#EXTINF:0,103 - Cro3
#EXTMYTHTV:xmltvid=16643.dvb.guide
rtp://192.168.0.10:10103
#EXTINF:0,104 - Cro Radio Wave
#EXTMYTHTV:xmltvid=16644.dvb.guide
rtp://192.168.0.10:10104
#EXTINF:0,105 - Cro D-dur
#EXTMYTHTV:xmltvid=16645.dvb.guide
rtp://192.168.0.10:10105
#EXTINF:0,106 - Leonardo
#EXTMYTHTV:xmltvid=16646.dvb.guide
rtp://192.168.0.10:10106
#EXTINF:0,107 - Radio Cesko
#EXTMYTHTV:xmltvid=16647.dvb.guide
rtp://192.168.0.10:10107
Položka EXTMYTHTV:xmltvid= je speciální a slouží XMLTV k přiřazení položek z televizního programu k jednotlivým stanicím.Vytvořil jsem nejprve jednu kartu typu "network recorder" a podsunul jsem jí playlist.
Později jsem zjistil, že "jedna" karta, může obsluhovat jen jednoho klienta nebo jeden nahrávací proces, tak jsem si vytvořil karet povícero, všechny se stejným m3u playlistem. Obecně by mělo být počet karet = počet klientů + nějaké další na více simultánních nahrávání.
Dále pak je třeba definovat, odkud se budou brát informace o pořadech. Z DVB karet si je MythTV schopen brát informace přímo z EPG, v případě IPTV to však není schopen. Nastavil jsem tedy "no grabber" a programy mu podsunuji jinou cestou:
Před námi už je pouze svázání karty a programů do zdrojů videa. Všechny karty jsem propojil s jediným zdrojem programů a při prvním propojení jsem nechal skenovat kanály. Vzhledem k totožnému playlistu i zdroji programů už při přidávání dalších propojení tohle není potřeba.
Poslední nutnou konfigurací je volba úložiště, které bude využíváno při přehrávání i záznamu, vytváření náhledů, ukládání screenshotů. U mě jej tvoří síťově připojený samba share.
Pak je třeba potvrdit a zapsat změny do databáze, k čemuž budete vyzváni.
Poslední položkou je získávání televizního seznamu. Hledal jsem dlouho český seznam stanic pro XMLTV, nakonec jsem objevil xml soubor na Strahově (kolejní síť čvut) a v něm zmínku o generátoru. Po několikadenním pátrání jsem nalezl i generátor, který je schopen přímo z televizní karty získat EPG informace a vygenerovat XML soubor. Ten program opět není součástí distribuce, je dostupný v podobě zdrojových kódů na stránce tv_grab_ dvb. Vytvořil jsem si tedy skript, který mi každou hodinu doplňuje televizní program. Tento skript je v cron.hourly (úlohy spouštěné každou hodinu) na serveru s televizními kartami. K tomu, aby vše šlo přímo do databáze, je třeba mít na něm nainstalovaný balíček mythtv-backend, jehož součástí je program "mythfilldatabase". Samotný mythtv v něm ale není spuštěný a je i odstraněn ze spouštění po startu.
Script epg.upgrade
#!/bin/sh
mythfilldatabase --file 1 /root/programs
/root/tv_grab_dvb/tv_grab_dvb/ -i /dev/dvb/adapter0/demux0|mythfilldatabase --file 1 -
/root/tv_grab_dvb/tv_grab_dvb/ -i /dev/dvb/adapter1/demux0|mythfilldatabase --file 1 -
ve zkratce "--file" říká programu, že do databáze chcete nacpat televizní program, "1" je číslo seznamu programů (máme jen jeden).
Soubor programs obsahuje pojmenování jednotlivých televizních programů:
<tv generator-info-name="dvb-epg-gen">
<channel id="257.dvb.guide">
<display-name>CT 1</display-name>
</channel>
<channel id="258.dvb.guilde">
<display-name>CT 2</display-name>
</channel>
<channel id="259.dvb.guide">
<display-name>CT 24</display-name>
</channel>
<channel id="260.dvb.guide">
<display-name>CT 4</display-name>
</channel>
<channel id="16641.dvb.guide">
<display-name>CRo1-Radiozurnal </display-name>
</channel>
<channel id="16642.dvb.guide">
<display-name>CRo2-Praha </display-name>
</channel>
<channel id="16643.dvb.guide">
<display-name>CRo3-Vltava </display-name>
</channel>
<channel id="16644.dvb.guide">
<display-name>CRo Radio Wave </display-name>
</channel>
<channel id="16645.dvb.guide">
<display-name>CRo D-dur </display-name>
</channel>
<channel id="16646.dvb.guide">
<display-name>CRo Leonardo </display-name>
</channel>
<channel id="16647.dvb.guide">
<display-name>CRo Radio Cesko </display-name>
</channel>
<channel id="514.dvb.guide">
<display-name>NOVA CINEMA</display-name>
</channel>
<channel id="513.dvb.guide">
<display-name> NOVA</display-name>
</channel>
<channel id="2049.dvb.guide">
<display-name>BARRANDOV TV</display-name>
</channel>
<channel id="770.dvb.guide">
<display-name>Prima COOL</display-name>
</channel>
<channel id="769.dvb.guide">
<display-name>PRIMA</display-name>
</channel>
</tv>
Můžeme vesele začít sledovat televizi.
MythTV klient
Nebo správněji frontend. Základní vlastností je přehrávání vysílání poskytovaného serverem, lze přes něj spravovat nahrávky. Systém umí pauznout nebo poskočit zpět v živém vysílání. Recorder by měl umět rozpoznávat reklamy, ale tu funkcionalitu nemám vyzkoušenou. Schopnost nahrávat všechny programy je samozřejmostí, stejně jako jejich sledování z různých televizí najednou. Vše pohodlně, bez přenášení medii či jakékoli manipulace s nimi. S doplňky klient umí vypálit a přehrávat i ripovat cd/dvd a spoustu dalších věcí.
Aby nezůstalo u pouhých slov, malá ukázka:
Hlavní menu:
Multimediální knihovna:
Přehled nahraných pořadů:
Plánování nahrávání přehled pořadů:
Vyhledávání pořadů k nahrávání:
Jedete na dva měsice pryč a rádi byste měli všechny díly seriálu? Není problém, vytvoření nahrávacího filtru podle parametrů, například jména pořadu.
A samozřejmě staré dobré ruční nahrávání.
Omezení MythTV klienta
V současné době existuje pouze varianta pro linux. Proč taky ne, primárně je totiž určen jako STB software, který je ovládán dálkovým ovladačem. V desktopovém prostředí jej lze také úspěšně používat, ale při prvním spuštění se vám nacpe na celou obrazovku a odmítá ji opustit. Umravnit ho lze až parametry při spuštění. Z popisu vám musí být jasné, že se nejedná o multimediální přehrávač. Nenajdete na něm tlačitka play a stop a ani nelze dynamicky měnit jeho velikost. Proto bude následovat rozšíření možnosti sledovat živou televizi i klasickým multimediálním přehrávačem.
Rozšiřujeme použití
Do MythTV existuje spousta doplňků, jak vzhledu, tak funkcionalit. Vyplatí se doinstalovat do serveru doplněk mythweb, který postkytuje webové rozhraní k možnosti plánovat nahrávání.
Klasický stream do sítě
Normální síťový stream živých televizí, který je schopna přehrát většina přehrávačů. Nebude v něm OSD menu, nebude možnost se proklikat k nahrávání, ale zase nejsme omezeni klientem. Můžete to prokládat vlastní muzikou z lokálního disku, měnit si velikost obrazu podle situace nebo nekoukat na černý obdélník při přehrávání radia.
Jako druhý software na serveru totiž běži VLC, které přejímá UDP stream a vystavuje ho jako http a čeká na spojení klientů. Na server, vybavený pouze příkazovou řádkou, stačí nainstalovat cvlc, nebude se vám snažit doinstalovat kompletní gnome.
Tady je taky ten okamžik k vysvětlení, proč si vlastně všechny programy posílám dvakrát. VLC, stejně jako MythTV si obsadí naslouchající porty, tudíž jeden stream je v jeden okamžik schopen poslouchat pouze jeden program. A zatímco mythTV uvolňuje porty dynamicky, podle toho jaké programy zrovna přehrává, VLC si při spuštění sedne na všechnky a nepustí je.
VLC pouštím pod uživatelem (nikoli jako root)
cvlc --vlm-conf tv -d
Kde "--vlm-conf" určuje cestu k souboru se seznamem použitých streamů a parametr "-d" presun aplikace na pozadi.
konfigurační soubor vypadá v mém případě:
new CT1 broadcast enabled
setup CT1 input "rtp://@192.168.0.10:20001"
setup CT1 output #standard{access=http,mux=ts,dst=192.168.0.10:8080/CT1}
new CT2 broadcast enabled
setup CT2 input "rtp://@192.168.0.10:20002"
setup CT2 output #standard{access=http,mux=ts,dst=192.168.0.10:8080/CT2}
new CT24 broadcast enabled
setup CT24 input "rtp://@192.168.0.10:20003"
setup CT24 output #standard{access=http,mux=ts,dst=192.168.0.10:8080/CT24}
new CT4 broadcast enabled
setup CT4 input "rtp://@192.168.0.10:20004"
setup CT4 output #standard{access=http,mux=ts,dst=192.168.0.10:8080/CT4}
new NOCI broadcast enabled
setup NOCI input "rtp://@192.168.0.10:20005"
setup NOCI output #standard{access=http,mux=ts,dst=192.168.0.10:8080/NOCI}
new NOVA broadcast enabled
setup NOVA input "rtp://@192.168.0.10:20006"
setup NOVA output #standard{access=http,mux=ts,dst=192.168.0.10:8080/NOVA}
new BARR broadcast enabled
setup BARR input "rtp://@192.168.0.10:20007"
setup BARR output #standard{access=http,mux=ts,dst=192.168.0.10:8080/BARR}
new PRICO broadcast enabled
setup PRICO input "rtp://@192.168.0.10:20008"
setup PRICO output #standard{access=http,mux=ts,dst=192.168.0.10:8080/PRICO}
new PRI broadcast enabled
setup PRI input "rtp://@192.168.0.10:20009"
setup PRI output #standard{access=http,mux=ts,dst=192.168.0.10:8080/PRI}
new CRO1 broadcast enabled
setup CRO1 input "rtp://@192.168.0.10:20101"
setup CRO1 output #standard{access=http,mux=ts,dst=192.168.0.10:8080/CRO1}
new CRO2 broadcast enabled
setup CRO2 input "rtp://@192.168.0.10:20102"
setup CRO2 output #standard{access=http,mux=ts,dst=192.168.0.10:8080/CRO2}
new CRO3 broadcast enabled
setup CRO3 input "rtp://@192.168.0.10:20103"
setup CRO3 output #standard{access=http,mux=ts,dst=192.168.0.10:8080/CRO3}
new CROW broadcast enabled
setup CROW input "rtp://@192.168.0.10:20104"
setup CROW output #standard{access=http,mux=ts,dst=192.168.0.10:8080/CROW}
new CROD broadcast enabled
setup CROD input "rtp://@192.168.0.10:20105"
setup CROD output #standard{access=http,mux=ts,dst=192.168.0.10:8080/CROD}
new CROL broadcast enabled
setup CROL input "rtp://@192.168.0.10:20106"
setup CROL output #standard{access=http,mux=ts,dst=192.168.0.10:8080/CROL}
new CROC broadcast enabled
setup CROC input "rtp://@192.168.0.10:20107"
setup CROC output #standard{access=http,mux=ts,dst=192.168.0.10:8080/CROC}
control CT1 play
control CT2 play
control CT24 play
control CT4 play
control NOCI play
control NOVA play
control BARR play
control PRICO play
control PRI play
control CRO1 play
control CRO2 play
control CRO3 play
control CROW play
control CROD play
control CROL play
control CROC play
Playlist pro přehrávání v přehrávači pak:
#EXTM3U
#EXTINF:0,1 CT 1
http://recorder:8080/CT1
#EXTINF:0,2 CT 2
http://recorder:8080/CT2
#EXTINF:0,3 CT 24
http://recorder:8080/CT24
#EXTINF:0,4 CT 4
http://recorder:8080/CT4
#EXTINF:0,5 NOVA
http://recorder:8080/NOVA
#EXTINF:0,6 PRIMA
http://recorder:8080/PRI
#EXTINF:0,7 BARRANDOV TV
http://recorder:8080/BARR
#EXTINF:0,8 NOVA CINEMA
http://recorder:8080/NOCI
#EXTINF:0,9 PRIMA COOL
http://recorder:8080/PRICO
Toť vše. Výsledkem je univerzální, multiplatformí řešení obsahující jak STB s veškerým komfortem, tak i možnost zobrazovat i konfigurovat na běžných počítačích. A to prosím, bez jediného analogového prvku v cestě. Celé řešení se navíc lehce přizpůsobí změně vysíláni, například zavedeni MPEG4, u kterého byste většinu STB nebo dokonce televizi s integrovaným dekodérem mohli rovnou vyhazovat do popelnice.
JR
TODO: zbývá ještě nalézt vhodný hardware pro vytvoření STB, nejlépe s integrovaným dálkovým ovládáním, které by celé zařízení bylo schopno na dálku i zapnout. Samozřejmě ovšem za rozumné peníze. K tomu buď monitor nebo televizi, která se umí zapínat a vypínat podle přítomnosti signálu na HDMI. Pak získáte do obýváku komplexní řešení s jedním jediným ovladačem.
Musím říct, že parádní kus textu.. v zásadě celý návod jak si doma udělat malé multimediální studio.
Díky za obsáhlý a zajímavý článek. <pročtuještěnemámesmajlíkspalcemnahoru?>
<protožetumámesmajlíkspivem!>
Zdravim, diky za pekny clanek. Mel bych jen dotazek jake jsou pouzite TV tunery.
Pouzite jsou TV karty ASUS My cinema 3100 Mini/DVBT, pripojene pres USB Hub. Pozor, u beznych USB hubu maji problem s napajenim (proste kazda si cucne 500mA), viz muj predchozi clanecek. V Ubuntu bezi out of the box bez instalace jakychkoli firmwaru ci ovladacu.
Standing ovation Kdyby existovala možnost, jak tohle udělat s DVB-C od UPC, to by bylo něco...
Tam to asi vyzaduje dekodovaci kartu, ne? To jen tak verejne nepousteji, ne?
Vyžaduje ale, snad existují tunery do kterých by se ta karta dala vecpat...
To bys musel mit dekodovaci kartu pro kazdy transponder Obavam se ale, ze u UPC neni ta karta jen desifrovaci jako u satelitu, ale ze toho dela vic. Desifrovaci kartu by teoreticky mohl spravovat system a desifrovat ji prijate mpeg streamy, ale tu UPCckovou se bojim, ze ne.
urcite nie dekodovaciu kartu pre kazdy tuner. UPC pri DVB-C ponuka STB ktore ma 2 tunery a urcite k nemu nedava 2 karty ;) pravdepodobne by to malo ist aj softwareovo
Hodně dobrý.
Perfektní článek.
Perfektní článek
Palec nahoru, neboli
Článek je zajímavý a přínosný. Je ale až s podivem, že takto fundovaný člověk se domnívá, že obchodník bude řešit, jestli se zákazník bude, nebo nebude dívat na televizi, až analog vypnou. Jsem obchodník a sebekriticky přiznávám, že mám zákazníky někde. Je mou povinností nabídnout mu požadovaný výrobek a nad rámec povinností mu doporučit, mám li více typů ten, na který jsou nejpříznivější reference. (Citlivost, počet vstupů a výstupů. počet tunerů, jazyková lokalizace a další funkce.) Což taky činím. Jelikož na šíření a formě šíření signálu neparticipuji, ani by mne nenapadlo diskutovat se zákazníky na téma rozdíl ve kvalitě analogu a digitálu a dokonce záměrně zatajovat nevýhody digitálu. Toto probírám v restauraci při sklenici piva. Zkrátka : Ševče, drž se svého kopyta.
Jako prodavač jsem se z Tvého článku poučil. Zkus totéž z této silvestrovské reakce.
No vyborny, pocitam ze si to veme tak 500 watu t.j. 3Kc za hodinu za 24hod 72Kc x 30dni 2160Kc a nepocitam naklady na zakoupeni zeleza. Nejlevnějsi prijimac signalu na hardisk meli v tescu za 1600Kc + starsi hardisk. Za kolik bys to vsechno nakofiguroval? Zadarmo asi ne. Kolik je tady lidi, kteri, i kdyz to chvali, by si to udelali sami i podle toho navodu? Tak dekuji za radu, sorry. Genialni veci byvaji velmi jednoduche.
Ako ta tak čítam, tak som rád, že som zostal u starého dobrého analógu, aj napriek takmer denno denným telefonátom od poskytovatela služieb o tom aký je digitál výhodný.....atď.Zatial nehrozí aby som si to pustil do baráku .Dúfam len, že do tej doby kým analóg zrušia úplne, vymyslia niečo, čo bude jeho dôstojným nástupcom, hlavne čo sa týka komfortu a jednoduchosti pripojenia viacerých zariadení.Že by Sci-fi? A možno sa toho ani nedožijem
500 watu to zrat nebude, nebot je to postavene na Little Valley + CF + 3x usb tunery + diskove pole. Disky mohou v klidu spat kdyz se nezapisuje ci cte. Spotraba odhadem kolem 30-50w
Muj server (ten, na kterem se to vsechno uklada) ma asi 150W (Intel low voltage xeon, 4x500GB disk), pocitac, ktery bezi u anteny je little valley, +-30W. Ten server je teda extrem, da se to postavit s mnohem mensi spotrebou a pritom s dostatecnym vykonem.
Jak jsem psal, neni to Click+GO reseni, clovek musi byt hracicka, aby neco takoveho vytvoril. Odmenou za to je komfort, ktery zadnym jinym zpusobem neziskas.
Jenže ta krabička umí jen něco. A jiná zase jen něco. A když chci pokrýt všechno, budu mít 5 krabiček co mně budou stát 3x víc a žrát to bude stejně. Komfort nebude nikdy takový. A každou chvíli to něco nepřehraje a morálně to zastará za rok.
Viděl jste někdy způsob plánování nahrávání přes mythweb ? Nemluvě o přístupu z inetu na dálku. To neumí žádná krabička. A zkuste jednou PowerSearch na serie dokumentů či seriálů .. a nebudete se chtít k té tupé krabičce vrátit.
Varianty jsou různé. Tohle celé se dá postavit na intel Atom 330 s ION VGA = odběr ~30W a přehraje to fullHD video.
Já naopak mám 3 děti každé se svým kompem, já a manželka taky po jednom. To už se vyplatí postavit domácí file server. Někdo by použil NAS, žere málo. Ale karty do toho nedám. A když už jsou na tom serveru medialní soubory společné pro těch 5 PC, tak přehrávač v obýváku by to měl taky brát z LAN (tam hodlám dát fanless Atoma s ION s mechanikou).
Takže už 3 roky mám v koutě pracovny tichý normální komp, v tom cca 4-5 disků které se uspávají, 3xDVBT karta, zdroj Enermax 385W 86% účinnost. Původně Core2Duo, již rok Core2Quad: nahrávky si v MythTV oříznu ale dál je zpracovávám v Avidemuxu, jsem puntičkář. Připravím joby a ty pustím přes noc na třech CPU serveru (od 2 hod mám levnou sazbu elektriky ) žere to asi víc než "krabička" ale .. sečtěte spotřebu a pořizovací cenu NAS pro 4 disky, dva 2 tunerové DVBT recordéry (protože 3tunerový se běžně nedělá) a furt to nebude tak dobré jak PC s mythtv ..
Zdravím,
pěkné čtivo.
Právě řeším podobný problém. MythBackend & MythWeb je luxusní nepřekonaný nahrávací server. Mám server se 3 DVBT kartami (Asus MyCinema P7131D) již přes 3 roky. Spokojenost.
Ale frontend nestojí za nic. I ten Myth protokol je dost čuňačina. Můžu použít XBMC jako frontend, ale ..
Vadí mi že každý klient odebírající přes Myth protokol sežere 1 další tuner byť virtuální. Na DVBT kartu je max. 5 virt.tuneru. Teď nevím přesně, co se stane, pokud na daný program již někdo kouká. Vzhledem k tomu, že LiveTV se začne psát do souboru a klient si přehrává ten soubor: TimeShift a jako bonus "na co koukám zůstane ještě den na HD, takže se může podívat někdo jiný" (lze prodloužit). Takže další klient by mohl brát z toho souboru. Nevýhodou je přeskakování ze souboru do souboru (dle EPG, bez EPG po 30 minutách) kdy se občas stane, že obraz odpadne.
Dále pak každý klient jede unicastově, ale to souvisí s tím time-shift souborem na serveru. Směrem ke klientům to už není zcela LiveTV, i z jednoho souboru pořadu můžou 2 klienti odebírat jinou čast.
Takže pokud se vzdám timeshiftu a automatického odložení shlédnutých pořadů na 1+ dní .. je lepší odebírat přímo stream. Takže něco ve vašem stylu.
Mám jeden dotaz a jeden návrh.
Dotaz: tv_grab_dvb se dostane na karty bez problémů ? dvblast si nedrží trvale DVB karty jako MythBackend ?
"Z DVB karet si je MythTV schopen brát informace přímo z EPG, v případě IPTV to však není schopen." Na kartě Network recorder neni EIT podporovano ? Zvláštní, IPTV většinou přenášejí TS stream (ale např. v těch u O2 EIT není ).
Návrh: nebylo by jednodušší vystavit streamy jen jednou jako multicast ? Na něj se může připojit klientů neomezeně. MythBackend udp multicasty umi... navic by se přímo daly odebírat třeba do XBMC ..
Jo, koukam, ze tomu tv_grab_dvb nevadi drzeni karty aplikaci ktera bere stream. Tak to mne nenapadlo jen tak zkusit. Pocital jsem s tim, ze to nejde.
Uz na tom taky zacinam vysivat.
Na multicasty je treba, aby je umely sitove prvky (routry a switche). Router se da postavit, ale takovy switch stoji petkrat tolik co hloupy a to malokdo da, nehlede k tomu, ze to malokdo bude umet nastavit. Pro hloupy switch multicast=broadcast a strasne to zahlcuje sit. Nehlede k tomu, ze multicast pres wifi dalkove spoje taky neni uplne idealni. Byt jsou dost silne.
To jo, bezne multicast jede az k prvnimu routeru jako broadcast, switch s filtrovanim nevyzadanych multicast streamu je defakto nestandardni vec.
A na wifi jsem nejak nepomyslel v prvni chvili.
Já teda mám karty defakto v tom diskovém serveru. Antenu stejne tahnu k TV do byvaku a odtamtud je to k serveru uz jen kousek.
Takze se zamyslim nad vytvorenim virtualniho routeru s podporou multicastu na sitove karte serveru. Ze by ven vypoustel jen vyzadane streamy.
Cisco router si pred to asi nedam zejo .. hehe .. mno cele to jeste proberu z ruznych hledisek.
Kazdopadne tohle resení s dvblast, byt je trochu "pres ruku", pro mne odstranuje limitace 5 klientu (vcetne rec) na kartu pri primem pouziti MythBackendu.
Ano, presne proto jsem to resil takhle. Ted mam kontrolu nad tim, ktera karta je naladena na ktery transponder, to se nemeni jak si MythTV usmysli. At se padesat divaku klidne diva na tentyz porad.
Každý můj počítač obsahue i bednu, přeci jen .. volně ložené komponenty by mohly přijít k úhoně ..
Moc nechápu, proč autor používá DVBlast, kterým trvale vysílá všechny programy do loopbacku, kde je následně přebírá tu mythbackend, tu vlc.Podle mě by bylo daleko účelnější použít třeba getstream, který umí http streaming rovnou v sobě, a pakliže mythtv umí přijímat IPTV přes HTTP, dalo by se to přímo použít, pakliže ne, dá se z getstreamu pustit vysílání na loopback podobně, jako to dělá DVBlast. Odpadne tedy nutnost použití VLC, které je pověstné svými memory leaky a na pouhý převod RTP na HTTP je to zbytečně velký overkill.
Diky za doporuceni kazdopadne jsem nezkousel vsechny moznosti. Vyzkousime uvidime.Myth backend 100% musi poslouchat vysilany UDP stream, protoze v okamziku, kdy by si nekolik uzivatelu pustilo jeden program, tak by se otevrelo stejne mnozstvi HTTP streamu, coz je ponekud.. rekneme zbytecne. Kazdy program jede takto to MythTV jednim streamem a porad.Ten VLC loopback je presne kvuli nemoznosti vysilat pres DVBlast http tcp stream, ne vsechny switche v moji siti umi pracovat s multicastem, takze radeji volim cestu TCP streamu.
Vzhledem k tomu, ze pro mythtv je od verze 0.22 netivni klient pro windows, upustil jsem zatim od streamovani pres VLC. S gigabitovym pripojenim k serveru bude uz jen multicast pro divani pomoci prehravace.
Dobrý deň, so yáujmom som si prečítal článok a je to skutočne inšpirujúce! Mám niekoľko otázok/úvah ohľadom vášho riešenia, ktoré je veľmi blízke mnou uvažovanému návrhu. Myslíte si, že na atome postavené PC je schopné streamovať cez unicast aj kanály, ktoré sú kódované? T.j. či by to zvládol pomocou softwarového cam emulátora dekódovať? ďalej rozmýšľam, kedže uvažujem o spojení viacerých zdrojov - DVB-C, DVB-S, event. DVB-T, vzhľadom k umiestneniu satelitu a existujúcej kabeláži spojiť stream server s dátovým úložiskom (ušetrím na cene za 2 PC), výkonnejší hardware zvládne dekódovanie viacerých kanálov, event. kedže to bude napr. MythTV backend, nemusí naraz dekódovať všetky kanály, len práve prehrávané/nahrávané. Streaming by sa realizoval na ďalšie TV s lacnými (dúfam) iptv stb, event. malými Atom HTPC/arm multimed. zariadeniami. V článku sä spomínané dedokované STB, nevedel by ste ich konkretizovať? Vďaka
Zdravím,
také v posledních dnech zkouším různé možnosti streamu TV do sítě. Co se unicast řešení týče velice mě zaujal tvheadend. Má sice své nedostatky jako absenci detekce reklam a možnost pausy (TimeShift) sledované LiveTV, ale na druhou stranu jde snadno zkonfigurovat přímo přes webové rozhraní. Zde je možné "naklikat" si i nahrávání oblíbených pořadů a to i za použití klíčových slov. Má i jakési základní uživatelské omezení (práva pro stream, nahrávání a samozřejmě admin), ale celkem mě zarazilo že nahrávání nastavené jedním uživatelem může druhý bez problému zrušit :o/
Co jsem testoval datový tok pro jednoho klienta při sledování TV se pohybuje mezi 3,5 - 5 Mbps takže pro domácí síť (včetně wifi pokud na ní nevisí 10 notebooků :o) je to, bezesporu, použitelné. Nahraná videa ukládá do kontejneru .mkv, ale ještě jsem nezjišťoval jaký kodek využívá. Platí zhruba 1h = 1GB.
Jako klient lze použít přímo soft od lonelycoder ShowTime nebo XBMC (jiné jsem nezjišťoval), které má podporu defaultně ve zdrojích videa. Co se komfortu týče lze v XBMC napojit jako zdroj i smb úložiště s nahrávkami a může se gautchit :o)
Ale přejdu k věci. Jelikož se starám i o menší wifi síť (cca 50 domácností) zajímalo by mě zda-li někdo z vás nemá zkušenosti s multicast streamem na Mikrotik platformě. Síť je routovaná dynamicky pomocí OSPF. Dohledal jsem si cosi o možnosti řízení multicast streamu přes PIM nad OSPF. Zajímalo by mě jestli někdo nemá praktické zkušenosti, protože zatím se pohybuji v neznámých vodách.
Moje idea je taková, že bych využil dvblast a z něj stream poslal na nejbližší router kde by byl tzv. randevue point. Od něj by si multicast přebírali ostatní routery. Každý klient "sedí" ve své kolizní doméně (subsíti). Je ale vůbec technicky možné zajistit aby se o tento stream přihlásili klienti z wifi, kteří sedí dejme tomu za OvisLinkem 5460? A pokud ano co jim nastavím jako zdroj? IP serveru, IP randevue pointu nebo IP nejbližšího routeru.
Mám nějaké zkušenosti s multicastem na L2, ale zase se mi nechce kvůli streamu TV předělávat celou L3 síť.
Budu rád za každé popostrčení a děkuji autorovi článku za rozšíření obzorů.