abclinuxu.cz AbcLinuxu.cz itbiz.cz ITBiz.cz HDmag.cz HDmag.cz abcprace.cz AbcPráce.cz
Inzerujte na AbcPráce.cz od 950 Kč
Rozšířené hledání
×
    dnes 04:55 | Nová verze

    OpenJS Foundation, oficiální projekt konsorcia Linux Foundation, oznámila vydání verze 22 otevřeného multiplatformního prostředí pro vývoj a běh síťových aplikací napsaných v JavaScriptu Node.js (Wikipedie). V říjnu se verze 22 stane novou aktivní LTS verzí. Podpora je plánována do dubna 2027.

    Ladislav Hagara | Komentářů: 0
    dnes 04:22 | Nová verze

    Byla vydána verze 8.2 open source virtualizační platformy Proxmox VE (Proxmox Virtual Environment, Wikipedie) založené na Debianu. Přehled novinek v poznámkách k vydání a v informačním videu. Zdůrazněn je průvodce migrací hostů z VMware ESXi do Proxmoxu.

    Ladislav Hagara | Komentářů: 0
    dnes 04:11 | Nová verze

    R (Wikipedie), programovací jazyk a prostředí určené pro statistickou analýzu dat a jejich grafické zobrazení, bylo vydáno ve verzi 4.4.0. Její kódové jméno je Puppy Cup.

    Ladislav Hagara | Komentářů: 0
    včera 22:44 | IT novinky

    IBM kupuje společnost HashiCorp (Terraform, Packer, Vault, Boundary, Consul, Nomad, Waypoint, Vagrant, …) za 6,4 miliardy dolarů, tj. 35 dolarů za akcii.

    Ladislav Hagara | Komentářů: 3
    včera 15:55 | Nová verze

    Byl vydán TrueNAS SCALE 24.04 “Dragonfish”. Přehled novinek této open source storage platformy postavené na Debianu v poznámkách k vydání.

    Ladislav Hagara | Komentářů: 0
    včera 13:44 | IT novinky

    Oznámeny byly nové Raspberry Pi Compute Module 4S. Vedle původní 1 GB varianty jsou nově k dispozici také varianty s 2 GB, 4 GB a 8 GB paměti. Compute Modules 4S mají na rozdíl od Compute Module 4 tvar a velikost Compute Module 3+ a předchozích. Lze tak provést snadný upgrade.

    Ladislav Hagara | Komentářů: 0
    včera 04:44 | Nová verze

    Po roce vývoje od vydání verze 1.24.0 byla vydána nová stabilní verze 1.26.0 webového serveru a reverzní proxy nginx (Wikipedie). Nová verze přináší řadu novinek. Podrobný přehled v souboru CHANGES-1.26.

    Ladislav Hagara | Komentářů: 0
    včera 04:33 | Nová verze

    Byla vydána nová verze 6.2 živé linuxové distribuce Tails (The Amnesic Incognito Live System), jež klade důraz na ochranu soukromí uživatelů a anonymitu. Přehled změn v příslušném seznamu. Tor Browser byl povýšen na verzi 13.0.14.

    Ladislav Hagara | Komentářů: 0
    včera 04:22 | Nová verze

    Byla vydána nová verze 30.0.0 frameworku pro vývoj multiplatformních desktopových aplikací pomocí JavaScriptu, HTML a CSS Electron (Wikipedie, GitHub). Chromium bylo aktualizováno na verzi 124.0.6367.49, V8 na verzi 12.4 a Node.js na verzi 20.11.1. Electron byl původně vyvíjen pro editor Atom pod názvem Atom Shell. Dnes je na Electronu postavena celá řada dalších aplikací.

    Ladislav Hagara | Komentářů: 2
    včera 04:11 | Nová verze

    Byla vydána nová verze 9.0.0 otevřeného emulátoru procesorů a virtualizačního nástroje QEMU (Wikipedie). Přispělo 220 vývojářů. Provedeno bylo více než 2 700 commitů. Přehled úprav a nových vlastností v seznamu změn.

    Ladislav Hagara | Komentářů: 0
    KDE Plasma 6
     (72%)
     (9%)
     (2%)
     (17%)
    Celkem 729 hlasů
     Komentářů: 4, poslední 6.4. 15:51
    Rozcestník

    Streamování DVB-S pomocí VLC a VLM

    14.7.2008 22:05 | Přečteno: 4797× | linux | Výběrový blog | poslední úprava: 14.7.2008 22:05

    Streamování DVB-S

    Zápis o tom, jak streamovat DVB-S (i DVB-T a analog) multicastem z VLC pomocí VLM. Plný text mám na své stránce o DVB-T/S.

    Základ

    Nejprve je nutné mít rozchozenou DVB-S(2) kartu. Já používám dvě TT S2-3200.

    Streamování pomocí VLC

    Nejjednodušší varianta je streamovat multicast pomocí VLC. To bohužel není až tak jednoduché, protože VLC nespolupracuje s multiproto API, a tak nic nenaladí. Stejně je na tom VLS, který by teoreticky dokázal streamovat z předladěného transpodéru, ale takové řešení se nevyplatí.Řešením by mohly být dva přístupy:

    1. Ne moc čistý multiproto patch přidávající do multiproto zpětnou kompatibilitu. Mně nefunguje.
    2. Komplexní vlc patch, který do VLC přidává extra struktury pro DVB-S2. Nejde zkompilovat jen tak s nějakým VLC, je potřeba použít revizi blízkou datu uveřejnění patche. I přes to mi VLC odmítalo pracovat s DVB zařízením. Kdyby někdo našel řešení dřív, než se multiproto dostane do jádra, dejte mi prosím vědět.

    Streamování pomocí getstreamu

    getstream je jednoduchá utilitka a lze ji zkompilovat s patchem pro DVB-S2 patch pro getstream nebo si vybrat novější verzi podporující multiproto. Hodí se pro testování a krátkodobé streamování v jednoduché síti. Po delším provozu zahlcuje server nesmyslnými požadavky, nezvládá pořádně TTL, a tedy neprojde přes switche/routery, a nakonec je obraz nedívatelný.

    Streamování pomocí VDR

    O VDR je napsán podrobný a pěkný návod na www.her-ur.org, plno informací je také na www.cssf.cz. Ke streamovacím účelům je potřeba zkompilovat VDR minimálně s pluginy streamdev pro základní streamování a sc pro přístup k dekódovací kartě, samozřejmě s multiproto podporou. Tím člověk získá aplikaci, která umí streamovat přes http a to i kódované kanály z karty. Řešení je to vhodné pro domácnost, kde nejsou nároky na současné sledování vícero kanálů. Běžně finančně dostupné dekódovací moduly jsou ochotné rozkódovávat 1-2 programy současně, což není nic pro streamování celého kódovaného transpodéru. Také http streamovací možnosti jsou omezené co do počtu obsloužitelných klientů. Řešením je pořízení čtečky karet (třeba Smouse/Phoenix) a obsluha karty pomocí cardserveru (libovolný podle chuti). V případě vyšších požadavků (více karet, více transpodérů, více všeho) je vhodnější využít služeb sasc-ng.

    Jelikož http stream není pro síť žádné terno, je vhodnější použít multicast. VDR bohužel multicastový plugin nemá. Existuje zárodek multicastové podpory mcast, dále původní verze stremdevu uměly jednoduchý multicast. Kdyby se někomu chtělo, konfigurovatelný VDR multicast-streaming plugin by se hodil ;-)

    Řešením je kombinace VDR a VLC streamování. Pro úspěšné streamování DVB-S (DVB-S2) jsou potřeba tyto fungující součásti:

    1. Fungující DVB-S2 karta(y) s CI slotem
    2. Dekódovací kartu a dekódovací modul do CI slotu nebo vhodnou čtečku a cardserver
    3. VDR s pluginy
    4. VLC

    Základem je VDR posílající kanály pouze na localhost jako http stream, odkud je přebírá VLC a rozesílá je (transkodované) do sítě jako multicast. V této konfiguraci jsem narazil na problém, že streamování nevydrželo do rána. A na vině byl VLC a jeho nikdy neopravené úniky paměti :-( Dotazováním strýčka Googla jsem lokalizoval problém jako chybu ve ffmpeg komponentě VLC. Naštěstí může VLC streamovat mpeg2 i bez ffmpeg, a tak jsem zkompiloval vlastní VLC pouze na účelem re-streamování.

    Kompilace VLC

    Vybral jsem si stabilní verzi 0.8.6 a zdrojový balíček pro Ubuntu 8.04. VLC jsem nakonfiguroval takto:

    ./configure --prefix=/usr --enable-optimizations --enable-sse --enable-mmx --enable-vlm --enable-sout --enable-lua --enable-dvb 
    // --enable-pvr --enable-gnutls --enable-httpd --disable-mad --enable-freetype --enable-fribidi --enable-nls --enable-libxml2 
    // --enable-libdvbpsi --enable-libmpeg2 --disable-wxwidgets --disable-skins2 --disable-ffmpeg --disable-faad
    

    Povolené jsou optimalizace, využití VLM, DVB, httpd, libdvbpsi a libmpeg2. Zakázaný ffmpeg, live555 apod. jsem ani neuvažoval. Zbytek jsem buď zakázal nebo doinstaloval podle toho, co chybělo při kompilaci.

    Streamování z VLC pomocí VLM

    Nechtělo se mi cpát všechny parametry do příkazového řádku, a tak jsem raději zvolil VLM a ovládání buď telnetem nebo příjemněji přes http interface VLC. VLC spouštím příkazem:

    vlc -d -vvv --http-caching 500 --color -I telnet --rtsp-host localhost:5678 --vlm-conf /home/ondra/myTV.vlm --ttl 12

    a konfigurační VLM soubor obsahuje:

    #######################################################
    # VLM konfigurační soubor pro DVB-T mux A+B+C a DVB-S(2) Astra3A (23.5°E) a analog
    #######################################################
    ###### DVB-T
    #.....
    # výřez ze satelitních programů
    new TA3 broadcast enabled
    setup TA3 input http://localhost:3000/PES/s23.5e-3-3015-8005
    setup TA3 output #rtp{mux=ts,dst=239.194.11.15}
    
    new ARTE broadcast enabled
    setup ARTE input http://localhost:3000/PES/s23.5e-0-1051-28724
    setup ARTE output #rtp{mux=ts,dst=239.194.11.16}
    
    # pro 2 DVB-S karty a VDR
    # jako první spustit kanál z 1. transpodéru, jako druhý spustit kanál z druhého transpodéru, a pak zbytek z 1. transpodéru a zbytek z 2. transpodéru
    # VDR by jinak na druhé kartě naladil opět frekvenci 1. transpodéru
    control TA3 play
    control ARTE play
    #
    #.....
    ###### DVB-S
    # starší VLM záznam pro mux A
    new CRa broadcast enabled
    
    setup CRa option programs=1,2,3,4,5
    setup CRa input dvb-t:adapter=0:budget-mode=1:frequency=506000000:inversion=2:bandwidth=8:code-rate-hp=2:code-rate-lp=0:modulation=64:transmission=8:guard=8:hierarchy=-1
    
    setup CRa output #duplicate{dst=std{access=udp,mux=ts,dst=239.194.10.11:1234},select="program=1",dst=standard{access=udp,mux=ts,dst=239.194.10.12:1234},select="program=2",dst=standard{access=udp,mux=ts,dst=239.194.10.13:1234},select="program=3",dst=standard{access=udp,mux=ts,dst=239.194.10.21:1234},select="program=4",dst=standard{access=udp,mux=ts,dst=239.194.10.14:1234},select="program=5"}
    
    control CRa play
    #.....
    ###### analog
    # a tam, kde není digitální pokrytí
    new analog_CT1 broadcast enabled
    
    setup analog_CT1 input v4l://
    setup analog_CT1 option size=640x480
    setup analog_CT1 option v4l-vdev=/dev/video0
    setup analog_CT1 option v4l-norm=2
    setup analog_CT1 option v4l-frequency=510750
    # audio běží jen s v4l2 VLC 0.9.x
    setup analog_CT1 option v4l-adev=/dev/mixer:line
    setup analog_CT1 option v4l-audio=0
    
    # raději použít TRANSCODE
    #setup analog_CT1 output #duplicate{dst=std{access=udp,mux=ts,dst=239.194.12.11:1234}}
    
    #control analog_CT1 play
    #...
    

    Pokud by někdo věděl, jak VLC upravit do stavu použitelnosti v multiproto driverem, dejte mi prosím vědět v diskuzi. Díky.

           

    Hodnocení: 100 %

            špatnédobré        

    Tiskni Sdílej: Linkuj Jaggni to Vybrali.sme.sk Google Del.icio.us Facebook

    Komentáře

    Vložit další komentář

    15.7.2008 00:56 jp1
    Rozbalit Rozbalit vše Re: Streamování DVB-S pomocí VLC a VLM
    Ohledne vlc pro multiproto - podivej se na www.cssf.cz, kde je nejvetsi ceske satelitni forum. V sekci "PC DVB (Linux a ostatni) jsou borci, co to bezne delaji (bastlir a spol.) Tam by ti urcite umeli poradit.
    Ondřej Kuda avatar 15.7.2008 08:06 Ondřej Kuda | skóre: 27 | blog: obcasny_blog
    Rozbalit Rozbalit vše Re: Streamování DVB-S pomocí VLC a VLM
    Diky, cssf jsem samozrejme take cetl, ale reseni zatim neexistuje. Lide z VLC nechteji upravovat kod podle neceho, co neni v oficialnim jadru, patchu moc neni a nefunguji dobre.
    15.7.2008 09:22 Mirek
    Rozbalit Rozbalit vše Re: Streamování DVB-S pomocí VLC a VLM
    Pokud ti VLC nepadá, tak jsi opravdu šťastný člověk :)
    Ondřej Kuda avatar 15.7.2008 12:58 Ondřej Kuda | skóre: 27 | blog: obcasny_blog
    Rozbalit Rozbalit vše Re: Streamování DVB-S pomocí VLC a VLM
    Jak jsem psal, staci zkompilovat na miru. Ted ma streamovaci uptime asi 30 dni.
    16.7.2008 12:16 Zdeněk Štěpánek | skóre: 57 | blog: uz_mam_taky_blog | varnsdorf
    Rozbalit Rozbalit vše Re: Streamování DVB-S pomocí VLC a VLM
    Ja to ted resim ciste s VDR.

    Problemu to ma celou spoustu a to jsme zatim jen u DVB-T a DVB-S a jen FTA kanaly.

    Tohle neni poradna, ale nejvic me trapi:

    - externmux se spousti vicenasobne pro streaming stejneho kanalu dvoum klientum (33% vytizeni quadcore pri konverzi jednoho kanalu do h.264)

    - externum zustava viset v procesech i po ukonceni

    - vdr si nejak naprosto zahadne predelava playlist i kdyz jsem se to snazil zakazat, stale to ten playlist meni a asi si to zabira kartu a tak je casto nedostupna.

    - obecne poresit multicasting

    - mencoder v externmux ignoruje prubezne zmeny rozliseni vstupniho proudu a vystup je vzdy v rozliseni jake bylo pri spusteni -> zmrseny pomer stran

    Mym cilem je to poresit jako IPTV sluzbu pro lidi kteri nemaji zadnou souvislost s IPTV serverem. Takze ze strany IPTV serveru bude nabizen seznam kanalu ktere lze prehravat a nic vic. Zadny vzdaleny ladeni, zadny vzdaleny ovladani apod. Coz se zrejme vdr moc nelibi... Proste chci scanem vytvorit playlist vsech rozumne koukatelnych FTA programu co na vsechny antenky nachytam a tyhle programy aby to nabizelo ke streamovani. Nechci aby mi nic a nikdo ten playlist ovlivnovalo.

    Zdenek
    www.pirati.cz - s piráty do parlamentu i jinam www.gavanet.org - czfree varnsdorf
    16.7.2008 19:19 jp1
    Rozbalit Rozbalit vše Re: Streamování DVB-S pomocí VLC a VLM
    Mym cilem je to poresit jako IPTV sluzbu pro lidi kteri nemaji zadnou souvislost s IPTV serverem. Takze ze strany IPTV serveru bude nabizen seznam kanalu ktere lze prehravat a nic vic. Zadny vzdaleny ladeni, zadny vzdaleny ovladani apod. Coz se zrejme vdr moc nelibi... Proste chci scanem vytvorit playlist vsech rozumne koukatelnych FTA programu co na vsechny antenky nachytam a tyhle programy aby to nabizelo ke streamovani. Nechci aby mi nic a nikdo ten playlist ovlivnovalo.
    A zkousels getstream? Podle me je pro tebou popsany pripad mnohem pouzitelnejsi getstream. Teda aspon v pripade, kdy predpokladas, ze se na to bude divat opravdu vetsi pocet klientu.
    Ondřej Kuda avatar 16.7.2008 19:58 Ondřej Kuda | skóre: 27 | blog: obcasny_blog
    Rozbalit Rozbalit vše Re: Streamování DVB-S pomocí VLC a VLM
    Ja jsem getstream zkousel (i ruzne varianty) a pouzitelnejsi mi tedy neprisel. Co znamena "vetsi pocet klientu"? A struktura site?
    Ondřej Kuda avatar 16.7.2008 19:56 Ondřej Kuda | skóre: 27 | blog: obcasny_blog
    Rozbalit Rozbalit vše Re: Streamování DVB-S pomocí VLC a VLM
    Tak to jsme meli podobny cil :-)

    - externmux jsem zavrhl ze zminovanych duvodu :-) Proto mam VLC a multicast. A pokud clovek prida stream kanalu rozkodovavaneho z karty, to je teprve zaprah procesoru.

    - VDR ktery playlist? ten generovany? Uzamceni karty pro vybrany transpoder/kanal... lze resit treba timto: http://www.linuxtv.org/pipermail/vdr/2007-October/014238.html

    - multicasting spolehlive, bez nutnosti vnejsiho zasahu jedine pres VLC ;-)

    - ja jsem zkousel externmux v kombinaci s VLC a zavrhl jsem to. Predavat stream VLC mne funguje mnohem lepe a bezproblemove.

    Zkuste jako ja spojit VDR a VLC, mne to funguje skoro bez udrzby, a menit nastaveni mohu jen ja :-D
    31.8.2008 17:25 Spork
    Rozbalit Rozbalit vše Re: Streamování DVB-S pomocí VLC a VLM
    VDR + VLC je celkem funkcni, napsal sem si i script na kontrolu multicast jestli bezi. V kazdem pripade to ma jednu podstatnou vadu na krase a to tu ze to neposila v tom streamu teletext !!! Getstream2 a VLC(stream primo z DVB) s teletextem problem nema !!

    Založit nové vláknoNahoru

    ISSN 1214-1267   www.czech-server.cz
    © 1999-2015 Nitemedia s. r. o. Všechna práva vyhrazena.