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í
×
včera 13:00 | Komunita

Při prvním spuštění Ubuntu 18.04 LTS (Bionic Beaver) je spuštěn nástroj Ubuntu Report. Pokud uživatel souhlasí, jsou pomocí tohoto nástroje odeslány do Canonicalu informace o daném počítači (doba instalace, počet procesorů, rozlišení displeje, velikost paměti, časová zóna, ...). V červnu byly zveřejněny první statistiky. Podrobnější statistiky jsou nově k dispozici na samostatné stránce.

Ladislav Hagara | Komentářů: 11
včera 01:00 | Pozvánky

O víkendu probíhá v Košicích pravidelné setkání příznivců otevřených technologií OSS Víkend. Na programu je řada zajímavých přednášek a workshopů.

Ladislav Hagara | Komentářů: 0
včera 00:11 | Nová verze

Byla vydána nová verze 1.3 otevřeného, licenčními poplatky nezatíženého, univerzálního ztrátového formátu komprese zvuku Opus (Wikipedie) a jeho referenční implementace libopus. Vylepšena byla například detekce, zda se jedná o řeč nebo o hudbu. Přidána byla podpora prostorového zvuku (immersive audio) dle plánovaného RFC 8486. Podrobnosti a zvukové ukázky na demo stránce.

Ladislav Hagara | Komentářů: 0
18.10. 22:33 | Nová verze

Bylo vydáno Ubuntu 18.10 s kódovým názvem Cosmic Cuttlefish (Kosmická sépie). Ke stažení jsou Ubuntu Desktop a Server, Ubuntu Cloud Images, Ubuntu Netboot, Kubuntu, Lubuntu a Lubuntu Alternate, Ubuntu Budgie, Ubuntu Kylin, Ubuntu MATE, Ubuntu Studio a Xubuntu. Podrobnosti v poznámkách k vydání.

Ladislav Hagara | Komentářů: 3
18.10. 18:33 | Nová verze

Byl vydán PostgreSQL ve verzi 11.0. Přehled novinek v poznámkách k vydání.

Ladislav Hagara | Komentářů: 0
18.10. 17:33 | IT novinky

Nadace Raspberry Pi představila na svém blogu Raspberry Pi TV HAT, tj. rozšíření jednodeskového počítače Raspberry Pi umožňující příjem televizního vysílání DVB-T a DVB-T2. Cena rozšíření je 21,50 $.

Ladislav Hagara | Komentářů: 8
18.10. 17:07 | Nová verze

Vychází OpenBSD 6.4. Z řady novinek namátkou: podpora dalších architektur (arm64 např. dostal z Linuxu vypůjčený ovladač radeondrm), hypervizor vmm podporuje i qcow2 disky a šablony, jádro dokáže automaticky přepínat mezi dostupnými bezdrátovými sítěmi, sítě pracují o něco efektivněji, z bezpečnosti „přísaha byla doplněna odhalením“ (pledge(2) lze vhodně doplnit pomocí unveil(2)), SMT je ve výchozím stavu vypnutý, ale lze jej zapnout. Syntaxe nastaveni OpenSMTPD se změnila. S vydáním vychází také nová verze LibreSSL - 2.8.2.

Daniel Čižinský | Komentářů: 5
17.10. 23:15 | IT novinky

Firma Raptor Computing Systems, která stojí také za pracovní stanicí Talos II, představila levnější desku Blackbird s podporou jednoho 4-/8jádrového CPU POWER9 Sforza a formátem microATX; bližší specifikace jsou ve wiki výrobce.

Fluttershy, yay! | Komentářů: 30
17.10. 22:11 | Zajímavý projekt

Byla vydána verze 1.0 svobodné federalizované platformy pro sledování a sdílení videí, alternativy YouTube s podporou P2P, PeerTube (Wikipedie). Za vývojem PeerTube stojí nezisková organizace Framasoft snažící se mimo jiné nahradit svými svobodnými Frama službami služby společnosti Google (De-google-ify Internet).

Ladislav Hagara | Komentářů: 1
17.10. 19:44 | Zajímavý projekt

Společnost System76 prodávající počítače s Pop!_OS nebo Ubuntu plánuje prodej vlastního open source počítače s názvem Thelio. Informací je poskrovnu. Na Twitteru byla představena open source rozšířující deska (daughterboard), která by měla převzít funkce proprietárního softwaru na základní desce (motherboard).

Ladislav Hagara | Komentářů: 2
Přispíváte osobně k vývoji svobodného softwaru?
 (39%)
 (43%)
 (25%)
 (22%)
 (11%)
 (36%)
