There are some .mkv files, that refuses to play with the latest mplayer-vdpau (nvidia-180.18 + mplayer-vdpau-3263604. The error code, they return is:
Error 23 at libvo/vo_vdpau.c:724
Some recommend at the nvidia forum to change line 94 in libvo/vo_vdpau, and set up the value below up to anything higher:
NUM_VIDEO_SURFACE_H264 = 17
I’ve tried a view different values, but the behavior remained the same.
But I’ve changed line 704 in
max_references = ((12 * 1024 * 1024) / surf_size) + 11;
I’ve tested this constellation with approximately 20 1080p movies, and found only one which keeps giving me the “Error 23” thing.
The solution above is a dirty hack, since the allocation of the memory isn’t calculated, but guessed, and this on a by far too high basis.
Gfx cards with less than 512MB memory and running additional X applications and also using Compiz may run into trouble again.
Well – I’m going it to use it this way, knowing it’s a workaround and waiting for the next version of mplayer-vdpau.
[UPDATE]the changes below and additionally running Gnome (metacity) and not KDE4.1 (KWin) made all Matroska (.mkv) videos seems to work for me pretty well.
I’ve noticed this, the moment I went back to the KDE4.1 Plasma desktop, and ran the last tested video again. It gave me again the “Error 23”. I went back to Gnome and it was fine, back again to KDE resulted in “Error 23”. So it was reproducible every time.
I wasn’t using either in Gnome nor in KDE compositing (no Gnome’s built-in, not the one of KWin and not Compiz)
It seems KWin preallocate (wild ass guess) too much video memory, so mplayer-vdpau can’t do the same anymore.
With the solution described below, and using Gnome I’ve been able to play all of my Matroska x264 encoded videos flawlessly.
I still had tearing, and turning on TwinView resulted also under Gnome in an “Error 23” again.