[PATCH] Do not set audio_resample to 0 if audio_sync_method is > 1.

Stefano Sabatini stefano.sabatini-lala
Sun Jan 23 02:06:59 CET 2011


If audio_sync_method is >1 the resampler is used for audio drift
compensation, and do_audio_out() was causing an assert failure because
audio_resample was not set.

Fix issue 2516, which was introduced by SVN r25939.
---
 ffmpeg.c |    4 +++-
 1 files changed, 3 insertions(+), 1 deletions(-)

diff --git a/ffmpeg.c b/ffmpeg.c
index 0b2bab2..56b2dbe 100644
--- a/ffmpeg.c
+++ b/ffmpeg.c
@@ -825,7 +825,9 @@ need_realloc:
             if (ost->resample)
                 audio_resample_close(ost->resample);
         }
-        if (ost->resample_sample_fmt  == enc->sample_fmt &&
+        /* if audio_sync_method is >1 the resampler is needed for audio drift compensation */
+        if (audio_sync_method <= 1 &&
+            ost->resample_sample_fmt  == enc->sample_fmt &&
             ost->resample_channels    == enc->channels   &&
             ost->resample_sample_rate == enc->sample_rate) {
             ost->resample = NULL;
-- 
1.7.2.3


--ZPt4rx8FFjLCG7dd--



More information about the ffmpeg-devel mailing list