[mythtv-commits] mythtv commit: r23467 - in trunk/mythtv/libs by markk
mythtv at cvs.mythtv.org
mythtv at cvs.mythtv.org
Thu Feb 4 06:34:39 UTC 2010
Author: markk
Date: 2010-02-04 06:34:39 +0000 (Thu, 04 Feb 2010)
New Revision: 23467
Changeset: http://svn.mythtv.org/trac/changeset/23467
Modified:
trunk/mythtv/libs/libmythtv/videoout_vdpau.cpp
trunk/mythtv/libs/libmythui/mythrender_vdpau.cpp
trunk/mythtv/libs/libmythui/mythrender_vdpau.h
Log:
Improved VDPAU thread safety.
Firstly, internalise all access to the display device in MythRenderVDPAU
to ensure calls are serialised. Secondly, extend and tidy up locking
within VideoOutputVDPAU to ensure access to the MythRenderVDPAU object
is always safe when the object is being re-created. Generally this means
applying the lock in all public methods (hence assuming that private
methods are safe).
The only exception to this is VideoOutputVDPAU::DrawSlice. Locking here
would synchronise the decode and render threads (not a good thing) but
actually the main issue being addressed here is when the decoder thread
initiates recreation of the object when the input changes - hence calls
to InputChanged and DrawSlice should not be concurrent.
Closes #7779.
More information about the mythtv-commits
mailing list