VDPAU not working in Opensuse 11.2

I have installed the Packman Mplayer and smplayer packages. I have also installed the proprietary nvidia drivers from the main site. However when I try using vdpau in mplayer, the video doesn’t show up and the logs show these messages:

VDPAU capture: Enabled
vdp_imp_device_create_x11(0x8f811f0, 0, -, -)
VDPAU nvidia: Version: NVIDIA VDPAU Driver Shared Library  195.36.15  Thu Mar 11 23:42:13 PST 2010
VDPAU nvidia: Error detected 0 6291 
VDPAU nvidia: Backtrace:
--: /usr/lib/libvdpau_nvidia.so [0xb3228000] DSO load base
00: /usr/lib/libvdpau_nvidia.so [0xb322e296] vdp_imp_device_create_x11
    -> 1
[vdpau] Error when calling vdp_device_create_x11: 1
Error opening/initializing the selected video_out (-vo) device. 

VDPAU works with my card in Kubuntu, but not in Opensuse. Please help!

I do NOT know vdpau well enough to look at an error and say ‘thats the problem’.

So instead, can you give us the EXACT command you are using to test mplayer functionality with ? Can you also run “mediainfo” (from packman) on the video you are trying to play so that we can see what its video codec might be ?

Here is a vdpau page for openSUSE:
VDPAU on openSUSE

Here’s the mplayer command I used along with the full output

mplayer -vo vdpau Angels.\&.Demons.mkv
MPlayer dev-SVN-r30099-4.4-openSUSE Linux 11.2 (i686)-Packman (C) 2000-2009 MPlayer Teammplayer: 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 Angels.&.Demons.mkv.
[mkv] Track ID 1: video (V_MPEG4/ISO/AVC), -vid 0
[mkv] Track ID 2: audio (A_DTS), -aid 0, -alang eng
[mkv] Will play video track 1.
Matroska file format detected.
VIDEO:  [avc1]  1280x532  24bpp  23.976 fps    0.0 kbps ( 0.0 kbyte/s)
VDPAU capture: Enabled
vdp_imp_device_create_x11(0x8f8cf18, 0, -, -)
VDPAU nvidia: Version: NVIDIA VDPAU Driver Shared Library  195.36.15  Thu Mar 11 23:42:13 PST 2010
VDPAU nvidia: Error detected 0 6291 
VDPAU nvidia: Backtrace:
--: /usr/lib/libvdpau_nvidia.so [0xb3a2c000] DSO load base
00: /usr/lib/libvdpau_nvidia.so [0xb3a32296] vdp_imp_device_create_x11
    -> 1
[vdpau] Error when calling vdp_device_create_x11: 1
Error opening/initializing the selected video_out (-vo) device.
==========================================================================
Opening audio decoder: [libdca] DTS decoding with libdca
Stream with high frequencies VQ coding
AUDIO: 48000 Hz, 2 ch, s16le, 1536.0 kbit/100.00% (ratio: 192000->192000)
Selected audio codec: [dts] afm: libdca (DTS-libdca)
==========================================================================
AO: [oss] 48000Hz 2ch s16le (2 bytes per sample)
Video: no video
Starting playback...
A:  24.2 (24.2) of 8775.8 ( 2:26:15.8)  9.9% 

MPlayer interrupted by signal 2 in module: play_audio
A:  24.4 (24.3) of 8775.8 ( 2:26:15.8) 10.0% 
Exiting... (Quit)

This only occurs when I use vdpau as the output. All of my videos play fine when I switch to xv output, so I doubt it has anything to do with lack of proper codecs.

Here’s mediainfo output

General
Complete name                    : Angels.&.Demons.mkv
Format                           : Matroska
File size                        : 7.93 GiB
Duration                         : 2h 26mn
Overall bit rate                 : 7 760 Kbps
Encoded date                     : UTC 2009-08-24 06:06:13
Writing application              : mkvmerge v2.2.0 ('Turn It On Again') built on Mar  4 2008 12:58:26
Writing library                  : libebml v0.7.7 + libmatroska v0.8.1

