summaryrefslogtreecommitdiff
path: root/libavfilter/asrc_anullsrc.c
diff options
context:
space:
mode:
Diffstat (limited to 'libavfilter/asrc_anullsrc.c')
-rw-r--r--libavfilter/asrc_anullsrc.c14
1 files changed, 6 insertions, 8 deletions
diff --git a/libavfilter/asrc_anullsrc.c b/libavfilter/asrc_anullsrc.c
index 43e9a7c9ab..e606ad9e0a 100644
--- a/libavfilter/asrc_anullsrc.c
+++ b/libavfilter/asrc_anullsrc.c
@@ -102,17 +102,15 @@ static int config_props(AVFilterLink *outlink)
static int request_frame(AVFilterLink *outlink)
{
ANullContext *null = outlink->src->priv;
- AVFilterBufferRef *samplesref;
+ AVFrame *samplesref;
- samplesref =
- ff_get_audio_buffer(outlink, AV_PERM_WRITE, null->nb_samples);
+ samplesref = ff_get_audio_buffer(outlink, null->nb_samples);
samplesref->pts = null->pts;
- samplesref->pos = -1;
- samplesref->audio->channel_layout = null->channel_layout;
- samplesref->audio->sample_rate = outlink->sample_rate;
+ samplesref->channel_layout = null->channel_layout;
+ samplesref->sample_rate = outlink->sample_rate;
- ff_filter_frame(outlink, avfilter_ref_buffer(samplesref, ~0));
- avfilter_unref_buffer(samplesref);
+ ff_filter_frame(outlink, av_frame_clone(samplesref));
+ av_frame_free(&samplesref);
null->pts += null->nb_samples;
return 0;