abclinuxu.cz AbcLinuxu.cz itbiz.cz ITBiz.cz HDmag.cz HDmag.cz abcprace.cz AbcPráce.cz
AbcLinuxu hledá autory!
Inzerujte na AbcPráce.cz od 950 Kč
Rozšířené hledání
×

dnes 15:44 | Komunita

Projekt LiMux skončil. Mnichov se vrací k Windows. Rada města na svém včerejším zasedání schválila migraci všech počítačů na Windows 10 do roku 2020.

Ladislav Hagara | Komentářů: 8
dnes 08:00 | Pozvánky

V Praze dnes probíhá konference Internet a Technologie 17.2 pořádaná sdružením CZ.NIC. Sledovat ji lze online. K dispozici je také archiv předchozích konferencí. Sdružení nedávno vydalo bezpečnostní pexeso. Ke stažení jako pdf pod licencí CC BY-NC-SA.

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

Byla vydána verze 10.2 a krátce na to opravná verze 10.2.1 open source alternativy GitHubu, tj. softwarového nástroje s webovým rozhraním umožňujícího spolupráci na zdrojových kódech, GitLab (Wikipedie). Představení nových vlastností v příspěvku na blogu a na YouTube.

Ladislav Hagara | Komentářů: 13
dnes 06:22 | Pozvánky

V úterý 28. listopadu se v Brně koná již 4. přednáškový večer Ruby Stories. Těšit se můžete na témata jako TDD, hybridní mobilní aplikace či programování v Elixiru. Více informací na Facebooku nebo se rovnou registruj na Eventbrite. Na místě bude zdarma drink a lehké občerstvení, tak dorazte.

ondrej-zadnik | Komentářů: 0
dnes 06:11 | Pozvánky

V úterý 28. 11. 2017 bude další Prague Containers Meetup. DC/OS a Mesos vás provede Mesosphere's Developer Advocate Matt Jarvis.

little-drunk-jesus | Komentářů: 0
včera 14:44 | Komunita

Mozilla.cz informuje, že Firefox bude možná upozorňovat na úniky vašich hesel. V Mozille prototypují upozorňování na únik informací o vašem účtu, pokud se na seznamu Have I been pwned? objeví služba, ke které máte ve Firefoxu uložené přihlašovací údaje. Informace se objevila v pravidelném newsletteru o vývoji Firefoxu.

Ladislav Hagara | Komentářů: 6
včera 00:22 | Bezpečnostní upozornění

Společnost ZONER informuje o bezpečnostním incidentu, při kterém došlo ke zcizení a zveřejnění části přihlašovacích údajů zákazníků k elektronické poště a webhostingu CZECHIA.COM.

Ladislav Hagara | Komentářů: 1
22.11. 23:44 | Nová verze

Byla vydána nová stabilní verze 1.13 (1.13.1008.32) webového prohlížeče Vivaldi (Wikipedie). Z novinek vývojáři zdůrazňují možnost zobrazení otevřených i uzavřených listů pomocí ikonky Okno na postranní liště a vylepšené stahování (YouTube). Nejnovější Vivaldi je postaveno na Chromiu 62.0.3202.97.

Ladislav Hagara | Komentářů: 9
22.11. 20:55 | Nová verze

Byla vydána verze 2017.3 dnes již průběžně aktualizované linuxové distribuce navržené pro digitální forenzní analýzu a penetrační testování Kali Linux. Aktualizovat systém lze pomocí příkazů "apt update; apt dist-upgrade; reboot". Z novinek lze zmínit 4 nové nástroje: InSpy, CherryTree, Sublist3r a OSRFramework.

Ladislav Hagara | Komentářů: 1
22.11. 01:55 | Bezpečnostní upozornění

Společnost Uber potvrdila bezpečnostní incident a únik dat v roce 2016. Unikly údaje o 57 milionech cestujících (jména, emailové adresy a čísla mobilních telefonů) a 600 tisících řidičích (navíc čísla řidičských průkazů).

