diff options
author | Michael Roitzsch <mroi@users.sourceforge.net> | 2002-12-29 14:04:43 +0000 |
---|---|---|
committer | Michael Roitzsch <mroi@users.sourceforge.net> | 2002-12-29 14:04:43 +0000 |
commit | d6423b628bb7437529b2d9c4cf388fd9560886b7 (patch) | |
tree | 2434750b73e2ee057962f2e3ca1ca419eaea4db4 /include | |
parent | 50aa894a408172bcd2c31dd8fa1ce5b445fccc48 (diff) | |
download | xine-lib-d6423b628bb7437529b2d9c4cf388fd9560886b7.tar.gz xine-lib-d6423b628bb7437529b2d9c4cf388fd9560886b7.tar.bz2 |
- new post plugin property: type
- include post plugins in plugin catalog
CVS patchset: 3716
CVS date: 2002/12/29 14:04:43
Diffstat (limited to 'include')
-rw-r--r-- | include/xine.h.in | 44 |
1 files changed, 36 insertions, 8 deletions
diff --git a/include/xine.h.in b/include/xine.h.in index 0f2897622..448403019 100644 --- a/include/xine.h.in +++ b/include/xine.h.in @@ -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: xine.h.in,v 1.49 2002/12/27 03:40:07 miguelfreitas Exp $ + * $Id: xine.h.in,v 1.50 2002/12/29 14:04:43 mroi Exp $ * * public xine-lib (libxine) interface and documentation * @@ -316,6 +316,11 @@ struct xine_post_s { */ xine_video_port_t **video_input; + /* the type of the post plugin + * one of XINE_POST_TYPE_* can be used here + */ + int type; + }; @@ -338,6 +343,9 @@ xine_post_t *xine_post_init(xine_t *xine, const char *name, /* get a list of all available post plugins */ const char *const *xine_list_post_plugins(xine_t *xine); +/* get a list of all post plugins of one type */ +const char *const *xine_list_post_plugins_typed(xine_t *xine, int type); + /* * post plugin input/output * @@ -408,19 +416,32 @@ const xine_post_out_t *xine_post_output(xine_post_t *self, char *name); */ int xine_post_wire(xine_post_out_t *source, xine_post_in_t *target); + /* - * wire a video port to an output + * wire a video port to a video output + * This can be used to rewire different post plugins to the video output + * plugin layer. The ports you hand in at xine_post_init() will already + * be wired with the post plugin, so you need this function for + * _re_connecting only. + * * returns 1 on success, 0 on failure */ int xine_post_wire_video_port(xine_post_out_t *source, xine_video_port_t *vo); /* - * wire an audio port to an output + * wire an audio port to an audio output + * This can be used to rewire different post plugins to the audio output + * plugin layer. The ports you hand in at xine_post_init() will already + * be wired with the post plugin, so you need this function for + * _re_connecting only. + * * returns 1 on success, 0 on failure */ int xine_post_wire_audio_port(xine_post_out_t *source, xine_audio_port_t *vo); - +/* + * Extracts an output for a stream. Use this to rewire the outputs of streams. + */ xine_post_out_t * xine_get_video_source(xine_stream_t *stream); xine_post_out_t * xine_get_audio_source(xine_stream_t *stream); @@ -433,29 +454,36 @@ xine_post_out_t * xine_get_audio_source(xine_stream_t *stream); void xine_post_dispose(xine_t *xine, xine_post_t *self); +/* post plugin types */ +#define XINE_POST_TYPE_VIDEO_FILTER 0x010000 +#define XINE_POST_TYPE_VIDEO_VISUALIZATION 0x010001 +#define XINE_POST_TYPE_AUDIO_FILTER 0x020000 +#define XINE_POST_TYPE_AUDIO_VISUALIZATION 0x020001 + + /* post plugin data types */ /* video port data * input->data is a xine_video_port_t* - * output->data is a xine_video_port_t** + * output->data usually is a xine_video_port_t** */ #define XINE_POST_DATA_VIDEO 0 /* audio port data * input->data is a xine_audio_port_t* - * output->data is a xine_audio_port_t** + * output->data usually is a xine_audio_port_t** */ #define XINE_POST_DATA_AUDIO 1 /* integer data * input->data is a int* - * output->data is a int* + * output->data usually is a int* */ #define XINE_POST_DATA_INT 3 /* double precision floating point data * input->data is a double* - * output->data is a double* + * output->data usually is a double* */ #define XINE_POST_DATA_DOUBLE 4 |