summaryrefslogtreecommitdiff
path: root/libavfilter/src_buffer.c
diff options
context:
space:
mode:
Diffstat (limited to 'libavfilter/src_buffer.c')
-rw-r--r--libavfilter/src_buffer.c9
1 files changed, 4 insertions, 5 deletions
diff --git a/libavfilter/src_buffer.c b/libavfilter/src_buffer.c
index 33b3ec70cb..5aa0f990f5 100644
--- a/libavfilter/src_buffer.c
+++ b/libavfilter/src_buffer.c
@@ -279,11 +279,10 @@ static AVFilterBufferRef *copy_buffer_ref(AVFilterContext *ctx,
buf = ff_get_audio_buffer(outlink, AV_PERM_WRITE,
ref->audio->nb_samples);
channels = av_get_channel_layout_nb_channels(ref->audio->channel_layout);
- data_size = av_samples_get_buffer_size(NULL, channels,
- ref->audio->nb_samples,
- ref->format, 1);
- for (i = 0; i < FF_ARRAY_ELEMS(ref->buf->data) && ref->buf->data[i]; i++)
- memcpy(buf->buf->data[i], ref->buf->data[i], data_size);
+ av_samples_copy(buf->extended_data, ref->buf->extended_data,
+ 0, 0, ref->audio->nb_samples,
+ channels,
+ ref->format);
break;
default: