summaryrefslogtreecommitdiff
path: root/libavresample/utils.c
diff options
context:
space:
mode:
authorMichael Niedermayer <michaelni@gmx.at>2012-12-20 12:18:28 +0100
committerMichael Niedermayer <michaelni@gmx.at>2012-12-20 12:18:28 +0100
commit41135b7f64e699a71250b0c2082ba53b0338069a (patch)
tree722cfb318703cc777579faa3d1996f8c340d35cf /libavresample/utils.c
parent40ea3438661e6cc30b60bc019ae01fb073eabb35 (diff)
parentb2fe6756e34d1316d0fa799e8a5ace993059c407 (diff)
Merge remote-tracking branch 'qatar/master'
* qatar/master: lavr: add option for dithering during sample format conversion to s16 mpeg12: do not decode extradata more than once. Conflicts: libavcodec/mpeg12.c libavcodec/mpeg12.h Merged-by: Michael Niedermayer <michaelni@gmx.at>
Diffstat (limited to 'libavresample/utils.c')
-rw-r--r--libavresample/utils.c10
1 files changed, 6 insertions, 4 deletions
diff --git a/libavresample/utils.c b/libavresample/utils.c
index 918b67a5c0..8f6583d6e8 100644
--- a/libavresample/utils.c
+++ b/libavresample/utils.c
@@ -142,7 +142,8 @@ int avresample_open(AVAudioResampleContext *avr)
/* setup contexts */
if (avr->in_convert_needed) {
avr->ac_in = ff_audio_convert_alloc(avr, avr->internal_sample_fmt,
- avr->in_sample_fmt, avr->in_channels);
+ avr->in_sample_fmt, avr->in_channels,
+ avr->in_sample_rate);
if (!avr->ac_in) {
ret = AVERROR(ENOMEM);
goto error;
@@ -155,7 +156,8 @@ int avresample_open(AVAudioResampleContext *avr)
else
src_fmt = avr->in_sample_fmt;
avr->ac_out = ff_audio_convert_alloc(avr, avr->out_sample_fmt, src_fmt,
- avr->out_channels);
+ avr->out_channels,
+ avr->out_sample_rate);
if (!avr->ac_out) {
ret = AVERROR(ENOMEM);
goto error;
@@ -190,8 +192,8 @@ void avresample_close(AVAudioResampleContext *avr)
ff_audio_data_free(&avr->out_buffer);
av_audio_fifo_free(avr->out_fifo);
avr->out_fifo = NULL;
- av_freep(&avr->ac_in);
- av_freep(&avr->ac_out);
+ ff_audio_convert_free(&avr->ac_in);
+ ff_audio_convert_free(&avr->ac_out);
ff_audio_resample_free(&avr->resample);
ff_audio_mix_free(&avr->am);
av_freep(&avr->mix_matrix);