diff options
author | Daniel Caujolle-Bert <f1rmb@users.sourceforge.net> | 2002-07-17 21:23:57 +0000 |
---|---|---|
committer | Daniel Caujolle-Bert <f1rmb@users.sourceforge.net> | 2002-07-17 21:23:57 +0000 |
commit | 7d8fa869a3a0698424c7d325dff69f446ea63308 (patch) | |
tree | 9db0326e080834442fa8dafdf2737c507fc5c239 | |
parent | e8a8a03bde217c4b9f523a4dd484c4ff9d4c0b13 (diff) | |
download | xine-lib-7d8fa869a3a0698424c7d325dff69f446ea63308.tar.gz xine-lib-7d8fa869a3a0698424c7d325dff69f446ea63308.tar.bz2 |
Apply Bill Fink's patch for skip by chapter capability.
CVS patchset: 2308
CVS date: 2002/07/17 21:23:57
-rw-r--r-- | include/xine.h.tmpl.in | 44 | ||||
-rw-r--r-- | src/input/input_plugin.h | 3 | ||||
-rw-r--r-- | src/xine-engine/load_plugins.c | 10 |
3 files changed, 54 insertions, 3 deletions
diff --git a/include/xine.h.tmpl.in b/include/xine.h.tmpl.in index 3a330aba7..b68a0c1bf 100644 --- a/include/xine.h.tmpl.in +++ b/include/xine.h.tmpl.in @@ -28,7 +28,7 @@ \endverbatim */ /* - * $Id: xine.h.tmpl.in,v 1.102 2002/07/09 12:45:17 f1rmb Exp $ + * $Id: xine.h.tmpl.in,v 1.103 2002/07/17 21:23:57 f1rmb Exp $ * */ @@ -1018,6 +1018,48 @@ void xine_select_spu_channel (xine_t *self, int channel); /** @} end of xine_management */ + /** + * \defgroup input_group Input. + * @{ + */ + + /** + * + * \defgroup input_cap input plugin capabilities + * @{ + */ + +/** + * \def INPUT_CAP_* + * bits to define various input plugin capabilities + * \sa xine_get_input_plugin_capabilities() + */ +#define INPUT_CAP_NOCAP 0x00000000 +#define INPUT_CAP_SEEKABLE 0x00000001 +#define INPUT_CAP_BLOCK 0x00000002 +#define INPUT_CAP_AUTOPLAY 0x00000004 +#define INPUT_CAP_GET_DIR 0x00000008 +#define INPUT_CAP_BROWSABLE 0x00000010 +#define INPUT_CAP_CLUT 0x00000020 +#define INPUT_CAP_AUDIOLANG 0x00000040 +#define INPUT_CAP_SPULANG 0x00000080 +#define INPUT_CAP_VARIABLE_BITRATE 0x00000100 +#define INPUT_CAP_PREVIEW 0x00000200 /* Requires INPUT_CAP_SEEKABLE */ +#define INPUT_CAP_CHAPTERS 0x00000400 + +/** + * \fn uint32_t xine_get_input_plugin_capabilities(xine_t *self) + * \brief Request input plugin capabilities + * \param self Current xine engine configuration ( #see xine_init() ) + * \return bitwise OR of all available capabilities. + * + */ +uint32_t xine_get_input_plugin_capabilities(xine_t *self); + + /** @} end of input_cap */ + + /** @} end of input_group */ + /** * \defgroup audio_group Audio. * @{ diff --git a/src/input/input_plugin.h b/src/input/input_plugin.h index 53dfb563d..902752447 100644 --- a/src/input/input_plugin.h +++ b/src/input/input_plugin.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: input_plugin.h,v 1.26 2002/07/05 17:32:02 mroi Exp $ + * $Id: input_plugin.h,v 1.27 2002/07/17 21:23:57 f1rmb Exp $ */ #ifndef HAVE_INPUT_PLUGIN_H @@ -294,6 +294,7 @@ struct input_plugin_s #define INPUT_CAP_SPULANG 0x00000080 #define INPUT_CAP_VARIABLE_BITRATE 0x00000100 #define INPUT_CAP_PREVIEW 0x00000200 /* Requires INPUT_CAP_SEEKABLE */ +#define INPUT_CAP_CHAPTERS 0x00000400 #define INPUT_OPTIONAL_UNSUPPORTED 0 diff --git a/src/xine-engine/load_plugins.c b/src/xine-engine/load_plugins.c index 8d6c1ad5b..6a66d0133 100644 --- a/src/xine-engine/load_plugins.c +++ b/src/xine-engine/load_plugins.c @@ -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: load_plugins.c,v 1.79 2002/07/13 19:01:16 f1rmb Exp $ + * $Id: load_plugins.c,v 1.80 2002/07/17 21:23:57 f1rmb Exp $ * * * Load input/demux/audio_out/video_out/codec plugins @@ -403,6 +403,14 @@ char *xine_get_input_plugin_description(xine_t *this, char *plugin_id) { return NULL; } +uint32_t xine_get_input_plugin_capabilities(xine_t *this) { + + if (this && this->cur_input_plugin && this->cur_input_plugin->get_capabilities) + return this->cur_input_plugin->get_capabilities(this->cur_input_plugin); + + return INPUT_CAP_NOCAP; +} + /** *************************************************************** * Decoder plugins section */ |