diff options
author | Andreas Auras <yak54@inkennet.de> | 2012-01-12 00:36:48 +0100 |
---|---|---|
committer | Andreas Auras <yak54@inkennet.de> | 2012-01-12 00:36:48 +0100 |
commit | 9288541c96eb7234e9664b18ce6f1bfa0a8ebbb2 (patch) | |
tree | a45c33605b7580f0fa5d8535869fdd424cba9dc3 /misc | |
parent | f57d73ec9e404d6c175730b6a9fe3ffdf4d08ae1 (diff) | |
download | xine-lib-9288541c96eb7234e9664b18ce6f1bfa0a8ebbb2.tar.gz xine-lib-9288541c96eb7234e9664b18ce6f1bfa0a8ebbb2.tar.bz2 |
Introduce buffering for output surfaces for vdpau output driver
The current osd and grab logic needs a lot of output surface objects
for rendering.
The current implementation create and destroy these objects on demand.
This patch introduce a new buffer where output surfaces are hold for
reuse preventing most of the create and destroy calls.
The size of the new buffer could be configured with parameter
"video.output.vdpau_output_surface_buffer_size".
Default value is 10 surfaces. Possible range is 2...25
To further minimize surface creation and destroy the first n created surfaces
get a minimum size according to the actual display and frame size where n
is the size of the surface buffer.
These first objects will be allocated as rather big surfaces so that they
fit for most of the surface requests.
This should be considered when choosing higher buffer values.
This patch also improves dirty rect handling within osd handling.
Now dirty rect information is used even if more than one osd
object is displayed at the same time.
--HG--
extra : rebase_source : b40e365ab1f81ebdd72b2e1713cf3526d6dd7493
Diffstat (limited to 'misc')
0 files changed, 0 insertions, 0 deletions