Too many msgs: main video output warning: late picture skipp

About encoding, codec settings, muxers and filter usage
vlcLinuxUser
New Cone
New Cone
Posts: 9
Joined: 05 Jul 2007 18:39

Too many msgs: main video output warning: late picture skipp

Postby vlcLinuxUser » 16 Jul 2007 22:01

Hi,

Running vlc-0.8.6b on CentOS5 (AKA RHEL5) as both a server and a client on 2 different machines connected over a hi-speed LAN. The server sends a web-cam video stream over multicast (UDP) to the client.
The client shows the stream but is printing the above message at a fast rate when run with -vvv option.

vlc -vvv udp:@239.255.12.42:

Code: Select all

VLC media player 0.8.6b Janus starting VLC root wrapper... using UID 0 (root) *************************************** * Running VLC as root is discouraged. * *************************************** It is potentially dangerous, and might not even work properly. [00000001] main private debug: checking builtin modules [00000001] main private debug: checking plugin modules [00000001] main private debug: loading plugins cache file /root/.vlc/cache/plugins-04041e.dat [00000001] main private debug: recursively browsing `modules' [00000001] main private debug: recursively browsing `/usr/lib/vlc' [00000001] main private debug: recursively browsing `plugins' [00000001] main private debug: module bank initialized, found 227 modules [00000001] main private debug: opening config file /root/.vlc/vlcrc [00000001] main private debug: CPU has capabilities 486 586 MMX MMXEXT SSE SSE2 FPU [00000001] main private debug: looking for memcpy module: 3 candidates [00000001] main private debug: using memcpy module "memcpymmxext" [00000292] main playlist debug: waiting for thread completion [00000292] main playlist debug: thread 3083864976 (playlist) created at priority 0 (playlist/playlist.c:184) [00000301] main input debug: waiting for thread completion [00000301] main input debug: creating statistics handler [00000301] main input debug: `udp:@239.255.12.42' gives access `udp' demux `' path `@239.255.12.42' [00000301] main input debug: creating demux: access='udp' demux='' path='@239.255.12.42' [00000303] main demuxer debug: looking for access_demux module: 0 candidates [00000303] main demuxer warning: no access_demux module matched "udp" [00000301] main input debug: creating access 'udp' path='@239.255.12.42' [00000304] main access debug: looking for access2 module: 6 candidates [00000304] access_udp access debug: opening server=:0 local=239.255.12.42:1234 [00000304] main access debug: net: connecting to '[]:0@[239.255.12.42]:1234' [00000304] main access debug: looking for network module: 1 candidate [00000304] ipv6 access debug: 239.255.12.42: Address family for hostname not supported [00000304] main access debug: using network module "ipv6" [00000304] main access debug: removing module "ipv6" [00000304] main access debug: looking for network module: 1 candidate [00000304] ipv4 access debug: resolving 239.255.12.42:1234... [00000304] ipv4 access debug: resolving :0... [00000304] ipv4 access debug: IP_ADD_MEMBERSHIP multicast request [00000304] main access debug: using network module "ipv4" [00000304] main access debug: removing module "ipv4" [00000304] main access debug: using access2 module "access_udp" [00000308] main private debug: pre buffering [00000301] main input debug: thread 2983582608 (input) created at priority 0 (input/input.c:265) [00000304] access_udp access debug: detected TS over raw UDP [00000301] main input debug: creating demux: access='udp' demux='' path='@239.255.12.42' [00000309] main demuxer debug: looking for demux2 module: 45 candidates [00000309] main demuxer debug: using demux2 module "ts" [00000301] main input debug: looking for a subtitle file in /root/allen/ [00000309] ts demuxer debug: DEMUX_SET_GROUP 0 (nil) [00000304] access_udp access warning: unimplemented query in control [00000301] main input debug: `udp:@239.255.12.42' successfully opened [00000309] ts demuxer debug: pid[66] unknown [00000309] ts demuxer debug: pid[68] unknown libdvbpsi error (PSI decoder): TS discontinuity (received 6, expected 0) for PID 0 [00000309] ts demuxer debug: PATCallBack called [00000309] ts demuxer debug: new PAT ts_id=34932 version=26 current_next=1 [00000309] ts demuxer debug: * number=1 pid=66 libdvbpsi error (PSI decoder): TS discontinuity (received 6, expected 0) for PID 66 [00000309] ts demuxer debug: PMTCallBack called [00000309] ts demuxer debug: new PMT program number=1 version=25 pid_pcr=68 [00000309] ts demuxer debug: * es pid=68 type=16 fcc=mp4v [00000301] main input debug: selecting program id=1 [00000342] main decoder debug: looking for decoder module: 25 candidates [00000342] ffmpeg decoder debug: libavcodec initialized (interface 3348992 ) [00000342] ffmpeg decoder debug: postprocessing disabled [00000342] ffmpeg decoder debug: using direct rendering [00000342] ffmpeg decoder debug: ffmpeg codec (MPEG-4 Video) started [00000342] main decoder debug: using decoder module "ffmpeg" [00000367] main packetizer debug: looking for packetizer module: 17 candidates [00000367] main packetizer debug: using packetizer module "packetizer_mpeg4video" [00000342] main decoder debug: thread 2972760976 (decoder) created at priority 0 (input/decoder.c:159) [00000309] ts demuxer warning: first packet for pid=68 cc=0x9 [00000367] packetizer_mpeg4video packetizer warning: waiting for VOL [00000367] packetizer_mpeg4video packetizer warning: waiting for VOL [00000367] packetizer_mpeg4video packetizer warning: waiting for VOL [00000367] packetizer_mpeg4video packetizer warning: waiting for VOL [00000367] packetizer_mpeg4video packetizer warning: waiting for VOL [00000367] packetizer_mpeg4video packetizer warning: waiting for VOL [00000367] packetizer_mpeg4video packetizer warning: waiting for VOL [00000367] packetizer_mpeg4video packetizer warning: waiting for VOL [00000367] packetizer_mpeg4video packetizer warning: waiting for VOL [00000342] ffmpeg decoder debug: disabling direct rendering [00000342] main decoder debug: no usable vout present, spawning one [00000371] main video output debug: window size: 160x120 [00000371] main video output debug: looking for video output module: 8 candidates Xlib: extension "XVideo" missing on display "localhost:11.0". [00000371] xvideo video output warning: XvBadExtension Xlib: extension "XVideo" missing on display "localhost:11.0". [00000371] xvideo video output warning: XvBadExtension Xlib: extension "XVideo" missing on display "localhost:11.0". [00000371] xvideo video output warning: XvBadExtension [00000372] main private debug: Registering subpicture channel, ID: 2 [00000372] main private debug: Registering subpicture channel, ID: 3 [00000372] main private debug: Registering subpicture channel, ID: 4 [00000372] main private debug: Registering subpicture channel, ID: 5 [00000371] x11 video output warning: XShm video extension is unavailable [00000371] main video output debug: using video output module "x11" [00000371] main video output debug: waiting for thread completion [00000371] x11 video output debug: x11 image size 20x15 (0,0,20x15) [00000371] main video output debug: got 2 direct buffer(s) [00000371] main video output debug: picture in 160x120 (0,0,160x120), chroma I420, ar 4:3, sar 1:1 [00000371] main video output debug: picture user 160x120 (0,0,160x120), chroma I420, ar 4:3, sar 1:1 [00000371] main video output debug: picture out 20x15 (0,0,20x15), chroma RV32, ar 4:3, sar 1:1 [00000371] main video output debug: looking for chroma module: 9 candidates [00000371] main video output debug: using chroma module "i420_rgb_mmx" [00000371] main video output debug: indirect render, mapping render pictures 0-7 to system pictures 2-9 [00000371] main video output debug: thread 2962271120 (video output) created at priority 0 (video_output/video_output.c:421) [00000371] x11 video output debug: x11 image size 20x15 (0,0,20x15) [00000371] x11 video output debug: x11 image size 160x120 (0,0,160x120) [00000371] main video output warning: late picture skipped (220338) [00000371] main video output warning: late picture skipped (120154) [00000371] main video output warning: late picture skipped (20228) [00000371] x11 video output debug: x11 image size 300x225 (0,0,300x225) [00000371] main video output warning: late picture skipped (290083) [00000371] main video output warning: late picture skipped (190296) [00000371] main video output warning: late picture skipped (89827) [00000371] main video output warning: late picture skipped (225411) [00000371] main video output warning: late picture skipped (125473) [00000371] main video output warning: late picture skipped (25596) . . <deleted> .
This message prints at a rate of one per second.

