[vlc-devel] VDPAU output with OSS driver

Android Jack jackdroido at gmail.com
Mon Jul 15 15:00:24 CEST 2013


(First mail seems to get lost so here I go again...)

Hi !

I'm struggling to get VDPAU HW acceleration with VLC and OSS radeon driver
on a Radeon HD6250 (r600).

I'm testing latest VLC git (which include VDPAU pass-through by Rémi
Denis-Courmont) on an Ubuntu Raring 13.04 system, with kernel 3.10 from
Saucy (13.10) repository and a couple of PPA for git versions of MESA-Xorg
bits and libav (previously also testing on an Archlinux system).

>From dmesg and Xorg log all seems OK and vdpauinfo told me:

#> export VDPAU_DRIVER="r600"
#> vdpauinfo
display: :0   screen: 0
API version: 1
Information string: G3DVL VDPAU Driver Shared Library version 1.0

Video surface:

name   width height types
-------------------------------------------
420    16384 16384  NV12
422    16384 16384  NV12
444    16384 16384  NV12

Decoder capabilities:

name               level macbs width height
-------------------------------------------
MPEG1                16  9216  2048  1152
MPEG2_SIMPLE         16  9216  2048  1152
MPEG2_MAIN           16  9216  2048  1152
H264_BASELINE        16  9216  2048  1152
H264_MAIN            16  9216  2048  1152
H264_HIGH            16  9216  2048  1152
VC1_SIMPLE           16  9216  2048  1152
VC1_MAIN             16  9216  2048  1152
VC1_ADVANCED         16  9216  2048  1152
MPEG4_PART2_SP       16  9216  2048  1152
MPEG4_PART2_ASP      16  9216  2048  1152

Output surface:

name              width height nat types
----------------------------------------------------
B8G8R8A8         16384 16384    y  NV12
R8G8B8A8         16384 16384    y  NV12
R10G10B10A2      16384 16384    y  NV12
B10G10R10A2      16384 16384    y  NV12

Bitmap surface:

name              width height
------------------------------
B8G8R8A8         16384 16384
R8G8B8A8         16384 16384
R10G10B10A2      16384 16384
B10G10R10A2      16384 16384
A8               16384 16384

Video mixer:

feature name                    sup
------------------------------------
DEINTERLACE_TEMPORAL             -
DEINTERLACE_TEMPORAL_SPATIAL     -
INVERSE_TELECINE                 -
NOISE_REDUCTION                  y
SHARPNESS                        y
LUMA_KEY                         -
HIGH QUALITY SCALING - L1        -
HIGH QUALITY SCALING - L2        -
HIGH QUALITY SCALING - L3        -
HIGH QUALITY SCALING - L4        -
HIGH QUALITY SCALING - L5        -
HIGH QUALITY SCALING - L6        -
HIGH QUALITY SCALING - L7        -
HIGH QUALITY SCALING - L8        -
HIGH QUALITY SCALING - L9        -

parameter name                  sup      min      max
-----------------------------------------------------
VIDEO_SURFACE_WIDTH              y        48     2048
VIDEO_SURFACE_HEIGHT             y        48     1152
CHROMA_TYPE                      y
LAYERS                           y         0        4

attribute name                  sup      min      max
-----------------------------------------------------
BACKGROUND_COLOR                 y
CSC_MATRIX                       y
NOISE_REDUCTION_LEVEL            y      0.00     1.00
SHARPNESS_LEVEL                  y     -1.00     1.00
LUMA_KEY_MIN_LUMA                y
LUMA_KEY_MAX_LUMA                y

