]> git.sesse.net Git - vlc/blobdiff - src/input/es_out.c
Signal can_rewind for use by user interfaces.
[vlc] / src / input / es_out.c
index b7ad6d8ba5cb131dc216cb0e0920a8f58015addc..bfbfcef7c76670e88101b0e00365d474292129f5 100644 (file)
@@ -1322,7 +1322,7 @@ static es_out_id_t *EsOutAdd( es_out_t *out, const es_format_t *fmt )
     es_format_Copy( &es->fmt, fmt );
     if( es->fmt.i_id < 0 )
         es->fmt.i_id = out->p_sys->i_id;
-    es->i_id = fmt->i_id;
+    es->i_id = es->fmt.i_id;
 
     switch( es->fmt.i_cat )
     {
@@ -1358,8 +1358,8 @@ static es_out_id_t *EsOutAdd( es_out_t *out, const es_format_t *fmt )
         if( es->fmt.video.i_frame_rate && es->fmt.video.i_frame_rate_base )
             vlc_ureduce( &es->fmt.video.i_frame_rate,
                          &es->fmt.video.i_frame_rate_base,
-                         fmt->video.i_frame_rate,
-                         fmt->video.i_frame_rate_base, 0 );
+                         es->fmt.video.i_frame_rate,
+                         es->fmt.video.i_frame_rate_base, 0 );
         break;
 
     case SPU_ES:
@@ -2152,7 +2152,7 @@ static int EsOutControlLocked( es_out_t *out, int i_query, va_list args )
             /* search program
              * TODO do not use mdate() but proper stream acquisition date */
             input_clock_Update( p_pgrm->p_clock, VLC_OBJECT(p_sys->p_input),
-                                p_sys->p_input->b_can_pace_control, i_pcr, mdate() );
+                                p_sys->p_input->b_can_pace_control || p_sys->b_buffering, i_pcr, mdate() );
             /* Check buffering state on master clock update */
             if( p_sys->b_buffering && p_pgrm == p_sys->p_pgrm )
                 EsOutDecodersStopBuffering( out, false );