Video
ID                               : 1
Format                           : AVC
Format/Info                      : Advanced Video Codec
Format profile                   : High@L4.1
Format settings, CABAC           : Yes
Format settings, ReFrames        : 8 frames
Muxing mode                      : Container profile=Unknown@4.1
Codec ID                         : V_MPEG4/ISO/AVC
Duration                         : 2h 26mn
Bit rate                         : 6 095 Kbps
Nominal bit rate                 : 6 247 Kbps
Width                            : 1 280 pixels
Height                           : 532 pixels
Display aspect ratio             : 2.40:1
Frame rate                       : 23.976 fps
Resolution                       : 8 bits
Colorimetry                      : 4:2:0
Scan type                        : Progressive
Bits/(Pixel*Frame)               : 0.373
Stream size                      : 6.22 GiB (78%)
Writing library                  : x264 core 68 r1181M 49bf767
Encoding settings                : cabac=1 / ref=8 / deblock=1:-3:-3 / analyse=0x3:0x133 / me=umh / subme=9 / psy_rd=0.9:0.8 / mixed_ref=1 / me_range=24 / chroma_me=1 / trellis=2 / 8x8dct=1 / cqm=0 / deadzone=21,11 / chroma_qp_offset=-2 / threads=6 / nr=0 / decimate=0 / mbaff=0 / bframes=4 / b_pyramid=1 / b_adapt=2 / b_bias=0 / direct=3 / wpredb=1 / keyint=250 / keyint_min=25 / scenecut=40 / rc=2pass / bitrate=6247 / ratetol=1.0 / qcomp=0.60 / qpmin=10 / qpmax=36 / qpstep=4 / cplxblur=20.0 / qblur=0.5 / ip_ratio=1.40 / pb_ratio=1.30 / aq=1:0.60
Language                         : English

Audio
ID                               : 2
Format                           : DTS
Format/Info                      : Digital Theater Systems
Codec ID                         : A_DTS
Duration                         : 2h 26mn
Bit rate mode                    : Constant
Bit rate                         : 1 510 Kbps
Channel(s)                       : 6 channels
Channel positions                : Front: L C R, Side: L R, LFE
Sampling rate                    : 48.0 KHz
Resolution                       : 24 bits
Stream size                      : 1.54 GiB (19%)
Language                         : English

Ah geez, it works now. I think the problem was that I uninstalled the nvidia driver package from opensuse repo (which I think has a broken vdpau implementation), then installed the driver package from the nvidia site, but I did not do a complete restart afterwards. I only restarted the X server.

Glad to read you have it working.

I find vdpau useful. It has breathed life back in to my ancient 32-bit athlon-2800 PC, which previous with an AGP FX5200 nvidia card did not have the horsepower to play an HD video. I replaced the AGP FX5200 with a PCI nVidia GeForce 8400GS and I can play all but the most demanding HD videos (note that is a PCI card and not a PCI-e card as that old PC does not support PCI-e … of course PCI-e would be better if supported . )

This happens with upgrade nvidia drivers to 195.36.15 from nvidia repo. I reported this bug here:http://bugzilla.novell.com/show_bug.cgi?id=596481.

Workaround:

ln -s /usr/lib64/libvdpau_nvidia.so.195.36.15 /usr/lib64/libvdpau_nvidia.so

given you are trying to play this with mplayer, which is not an application packaged by openSUSE, your bug report may be closed with no action.

If that happens, don’t dispair! and please continue to contribute to help … .

The approach then is to raise this on :

I have faced the same bug, smplayer and mplayer are not able to use vdpau.
The opensuse nvidia propietary drivers are “a bit broken” :wink:

The suggested workaround


ln -s /usr/lib64/libvdpau_nvidia.so.195.36.15 /usr/lib64/libvdpau_nvidia.so

works like a charm.

I hope this will be fixed soon.

AFAICS this is fixed in the 195.36.24 driver version.

I have found out where the real problem is.

I installed both nvidia driver and libvdpau package and I had experienced performance issues with 1080p movies.

nvidia drivers + libvdpau package -> very slow playback with 1080p movies(h264)