Ladislav Hagara | Komentářů: 1
Jak se vás potenciálně dotkne trend odstraňování analogového audio konektoru typu 3,5mm jack z „chytrých telefonů“?
 (9%)
 (1%)
 (1%)
 (1%)
 (75%)
 (14%)
Celkem 763 hlasů
 Komentářů: 37, poslední 21.11. 15:21
    Rozcestník

    VLC - 6 (správce vysílání)

    24. 10. 2006 | Jiří Poláček | Multimédia | 22967×

    Poslední díl seriálu o přehrávači VLC media player se zaměřuje na používání jeho součásti VLM – správce vysílání, který umožňuje streamovat více multimediálních zdrojů zároveň a nabízet službu Video-On-Demand, video na přání.

    Knihovny LIVE555 Streaming Media

    Pro potřeby dnešního dílu o VLC jsem musel přehrávač zkompilovat znovu, abych získal podporu pro modul rtp a následně též služby VOD (Video On Demand – video na přání). Potřebné knihovny, pokud nejsou přímo dostupné z repozitářů naší distribuce, lze získat z webu live555.com; kompilační volby VLC pak doplníme o parametry enable-livedotcom a with-livedotcom-tree=/usr/lib/live (uvedení cesty ke knihovnám silně doporučuji, zdá se, že bez této volby překladač knihovny nenajde, nicméně dál svou práci dokončí a uživatel se pak diví, proč mu program nefunguje). Konkrétně jsem tedy instaloval s následujícími volbami:

    ./configure --enable-dvdread --enable-dvdnav --enable-dvb --enable-dvbpsi --enable-real --enable-aa --enable-ncurses --enable-skins2 --enable-v4l --enable-xosd --enable-realrtsp --enable-livedotcom --with-livedotcomtree=/usr/lib/live

    Poznámka k nadcházející verzi 0.9.0: kromě toho, že se můžeme těšit na opravy chyb, pár vylepšení a počeštěné grafické rozhraní, mění se také názvy výše uvedených parametrů na enable-live555 a with-live555-tree.

    Protokoly RTP, SDP a RTSP

    Modul rtp nabízí směrové (unicast) a vícesměrové (mutlicast) vysílání po síti, tj. dělá v podstatě to samé, co modul standard za použití protokolu UDP, používá k tomu ovšem pro tyto účely určený protokol RTP (viz RFC 3550) s jeho vymoženostmi. Tou hlavní vymožeností, která je v modulu rtp dostupná, je vystavování souboru ve formátu SDP (Session Description Protocol, viz RFC 4566) popisující parametry vysílání. Může vypadat například následovně:

    v=0
    o=- 106166909550 2 IN IP4 127.0.0.1
    s=Nazev vysilaneho proudu
    i=Doplnujici popisek vysilaneho proudu
    u=http://informace-o-filmu.com/
    e=reziser@informace-o-filmu.com
    t=0 0
    a=tool:vlc 0.8.5
    c=IN IP4 192.168.0.26
    m=video 1232 RTP/AVP 96
    a=rtpmap:96 MP4V-ES/90000
    a=fmtp:96 profile-level-id=3; config=0000012000068400670c4810a0518f;
    m=audio 1230 RTP/AVP 14
    a=rtpmap:14 MPA/90000
    b=AS:128
    

    Z položek lze snadno odhadnout, že soubor SDP obsahuje informace o tom, odkud a kam se vysílá (připomínám, že RTP je vystavěno nad UDP), jaké složky proud obsahuje a případně nějaké doplňující popisky. Naladění takto vysílaného multimediálního proudu znamená zadaní adresy k souboru SDP uživatelem, zbytek již obstará přehrávač.

    Aby těch protokolů nebylo málo, je nyní zapotřebí zmínit se také o RTSP (Real Time Streaming Protocol, viz RFC 2326), který se používá pro ovládání přenosu multimediálních dat – typicky právě v souvislosti s protokolem RTP. Plná implementace RTSP v důsledku umožňuje přímo v klientském programu vzdáleně pouštět a pozastavovat vysílaný zdroj, skákat z místa na místo apod. jako by byl přehráván z lokálního souboru (samozřejmě za předpokladu, že to povaha vysílaného zdroje umožňuje). V modulu rtp však bohužel lze za pomoci RTSP vysílaný zdroj pouze naladit, video na přání je tak nutno nabízet jiným způsobem (viz dále). Pro lepší orientaci v uvedených protokolech doporučuji nahlédnout do Wikipedie: [RTP], [SDP] a [RTSP].

    Parametry modulu rtp

    O vystavení souboru SDP se stará parametr příznačně pojmenovaný sdp a může nabývat obecně čtyř různých typů hodnot:

    • file://<cesta k lokálnímu souboru> – soubor SDP se uloží na místní disk
    • http://<webová adresa> – SDP bude přístupné prostřednictvím vestavěného webového serveru přehrávače
    • rtsp://<internetová adresa> – principiálně totéž, co předchozí varianta; SDP bude přístupné via protokol RTSP
    • sap – soubor bude ohlašován pomocí speciální multicastové adresy, viz čtvrtý díl seriálu.

    Povinným parametrem modulu rtp je dst pro určení cílové adresy vysílání. Podle dokumentace je výjimkou použití protokolu RTSP pro vystavení souboru SDP – v takovém případě se jako cíl dosadí adresa klienta, který vznesl požadavek, toto chování se mi však nepodařilo ověřit. Lépe to ozřejmí příklady:

    vlc pisnicka.mp3 --sout '#rtp{dst=239.255.0.101, \
    sdp=rtsp://192.168.0.100:8080/pisnicka.sdp}'
    

    Uvedeným způsobem vysílanou písničku na multicastovou adresu naladíme následovně:

    vlc rtsp://192.168.0.100:8080/pisnicka.sdp

    Následující příklad distribuující SDP přes oznamování SAP ukazuje další parametry modulu rtp:

    vlc video.avi --sout '#rtp{port-video=1430,port-audio=1230, \
    dst=239.255.0.101,sdp=sap,name="Název vysílaného proudu", \
    description="Doplnujici popisek k vysilanemu proudu", \
    url="http://informace-o-filmu.com/", \
    email="reziser@informace-o-filmu.com"}'

    Parametry port-video a port-audio definují sudá čísla portů pro první stopy příslušné složky – případné další zvukové či videostopy budou vysílány na následujících sudých portech; liché porty jsou rezervovány pro ovládání vysílání dané složky (například právě protokolem RTSP). Konečně s pomocí parametrů name, description, url a email můžeme vysílaný multimediální zdroj popsat, význam má zejména zadání jména zdroje, které se následně objeví v seznamu skladeb oznamovaných prostřednictvím SAP.

    Správce vysílání – VideoLAN Manager

    VLM neboli VideoLAN Manager je součástí přehrávače VLC, s jejíž pomocí je možné zároveň streamovat více multimediálních zdrojů pomocí jediné instance VLC a nabídnout službu videa na přání. Správce se ovládá pomocí telnetového rozhraní (viz první díl), případně lze použít i webové rozhraní a částečně též klasické grafické rozhraní. Používání VLM poněkud nabourává doposud zažité zvyky ovládání přehrávače, pojďme si proto nejdříve osvětlit princip.

    S pomocí VLM definujeme o ovládáme tři různé druhy elementů:

    • broadcast – zdroj, který vysíláme podobně jako televizní či rozhlasové vysílání; pouze administrátor může vysílání spouštět a zastavovat
    • vod – video na přání, tj. administrátor definuje nabídku zdrojů a klient si pak sám spouští vysílání
    • schedule – pomocný element, který umožňuje spouštět a zastavovat zdroje definované jako broadcast podle zadaného časového rozvrhu

    Elementy lze vytvářet a mazat, definovat i zobrazovat jejich nastavení a samozřejmě ovládat. Ukažme si pro začátek, jak s pomocí VLM streamovat totéž, co následujícím příkazem:

    vlc video.avi --sout '#standard{access=http,mux=ts,dst=:8087}'

    V následujících příkazech budeme pro ovládání VLM používat telnetové rozhraní, které si zpřístupníme pomocí následujících dvou příkazů:

    vlc -I telnet &
    telnet localhost 4212

    Výchozí heslo je admin, pro nastavení telnetového rozhraní viz vlc -p telnet --advanced. Po přihlášení můžeme začít pracovat s VLM:

    new PrvniVysilani broadcast
    setup PrvniVysilani enabled
    setup PrvniVysilani input video.avi
    setup PrvniVysilani output #standard{access=http,mux=ts,dst=:8087}
    control PrvniVysilani play

    Za příkazem vždy následuje námi vymyšlené unikátní jméno elementu a upřesňující parametry. Příkaz new vytváří nové elementy uvedeného typu (broadcast, vod, schedule), volitelně zde mohou následovat parametry, které dodatečně upravujeme příkazem setup. Kromě parametru play, který spouští definovaný zdroj, jsou u příkazu control přípustné ještě rozkazy stop, pause a seek s procentuálním vyjádřením, kam se přesunout v rámci aktuálně přehrávaného zdroje.

    Další, v příkladu nepoužité, příkazy jsou del pro zrušení elementu, show pro výpis aktuální konfigurace a dvojice save & load pro uložení a nahrání aktuální konfigurace VLM. Zde je vhodné poznamenat, že konfiguraci VLM lze ze souboru nahrát již při startu přehrávače za pomoci parametru vlm-conf. Konečně výpis všech příkazů lze získat po zadání help.

    Parametry zdrojů typu broadcast

    Vraťme se k příkazu setup, který si zaslouží podrobnější rozbor parametrů. Začněme těmi, které se týkají médií, tj. elementů broadcast a (částečně) vod:

    • input – definice vstupního zdroje, který se má vysílat; vícenásobné použití tohoto parametru je přístupné – vytváří se tak vlastně seznam skladeb nebo chcete-li playlist
    • output – definice síťového vysílání, tj. přesně totéž, co hodnota parametru sout; pro video na přání se nepoužívá
    • enabled / disabled – povolení či zakázání elementu; zakázané médium prostě a jednoduše nemůže být přehráváno
    • loop / unloop – povolení či zakázání přehrávání položek v seznamu skladeb stále dokola
    • option – slouží k dodefinování libovolného parametru (budeme-li například do vysílaného videa vkládat logo, zadáme cestu k obrázku s pomocí setup Název option logo-file=logo.png)

    Příklad včetně výpisu příkazu show a vymazání vytvořeného elementu:

    new ukazky broadcast enabled
    setup ukazky loop
    setup ukazky input dvdsimple:// input trailer.mov
    setup option dvd=/dev/dvdrecorder
    setup ukazky output #std{access=udp,mux=ts,dst=@239.255.0.101}
    control ukazky play
    show ukazky
    show
        ukazky
            type : broadcast
            enabled : yes
            loop : yes
            inputs
                dvdsimple://
                trailer.mov
            output : #std{access=udp,mux=ts,dst=@239.255.0.101}
            options
                dvd=/dev/dvdrecorder
            instances
                default : playing
    control ukazky stop
    del ukazky

    Použití plánovače

    U elementu schedule lze nastavovat parametry týkající se časového rozvrhu událostí:

    • append – definuje příkaz, který se má v nastavenou dobu provést; může se jednat o jakýkoliv příkaz VLM, obvykle se spouští nebo zastavuje přehrávání nějakého zdroje
    • date – stanovuje datum a čas ve tvaru (rok)/(měsíc)/(den)-(hodina):(minuta):(sekunda) definující, kdy se mají příkazy definované pomocí append provést; alternativně lze uvést klíčové slůvko now pro okamžité spuštění
    • period – volitelné nastavení prodlevy, po kterou se bude čekat na opětovné spuštění příkazů; prodleva se opět zadává ve tvaru počtu (let)/(měsíců)/(dní)-(hodin):(minut):(sekund), pozor však na to, že měsíc se počítá jako třicet dní a rok jako dvanáct měsíců
    • repeat – volitelné nastavení počtu repríz, pokud je nastavena prodleva; bez této volby s nastavením prodlevy by spouštění příkazů probíhalo donekonečna

    Příklad plného využití všech možností plánovače:

    new film broadcast enabled
    setup film input film.avi
    setup film output #std{access=http,mux=ts,dst=192.168.0.100:8087} 
    new pust_film schedule enabled
    setup pust_film date 2006/12/1-12:00:00
    setup pust_film period 0/0/1-0:0:0
    setup pust_film repeat 6
    setup pust_film append control film play
    

    Film bude spuštěn poprvé 1. prosince v poledne a pak ve stejnou dobu po šest následujících dní.

    Zájemci, kteří chtějí využít VLC ke streamování a nahrávání pořadů digitálního televizního vysílání, se mohou inspirovat tímto konfiguračním souborem VLM.

    Video na přání

    Konečně se dostáváme ke slibovanému videu na přání. Z povahy zdroje se jedná o směrové vysílání k uživateli, který si toto vysílání vyžádal a který si jej také řídí za pomoci protokolu RTSP. U elementů vod nelze zapnout opakování pomocí volby loop, nespecifikuje se výstup a nelze použít příkaz control; zřízení videa na přání ve VLM se nám tak redukuje na:

    new na_prani vod enabled input film.avi

    Adresu, na které bude VLC naslouchat požadavkům na videa na přání, je nutno zadat již při startu přehrávače pomocí parametru rtsp-host:

    vlc -I telnet --rtsp-host 192.168.0.100:8554

    Ve výchozím nastavení se naslouchá na všech rozhraních (lze zadat jako 0.0.0.0) na portu 554. Volitelně lze také omezit počet uživatelů, kteří mohou využívat služby videa na přání, parametrem rtsp-throttle-users. Video si lze spustit zadáním adresy, která se skládá z adresy serveru a cesty odpovídající názvu elementu vod, v našem případě tedy takto:

    vlc rtsp://192.168.0.100:8554/na_prani

    A to je vlastně vše. Seriál o VLC končí, vývoj tohoto přehrávače a jeho možnosti však ne. Pro další inspiraci i oboustrannou podporu zamiřte na webové stránky projektu VideoLan, uživatelské fórum a Wiki.

    Nejčtenější články posledního měsíce

    Zpověď VSHostingu: Jak vypadalo zákulisí českého hostingu a internetu před 11 lety
    Jaderné noviny – 19. 10. 2017: unsafe_put_user() se ukazuje býti skutečně nebezpečné
    Vývojáři začínají vydělávat s affiliate reklamou

    Nejkomentovanější články posledního měsíce

    Linuxové herní novinky – září 2017
    Jaderné noviny – 26. 10. 2017: Statistiky vývojového cyklu 4.14
    Jaderné noviny – 19. 10. 2017: unsafe_put_user() se ukazuje býti skutečně nebezpečné
      všechny statistiky »

    Seriál VLC (dílů: 6)

    VideoLAN Client - 1 (instalace a ovládání) (první díl)
    <—« VLC - 5 (pokročilé streamování)
    VLC - 6 (správce vysílání) (poslední díl)

    Související články

    VideoLAN Client - 1 (instalace a ovládání)
    VLC - 2 (přehrávání multimédií)
    VLC - 3 (filtry a titulky)
    VLC - 4 (začínáme streamovat)
    VLC - 5 (pokročilé streamování)
    Na co se často ptáme: MPlayer
    Na co se často ptáme: ALSA
    Jak vytvořit vlastní DVD pod Linuxem
    Extra multimediální systém XMMS
    GNUsound 0.6
    GJay - trochu neobvyklý jukebox
    KRadio
    Pár postřehů k VLC blog
    TVtime - tak trochu jiná televize
    Přehrávání DVD pod Linuxem
    Ripování DVD

    Další články z této rubriky

    Linuxové foto novinky: nejen darktable 2.2 a Rawtherapee 5
    Linuxové foto novinky: GIMP konečně prolomil 8bit mez
    DLNA v praxi: Android
    Technologie DLNA na Linuxu v praxi – PS3 Media Server
    Technologie DLNA na Linuxu v praxi – 1
           

    Hodnocení: 100 %

            špatnédobré        

    Nástroje: Tisk bez diskuse

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

    Komentáře

    Vložit další komentář

    30.10.2006 20:02 Stanik
    Rozbalit Rozbalit vše Re: VLC - 6 (správce vysílání)
    By me zajimalo, kdyz uz to umi streamovat multicast, jak se s multicastem poprat. Zkousel jsem to s mrouted, pimd, xorp a stejne me ten multicast nejede. Nevite nekdo o nejakem zdroji informaci ? Jinak dik peknou serii clanku.
    7.11.2006 17:34 robert.mil
    Rozbalit Rozbalit vše Re: VLC - 6 (správce vysílání)
    Dobry den, nezkouseli jste nekdo streamovat mpeg soubor jako VOD? Jde mi o to, ze streamovani funguje vyborne, ale pouze pokud je klient opet VLC. Jiny prehravac RTSP stream neprehraje. Trochu jsem se po tom pidil a nasel par lidi, kteri maji stejny problem. Jako klienta pouzivam stb Amino 110H, ktery je doporucovan primo VLC, ale ani tento si s RTSP neporadi. Z logu STB i z etheralu je videt, ze nerozpozna (nenajde) RTSP stream. Jen dodam, ze se stejnym nastavenim a VLC klientem vse funguje. Diky za jakoukoliv odpoved.
    2.1.2007 12:41 mutex
    Rozbalit Rozbalit vše Re: VLC - 6 (správce vysílání)
    nevim nakolik to s tim souvisi , ale prave je aktivni bug, ohledne toho ,ze napriklad darwin streaming server ocekava jine hlavicky nez co vlc pro rtsp generuje , jedna se o data v SDP popisu

    Quentar
    29.9.2007 02:19 Mirek
    Rozbalit Rozbalit vše Re: VLC - 6 (správce vysílání)
    Zdravím Vás..

    článek je super!

    Bohužel jsem nepřišel na to,jak streamovat skrze VLC v mé Lan síti.

    Mám kartu DVB-S Skystar2, phoenix čtečku a dekod.kartu gital.

    Pro streamování požívám kaffeine + sc-plugin,tam stream dvou programů (Nova,Public TV).

    Ve VLC pokud použiji jako input source: udp port 1234 a můžu oba programy přepínat pomocí nabídky Navigace.

    Potřeboval bych následující:

    vlc stream server,který by prijímal v UDP a vysílal v http každý program zvlášt na jinem portu

    1)dst=std{access=http,mux=ts,dst=:8080},select="program=9002" 2)dst=std{access=http,mux=ts,dst=:8081},select="program=9004"

    Už jsem z toho zoufalý, mohl by mi někdo napsat přesný zápis v příkaz.řádku?

    Díky!!
    8.7.2009 14:57 Lordrak
    Rozbalit Rozbalit vše Re: VLC - 6 (správce vysílání)

    Ahoj, hezký seriál, ale podle popisu nechápu, co mám do vlc zadat pro stream RTSP

    koukal jsem na příklad, ale z toho není zřejmé, co zadat do parametru 1. dst  a jak a kam se generuje sdp v 2. dst.

    vlc pisnicka.mp3 --sout '#rtp{dst=239.255.0.101, sdp=rtsp://192.168.0.100:8080/pisnicka.sdp}'

    co je za adresu 239.255.0.101 a jak jste na ní přišli?

    a tady u té si vlc samo  vytvoří server? rtsp://192.168.0.100:8080/pisnicka.sdp

    dík


     

    Založit nové vláknoNahoru

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