Celkem 263 hlasů
 Komentářů: 13, poslední dnes 16:39
Rozcestník

VLC - 4 (začínáme streamovat)

5. 9. 2006 | Jiří Poláček | Multimédia | 36985×

Hlavní devizou VLC je nepochybně možnost streamování – vysílání multimediálního obsahu po síti. Následující text lehce nastiňuje široké možnosti takového počínání a podrobněji se pak věnuje základnímu vysílacímu modulu a problematice vícesměrového vysílání (multicast).

Vysílací moduly

K vysílání ve VLC slouží parametr sout, za kterým může být definice nastavení dlouhá přes několik řádků. Začneme ale jednoduchým příkladem – vysílejme libovolný videosoubor via protokol HTTP:

vlc video.avi --sout http/ts:localhost:6543

Takovéto vysílání přehrajeme již známým způsobem:

vlc http://localhost:6543

Příklad využívá zjednodušené syntaxe nastavení streamování, u kterého se automaticky předpokládá standardní modul vysílání. Plná verze zápisu toho stejného by vypadala následovně:

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

Ve složených závorkách jsou definována nastavení modulu, jehož jméno je před závorkami; modul standard z příkladu je pouze jedním z několika dostupných:

standard
Nebo jen std je základním výstupním modulem, data vysílá vybraným protokolem (HTTP, UDP, file atd.) ve vhodném kontejneru (TS, PS, OGG, ASF, AVI atd.), viz dále.
duplicate
Umožňuje k multimediálnímu zdroji přistupovat vícekrát, s jeho pomocí je například možné elegantně streamovat více programů digitálního televizního vysílání.
transcode
Provádí překódování vstupu, tj. myslitelné obvyklé úpravy jako změna kodeku, kvality, rozlišení či nasazení některých filtrů.
display
Přehrává vstup jako obvykle, ve spojení s duplicate je možné se na nějaký film dívat a zároveň jej vysílat dále po síti.
rtp
Vysílá po síti protokolem RTP – Real-time Transport Protocol, který je definován RFC 3550.
es
Jako zkratka od Elementary Streams; modul separuje jednotlivé složky zdroje, typicky od sebe oddělí hudební a obrazovou složku.

První várka příkladů

Jak již je v popisech naznačeno, moduly lze společně různě kombinovat, zejména je řadit do posloupností (oddělovačem je dvojtečka) a zanořovat do modulu duplicate. Ukažme si to na pár obecnějších příkladech (konkrétní volby vysílání a kódování se dozvíme později):

vlc video.avi --sout \
 '#duplicate{dst=display,dst=standard{volby vysílání}}'

Video bude přehráváno lokálně a zároveň dále vysíláno po síti.

vlc cdda:// --sout \
 '#transcode{volby kódování}:std{volby vysílaní}'

Přehrávané hudební cédéčko bude nejdříve překódováno a po té vysíláno.

vlc mojeradio.pls --sout \
 '#duplicate{dst=std{volby vysílaní},\
dst=transcode{volby kódování}:std{volby vysílaní}}'

Vysílání internetového rádia – v plné kvalitě na jedné adrese a překódované do nižší kvality na adrese druhé.

Jednotlivé moduly samozřejmě mají hromadu možností k nastavování. Na ty nejdůležitější se nyní podíváme.

Vysíláme pomocí modulu standard

Modul standard posílá multimediální zdroj jedním ze základních protokolů na místo určení – do souboru nebo po síti. Důležité jsou jeho následující parametry:

access

Definuje výstupní metodu vysílaného zdroje, tj. vhodný internetový protokol:

  • http, https, mmsh – Vysílání na principech webového serveru (včetně varianty s SSL); MMS je podporováno pouze zapouzdřené v HTTP.
  • udp, rtp – (Jedno)směrové (unicast) nebo vícesměrové (multicast) vysílaní na vybranou adresu a port pomocí nespolehlivého UDP.
  • file – Uložení přehrávaného multimediálního zdroje do souboru.
mux

