]> git.sesse.net Git - vlc/blobdiff - include/vlc_input.h
Tag some APIs as LIBVLC_USED
[vlc] / include / vlc_input.h
index a244677e894fd918535a74bd0dc384553a82cfca..63debca1f06544234842a27b8cb80ab2686bc091 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 */
@@ -523,7 +524,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 +543,7 @@ 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 ) );
+VLC_EXPORT( decoder_t *, input_DecoderNew, ( input_thread_t *, es_format_t *, sout_instance_t * ) );
 VLC_EXPORT( void, input_DecoderDelete, ( decoder_t * ) );
 VLC_EXPORT( void, input_DecoderDecode,( decoder_t *, block_t * ) );
 
@@ -543,4 +551,13 @@ VLC_EXPORT( bool, input_AddSubtitles, ( input_thread_t *, char *, bool ) );
 
 VLC_EXPORT( vlc_event_manager_t *, input_get_event_manager, ( input_thread_t * ) );
 
+/**
+ * This function allows to split a MRL into access, demux and path part.
+ *
+ *  You should not write into access and demux string as they may not point into
+ * the provided buffer.
+ *  The buffer provided by psz_dup will be modified.
+ */
+VLC_EXPORT( void, input_SplitMRL, ( const char **ppsz_access, const char **ppsz_demux, char **ppsz_path, char *psz_dup ) );
+
 #endif