vlc | branch: master | Ilkka Ollakka <[email protected]> | Mon Dec  2 15:01:04 
2013 +0200| [47f4dd31354ba8a0cf097a0c288232600647fa1f] | committer: Ilkka 
Ollakka

avcodec: just set timestamp at beginning of block

It's used only to calculate timestamps if block needs to be divided into
multiple frames and not in overall timestamp keeping.

> http://git.videolan.org/gitweb.cgi/vlc.git/?a=commit;h=47f4dd31354ba8a0cf097a0c288232600647fa1f
---

 modules/codec/avcodec/encoder.c |    6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/modules/codec/avcodec/encoder.c b/modules/codec/avcodec/encoder.c
index bae4d3f..5bc9d15 100644
--- a/modules/codec/avcodec/encoder.c
+++ b/modules/codec/avcodec/encoder.c
@@ -1176,6 +1176,7 @@ static block_t *handle_delay_buffer( encoder_t *p_enc, 
encoder_sys_t *p_sys, int
 
 
     p_sys->frame->pts        = date_Get( &p_sys->buffer_date );
+
     if( likely( p_sys->frame->pts != AV_NOPTS_VALUE) )
         date_Increment( &p_sys->buffer_date, p_sys->frame->nb_samples );
 
@@ -1242,10 +1243,9 @@ static block_t *EncodeAudio( encoder_t *p_enc, block_t 
*p_aout_buf )
     //Calculate how many bytes we would need from current buffer to fill frame
     size_t leftover_samples = __MAX(0,__MIN((ssize_t)i_samples_left, 
(ssize_t)(p_sys->i_frame_size - p_sys->i_samples_delay)));
 
-    if( ( p_aout_buf && ( p_aout_buf->i_pts > VLC_TS_INVALID ) &&
-        ((p_aout_buf->i_pts - p_sys->i_samples_delay) != date_Get( 
&p_sys->buffer_date ) ) ) )
+    if( p_aout_buf && ( p_aout_buf->i_pts > VLC_TS_INVALID ) )
     {
-        date_Set( &p_sys->buffer_date, p_aout_buf->i_dts );
+        date_Set( &p_sys->buffer_date, p_aout_buf->i_pts );
         /* take back amount we have leftover from previous buffer*/
         if( p_sys->i_samples_delay > 0 )
             date_Decrement( &p_sys->buffer_date, p_sys->i_samples_delay );

_______________________________________________
vlc-commits mailing list
[email protected]
https://mailman.videolan.org/listinfo/vlc-commits

Reply via email to