diff options
author | Michael Roitzsch <mroi@users.sourceforge.net> | 2004-05-29 14:45:25 +0000 |
---|---|---|
committer | Michael Roitzsch <mroi@users.sourceforge.net> | 2004-05-29 14:45:25 +0000 |
commit | a74413f06efef91496b3f5b9f749b328ede19ac8 (patch) | |
tree | 4077995d8ad8c0fc3784d9c7d91a40e1b15e731c /src/xine-engine/video_out.h | |
parent | cd2b6b26d53a8d879250cd28f0dfbb1cf2b04355 (diff) | |
download | xine-lib-a74413f06efef91496b3f5b9f749b328ede19ac8.tar.gz xine-lib-a74413f06efef91496b3f5b9f749b328ede19ac8.tar.bz2 |
separate the two semantics of querying a port's status with a NULL stream;
before, NULL could mean two things: no stream at all or a stream that does not
want to be addressed; now the latter is represented by the new XINE_ANON_STREAM
resulting changes:
* the status() functions now behave differently for NULL and XINE_ANON_STREAM
(as the commentary always implied, but this was not the case, so post
plugin rewiring went wrong, because it relies on the status() function)
* the NULL_STREAM defines in audio_out and video_out are obsolete
* update the function comments in the headers
* update the post plugin rewire functions to use the status() functions to
check, if the old port was opened and handle the new one accordingly;
this makes open_count obsolete
* change all post plugins accordingly (mostly using XINE_ANON_STREAM instead
of NULL)
additional change:
* the status() function of audio port now returns the bits/rate/mode values
of the input and not the output; this is more likely to be what a post plugin
wants
* the reimplementation of status() in the upmix plugin is obsolete
CVS patchset: 6603
CVS date: 2004/05/29 14:45:25
Diffstat (limited to 'src/xine-engine/video_out.h')
-rw-r--r-- | src/xine-engine/video_out.h | 12 |
1 files changed, 6 insertions, 6 deletions
diff --git a/src/xine-engine/video_out.h b/src/xine-engine/video_out.h index 3a7db490d..8ad3773fa 100644 --- a/src/xine-engine/video_out.h +++ b/src/xine-engine/video_out.h @@ -17,7 +17,7 @@ * along with this program; if not, write to the Free Software * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA * - * $Id: video_out.h,v 1.105 2004/01/07 19:52:43 mroi Exp $ + * $Id: video_out.h,v 1.106 2004/05/29 14:45:25 mroi Exp $ * * * xine version of video_out.h @@ -87,7 +87,7 @@ struct vo_frame_s { /* at least one of proc_frame() and proc_slice() MUST set the variable proc_called to 1 */ void (*proc_slice) (vo_frame_t *vo_img, uint8_t **src); - /* XvMC routine for rendering macroblocks */ + /* XvMC routine for rendering macroblocks, may be NULL */ void (*proc_macro_block)(int x, int y, int mb_type, @@ -109,7 +109,7 @@ struct vo_frame_s { /* append this frame to the display queue, returns number of frames to skip if decoder is late */ - /* when the frame does not originate from a stream, it is legal to pass a NULL stream */ + /* when the frame does not originate from a stream, it is legal to pass an anonymous stream */ int (*draw) (vo_frame_t *vo_img, xine_stream_t *stream); /* lock frame as reference, must be paired with free. @@ -191,7 +191,7 @@ struct xine_video_port_s { /* open display driver for video output */ /* when you are not a full-blown stream, but still need to open the port - * (e.g. you are a post plugin) it is legal to pass a NULL stream */ + * (e.g. you are a post plugin) it is legal to pass an anonymous stream */ void (*open) (xine_video_port_t *self, xine_stream_t *stream); /* @@ -226,13 +226,13 @@ struct xine_video_port_s { int (*get_property) (xine_video_port_t *self, int property); int (*set_property) (xine_video_port_t *self, int property, int value); - /* return true if port is opened for this stream, stream can be NULL */ + /* return true if port is opened for this stream, stream can be anonymous */ int (*status) (xine_video_port_t *self, xine_stream_t *stream, int *width, int *height, int64_t *img_duration); /* video driver is no longer used by decoder => close */ /* when you are not a full-blown stream, but still need to close the port - * (e.g. you are a post plugin) it is legal to pass a NULL stream */ + * (e.g. you are a post plugin) it is legal to pass an anonymous stream */ void (*close) (xine_video_port_t *self, xine_stream_t *stream); /* called on xine exit */ |