Kontejner, v kterém jsou multimédia vysílána – dlužno mít na paměti, že některé kontejnery jsou vhodné jen pro některé kodeky a stejně tak nemusí podporovat všechny výstupní metody.

  • ts – Transportní varianta formátu MPEG2 (Transport Stream), standard pro šíření digitální televize; kontejner podporuje veškeré výstupní metody a nejširší portfolio kodeků.
  • ps – Klasická varianta MPEG2 (Program Stream), standard pro filmy na DVD; výstupní metody jsou omezeny na file a http, také podpora kodeků je užší.
  • ogg – Kontejner z projektu Xiph; podporuje kodeky z jmenovaného projektu plus MPEG, výstupními metodami jsou opět http a file.
  • asf, asfh – Kontejnery Microsoftu se svými specifiky.
  • avi, mov, mp4 – Kontejnery, jejichž jedinou výstupní metodou je file.
dst
Již zmiňované místo určení, jehož význam se lehce mění v závislosti na zvolené výstupní metodě. Pokud je vybrán file, dst samozřejmě udává soubor, do kterého se má ukládat; u metod udp a rtp cílovou adresu a u ostatních metod síťové rozhraní, na kterém má VLC naslouchat požadavkům ve tvaru adresa:port/cesta.

Druhá várka příkladů

Nyní již s konkrétními volbami vysílání:

vlc http://www.live.cz/radio/beat128.ogg.m3u --sout \ '#std{access=file,dst=radio.ogg}'

Uložení vysílání internetového rádia do souboru:

vlc video.avi --sout '#std{access=mmsh,mux=asfh,dst=:7880/video}'

Vysílání, ke kterému se může připojit i Windows Media Player na adrese mms://<počítač>:7880/video – bez specifikace IP či jména počítače naslouchá VLC na všech síťových rozhraních.

vlc dvdsimple:// --sout http/ts:localhost:8080 --sout-all

Globální parametr sout-all zajistí, že vysílány budou všechny dostupné proudy streamovaného filmového DVD, tj. veškeré zvukové stopy i titulky.

vlc video.avi --sout '#std{access=udp,mux=ts,dst=192.168.0.5}' --ttl 5

Směrové vysílání (unicast) k počítači s adresou 192.168.0.5 na výchozím portu 1234. Volba ttl nastavuje životnost paketu – počet aktivních prvků sítě, přes které může vysílaný proud dat projít.

vlc video.avi --sout '#std{access=udp,mux=ts,dst=239.255.0.5}'

Vícesměrové vysílání (multicast) na adresu 239.255.0.5; klienti, kteří chtějí přijímat takové vysílání, se musí k zadané adrese zaregistrovat (nepřehlédněte znak zavináč):

vlc udp:@239.255.0.5

Pro porovnání – pro příjem unicastu (na výchozím portu) stačí zadat pouze vlc udp:. Pokud se neorientujete v problematice vícesměrového vysílaní, čtěte následující odstavec.

Kterak na multicast

Vícesměrové vysílání je standardní součástí internetového protokolu IP, které se používá s transportním protokolem UDP. Multicast lze provozovat i s protokolem RTP, který je vystavěn právě nad UDP. Vysílající stanice posílá svůj obsah na dynamicky vznikající IP adresu z prostoru vyhrazeného pro tyto účely, klienti si pak mohou tutéž adresu zaregistrovat – k tomu slouží protokol IGMP – a přijímat tak vysílaný proud. Vícesměrovým šířením dat se šetří přenosová kapacita linky, neboť data od vysílací stanice putují pouze jednou, na druhou stranu vysílací stanice neví, kdo (všechno) je příjemcem jejího vysílání. Zmiňované rezervované adresy jsou z rozmezí 224.0.0.0–239.255.255.255, přičemž pro lokální použití jsou (zjednodušeně řečeno) rezervovány segmenty 224.0.0.0/24 a 239.0.0.0/8 (podrobnosti viz Internet Protocol Multicast).

Globální použití vícesměrového vysílání je prakticky omezeno na uživatele virtuální vícesměrové páteřní sítě MBONE, pro většinu z nás tak připadá v úvahu jen lokální použití. I zde však lze narazit na problémy; multicast musí podporovat operační systém (linuxové jádro), síťová karta a veškeré síťové prvky, přes které vysílání prochází – různé levné směrovače s ním mohou mít problémy, ty drahé jej zase mají ve výchozím nastavení vypnuté. Pro důkladnější prostudování problematiky viz seriál článků na Lupě, proslulé Multicast HOWTO, či pojmy ve Wikipedii Multicast, IP Multicast a IGMP.

Nastavení vícesměrového vysílání

Pro úspěšné provozování multicastu pod Linuxem je třeba věnovat pozornost následujícím položkám:

