CPU usage increasing while serving video

For questions and discussion that is NOT (I repeat NOT) specific to a certain Operating System.
wormemn
New Cone
New Cone
Posts: 8
Joined: 06 Feb 2007 16:00

CPU usage increasing while serving video

Postby wormemn » 07 Feb 2007 09:29

Hello
I'm using VLC 0.8.6a under linux and windows to multicast an mpeg file into MPEG-TS. I set playlist to loop
Everything is OK except that hours after hours, CPU usage increases from 5 to 10 % at beginning until 50% - 80%. It doesn't go higher because at this step, I stop multicasting as transmitted video cannot be decoded

On server side, I've the following messages:
access_output_udp debug: late packet for udp input (8991788)
access_output_udp debug: late packet for udp input (8990429)
access_output_udp debug: late packet for udp input (8990577)
access_output_udp debug: late packet for udp input (8989228)
access_output_udp debug: late packet for udp input (8987868)
access_output_udp debug: late packet for udp input (8986628)
access_output_udp debug: late packet for udp input (8985278)
access_output_udp debug: late packet for udp input (8985565)
access_output_udp debug: late packet for udp input (8984222)
access_output_udp debug: late packet for udp input (8982863)
message warning: message queue overflowed
main debug: closing input
main debug: removing module "mpeg_audio"
main debug: killing decoder fourcc `mpga', 0 PES in FIFO
main debug: removing an input
mux_ts debug: removing input pid=69
main debug: removing module "packetizer_mpegvideo"
main debug: killing decoder fourcc `mpgv', 0 PES in FIFO
main debug: removing an input
mux_ts debug: removing input pid=68
mux_ts debug: new PCR PID is 8191
main warning: no more input streams for this mux
main debug: Program doesn't contain anymore ES
main debug: removing module "ps"
main debug: removing module "access_file"
main debug: destroying sout
main debug: destroying chain... (name=standard)
main debug: removing module "mux_ts"
main debug: thread 2981641136 joined (udp.c:316)
access_output_udp debug: udp access output closed
main debug: removing module "access_output_udp"
main debug: removing module "stream_out_standard"
main debug: destroying chain done
main debug: thread 3018849200 joined (input/input.c:401)
main warning: refcount is 1, delaying before deletion (id=5366,type=-7)
main debug: repeating item
main debug: creating new input thread
main debug: waiting for thread completion
main debug: thread 3018849200 (input) created at priority 0 (input/input.c:263)
main debug: stream=`standard'
main debug: looking for sout stream module: 1 candidate
main debug: set sout option: sout-standard-mux to ts
main debug: set sout option: sout-standard-dst to 239.2.3.110
main debug: set sout option: sout-standard-access to rtp
stream_out_standard debug: creating `rtp/ts://239.2.3.110'
stream_out_standard debug: extension is 110
stream_out_standard debug: extension -> mux=(null)
stream_out_standard debug: using `rtp/ts://239.2.3.110'
main debug: looking for sout access module: 1 candidate
main debug: net: connecting to 239.2.3.110 port 1234
main debug: thread 2981641136 (sout write thread) created at priority 0 (udp.c:268)
access_output_udp debug: udp access output opened(239.2.3.110:1234)
main debug: using sout access module "access_output_udp"
stream_out_standard debug: access opened
main debug: looking for sout mux module: 1 candidate
mux_ts debug: shaping=200000 pcr=70000 dts_delay=400000
main debug: using sout mux module "mux_ts"
main debug: muxer support adding stream at any time
stream_out_standard debug: mux opened
main debug: using sout stream module "stream_out_standard"
main debug: `/home/knoppix/tmp/PAL/SHAKIRA.mpg' gives access `' demux `' path `/home/knoppix/tmp/PAL/SHAKIRA.mpg'
main debug: creating demux: access='' demux='' path='/home/knoppix/tmp/PAL/SHAKIRA.mpg'
main debug: looking for access_demux module: 2 candidates
main debug: creating access '' path='/home/knoppix/tmp/PAL/SHAKIRA.mpg'
main debug: looking for access2 module: 5 candidates
vcd debug: trying .cue file: /home/knoppix/tmp/PAL/SHAKIRA.cue
access_file debug: opening file `/home/knoppix/tmp/PAL/SHAKIRA.mpg'
main debug: using access2 module "access_file"
main debug: pre-buffering...
main debug: received first data for our buffer
main debug: pre-buffering done 786408 bytes in 0s - 4065 kbytes/s
main debug: creating demux: access='' demux='' path='/home/knoppix/tmp/PAL/SHAKIRA.mpg'
main debug: looking for demux2 module: 44 candidates
main debug: using demux2 module "ps"
main debug: looking for a subtitle file in /home/knoppix/tmp/PAL/
main debug: starting in sync mode
main debug: `/home/knoppix/tmp/PAL/SHAKIRA.mpg' successfully opened
ps warning: garbage at input, trying to resync...
ps warning: found sync code
ps warning: garbage at input, trying to resync...
ps warning: found sync code
main debug: selecting program id=0
main debug: looking for packetizer module: 17 candidates
main debug: using packetizer module "mpeg_audio"
main debug: stream out mode -> no decoder thread
main debug: looking for packetizer module: 17 candidates
main debug: using packetizer module "packetizer_mpegvideo"
main debug: stream out mode -> no decoder thread
ps warning: garbage at input, trying to resync...
ps warning: found sync code
ps warning: garbage at input, trying to resync...
ps warning: found sync code
ps warning: garbage at input, trying to resync...
ps warning: found sync code
packetizer_mpegvideo debug: size 720x576 fps=25.000
main debug: adding a new input
main debug: adding a new input
mux_ts debug: adding input codec=mpgv pid=68
mux_ts debug: new PCR PID is 68
main warning: trying to send non-dated packet to stream output!
mpeg_audio debug: MPGA channels:2 samplerate:48000 bitrate:256
main debug: adding a new input
main debug: adding a new input
mux_ts debug: adding input codec=mpga pid=69
access_output_udp debug: packet has been sent too late (212855)
access_output_udp debug: packet has been sent too late (211914)
access_output_udp debug: packet has been sent too late (210965)
access_output_udp debug: packet has been sent too late (209998)
access_output_udp debug: packet has been sent too late (209030)
access_output_udp debug: packet has been sent too late (208076)
access_output_udp debug: packet has been sent too late (207107)
access_output_udp debug: packet has been sent too late (206139)
access_output_udp debug: packet has been sent too late (205170)
access_output_udp debug: packet has been sent too late (204203)
access_output_udp debug: packet has been sent too late (203234)
access_output_udp debug: packet has been sent too late (202266)
access_output_udp debug: packet has been sent too late (201308)
access_output_udp debug: packet has been sent too late (200342)
access_output_udp debug: packet has been sent too late (199374)
access_output_udp debug: packet has been sent too late (198405)
access_output_udp debug: packet has been sent too late (197557)
access_output_udp debug: packet has been sent too late (196590)
access_output_udp debug: packet has been sent too late (195622)
access_output_udp debug: packet has been sent too late (194662)
access_output_udp debug: packet has been sent too late (193694)
access_output_udp debug: packet has been sent too late (192725)
On client side, I've:
ts warning: discontinuity received 0x2 instead of 0xb (pid=68)
access_udp debug: RTP: packet(s) lost, expected 18900, got 18902
ts warning: discontinuity received 0xc instead of 0xf (pid=68)
ts warning: discontinuity received 0xa instead of 0x9 (pid=69)
access_udp debug: RTP: packet(s) lost, expected 18904, got 18906
ts warning: discontinuity received 0x7 instead of 0x9 (pid=68)
access_udp debug: RTP: packet(s) lost, expected 18910, got 18911
ts warning: discontinuity received 0x6 instead of 0xf (pid=68)
access_udp debug: RTP: packet(s) lost, expected 18914, got 18915
ts warning: discontinuity received 0x1 instead of 0xa (pid=68)
access_udp debug: RTP: packet(s) lost, expected 18920, got 18922
ts warning: discontinuity received 0xf instead of 0x2 (pid=68)
ts warning: discontinuity received 0x1 instead of 0x0 (pid=69)
access_udp debug: RTP: packet(s) lost, expected 18928, got 18929
ts warning: discontinuity received 0xe instead of 0x7 (pid=68)
access_udp debug: RTP: packet(s) lost, expected 18931, got 18933
ts warning: discontinuity received 0x8 instead of 0xc (pid=68)
access_udp debug: RTP: packet(s) lost, expected 18939, got 18940
ts warning: discontinuity received 0x9 instead of 0x2 (pid=68)
I tested with older versions of VLC:
problem is present in 0.8.5 but not in 0.8.4a

