diff options
Diffstat (limited to 'libavfilter/asrc_anullsrc.c')
-rw-r--r-- | libavfilter/asrc_anullsrc.c | 14 |
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; |