linuxové jádro
Podpora linuxového jádra samozřejmě nesmí chybět a obvykle také ve výchozím nastavení distribucí nechybí. V případě problémů přesto věnujte pozornost položkám IP:mutlicasting, IP:multicast routing v menu NetworkingNetworking Options.
síťová karta
Příznak MUTLICAST ve výpisu ip addr značí podporu vícesměrového vysílaní. U běžných ethernetových síťovek obvykle problém není, pozor však na bezdrátové síťové karty.
směrování síťového provozu

U některých konfigurací sítě může být žádoucí doplnit směrovací tabulku následujícím způsobem:

ip route add to 224.0.0.0/4 dev eth0
firewall

Také je nezbytné povolit ve firewallu protokol IGMP a všechny porty UDP, na kterých se vysílá. Používám výchozí firewall v SUSE, proto mám v /etc/sysconfig/SuSEfirewall2:

FW_SERVICES_EXT_UDP="1234"
FW_SERVICES_EXT_IP="igmp"

Analogická pravidla pro IPTABLES (bez záruky):

iptables -A INPUT -p udp --dport 1234 -j ACCEPT
iptables -A INPUT -p igmp -j ACCEPT

Oznamování vysílaného obsahu

V případě funkčního vícesměrového vysílání si můžeme dopřát i onu symbolickou třešničku na dortu v podobě oznamování obsahu, který se kde vysílá. Jako příjemce obsahu tak nemusíme znát adresu zdroje, na kterém se vysílá, postačí nám v přehrávači zapnout funkci příjmu oznamování SAP a dostupná vysílání se nám „sama naladí“

Vysílaný obsah oznámíme za pomoci služby SAP – Session Announcement Protocol – zadáním parametru sap v modulu standard. Pokud něco oznamujeme, neměli bychom zapomenout připojit popisek – to zajistí parametr name:

vlc trailer.mov --sout \
 '#std{access=udp,mux=ts,dst=:1234,sap,name="Filmová ukázka"}'

Standardní port UDP pro oznamování je 9875, takže opět pozor na nastavení firewallu.

Příště

Příští díl seriálu se bude věnovat dalším vysílacím modulům, zejména transcode pro konverzi vysílaného zvuku a videa.

       

Hodnocení: 97 %

        š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ář

5.9.2006 08:28 ch-in-A | skóre: 13 | blog: Zapisky_silencovy | Praha
Rozbalit Rozbalit vše Re: VLC - 4 (začínáme streamovat)
bezva clanek, urcite se mi nekdy bude hodit....pisu si :@)
-- RTFRFC --
5.9.2006 09:22 DAve
Rozbalit Rozbalit vše Re: VLC - 4 (začínáme streamovat)
Jednim slovem .. Nadhera :-)
5.9.2006 11:13 Mayo | skóre: 1
Rozbalit Rozbalit vše Re: VLC - 4 (začínáme streamovat)
Zaujímalo by ma aký typ kontainera použiť, ak by som chcel streamovať video prevažne pre uživateľov Windows, bez toho aby sa na strane klienta musel inštalovať špeciálny kodek (alebo vlc). Teda ako streamovať video vo formáte Windows Media (asf,...)?
Jiří Poláček avatar 5.9.2006 12:18 Jiří Poláček | skóre: 47 | blog: naopak | Sivice
Rozbalit Rozbalit vše Re: VLC - 4 (začínáme streamovat)
Doporučuji nahlédnout do fóra na webu videolan.org; kontejner asf samozřejmě lze použít, ale kodeky WMA, WMV (myslím) VLC pod Linuxem nepodporuje.
Sudoku omrzelo? Zkuste bobblemaze! | Statistiky jsou jak bikiny. Napoví hodně, všechno ale neukážou.
5.9.2006 12:56 Mayo | skóre: 1
Rozbalit Rozbalit vše Re: VLC - 4 (začínáme streamovat)
Pozeral som si vlc forum, ale nenašiel som žiadny spôsob ako to vyriešiť.
9.9.2006 18:47 GeBu | skóre: 27 | blog: zápisky
Rozbalit Rozbalit vše Re: VLC - 4 (začínáme streamovat)

Mrkni sem: http://forum.videohelp.com/viewtopic.php?t=259354 je to tady i se screenshoty. Mám to vyzkoušené.

Jinak vlc se nemusí ve Windows instalovat, ale stačí rozbalit zip nebo 7-zip verzi a protože se dá taky spouštět z příkazového řádku, tak se vlastně dá komplet nastavit jako bat a příjemce jen klikne na zástupce na ploše.

