diff options
author | James Almer <jamrial@gmail.com> | 2021-08-02 09:55:27 -0300 |
---|---|---|
committer | James Almer <jamrial@gmail.com> | 2021-08-03 18:41:31 -0300 |
commit | e0b84d10696c818e4c7bdc3314ba14cc3cedde29 (patch) | |
tree | 6d81a2ed25c579c7a153bcd569e915007bc63f59 /libavfilter/avfilter.c | |
parent | 8b83dad82512a6948b63408f964463b063ad24c9 (diff) | |
download | ffmpeg-e0b84d10696c818e4c7bdc3314ba14cc3cedde29.tar.gz |
avfilter/avfilter: use av_frame_copy() to copy frame data
Reviewed-by: Paul B Mahol <onemda@gmail.com>
Reviewed-by: Nicolas George <george@nsup.org>
Signed-off-by: James Almer <jamrial@gmail.com>
Diffstat (limited to 'libavfilter/avfilter.c')
-rw-r--r-- | libavfilter/avfilter.c | 19 |
1 files changed, 5 insertions, 14 deletions
diff --git a/libavfilter/avfilter.c b/libavfilter/avfilter.c index c04afc6639..87f04dfc57 100644 --- a/libavfilter/avfilter.c +++ b/libavfilter/avfilter.c @@ -25,8 +25,8 @@ #include "libavutil/channel_layout.h" #include "libavutil/common.h" #include "libavutil/eval.h" +#include "libavutil/frame.h" #include "libavutil/hwcontext.h" -#include "libavutil/imgutils.h" #include "libavutil/internal.h" #include "libavutil/opt.h" #include "libavutil/pixdesc.h" @@ -1446,19 +1446,10 @@ int ff_inlink_make_frame_writable(AVFilterLink *link, AVFrame **rframe) return ret; } - switch (link->type) { - case AVMEDIA_TYPE_VIDEO: - av_image_copy(out->data, out->linesize, (const uint8_t **)frame->data, frame->linesize, - frame->format, frame->width, frame->height); - break; - case AVMEDIA_TYPE_AUDIO: - av_samples_copy(out->extended_data, frame->extended_data, - 0, 0, frame->nb_samples, - frame->channels, - frame->format); - break; - default: - av_assert0(!"reached"); + ret = av_frame_copy(out, frame); + if (ret < 0) { + av_frame_free(&out); + return ret; } av_frame_free(&frame); |