diff options
author | Miguel Freitas <miguelfreitas@users.sourceforge.net> | 2003-01-29 02:33:35 +0000 |
---|---|---|
committer | Miguel Freitas <miguelfreitas@users.sourceforge.net> | 2003-01-29 02:33:35 +0000 |
commit | 58f833f31e88bebac909db5fc433cd4e19f1837d (patch) | |
tree | 6acdcee6ee4746866467feeca299707e24e0fc69 /include | |
parent | 89378a497899c211d530ce64077a3e8128044d1d (diff) | |
download | xine-lib-58f833f31e88bebac909db5fc433cd4e19f1837d.tar.gz xine-lib-58f833f31e88bebac909db5fc433cd4e19f1837d.tar.bz2 |
- preliminary support for reference streams parsing at xine-lib (they
are sent to gui using a new event)
- function to return demux from mime type string (used by xine-plugin)
- very simple parser for ram files at demux_real
CVS patchset: 4030
CVS date: 2003/01/29 02:33:35
Diffstat (limited to 'include')
-rw-r--r-- | include/xine.h.in | 28 |
1 files changed, 27 insertions, 1 deletions
diff --git a/include/xine.h.in b/include/xine.h.in index 6fa89c39a..f195c70cc 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.57 2003/01/18 15:29:19 miguelfreitas Exp $ + * $Id: xine.h.in,v 1.58 2003/01/29 02:33:35 miguelfreitas Exp $ * * public xine-lib (libxine) interface and documentation * @@ -819,6 +819,11 @@ char *xine_get_file_extensions (xine_t *self); * the pointer returned can be free()ed when no longer used */ char *xine_get_mime_types (xine_t *self); +/* get the demuxer identifier that handles a given mime type + * + * the pointer returned can be free()ed when no longer used + * returns NULL if no demuxer is available to handle this. */ +char *xine_get_demux_for_mime_type (xine_t *self, const char *mime_type); /* get a description string for an input plugin */ const char *xine_get_input_plugin_description (xine_t *self, @@ -1141,6 +1146,7 @@ void xine_config_reset (xine_t *self); #define XINE_EVENT_AUDIO_LEVEL 6 /* report current audio level (l/r) */ #define XINE_EVENT_QUIT 7 /* last event sent when stream is disposed */ #define XINE_EVENT_PROGRESS 8 /* index creation/network connections */ +#define XINE_EVENT_MRL_REFERENCE 9 /* demuxer->frontend: MRL reference(s) for the real stream */ /* input events coming from frontend */ #define XINE_EVENT_INPUT_MOUSE_BUTTON 101 @@ -1231,6 +1237,26 @@ typedef struct { int percent; } xine_progress_data_t; +/* + * mrl reference data is sent by demuxers when a reference stream is found. + * this stream just contains pointers (urls) to the real data, which are + * passed to frontend using this event type. (examples: .asx, .mov and .ram) + * + * ideally, frontends should add these mrls to a "hierarchical playlist". + * that is, instead of the original file, the ones provided here should be + * played instead. on pratice, just using a simple playlist should work. + * + * mrl references should be played in the same order they are received, just + * after the current stream finishes. + * alternative playlists may be provided and should be used in case of + * failure of the primary playlist. + */ +typedef struct { + int alternative; /* alternative playlist number, usually 0 */ + char mrl[1]; /* might (will) be longer */ +} xine_mrl_reference_data_t; + + /* opaque xine_event_queue_t */ typedef struct xine_event_queue_s xine_event_queue_t; |