diff options
author | Reinhard Nißl <rnissl@gmx.de> | 2007-07-27 00:12:00 +0200 |
---|---|---|
committer | Reinhard Nißl <rnissl@gmx.de> | 2007-07-27 00:12:00 +0200 |
commit | c064a789c58e08c2e0f92377ce5ec47d01a4eb50 (patch) | |
tree | 0a214bfb4d6af030752beab9603d026d7ff797d4 | |
parent | 944fc07d1bfd33010a1a61e923d53b884f5a6359 (diff) | |
download | xine-lib-c064a789c58e08c2e0f92377ce5ec47d01a4eb50.tar.gz xine-lib-c064a789c58e08c2e0f92377ce5ec47d01a4eb50.tar.bz2 |
provide an additional callback function for controlling frame interception
Some postplugins override a frame's draw function just to get/manipulate
frame related information -- and not for drawing on the frame.
The current implementation disables any preprocessing function even if the
plugin is not going to draw on the frame. By introducing a further callback
function route_preprocessing_procs() a plugin is now able to tell that it
is not going to draw on the frame, i. e. it is ok to route the preprocessing
functions to the intercepted frame, too.
--HG--
extra : transplant_source : %170%82%B8%8F%BA%3D%25%9B%D7%EF%E5%B3%3B%EEg%A0%D1be
-rw-r--r-- | src/xine-engine/post.h | 7 |
1 files changed, 7 insertions, 0 deletions
diff --git a/src/xine-engine/post.h b/src/xine-engine/post.h index a3b9786ca..7ef46536b 100644 --- a/src/xine-engine/post.h +++ b/src/xine-engine/post.h @@ -180,6 +180,13 @@ struct post_video_port_s { /* the new frame function pointers */ vo_frame_t *new_frame; + /* if you want to decide yourself, whether the preprocessing functions + * should still be routed when draw is intercepted, fill in this + * function; _x_post_intercept_video_frame() acts as a template method + * and asks your function; return a boolean; the default is _not_ to + * route preprocessing functions when draw is intercepted */ + int (*route_preprocessing_procs)(post_video_port_t *self, vo_frame_t *frame); + /* if you want to decide yourself, whether the overlay manager should * be intercepted, fill in this function; get_overlay_manager() acts as * a template method and asks your function; return a boolean; |