X-Git-Url: https://git.sesse.net/?a=blobdiff_plain;f=include%2Fvlc_input.h;h=069657d7fe972928416deae4e128454a1da089fd;hb=a5a5d46653b45091036a8dc00f2b8f1bbca39572;hp=ebee79b7cb704067fca6a051c73e8e34c44f3a7d;hpb=3a9b48da22e8ff3bdaa9d86b92fe6b968deb62ac;p=vlc diff --git a/include/vlc_input.h b/include/vlc_input.h index ebee79b7cb..069657d7fe 100644 --- a/include/vlc_input.h +++ b/include/vlc_input.h @@ -1,8 +1,8 @@ /***************************************************************************** - * vlc_input.h: + * vlc_input.h: Core input structures ***************************************************************************** - * Copyright (C) 1999-2004 VideoLAN - * $Id: input_ext-intf.h 7954 2004-06-07 22:19:12Z fenrir $ + * Copyright (C) 1999-2004 the VideoLAN team + * $Id$ * * Authors: Christophe Massiot * Laurent Aimar @@ -68,12 +68,15 @@ struct input_item_t }; #define ITEM_TYPE_UNKNOWN 0 -#define ITEM_TYPE_FILE 1 -#define ITEM_TYPE_DIRECTORY 2 -#define ITEM_TYPE_DISC 3 -#define ITEM_TYPE_CARD 4 -#define ITEM_TYPE_NET 5 -#define ITEM_TYPE_PLAYLIST 6 +#define ITEM_TYPE_AFILE 1 +#define ITEM_TYPE_VFILE 2 +#define ITEM_TYPE_DIRECTORY 3 +#define ITEM_TYPE_DISC 4 +#define ITEM_TYPE_CDDA 5 +#define ITEM_TYPE_CARD 6 +#define ITEM_TYPE_NET 7 +#define ITEM_TYPE_PLAYLIST 8 +#define ITEM_TYPE_NODE 9 static inline void vlc_input_item_Init( vlc_object_t *p_o, input_item_t *p_i ) { @@ -155,6 +158,9 @@ static inline void vlc_input_item_Clean( input_item_t *p_i ) vlc_mutex_destroy( &p_i->lock ); } +VLC_EXPORT( char *, vlc_input_item_GetInfo, ( input_item_t *p_i, const char *psz_cat,const char *psz_name ) ); +VLC_EXPORT(int, vlc_input_item_AddInfo, ( input_item_t *p_i, const char *psz_cat, const char *psz_name, const char *psz_format, ... ) ); + /***************************************************************************** * Seek point: (generalisation of chapters) *****************************************************************************/ @@ -163,13 +169,15 @@ struct seekpoint_t int64_t i_byte_offset; int64_t i_time_offset; char *psz_name; + int i_level; }; static inline seekpoint_t *vlc_seekpoint_New( void ) { seekpoint_t *point = (seekpoint_t*)malloc( sizeof( seekpoint_t ) ); point->i_byte_offset = - point->i_time_offset = 0; + point->i_time_offset = -1; + point->i_level = 0; point->psz_name = NULL; return point; } @@ -272,10 +280,13 @@ enum input_state_e INIT_S, PLAYING_S, PAUSE_S, - END_S, + END_S }; -/* "rate" default, min/max */ +/* "rate" default, min/max + * A rate below 1000 plays the movie faster, + * A rate above 1000 plays the movie slower. + */ #define INPUT_RATE_DEFAULT 1000 #define INPUT_RATE_MIN 125 /* Up to 8/1 */ #define INPUT_RATE_MAX 8000 /* Up to 1/8 */ @@ -398,6 +409,11 @@ struct input_thread_t *****************************************************************************/ #define input_CreateThread(a,b) __input_CreateThread(VLC_OBJECT(a),b) VLC_EXPORT( input_thread_t *, __input_CreateThread, ( vlc_object_t *, input_item_t * ) ); +#define input_Preparse(a,b) __input_Preparse(VLC_OBJECT(a),b) +VLC_EXPORT( int, __input_Preparse, ( vlc_object_t *, input_item_t * ) ); + +#define input_Read(a,b,c) __input_Read(VLC_OBJECT(a),b, c) +VLC_EXPORT( int, __input_Read, ( vlc_object_t *, input_item_t *, vlc_bool_t ) ); VLC_EXPORT( void, input_StopThread, ( input_thread_t * ) ); VLC_EXPORT( void, input_DestroyThread, ( input_thread_t * ) ); @@ -422,16 +438,17 @@ enum input_query_e INPUT_GET_STATE, /* arg1= int * res= */ INPUT_SET_STATE, /* arg1= int res=can fail */ - /* input variable "audio-delay" and "spu-delay" */ + /* input variable "audio-delay" and "sub-delay" */ INPUT_GET_AUDIO_DELAY, /* arg1 = int* res=can fail */ INPUT_SET_AUDIO_DELAY, /* arg1 = int res=can fail */ INPUT_GET_SPU_DELAY, /* arg1 = int* res=can fail */ INPUT_SET_SPU_DELAY, /* arg1 = int res=can fail */ /* Meta datas */ - INPUT_ADD_INFO, /* arg1= char * arg2= char * arg3=... res=can fail */ - INPUT_GET_INFO, /* arg1= char * arg2= char * arg3= char ** res=can fail*/ - INPUT_SET_NAME, /* arg1= char * res=can fail */ + INPUT_ADD_INFO, /* arg1= char* arg2= char* arg3=... res=can fail */ + INPUT_GET_INFO, /* arg1= char* arg2= char* arg3= char** res=can fail */ + INPUT_DEL_INFO, /* arg1= char* arg2= char* res=can fail */ + INPUT_SET_NAME, /* arg1= char* res=can fail */ /* Input config options */ INPUT_ADD_OPTION, /* arg1= char * arg2= char * res=can fail*/ @@ -447,6 +464,9 @@ enum input_query_e INPUT_CHANGE_BOOKMARK, /* arg1= seekpoint_t * arg2= int * res=can fail */ INPUT_DEL_BOOKMARK, /* arg1= seekpoint_t * res=can fail */ INPUT_SET_BOOKMARK, /* arg1= int res=can fail */ + + /* On the fly input slave */ + INPUT_ADD_SLAVE /* arg1= char * */ }; VLC_EXPORT( int, input_vaControl,( input_thread_t *, int i_query, va_list ) );