5.9.2006 11:18 erchamion
Rozbalit Rozbalit vše Re: VLC - 4 (začínáme streamovat)
Moc hezky clanek. Jen by mozna jeste melo byt receno, ze pro lokalni multicast je opravdu lepsi pouzivat segment 239.0.0.0/8, protoze v segmentu 224.0.0.0/24 jsou nektere adresy rezervovany (co si vybavuju takhle z voleje, tak treba 224.0.0.5 a 224.0.0.6 pouziva routovaci protokol OSPF atd.) a hrozi riziko kolize. Podrobnosti lze dohledat v RFC1700. Ale jinak fakt super clanek, mozna si to streamovani jen tak ze sportu vyzkousim... :-)
5.9.2006 22:43 zigi | skóre: 14
Rozbalit Rozbalit vše Re: VLC - 4 (začínáme streamovat)
moc pekne, jen bych bel jeden dotaz:

 Potrebuju z rozhrani eth0 (verejna IP) preroutovat
multicast na eth1 (192.168.1.254) do domaci podsite..
klasicke internetove spojeni funguje pres ip_forwardig a NAT.

 Nebo dalsim resenim, ktere me napadlo, by bylo video data
prichazejici na eth0 prestreamovavat pres vlc na druhe
rozhrani eth1, ale potreboval bych trochu nasmerovat.

thx
8.9.2006 07:25 Pavel 'lingeek' Szalbot | skóre: 54 | Třinec
Rozbalit Rozbalit vše Re: VLC - 4 (začínáme streamovat)
Přiznám se, že mě taky zajímá, jak routovat multicastový provoz.
Math, as Barbie says, is hard.
9.9.2006 08:49 p_a_l_o
Rozbalit Rozbalit vše Re: VLC - 4 (začínáme streamovat)
Resim stejny problem. ISP uz mnoho mesicu vysila TV pres multicast, ale ja se za linux routerem mohu divat akorat tak z okna. Kdyz pripojim PC(OS Windows) primo, neni sledovani problem.
3.11.2006 16:46 local
Rozbalit Rozbalit vše Re: VLC - 4 (začínáme streamovat)
Ak by ste si precitali niektory zo spominanych serialov, pochopili by ste, ze routovat multicast traffic staticky akosi nejde. preto je na to potrebne pouzit dynamicky routing protokol, najcastejsie sa pouziva pim. jeden z free pim routrov (tusim zvlada iba sm, co ale az tak nevadi) je napriklad xorp, pouziva ho ja vasa 802.tv, pokial ma pamat neklame. odporucam spojit sa s nimi a podebatit. local
21.1.2007 22:23 Kolyk
Rozbalit Rozbalit vše VLC DVB UDP multicast
Narazil někdo na problém s vyčerpáním paměti při streamování DVB přes UDP multicast? Při nějaké těžko popsatelné události začne VLC vyčerpávat paměť, dokud jej nezabiju. Do té doby jede VLC bez problémů. Prosím o pomoc. Mám vlc-0.8.6 na testing debianu. Díky.
11.2.2007 23:48 poli
Rozbalit Rozbalit vše Re: VLC DVB UDP multicast
Ano, problem je bug v VLC od verze 0.8 pro DVB karty. Smula je ze to nikdo neresi. Narazil jsem na lepsi soft: getstream http://www.mulder.franken.de/getstream-poempel/
5.3.2007 15:30 Kolyk
Rozbalit Rozbalit vše Re: VLC DVB UDP multicast
Díky moc za informaci.
19.2.2007 15:44 Migel
Rozbalit Rozbalit vše Lamy
A co třeba nějaký článek pro začínající lamy? Já jsem z tohohle článku nepochopil nic, co tady dělají nějaké příkazy? To přece není programovací jazyk kde se píše tuna příkazů ... já chci vysílat jednuduše, abych spustil program, vybral video, dal vysílat a aby se mi to ukládalo např. na http://mojeip:8080 nebo podobně, jako to dělají webkamery
26.1.2011 15:46 EnemyXP
Rozbalit Rozbalit vše Re: VLC - 4 (začínáme streamovat)
Zdravím, mám takový problém, streamování mi funguje, jen nemůžu zprovoznit SAP oznamování. Firewall mám vypnutý a požadavky SAP přijímám na portu 9875, ale pod protokolem IPv6. Ve VLC se mi ze SAP informací nic neukáže. Problém je asi v tom, že to posílá v IPv6, ale nedaří se mi to změnit na IPv4. Víte někdo co s tím? Díky

Založit nové vláknoNahoru

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