Problems during playback of h264 files using UVD and VLC on AMD E-350 CPU
Submitted by Richard Van Den Boom
Assigned to Default DRI bug account
Created attachment 84971 vlc -vvv output log
I have a small system with a E350 CPU in it and try to use a recent git pull of VLC, mesa and xfree86-video-ati, on a 3.11rc6 kernel, to run with VDPAU and the UVD chip on the CPU. VLC indeed manages to play H264 files in DVD resolution but :
1/ It seems to fail on color space matrix :
[0x7ffa0f00c288] vdpau_chroma filter debug: using video mixer sharpness feature [0x7ffa0f00c288] vdpau_chroma filter error: video color space matrix failure: An invalid pointer was provided. Typically, this means that a NULL pointer was provided for an 'output' parameter. [0x7ffa0f00c288] vdpau_chroma filter debug: using video mixer 7
2/ it regularly spits "vo messages like this :
[0x7ffa14001248] vdpau_display vout display debug: surface status: 2
3/ regularly, it spits "warning: picture is too late to be displayed (missing 113 ms)" messages
4/ regularly stalls with messages like this :
[CODE][0x7f08e0c1f3f8] main input error: ES_OUT_SET_(GROUP_)PCR is called too late (pts_delay increased to 1000 ms [0x7f08e0c1f3f8] main input error: ES_OUT_RESET_PCR called [0x7f08a0001248] vdpau_display vout display debug: surface status: 2 [0x7f08d91e7188] main decoder warning: early picture skipped[/CODE]
On the same system, mplayer from 2013/08/19 plays the same file, using VDPAU and UVD (checked watching the CPU usage) fine.
I opened a bug on the VLC bug tracker (https://trac.videolan.org/vlc/ticket/9281) but according to them, the problem seems to come from the Galllium VDPAU state tracker as they should not get "surface status : 2" at this stage of their code (they obviously tested their VDPAU implementation using Nvidia binary driver, which does not use the VDPAU Gallium state tracker). Mplayer doesn't seem to have problem here as it seems to not even try to support CSC matrix generation or decoder capabilities.
I'm sorry if this bug report is a bit of a mess. There may be several issues involved here, and some may be more VLC-related that mesa, but I don't know at all how to sort them out. The VLC devs at least seem to consider that the "surface status : 2" and CSC matrix generation problem are Gallium-related and need to be fixed before they can look into the problem if it's still there.
Attachment 84971, "vlc -vvv output log":