[FFmpeg-cvslog] avconv: allow '-async -1' to disable timestamp sync for audio encoding

Justin Ruggles git at videolan.org
Tue Apr 10 23:07:17 CEST 2012


ffmpeg | branch: master | Justin Ruggles <justin.ruggles at gmail.com> | Sun Apr  8 15:00:01 2012 -0400| [b073819bc974965056f435d69dc51e9ec5877395] | committer: Justin Ruggles

avconv: allow '-async -1' to disable timestamp sync for audio encoding

This will allow a workaround for cases where input timestamps are invalid or
when decoder delay of 1 packet or more confuses avconv into using the wrong
timestamps as a sync reference.

> http://git.videolan.org/gitweb.cgi/ffmpeg.git/?a=commit;h=b073819bc974965056f435d69dc51e9ec5877395
---

 avconv.c |    4 ++--
 1 files changed, 2 insertions(+), 2 deletions(-)

diff --git a/avconv.c b/avconv.c
index 2dce66f..7344028 100644
--- a/avconv.c
+++ b/avconv.c
@@ -1101,7 +1101,7 @@ static void do_audio_out(AVFormatContext *s, OutputStream *ost,
         ost->reformat_pair = MAKE_SFMT_PAIR(enc->sample_fmt,dec->sample_fmt);
     }
 
-    if (audio_sync_method) {
+    if (audio_sync_method > 0) {
         double delta = get_sync_ipts(ost, ist->last_dts) * enc->sample_rate - ost->sync_opts -
                        av_fifo_size(ost->fifo) / (enc->channels * osize);
         int idelta = delta * dec->sample_rate / enc->sample_rate;
@@ -1148,7 +1148,7 @@ static void do_audio_out(AVFormatContext *s, OutputStream *ost,
                 av_resample_compensate(*(struct AVResampleContext**)ost->resample, comp, enc->sample_rate);
             }
         }
-    } else
+    } else if (audio_sync_method == 0)
         ost->sync_opts = lrintf(get_sync_ipts(ost, ist->last_dts) * enc->sample_rate) -
                                 av_fifo_size(ost->fifo) / (enc->channels * osize); // FIXME wrong
 



More information about the ffmpeg-cvslog mailing list