Here's my server's config --run via telnet

Code: Select all

# VLC media player VLM command batch # http://www.videolan.org/vlc/ new vid broadcast enabled setup vid input "v4l://" setup vid output #transcode{vcodec=mp4v,vb=1024,scale=1}:duplicate{dst=std{access=udp,mux=ts,dst=239.255.12.42:1234}}
PS: I noticed on some posting, someone suggested use: --sout-keep?
And increase the mms cache for MS windows server to alleviate this problem.

Your help on this issue and additionally, on frame-rate and resolution to improve the clarity of the
video is too appreciated.

Thanks,
VlcLinuxUser

dionoea
Cone Master
Cone Master
Posts: 5157
Joined: 03 Dec 2003 23:09
Location: Paris, France

Re: Too many msgs: main video output warning: late picture skipp

Postby dionoea » 17 Jul 2007 16:26

Try changing --udp-caching <cache time in ms> to something higher than the default 300ms on the client side. (For example --udp-caching 1000) It looks like some udp packets are too late ... which could be caused either by a bad network connection between the server and the client (which that caching option would fix) or insufficient CPU power on the server (which that option won't fix).

Btw, you can simplify your output command to:

Code: Select all

# VLC media player VLM command batch # http://www.videolan.org/vlc/ new vid broadcast enabled setup vid input "v4l://" setup vid output #transcode{vcodec=mp4v,vb=1024,scale=1}:std{access=udp,mux=ts,dst=239.255.12.42:1234}
Antoine Cellerier
dionoea
(Please do not use private messages for support questions)

vlcLinuxUser
New Cone
New Cone
Posts: 9
Joined: 05 Jul 2007 18:39

Re: Too many msgs: main video output warning: late picture skipp

Postby vlcLinuxUser » 17 Jul 2007 18:43

dionoea on Tue Jul 17, 2007 10:26 am wrote:
Try changing --udp-caching <cache time in ms> to something higher than the default 300ms on the client side. (For example --udp-caching 1000) It looks like some udp packets are too late ... which could be caused either by a bad network connection between the server and the client (which that caching option would fix) or insufficient CPU power on the server (which that option won't fix).

Btw, you can simplify your output command to:

Code: Select all
# VLC media player VLM command batch
# http://www.videolan.org/vlc/

new vid broadcast enabled
setup vid input "v4l://"
setup vid output #transcode{vcodec=mp4v,vb=1024,scale=1}:std{access=udp,mux=ts,dst=239.255.12.42:1234}

Antoine Cellerier
Thanks for you suggestion, it's somewhat improved, fewer warnings.
A few more information points:
* top on the (vlc) server shows this vlc info: %cpu: 12.6, %MEM: 4.6
* If the vlc server is restarted OR the stream is stopped/restarted while the client is up, the client at the start of receiving the stream spews out these msgs. A vlc client restart makes that go away in most cases.

BTW, I tried adding the caching to the config file (loaded via telnet) as follows:

Code: Select all

# VLC media player VLM command batch # http://www.videolan.org/vlc/ new vid broadcast enabled setup vid input "v4l://:v4l-caching=100" setup vid output "#transcode{vcodec=mp4v,vb=2048,scale=1}:std{access=udp,mux=ts,dst=239.255.12.42:1234} :udp-caching=1000"
Hope I did it right.

Another question:
What (server and or client?) params would affect the image resolution (fps?), sharpness, contrast, size, etc?
The ch.9 examples are somewhat too sophisticated and nearly do not cover the above?

Thanks again for all your help,
vlcLinuxUser

dionoea
Cone Master
Cone Master
Posts: 5157
Joined: 03 Dec 2003 23:09
Location: Paris, France

Re: Too many msgs: main video output warning: late picture skipp

Postby dionoea » 18 Jul 2007 15:39

You can use the scale parameter to change the size (like 0.5 will multiply width and height by 0.5).
FPS you have two choices: either find the appropriate v4l option (if it exists) to change the input fps, or transcode the video and use the fps=something parameter (this isn't really recommended ... unless you really need a low bandwidth stream).
Sharpeness you can't really change (well we have a filter to change it in the dev version but I wouldn't recommend using it server side anyway).
For contrast, you can use the adjust video filter (using vfilter=adjust{contrast=<some value>}) in the developement version. But like for sharpeness, I wouldn't recommend changing that on the server side. You can easily change the sharpness (dev version only) and contrast (stable or dev version) in the GUI on the client side.
Antoine Cellerier
dionoea
(Please do not use private messages for support questions)


Return to “VLC stream-output (sout)”

Who is online

Users browsing this forum: No registered users and 21 guests