VLC_EXPORT( char *, input_item_GetMeta, ( input_item_t *p_i, vlc_meta_type_t meta_type ) );
VLC_EXPORT( char *, input_item_GetName, ( input_item_t * p_i ) );
VLC_EXPORT( char *, input_item_GetURI, ( input_item_t * p_i ) );
-VLC_EXPORT( void, input_item_SetURI, ( input_item_t * p_i, char * psz_uri ));
+VLC_EXPORT( void, input_item_SetURI, ( input_item_t * p_i, const char *psz_uri ));
VLC_EXPORT(mtime_t, input_item_GetDuration, ( input_item_t * p_i ) );
VLC_EXPORT( void, input_item_SetDuration, ( input_item_t * p_i, mtime_t i_duration ));
VLC_EXPORT( bool, input_item_IsPreparsed, ( input_item_t *p_i ));
int i_state;
bool b_can_pace_control;
- int64_t i_time; /* Current time */
-
- /* Internal caching common to all inputs */
- mtime_t i_pts_delay;
/* All other data is input_thread is PRIVATE. You can't access it
* outside of src/input */
{
/* "state" has changed */
INPUT_EVENT_STATE,
+ /* b_dead is true */
+ INPUT_EVENT_DEAD,
+
/* "rate" has changed */
INPUT_EVENT_RATE,
+
/* At least one of "position" or "time" or "length" has changed */
INPUT_EVENT_TIMES,
/* "record" has changed */
INPUT_EVENT_RECORD,
- /* A vout has been created/deleted by *the input* */
- INPUT_EVENT_VOUT,
-
/* input_item_t media has changed */
INPUT_EVENT_ITEM_META,
/* input_item_t info has changed */
/* cache" has changed */
INPUT_EVENT_CACHE,
+ /* A aout_instance_t object has been created/deleted by *the input* */
+ INPUT_EVENT_AOUT,
+ /* A vout_thread_t object has been created/deleted by *the input* */
+ INPUT_EVENT_VOUT,
+
} input_event_type_e;
/** @}*/
#define input_CreateThread(a,b) __input_CreateThread(VLC_OBJECT(a),b)
VLC_EXPORT( input_thread_t *, __input_CreateThread, ( vlc_object_t *, input_item_t * ) );
+VLC_EXPORT( void, input_StopThread, ( input_thread_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 *, bool ) );
-VLC_EXPORT( void, input_StopThread, ( input_thread_t * ) );
enum input_query_e
{
/* ES */
INPUT_RESTART_ES, /* arg1=int (-AUDIO/VIDEO/SPU_ES for the whole category) */
+
+ /* Input ressources
+ * XXX You must call vlc_object_release as soon as possible */
+ INPUT_GET_AOUT, /* arg1=aout_instance_t ** res=can fail */
+ INPUT_GET_VOUTS, /* arg1=vout_thread_t ***, int * res=can fail */
};
VLC_EXPORT( int, input_vaControl,( input_thread_t *, int i_query, va_list ) );
return input_Control( p_input, INPUT_ADD_SUBTITLE, psz_url, b_check_extension );
}
-/**
- * It will return the input event manager.
- *
- * You are advised to use "intf-event" instead if you want completness.
- */
-VLC_EXPORT( vlc_event_manager_t *, input_GetEventManager, ( input_thread_t * ) );
-
/* */
typedef struct input_clock_t input_clock_t;
VLC_EXPORT( decoder_t *, input_DecoderNew, ( input_thread_t *, es_format_t *, input_clock_t *, sout_instance_t * ) );