Portál AbcLinuxu, 30. dubna 2025 15:27
Před časem jsem si nechal poradit při výběru TV karty. V současné době již vše funguje a já streamuju televizi po naší lokální síti.
Předpokládám...
Původně byl pro streamování určen VLS (Video Lan Server). Ten už je ale deprecated
a jeho funkcionalitu převzal (a rozšířil) VLC.
Asi nejhorší pro mě bylo porozumět docela složitému systému parametrů - trochu to tedy proberu.
V podstatě nejjednoduší možností jak pomocí VLC přhrát DVB je tato:
# vlc dvb: --dvb-frequency=626000000
Tohle nám začne začne přhrávat jakoby celý multiplex (v podstatě přehraje "první" kanál). VLC se na multiplex dívá jako na MPEG který má několik zvukových a videostop. Abychom zobrazily určitý kanál, budeme muset použít filtr duplicate.
# vlc dvb: --dvb-frequency=626000000 --ts-es-id-pid --programs=2 --sout '#duplicate{dst=display,select="program=2"}'
parametr ts-es-id-pid
nám dovolí odkazovat se na kanály pomocí jejich čísel (ty jsem si zjistil v kaffeine)
parametr --programs=2
určuje z kterých kanálů budeme vybírat
filtr duplicate
umožňuje rozdělit vstup na několik výstupů
Takhle budeme program CT2 vysilat pomoci http:
# vlc dvb: --dvb-frequency=626000000 --ts-es-id-pid --programs=2 --sout '#duplicate{dst=std{access=http,mux=ts,url=localhost:6543/ct2},select="program=2"}'
Ověřit si to můžete třeba pomocí:
# mplayer http://localhost:6543/ct2
Fajn, teď máme jeden kanál v "éteru", jak přidat další?
# vlc dvb: --dvb-frequency=626000000 --ts-es-id-pid --programs=1,2 --sout '#duplicate{dst=std{access=http,mux=ts,url=localhost:6543/ct1},select="program=1",dst=std{access=http,mux=ts,url=localhost:6543/ct2},select="program=2"}'
Teď už vysíláme dva programy...není to jednoduché? Samozřejmě že je vhodné si na to napsat nějaký rozumný sriptík, ale to nechám za DÚ (za ten svůj se stydím, tak ho nevystavuju)
Tiskni
Sdílej:
Ja pouzivam radeji VLS. Sice uz je _deprecated_, ale zatim je plne funkcni. Neprisel jsem na to, jake dalsi nastaveni a vychytavky streamovani prinesla integrace do VLC. Nejake poznatky?umoznuje, narozdil od VLS, prekodovat video/audio jinym kodekem a menit velikost videa
Mne osobne prijde zadavani parametru na jednom temer nekonecnem radku jako nevhodne. Pro VLS existuje velmi prehledny konfiguracni soubor a nemusim vytvaret extra spousteci skriptiky.neni vzdy pravda - prave ve skriptech se muze hodit, ale souborova alternativa by neskodila (mozna si neco napisu)
VLS jde spoustet taky jako demon, coz o VLC nevim.pouzivam gentoo a pro daemon tedy standardni prostredky distribuce (
start-stop-daemon
), takze neresim, ale uznavam ze tahle volba by take mohla pribyt
naopak: nejprve sem zkousel rozchodit VLS podle tveho navodu, ale nedostal sem se za konfiguraci jednotlivych kanalu (tedy vygenerovani channels.conf). proste sem nebyl schopnej prinutit tu utilitu aby pracovala (mozna sem jenom z navodu nepochopil spravny postup) - tady mi na VLC vyhovuje to, ze konfiguraci karty zajistuje sam nezavisle na tretich utilitach a hlavne mi to funguje
pouzivam gentoo a pro daemon tedy standardni prostredky distribuce (start-stop-daemon
), takze neresim, ale uznavam ze tahle volba by take mohla pribyt
Volba -d na příkazovym řádku to řeší. Další alternativou (která se může hodit pro ladění případnejch problémů) je použít screen, používal jsem to u několika herních serverů, který se ze stdin daly i ovládat.
umoznuje, narozdil od VLS, prekodovat video/audio jinym kodekem a menit velikost videajasne, jde mi o to, jestli lze nejak vylepsit kvalitu streamovaneho vysilani. Podle mych poznatku VLS posila mpeg v takove kvalite, jak ho ziskal z karty. Zkouseli jste nekdo _vylepsovat_ ziskanou kvalitu nejakym prekodovanim? S jakym vysledkem?
neni vzdy pravda - prave ve skriptech se muze hodit, ale souborova alternativa by neskodila (mozna si neco napisu)ze umi konfiguracni soubory jsem nevedel/zapomnel. diky
naopak: nejprve sem zkousel rozchodit VLS podle tveho navodu, ale nedostal sem se za konfiguraci jednotlivych kanalu (tedy vygenerovani channels.conf). proste sem nebyl schopnej prinutit tu utilitu aby pracovala (mozna sem jenom z navodu nepochopil spravny postup) - tady mi na VLC vyhovuje to, ze konfiguraci karty zajistuje sam nezavisle na tretich utilitach a hlavne mi to fungujehm, tak jsem asi nekde v navodu udelal chybu, protoze channels.conf nema s VLS nic spolecneho. Ten je pouze pro Xine, Mplayer, Klear,... Konfiguraci pro VLS zajistuje pouze jeho vlastni soucast - libdvb-0.2.2, ktera vygeneruje .dvbrc, coz neni nic jineho, nez jinak zapsany channels.conf pro VLS. Tedy neni to treti utilita.
hm, tak jsem asi nekde v navodu udelal chybu, protoze channels.conf nema s VLS nic spolecneho. Ten je pouze pro Xine, Mplayer, Klear,... Konfiguraci pro VLS zajistuje pouze jeho vlastni soucast - libdvb-0.2.2, ktera vygeneruje .dvbrc, coz neni nic jineho, nez jinak zapsany channels.conf pro VLS. Tedy neni to treti utilita.ne chybu jste neudelal, spatne sem si zapamatoval kde sem mel problem - problem sem mel prave u toho libdvb, nenasel sem zpusob jak vygenerovat .dvbrc (spletl sem si to s tim channels.conf)
nepodarilo se mi udelat prochazeni (+/-) do kola a prepinani pomoci cislic...prepinani pomoci cislic sem vyresil nasledovne: vlc pustim s interfacem rc a pak pomoci netcatu poslu prikaz
goto (cislo)
je to trosku silene, ale na jiny zpusob sem u vlc neprisel (v soucasne dobe jiz prehravam pomoci kaffeine, kde lze lirc nakonfigurovat mnohem rozumeji)
vlc dvb://
ISSN 1214-1267, (c) 1999-2007 Stickfish s.r.o.