DVB streaming a VideoLAN VLC

Pro streamování DVB přes sít je možné použít různý software. Pokusím se popsat, jak rozjet streamovaní za pomoci programu VideoLAN VLC. Pro zjednodušení rozeberu způsob pro HTTP streaming. U DVB-T pak streaming dvou kanálů současné (ČT1 a ČT2 z pražského ČRA multiplexu - program ID 0x0001 - CT1 a 0x0002 - CT2). V multiplexu jich je víc, ale nastavení je obdobné.

Scan programů ČRA multiplexu v Praze vypadá následovně:

0x0000 0x0004: pmt_pid 0x0000 CRa -- CT SPORT (running)
0x0000 0x000a: pmt_pid 0x0000 CRa -- CRo1-Radiozurnal (running)
0x0000 0x000b: pmt_pid 0x0000 CRa -- CRo2-Praha (running)
0x0000 0x000c: pmt_pid 0x0000 CRa -- CRo3-Vltava (running)
0x0000 0x000d: pmt_pid 0x0000 CRa -- CRo4-Radio Wave (running)
0x0000 0x000e: pmt_pid 0x0000 CRa -- CRo D-dur (running)
0x0000 0x000f: pmt_pid 0x0000 CRa -- CRo Leonardo (running)
0x0000 0x0010: pmt_pid 0x0000 CRa -- CRo Radio Cesko (running)
0x0000 0x03e8: pmt_pid 0x0000 (null) -- Aplikace MHP (running, scrambled)
0x0000 0x0001: pmt_pid 0x0000 CRa -- CT 1 (running)
0x0000 0x0002: pmt_pid 0x0000 CRa -- CT 2 (running)
0x0000 0x0003: pmt_pid 0x0000 CRa -- CT 24 (running)
0x0000 0x0005: pmt_pid 0x0000 CRa -- NOVA (running)

VLC a parametry z příkazové řádky

Nejrychlejším způsob, jak spustit streamování, je za pomoci parametrů z příkazové řádky.

vlc -vvv --color --intf dummy --sout-standard-mux=ts --programs=1,2 \\
dvb-t:adapter=0:frequency=506000000:bandwidth=8 --sout \\
'#duplicate{dst=std{access=http,url=*:8081},select="program=1", \\
dst=std{access=http,url=*:8082},select="program=2"'

VLM

Konfigurace streamingu přes VLM zabere více času. Odměnou je jednodušší správa streamovaných kanálu a možnost vzdáleného ovládání přes http/telnet interface. Je třeba vytvořit konfigurační soubor vlm.conf.

vlm.conf

new T_CRA broadcast enabled
setup T_CRA input dvb-t:adapter=0:frequency=506000000:bandwidth=8
setup T_CRA output
#duplicate{dst=std{access=http,mux=ts,url=*:8081},

select="program=1",dst=std{access=http,mux=ts,url=*:8082},select="program=2"}
setup T_CRA option dvb-adapter=0
setup T_CRA option dvb-transmission=8
setup T_CRA option dvb-guard=8
setup T_CRA option dvb-hierarchy=-1
setup T_CRA option dvb-modulation=64
setup T_CRA option ts-es-id-pid
setup T_CRA option programs=1,2

control T_CRA play

VLC pak spouštet následovně.

vlm_start.sh

#!/bin/bash

vlc --intf http -vvv --color --vlm-conf vlm.conf

Test funkčnosti

Funkčnost lze ověřit otevřením webové stranky http://127.0.0.1:8080/ v prohlížeči a následně za pomoci další instance VLC a otevřením adresy streamu přes GUI, příp. mplayerem.

mplayer http://127.0.0.1:8081/
mplayer http://127.0.0.1:8082/
Written on April 2, 2007