]> git.sesse.net Git - vlc/blobdiff - include/vlc_input.h
Merge branch 'master' of git://git.videolan.org/vlc
[vlc] / include / vlc_input.h
index d3d672b153e74beb23c60ada2c0923f9b10a1e57..bb2a2639a18e2b79895e9de3cd4a279f8cf6d36e 100644 (file)
@@ -73,6 +73,7 @@ struct input_item_t
     mtime_t    i_duration;           /**< Duration in milliseconds*/
 
     uint8_t    i_type;               /**< Type (file, disc, ...) */
+    bool b_prefers_tree;             /**< Do we prefer being displayed as tree*/
 
     int        i_categories;         /**< Number of info categories */
     info_category_t **pp_categories; /**< Pointer to the first info category */
@@ -185,9 +186,6 @@ VLC_EXPORT(int, input_item_AddInfo, ( input_item_t *p_i, const char *psz_cat, co
 VLC_EXPORT( input_item_t *, __input_item_NewExt, (vlc_object_t *, const char *, const char*, int, const char *const *, mtime_t i_duration )  );
 VLC_EXPORT( input_item_t *, input_item_NewWithType, ( vlc_object_t *, const char *, const char *e, int, const char *const *, mtime_t i_duration, int ) );
 
-#define input_item_GetById(a,b) __input_item_GetById( VLC_OBJECT(a),b )
-VLC_EXPORT( input_item_t *, __input_item_GetById, (vlc_object_t *, int ) );
-
 /*****************************************************************************
  * Meta data helpers
  *****************************************************************************/
@@ -420,6 +418,7 @@ typedef enum input_state_e
 #define INPUT_UPDATE_TITLE      0x0010
 #define INPUT_UPDATE_SEEKPOINT  0x0020
 #define INPUT_UPDATE_META       0x0040
+#define INPUT_UPDATE_SIGNAL     0x0080
 
 /* Input control XXX: internal */
 #define INPUT_CONTROL_FIFO_SIZE    100
@@ -438,8 +437,9 @@ struct input_thread_t
 {
     VLC_COMMON_MEMBERS;
 
-    bool  b_eof;
+    bool b_eof;
     bool b_preparsing;
+    bool b_dead;
 
     int i_state;
     bool b_can_pace_control;
@@ -523,7 +523,14 @@ enum input_query_e
     INPUT_GET_ATTACHMENT,  /* arg1=input_attachment_t**, arg2=char*  res=can fail */
 
     /* On the fly input slave */
-    INPUT_ADD_SLAVE        /* arg1= char * */
+    INPUT_ADD_SLAVE,       /* arg1= char * */
+
+    /* On the fly record while playing */
+    INPUT_SET_RECORD_STATE, /* arg1=bool    res=can fail */
+    INPUT_GET_RECORD_STATE, /* arg1=bool*   res=can fail */
+
+    /* ES */
+    INPUT_RESTART_ES,       /* arg1=int (-AUDIO/VIDEO/SPU_ES for the whole category) */
 };
 
 VLC_EXPORT( int, input_vaControl,( input_thread_t *, int i_query, va_list  ) );
@@ -535,7 +542,9 @@ static inline input_state_e input_GetState( input_thread_t * p_input )
     input_Control( p_input, INPUT_GET_STATE, &state );
     return state;
 }
-VLC_EXPORT( decoder_t *, input_DecoderNew, ( input_thread_t *, es_format_t *, bool b_force_decoder ) );
+
+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 * ) );
 VLC_EXPORT( void, input_DecoderDelete, ( decoder_t * ) );
 VLC_EXPORT( void, input_DecoderDecode,( decoder_t *, block_t * ) );