]> git.sesse.net Git - vlc/commitdiff
Used VLC_TS_0 in AIFF demuxer.
authorLaurent Aimar <fenrir@videolan.org>
Sun, 20 Dec 2009 15:40:25 +0000 (16:40 +0100)
committerLaurent Aimar <fenrir@videolan.org>
Sun, 20 Dec 2009 22:23:27 +0000 (23:23 +0100)
AIFF is VLC_TS_INVALID compliant.

modules/demux/aiff.c

index cfc4b1659ce99346a5bf4d27331755d1857a2af2..a236582b10f77af91bd450a81b68baae88f6d24d 100644 (file)
@@ -118,7 +118,7 @@ static int Open( vlc_object_t *p_this )
     /* Fill p_demux field */
     DEMUX_INIT_COMMON(); p_sys = p_demux->p_sys;
     es_format_Init( &p_sys->fmt, UNKNOWN_ES, 0 );
-    p_sys->i_time = 1;
+    p_sys->i_time = 0;
     p_sys->i_ssnd_pos = -1;
 
     for( ;; )
@@ -240,7 +240,7 @@ static int Demux( demux_t *p_demux )
     }
 
     /* Set PCR */
-    es_out_Control( p_demux->out, ES_OUT_SET_PCR, p_sys->i_time);
+    es_out_Control( p_demux->out, ES_OUT_SET_PCR, VLC_TS_0 + p_sys->i_time);
 
     /* we will read 100ms at once */
     i_read = p_sys->i_ssnd_fsize * ( p_sys->fmt.audio.i_rate / 10 );
@@ -254,7 +254,7 @@ static int Demux( demux_t *p_demux )
     }
 
     p_block->i_dts =
-    p_block->i_pts = p_sys->i_time;
+    p_block->i_pts = VLC_TS_0 + p_sys->i_time;
 
     p_sys->i_time += (int64_t)1000000 *
                      p_block->i_buffer /
@@ -309,7 +309,7 @@ static int Control( demux_t *p_demux, int i_query, va_list args )
                 {
                     return VLC_EGENERIC;
                 }
-                p_sys->i_time = 1 + (int64_t)1000000 * i_frame / p_sys->fmt.audio.i_rate;
+                p_sys->i_time = (int64_t)1000000 * i_frame / p_sys->fmt.audio.i_rate;
                 return VLC_SUCCESS;
             }
             return VLC_EGENERIC;