[streaming] VLC performance duplicate stream

Florian Lohoff flo at rfc822.org
Sat Jul 30 12:30:28 CEST 2005


Hi,
i am trying to stream full DVB transponders in seperate multicast groups
into a local network. For this i am using a Budged DVB Card (Pinnacle
PCTV Sat XE) which works without greater problems (Except searching VLC
Documentation).

This is my current setup:

vlc -v \
        --ttl 12   \
        --ts-es-id-pid  \
        --programs 28106,28107,28108,28109,28110,28111,28112,28113,28114 \
        dvb: \
                --dvb-adapter=0 \
                --dvb-frequency=11836000 \
                --dvb-srate=27500000 \
                --dvb-voltage=18 \
                --dvb-fec=3 \
                --dvb-budget-mode \
        --sout '#duplicate{\
                dst=std{access=udp,mux=ts,url=239.255.1.6:3001,sap=true,name="Das Erste"},select="program=28106",\
                dst=std{access=udp,mux=ts,url=239.255.1.7:3001,sap=true,name="Bayrisches FS"},select="program=28107",\
                dst=std{access=udp,mux=ts,url=239.255.1.8:3001,sap=true,name="hr-fernsehen"},select="program=28108",\
                dst=std{access=udp,mux=ts,url=239.255.1.9:3001,sap=true,name="arte"},select="program=28109",\
                dst=std{access=udp,mux=ts,url=239.255.1.10:3001,sap=true,name="SR Suedwest FS"},select="program=28110",\
                dst=std{access=udp,mux=ts,url=239.255.1.11:3001,sap=true,name="WDR Koeln"},select="program=28111",\
                dst=std{access=udp,mux=ts,url=239.255.1.12:3001,sap=true,name="BR-alpha"},select="program=28112",\
                dst=std{access=udp,mux=ts,url=239.255.1.13:3001,sap=true,name="Phoenix"},select="program=28114",\
                }'

With this i am using ~70% CPU on a 1.2GHz Celeron:

top - 12:52:21 up 5 min,  2 users,  load average: 3.81, 1.84, 0.72
Tasks:  43 total,   2 running,  41 sleeping,   0 stopped,   0 zombie
Cpu(s): 55.4% us, 12.1% sy,  0.0% ni, 24.4% id,  0.0% wa,  0.0% hi,  8.1% si
Mem:    253896k total,   121148k used,   132748k free,    23508k buffers
Swap:   771080k total,        0k used,   771080k free,    22512k cached

  PID USER      PR  NI  VIRT  RES  SHR S %CPU %MEM    TIME+  COMMAND
 3690 root      15   0  399m  55m 3632 S 71.9 22.5   2:15.10 vlc
 3705 root      15   0     0    0    0 S  0.7  0.0   0:01.03 kdvb-fe-0
[...]
stream:~# vmstat 10
procs -----------memory---------- ---swap-- -----io---- --system-- ----cpu----
 r  b   swpd   free   buff  cache   si   so    bi    bo   in    cs us sy id wa
11  0      0 136840  23524  22512    0    0   108    32 1842  2433 37 15 44  4
 0  0      0 133864  23532  22512    0    0     0     3 2268  3683 52 21 28  0
 0  0      0 134608  23532  22512    0    0     0     0 2297  3760 49 20 31  0
 0  0      0 137460  23532  22512    0    0     0     0 2268  3685 51 20 29  0

Just using a single program out of that transponder results in ~15% CPU.

top - 12:54:47 up 7 min,  2 users,  load average: 1.21, 1.85, 0.91
Tasks:  43 total,   2 running,  41 sleeping,   0 stopped,   0 zombie
Cpu(s):  9.6% us,  5.0% sy,  0.0% ni, 79.4% id,  0.0% wa,  0.0% hi,  6.0% si
Mem:    253896k total,    89520k used,   164376k free,    23684k buffers
Swap:   771080k total,        0k used,   771080k free,    22524k cached

  PID USER      PR  NI  VIRT  RES  SHR S %CPU %MEM    TIME+  COMMAND
 3752 root      15   0  111m  25m 3628 S 14.3 10.1   0:07.72 vlc
 3760 root      15   0     0    0    0 S  0.3  0.0   0:00.40 kdvb-fe-0


So my question is wether there is a solution for saving CPU cycles. It seems
to me that the duplication of the stream is a huge CPU hog. IMHO should demuxing
and sending out a stream with 40MBit/s be a very easy task.

Distribution is Debian/GNU/Linux/i386/sarge with
ii  vlc                        0.8.1.svn20050314-1        multimedia player for all audio and video formats

Flo
-- 
Florian Lohoff                  flo at rfc822.org             +49-171-2280134
                        Heisenberg may have been here.
-------------- next part --------------
A non-text attachment was scrubbed...
Name: not available
Type: application/pgp-signature
Size: 189 bytes
Desc: Digital signature
Url : http://mailman.videolan.org/pipermail/streaming/attachments/20050730/61a53f32/attachment.pgp 


More information about the streaming mailing list