playlist.h
Go to the documentation of this file.00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020
00021
00022
00023
00024 #include <vlc_input.h>
00025 #include <vlc_playlist.h>
00026
00027 char *ProcessMRL( const char *, const char * );
00028 char *FindPrefix( demux_t * );
00029
00030 int Import_Old ( vlc_object_t * );
00031
00032 int Import_Native ( vlc_object_t * );
00033 void Close_Native ( vlc_object_t * );
00034
00035 int Import_M3U ( vlc_object_t * );
00036 void Close_M3U ( vlc_object_t * );
00037
00038 int Import_RAM ( vlc_object_t * );
00039 void Close_RAM ( vlc_object_t * );
00040
00041 int Import_PLS ( vlc_object_t * );
00042 void Close_PLS ( vlc_object_t * );
00043
00044 int Import_B4S ( vlc_object_t * );
00045 void Close_B4S ( vlc_object_t * );
00046
00047 int Import_DVB ( vlc_object_t * );
00048 void Close_DVB ( vlc_object_t * );
00049
00050 int Import_podcast ( vlc_object_t * );
00051 void Close_podcast ( vlc_object_t * );
00052
00053 int Import_xspf ( vlc_object_t * );
00054 void Close_xspf ( vlc_object_t * );
00055
00056 int Import_Shoutcast ( vlc_object_t * );
00057 void Close_Shoutcast ( vlc_object_t * );
00058
00059 int Import_ASX ( vlc_object_t * );
00060 void Close_ASX ( vlc_object_t * );
00061
00062 int Import_SGIMB ( vlc_object_t * );
00063 void Close_SGIMB ( vlc_object_t * );
00064
00065 int Import_QTL ( vlc_object_t * );
00066 void Close_QTL ( vlc_object_t * );
00067
00068 int Import_GVP ( vlc_object_t * );
00069 void Close_GVP ( vlc_object_t * );
00070
00071 int Import_IFO ( vlc_object_t * );
00072 void Close_IFO ( vlc_object_t * );
00073
00074 int Import_VideoPortal ( vlc_object_t * );
00075 void Close_VideoPortal ( vlc_object_t * );
00076
00077 int Import_iTML ( vlc_object_t * );
00078 void Close_iTML ( vlc_object_t * );
00079
00080 int Import_WPL ( vlc_object_t * );
00081 void Close_WPL ( vlc_object_t * );
00082
00083 int Import_ZPL ( vlc_object_t * );
00084 void Close_ZPL ( vlc_object_t * );
00085
00086 extern input_item_t * GetCurrentItem(demux_t *p_demux);
00087
00088 #define STANDARD_DEMUX_INIT_MSG( msg ) do { \
00089 DEMUX_INIT_COMMON(); \
00090 msg_Dbg( p_demux, "%s", msg ); } while(0)
00091
00092 #define DEMUX_BY_EXTENSION_MSG( ext, msg ) \
00093 demux_t *p_demux = (demux_t *)p_this; \
00094 if( !demux_IsPathExtension( p_demux, ext ) ) \
00095 return VLC_EGENERIC; \
00096 STANDARD_DEMUX_INIT_MSG( msg );
00097
00098 #define DEMUX_BY_EXTENSION_OR_FORCED_MSG( ext, module, msg ) \
00099 demux_t *p_demux = (demux_t *)p_this; \
00100 if( !demux_IsPathExtension( p_demux, ext ) && !demux_IsForced( p_demux, module ) ) \
00101 return VLC_EGENERIC; \
00102 STANDARD_DEMUX_INIT_MSG( msg );
00103
00104
00105 #define CHECK_PEEK( zepeek, size ) do { \
00106 if( stream_Peek( p_demux->s , &zepeek, size ) < size ){ \
00107 msg_Dbg( p_demux, "not enough data" ); return VLC_EGENERIC; } } while(0)
00108
00109 #define POKE( peek, stuff, size ) (strncasecmp( (const char *)peek, stuff, size )==0)
00110