aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorStefano Sabatini <stefano.sabatini-lala@poste.it>2011-01-23 02:06:59 +0100
committerMans Rullgard <mans@mansr.com>2011-01-24 17:30:33 +0000
commit07b48f8c7adaaf4020514816ec9b8d14cc8c5fbd (patch)
treef95681c396f6d7bcfe1ee25a6747f3d958a3eecc
parent78f318be59a8e6174f21c2d7c3403ef325c73011 (diff)
downloadffmpeg-07b48f8c7adaaf4020514816ec9b8d14cc8c5fbd.tar.gz
Do not set audio_resample to 0 if audio_sync_method is > 1.
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. Signed-off-by: Mans Rullgard <mans@mansr.com>
-rw-r--r--ffmpeg.c4
1 files changed, 3 insertions, 1 deletions
diff --git a/ffmpeg.c b/ffmpeg.c
index 0b2bab2cec..56b2dbed5e 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;