Hope this will help to resolve the problem

kotao_78
Blank Cone
Blank Cone
Posts: 86
Joined: 29 Jul 2006 09:46
Location: Zhuhai,China

Re: CPU usage increasing while serving video

Postby kotao_78 » 22 Aug 2007 07:31

Same issue!
What's your command line to run VLC?

wormemn
New Cone
New Cone
Posts: 8
Joined: 06 Feb 2007 16:00

Re: CPU usage increasing while serving video

Postby wormemn » 22 Aug 2007 09:09

no particular command line
I open VLC
open file, click stream/save, click settings
In the new window, I set a RTP address and port (any address is good), TTL to 64 and then, OK + OK
Broadcast start correctly but after 2 or 3 days, no more video is served

kmf31
Cone that earned his stripes
Cone that earned his stripes
Posts: 308
Joined: 11 Mar 2007 21:47

Re: CPU usage increasing while serving video

Postby kmf31 » 22 Aug 2007 20:45

There was a CPU-charge-problem with rtsp-streaming and the live555 library which was present in vlc-0.8.6a for Windows and which was repaired in vlc-0.8.6b (also for Windows).

In Linux it depends how the binary is obtained. If the binary is obtained from some distribution with the live555 version from the day when vlc-0.8.6a or vlc-0.8.6b was released then I suppose the situation is the same as in Windows, i.e. the bug is present in vlc-0.8.6a and repaired in vlc-0.8.6b.

If you compile vlc under Linux on your own and if you use 0.8.6a but with a more recent version of live555 then the bug is not present! I have tested it myself. On the other it is also possible that even vlc-0.8.6b and vlc-0.8.6c have the bug if they are compiled with an "old" version of live555 (but I am not sure of this). In any case you should use the latest version of vlc (i.e. vlc-0.8.6c) and the latested version of live555 if you compile on your own. Then the problem should clearly be absent.

For details see this other topic:
viewtopic.php?t=21311
and I believe here the "very old" vlc- and live555-versions are also okay.


Return to “General VLC media player Troubleshooting”

Who is online

Users browsing this forum: No registered users and 16 guests