libvdpau package provides “purevideo” acceleration API with or without nvidia drivers.
In fact nvidia drivers and libvdpau packages both provide vdpau api and libs (they are redundant).
Please look at the Nvidia package details (YAST) and read the provided file’s list… yes, the libvdpau libs are already included.

My suggestion:
Do not install libvdpau opensuse’s package when using the nvidia drivers. There is no need for them and the libvdpau package is going to break something in libvdpau causing very poor performance.

Solution:
uninstall libvdpau package
reinstall nvidia drivers

Let’s active vdpau acceleration on SMPlayer and have fun with 1080p streams :wink:

I have not paid much attention to this of late, and as a result the wiki page I started has fallen out of date.

Anyone who knows enough about this technically to update the incorrect (outdated) information in that wiki page is more than welcome to do so.

fabtar wrote:

>
> I have found out where the real problem is.
>
> I installed both nvidia driver and libvdpau package and I had
> experienced performance issues with 1080p movies.
>
> nvidia drivers + libvdpau package → very slow playback with
1080p
> movies(h264)
>
> libvdpau package provides “purevideo” acceleration API with or
without
> nvidia drivers.
> In fact nvidia drivers and libvdpau packages both provide vdpau
api
> and libs (they are redundant).
> Please look at the Nvidia package details (YAST) and read the
provided
> file’s list… yes, the libvdpau libs are already included.
>
> My suggestion:
> Do not install libvdpau opensuse’s package when using the
nvidia
> drivers. There is no need for them and the libvdpau package is
going
> to break something in libvdpau causing very poor performance.
>
> Solution:
> uninstall libvdpau package
> reinstall nvidia drivers
>
> Let’s active vdpau acceleration on SMPlayer and have fun with
1080p
> streams :wink:
>
>
fyi - there’s a MPlayer rpm dependency for libvdpau1 rpm
are you also saying not to install libvdpau_nvidia?

openSuse 11.2 x64bit, KDE4.4, Opera weekly

libvdpau1 is the vdpau wrapper library which is given from packman repository (I have checked this now, so it is not an issue with vanilla repository… :slight_smile: ).

x11-video-nvidiaG02 is the nvidia video driver.

when x11-video-nvidiaG02 is installed, packman’s libvdpau1 is useless. You only need x11-video-nvidiaG02.

In fact having libvdpau1+x11-video-nvidia both, breaks something in libvdpau.

I have checked this on my PC and netbook.

P.s: in fact, let’s check x11-video-nvidiaG02 package’s filelist:

/usr/lib64/libnvidia-tls.so.195.36.15
/usr/lib64/libvdpau.so
/usr/lib64/libvdpau.so.1
/usr/lib64/libvdpau.so.195.36.15
/usr/lib64/libvdpau_nvidia.so.1
/usr/lib64/libvdpau_nvidia.so.195.36.15
/usr/lib64/libvdpau_trace.so.1
/usr/lib64/libvdpau_trace.so.195.36.15

There are all the needed libraries!
My conclusion libvdpau1 and nvidia-drivers conflict each other.
IMHO

I’m running M7 now, with KDE4 4.5 beta, thought the higher CPU usage by kwin was immaturity. Uninstalled the libvdpau1, reinstalled latest driver, CPU usage by kwin is back to “normal”. Overall performance of KDE4 is better (obviously because vdpau and latest driver don’t match. Thanks a lot.

You are welcome.
I’m glad to have been of help.

found the problem:
mplayer (and prolly other programs) expect libvdpau_nvidia.so, but after installing the 195 drivers there is only libvdpau_nvidia.so**.1** (which is just a symlink to libvdpau_nvidia.so.195.36.15)

So just create another symlink like so:

sudo ln /usr/lib/libvdpau_nvidia.so.1 /usr/lib/libvdpau_nvidia.so

…and everything works just nicely! Don’t forget to disable desktop effects, otherwise you’ll get tearing! :wink:

Anyone got VDPAU with the official VLC 1.1 working? can’t select it anywhere, i thought it was supposed to support VDPAU out of the box now?