summaryrefslogtreecommitdiff
path: root/libavfilter/audio.c
diff options
context:
space:
mode:
authorMichael Niedermayer <michaelni@gmx.at>2012-06-21 21:57:39 +0200
committerMichael Niedermayer <michaelni@gmx.at>2012-06-21 22:37:43 +0200
commit87dced8074cf83e74e69d7dee725c8d62601c4e8 (patch)
tree7fda3c5c5510001e32cbbeddc4030e5e84df1138 /libavfilter/audio.c
parentfd0b8c6ad53ff2a01868ecf1bbf0c936876a0c61 (diff)
parent1d01fee980edf60215acd94daf2533a9fefb9342 (diff)
downloadffmpeg-87dced8074cf83e74e69d7dee725c8d62601c4e8.tar.gz
Merge remote-tracking branch 'qatar/master'
* qatar/master: fix hardcoded tables compililation caused by missing math constants lavf: Make codec_tag arrays constant twinvq: give massive struct a name. lavf, lavu: version bumps and APIchanges for av_gettime() move lavfi/audio: don't set cur_buf in ff_filter_samples(). lavfi/fifo: add audio version of the fifo filter. fifo: fix parenthesis placement. lavfi: rename vf_fifo.c -> fifo.c lavc: remove stats_in from AVCodecContext options table. Conflicts: doc/APIchanges libavfilter/Makefile libavfilter/allfilters.c libavfilter/audio.c libavfilter/fifo.c libavformat/version.h libavutil/avutil.h Merged-by: Michael Niedermayer <michaelni@gmx.at>
Diffstat (limited to 'libavfilter/audio.c')
-rw-r--r--libavfilter/audio.c18
1 files changed, 10 insertions, 8 deletions
diff --git a/libavfilter/audio.c b/libavfilter/audio.c
index 0a5248936a..d052ad9cf3 100644
--- a/libavfilter/audio.c
+++ b/libavfilter/audio.c
@@ -181,6 +181,7 @@ void ff_filter_samples(AVFilterLink *link, AVFilterBufferRef *samplesref)
void (*filter_samples)(AVFilterLink *, AVFilterBufferRef *);
AVFilterPad *dst = link->dstpad;
int64_t pts;
+ AVFilterBufferRef *buf_out;
FF_TPRINTF_START(NULL, filter_samples); ff_tlog_link(NULL, link, 1);
@@ -194,22 +195,23 @@ void ff_filter_samples(AVFilterLink *link, AVFilterBufferRef *samplesref)
"Copying audio data in avfilter (have perms %x, need %x, reject %x)\n",
samplesref->perms, link->dstpad->min_perms, link->dstpad->rej_perms);
- link->cur_buf = ff_default_get_audio_buffer(link, dst->min_perms,
- samplesref->audio->nb_samples);
- link->cur_buf->pts = samplesref->pts;
- link->cur_buf->audio->sample_rate = samplesref->audio->sample_rate;
+ buf_out = ff_default_get_audio_buffer(link, dst->min_perms,
+ samplesref->audio->nb_samples);
+ buf_out->pts = samplesref->pts;
+ buf_out->audio->sample_rate = samplesref->audio->sample_rate;
/* Copy actual data into new samples buffer */
- av_samples_copy(link->cur_buf->extended_data, samplesref->extended_data,
+ av_samples_copy(buf_out->extended_data, samplesref->extended_data,
0, 0, samplesref->audio->nb_samples,
av_get_channel_layout_nb_channels(link->channel_layout),
link->format);
avfilter_unref_buffer(samplesref);
} else
- link->cur_buf = samplesref;
+ buf_out = samplesref;
- pts = link->cur_buf->pts;
- filter_samples(link, link->cur_buf);
+ link->cur_buf = buf_out;
+ pts = buf_out->pts;
+ filter_samples(link, buf_out);
ff_update_link_current_pts(link, pts);
}