Testing an H264 sample HD video (LG Four Seasons / Under The Sea -> from
http://www.demo-world.eu/trailers/high-definition-trailers.php), works fine
with mplayer:

#> mplayer -vo vdpau -vc ffh264vdpau -nosound
/mnt/hd_other_lg_four_seasons_under_the_sea.m2ts
MPlayer svn r34540 (Ubuntu), built with gcc-4.7 (C) 2000-2012 MPlayer Team
mplayer: could not connect to socket
mplayer: No such file or directory
Failed to open LIRC support. You will not be able to use your remote
control.

Playing /mnt/hd_other_lg_four_seasons_under_the_sea.m2ts.
libavformat version 53.21.1 (external)
Mismatching header version 53.19.0
TS file format detected.
VIDEO H264(pid=4113) NO AUDIO! (try increasing -tsprobe) NO SUBS (yet)!
PROGRAM N. 1
FPS seems to be: 29.969999
Load subtitles in /mnt/
==========================================================================
Forced video codec: ffh264vdpau
Opening video decoder: [ffmpeg] FFmpeg's libavcodec codec family
libavcodec version 53.35.0 (external)
Mismatching header version 53.32.2
Selected video codec: [ffh264vdpau] vfm: ffmpeg (FFmpeg H.264 (VDPAU))
==========================================================================
Audio: no sound
Starting playback...
[VD_FFMPEG] Trying pixfmt=0.
Movie-Aspect is 1.78:1 - prescaling to correct movie aspect.
VO: [vdpau] 1920x1080 => 1920x1080 H.264 VDPAU acceleration
[VD_FFMPEG] XVMC-accelerated MPEG-2.
V:4201.5  75/ 75  6% 43%  0.0% 0 0

MPlayer interrupted by signal 2 in module: sleep_timer
V:4201.5  76/ 76  6% 43%  0.0% 0 0

Exiting... (Quit)

But VLC (after selecting VDPAU video output from interface) only shows a
black window:

#> vlc -vvv --no-audio /mnt/hd_other_lg_four_seasons_under_the_sea.m2ts
(...)
[0xb5e12d30] main input debug:
`file:///mnt/hd_other_lg_four_seasons_under_the_sea.m2ts' successfully
opened
[0xb5700df8] ts demux debug: pid[4097] unknown
[0xb5e12d30] main input debug: Buffering 0%
[0xb5700df8] ts demux warning: first packet for pid=4113 cc=0x1
[0xb5700df8] ts demux warning: first packet for pid=4352 cc=0x1
[0xb5e12d30] main input debug: Buffering 32%
[0xb5e12d30] main input debug: Buffering 64%
[0xb5e12d30] main input debug: Buffering 96%
[0xb5e12d30] main input debug: Stream buffering done (385 ms in 1 ms)
[0xb5760d00] packetizer_h264 packetizer debug: found NAL_SPS (sps_id=0)
[0xb5760d00] packetizer_h264 packetizer debug: found NAL_PPS (pps_id=0
sps_id=0)
[0xb5768eb0] main spu text debug: looking for text renderer module matching
"any": 3 candidates
[0xb5768eb0] freetype spu text debug: Building font databases.
[0xb5768eb0] freetype spu text debug: Took 2 microseconds
[0xb5768eb0] freetype spu text debug: Using Serif Bold as font from file
/usr/share/fonts/truetype/ttf-dejavu/DejaVuSans.ttf
[0xb5768eb0] freetype spu text debug: using fontsize: 2
[0xb5768eb0] main spu text debug: using text renderer module "freetype"
[0xb57d6060] main scale debug: looking for video filter2 module matching
"any": 59 candidates
[0xb57d6060] swscale scale debug: 32x32 chroma: YUVA -> 16x16 chroma: RGBA
with scaling using Bicubic (good quality)
[0xb57d6060] main scale debug: using video filter2 module "swscale"
[0xb57eb1b8] main scale debug: looking for video filter2 module matching
"any": 59 candidates
[0xb57eb1b8] yuvp scale debug: YUVP to YUVA converter
[0xb57eb1b8] main scale debug: using video filter2 module "yuvp"
[0xb57681a8] main video output debug: Deinterlacing available
[0xb57681a8] main video output debug: deinterlace 1, mode blend, is_needed 0
[0xb57681a8] main video output debug: Opening vout display wrapper
[0xb5949de8] main vout display debug: looking for vout display module
matching "vdpau_display": 12 candidates
[0xb594a300] main window debug: looking for vout window xid module matching
"qt4,any": 4 candidates
[0xb594a300] qt4 window debug: requesting video window...
[0x8b49fb8] qt4 interface debug: Video was requested 0, 0
[0xb594a300] main window debug: using vout window xid module "qt4"
[0xb594cad8] main inhibit debug: looking for inhibit module matching "any":
2 candidates
[0xb594cad8] dbus_screensaver inhibit error: cannot connect to session bus:
//bin/dbus-launch terminated abnormally without any error message
[0xb594cad8] main inhibit debug: using inhibit module "xdg_screensaver"
[0xb5949de8] vdpau_display vout display debug: connected to X11.0 server
[0xb5949de8] vdpau_display vout display debug:  vendor : The X.Org
Foundation
[0xb5949de8] vdpau_display vout display debug:  version: 11303000
[0xb5949de8] vdpau_display vout display debug: using screen 0x2ba
[0xb5949de8] vdpau_display vout display debug: using back-end G3DVL VDPAU
Driver Shared Library version 1.0
[0xb5949de8] vdpau_display vout display error: source video YCbCr format
not supported
[0xb5949de8] main vout display debug: no vout display modules matched
[0xb594cad8] main inhibit debug: removing module "xdg_screensaver"
[0xb594a300] qt4 window debug: releasing video...
[0x8b49fb8] qt4 interface debug: Video is not needed anymore
[0xb57681a8] main video output error: video output creation failed
[0xb5768eb0] main spu text debug: removing module "freetype"
[0xb57eb1b8] main scale debug: removing module "yuvp"
[0xb57d6060] main scale debug: removing module "swscale"
[0xb57530c8] main decoder error: failed to create video output
[0xb57530c8] main decoder warning: can't get output picture
[0xb57530c8] avcodec decoder warning: disabling direct rendering
[0xb5974760] main spu text debug: looking for text renderer module matching
"any": 3 candidates
[0xb5974760] freetype spu text debug: Building font databases.
[0xb5974760] freetype spu text debug: Took 2 microseconds
[0xb5974760] freetype spu text debug: Using Serif Bold as font from file
/usr/share/fonts/truetype/ttf-dejavu/DejaVuSans.ttf
[0xb5974760] freetype spu text debug: using fontsize: 2
[0xb5974760] main spu text debug: using text renderer module "freetype"
[0xb5974c98] main scale debug: looking for video filter2 module matching
"any": 59 candidates
[0xb5974c98] swscale scale debug: 32x32 chroma: YUVA -> 16x16 chroma: RGBA
with scaling using Bicubic (good quality)
[0xb5974c98] main scale debug: using video filter2 module "swscale"
[0xb594d7d8] main scale debug: looking for video filter2 module matching
"any": 59 candidates
[0xb594d7d8] yuvp scale debug: YUVP to YUVA converter
[0xb594d7d8] main scale debug: using video filter2 module "yuvp"
[0xb5973a48] main video output debug: Deinterlacing available
[0xb5973a48] main video output debug: deinterlace 1, mode blend, is_needed 0
[0xb5973a48] main video output debug: Opening vout display wrapper
[0xb5e0cb00] main vout display debug: looking for vout display module
matching "vdpau_display": 12 candidates
[0xb5e0cc80] main window debug: looking for vout window xid module matching
"qt4,any": 4 candidates
[0xb5e0cc80] qt4 window debug: requesting video window...
[0x8b49fb8] qt4 interface debug: Video was requested 0, 0
[0xb5e0cc80] main window debug: using vout window xid module "qt4"
[0xb5e01c38] main inhibit debug: looking for inhibit module matching "any":
2 candidates
[0xb5e01c38] dbus_screensaver inhibit error: cannot connect to session bus:
//bin/dbus-launch terminated abnormally without any error message
[0xb5e01c38] main inhibit debug: using inhibit module "xdg_screensaver"
[0xb5e0cb00] vdpau_display vout display debug: connected to X11.0 server
[0xb5e0cb00] vdpau_display vout display debug:  vendor : The X.Org
Foundation
[0xb5e0cb00] vdpau_display vout display debug:  version: 11303000
[0xb5e0cb00] vdpau_display vout display debug: using screen 0x2ba
[0xb5e0cb00] vdpau_display vout display debug: using back-end G3DVL VDPAU
Driver Shared Library version 1.0
[0xb5e0cb00] vdpau_display vout display error: source video YCbCr format
not supported
[0xb5e0cb00] main vout display debug: no vout display modules matched
[0xb5e01c38] main inhibit debug: removing module "xdg_screensaver"
[0xb5e0cc80] qt4 window debug: releasing video...
[0x8b49fb8] qt4 interface debug: Video is not needed anymore
[0xb5973a48] main video output error: video output creation failed
[0xb5974760] main spu text debug: removing module "freetype"
[0xb594d7d8] main scale debug: removing module "yuvp"
[0xb5974c98] main scale debug: removing module "swscale"
[0xb57530c8] main decoder error: failed to create video output
[0xb57530c8] main decoder warning: can't get output picture
[0xb5e12d30] main input debug: Decoder buffering done in 206 ms
^C[0x8a918f8] main libvlc debug: removing all interfaces
[0x8a918f8] main libvlc debug: exiting
(...)

In particular, the error:
[0xb5e0cb00] vdpau_display vout display error: source video YCbCr format
not supported

seems to suggest that my card cannot handle my video colorspace (it's
I420/YV12), which in fact doesn't show up in vdpauinfo as well ... but
then, why mplayer can play the same video with the same card throught VDPAU
without any hiccups ? Where I'm missing something ?

If more logs or info are needed, just ask me.

Forgive me, if I was a bit (too) verbose :-) Thanks to all !
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://mailman.videolan.org/pipermail/vlc-devel/attachments/20130715/cb547a23/attachment.html>


More information about the vlc-devel mailing list