OpenMandriva ROME, tj. průběžně aktualizovaná (rolling) edice linuxové distribuce OpenMandriva, byla vydána ve verzi 26.09. Vedle Flatpaku také s podporou Snapu.
Edison Design Group po více než 30 letech zveřejnil zdrojový kód svého EDG C/C++ front-endu. Ten proslul širokou podporou standardů C++ a kompatibilitou s dialekty kompilátorů od Microsoftu, GNU, Clangu, Sunu a dokonce i s prehistorickým cfrontem. EDG byl použit například v kompilátoru Intel C++ Classic, kompilátoru NVCC od firmy NVIDIA pro platformu CUDA nebo v našeptávači kódu IntelliSense v produktech společnosti Microsoft. Projekt nyní spravuje organizace The C++ Alliance a kód je dostupný pod licencí Apache 2.0, doplněnou o výjimky projektu LLVM.
Pocket Tank je malé kapesní virtuální akvárium postavené na vývojové desce ESP32-S3-Touch-AMOLED-1.8. Na dvoujádrovém mikrokontroléru ESP32-S3 s 8 MB PSRAM a 16 MB flash paměti běží jak simulace akvária, tak i malý jazykový model určující chování rybiček. Lokální model o velikosti 7,56 MB se 14 miliony parametrů vznikl destilací modelu Gemma 4 26B, tedy učitele s 26 miliardami parametrů. Kromě firmwaru pro skutečný modul s AMOLED
… více »Open-source nástroj Jevstiller vytváří (destiluje) malý lokální model, který se průběžně učí z odpovědí komerční služby Jev. Běžné dotazy vyřizuje přímo na vlastním hardware, čímž může řádově zkrátit čas odezvy a snížit provozní náklady díky menšímu využívání zpoplatněného API. Nejisté požadavky Jevstiller posílá do Jevu, rovněž průběžně kontroluje náhodná dvě procenta dotazů Jevem. Pokud se lokální model začne s Jevem rozcházet,
… více »Konference LinuxDays 2026 proběhne již tento víkend 3. a 4. října v Praze v areálu ČVUT v Dejvicích na FIT. Konference LinuxDays 2026 znamená desítky přednášek a workshopů, zástup zajímavých osobností, místo pro setkání, spoustu nových nápadů a informací a stánky řady různých projektů: Fedora, openSUSE, vpsFree.cz, Mozilla, MacGyver - bastlíři SH, OpenAlt a mnoho dalších. Vstup je volný.
Microsoft oznámil, že WSL kontejnery (WSLC) aneb linuxové kontejnery ve Windows Subsystem for Linux (WSL) jsou již obecně dostupné. Současně popsal jejich architekturu.
openSUSE Leap 16.1 vstoupil do RC fáze. Nově lze instalovat jako standardní systém (Standard) nebo jako neměnný systém s atomickými aktualizacemi (Immutable). Samostatná neměnná distribuce openSUSE Leap Micro končí.
Byl vydán Mozilla Firefox 157.0. S nejvýraznější vizuální proměnou za poslední roky. Přehled novinek v poznámkách k vydání a poznámkách k vydání pro vývojáře. Řešeny jsou rovněž bezpečnostní chyby. Nový Firefox 157 bude brzy k dispozici také na Flathubu a Snapcraftu.
Rodina produktů Raspberry Pi se rozšířila o Raspberry Pi Smart Display Module. Deska pro Raspberry Pi Compute Module 5 se zasouvá přímo do displejů dle specifikace Intel SDM. Cena desky je 30 dolarů.
Byla vydána nová verze 2.56.0 distribuovaného systému správy verzí Git. Přispělo 104 vývojářů, z toho 39 nových. Přehled novinek v příspěvku na blogu GitHubu a v poznámkách k vydání.
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.
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].
O vystavení souboru SDP se stará parametr příznačně pojmenovaný sdp a může nabývat obecně čtyř různých typů hodnot:
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.
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ů:
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.
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:
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
U elementu schedule lze nastavovat parametry týkající se časového rozvrhu událostí:
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.
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.
Nástroje: Tisk bez diskuse
Tiskni
Sdílej:
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