[mythtv-commits] mythtv commit: r22132 by markk

mythtv at cvs.mythtv.org mythtv at cvs.mythtv.org
Wed Sep 30 16:28:16 UTC 2009


      Author: markk
        Date: 2009-09-30 16:28:15 +0000 (Wed, 30 Sep 2009)
New Revision: 22132
   Changeset: http://cvs.mythtv.org/trac/changeset/22132

Modified:

   trunk/mythtv/libs/libmythtv/videoout_vdpau.cpp
   trunk/mythtv/libs/libmythtv/videoout_vdpau.h

Log:

VDPAU video buffering improvements.

Firstly, tweak the video buffers setup to fix the playback of certain h.264 streams (most notably, the infamous Wimbledon clip). I've tested extensively with my 
library of VDPAU 'special' clips on 2 setups and this does not seem to have an adverse impact anywhere and it does reduce the overall buffer size needed for some streams with 4 or more reference frames.

Secondly, add an option for the user to specify the number of VDPAU video buffers to use. It is enabled by adding vdpaubuffersize=X to the filters section of the video display profile. Valid values for X are in the range 6-50, 6 being the minimum that seems to work with most mpeg2 and h264 interlaced streams (with 2 reference frames).

The lowest setting can save over 80Mb of video memory for 1080i/p streams compared to the default buffer size of 17 frames. This may be enough for VDPAU playback on video cards with 256Mb of memory (though certainly no guarantee).

Increasing the video buffer size should fix playback for problematic streams with more than 2 reference frames. For example, the well known 'killa.sampla' h.264 clip needs around 32 video buffers for decent playback (16 reference frames) and most broken streams with 4 reference frames seem to need around 22 buffers.

This a stop gap fix for 0.22 and *should* be replaced by a more robust/intelligent/automatic solution for 0.23 - I just haven't worked out the magic formula yet...

Refs #7138, #6130.







More information about the mythtv-commits mailing list