]> git.sesse.net Git - vlc/blobdiff - src/input/input_internal.h
backport [13191] and [13192] once again
[vlc] / src / input / input_internal.h
index 17a49c8274bbe9a6064e11ae2fd6a3b5e7f5e122..c0daa4d8d5345087c672930ac98134d8f88a722c 100644 (file)
@@ -1,7 +1,7 @@
 /*****************************************************************************
  * input_internal.h:
  *****************************************************************************
- * Copyright (C) 1998-2004 VideoLAN
+ * Copyright (C) 1998-2004 the VideoLAN team
  * $Id: input.c 7955 2004-06-07 22:21:33Z fenrir $
  *
  * Authors: Laurent Aimar <fenrir@via.ecp.fr>
@@ -56,6 +56,8 @@ enum input_control_e
 
     INPUT_CONTROL_SET_AUDIO_DELAY,
     INPUT_CONTROL_SET_SPU_DELAY,
+
+    INPUT_CONTROL_ADD_SLAVE,
 };
 
 /* Internal helpers */
@@ -100,7 +102,7 @@ void input_ControlVarTitle( input_thread_t *, int i_title );
 void input_ConfigVarInit ( input_thread_t * );
 
 /* stream.c */
-stream_t *stream_AccessNew( access_t *p_access );
+stream_t *stream_AccessNew( access_t *p_access, vlc_bool_t );
 void stream_AccessDelete( stream_t *s );
 void stream_AccessReset( stream_t *s );
 void stream_AccessUpdate( stream_t *s );
@@ -108,6 +110,7 @@ void stream_AccessUpdate( stream_t *s );
 /* decoder.c FIXME make it public ?*/
 void       input_DecoderDiscontinuity( decoder_t * p_dec );
 vlc_bool_t input_DecoderEmpty( decoder_t * p_dec );
+void       input_DecoderPreroll( decoder_t *p_dec, int64_t i_preroll_end );
 
 /* es_out.c */
 es_out_t  *input_EsOutNew( input_thread_t * );
@@ -130,17 +133,17 @@ typedef struct
     /* Synchronization information */
     mtime_t                 delta_cr;
     mtime_t                 cr_ref, sysdate_ref;
+    mtime_t                 last_sysdate;
     mtime_t                 last_cr; /* reference to detect unexpected stream
                                       * discontinuities                      */
     mtime_t                 last_pts;
-    count_t                 c_average_count;
-                           /* counter used to compute dynamic average values */
     int                     i_synchro_state;
 
     vlc_bool_t              b_master;
 
     /* Config */
     int                     i_cr_average;
+    int                     i_delta_cr_residue;
 } input_clock_t;
 
 void input_ClockInit( input_clock_t *, vlc_bool_t b_master, int i_cr_average );
@@ -149,5 +152,6 @@ mtime_t input_ClockGetTS( input_thread_t *, input_clock_t *, mtime_t );
 
 /* Subtitles */
 char **subtitles_Detect( input_thread_t *, char* path, char *fname );
+void MRLSplit( vlc_object_t *, char *, char **, char **, char ** );
 
 #endif