1
0
mirror of https://github.com/FFmpeg/FFmpeg.git synced 2024-11-26 19:01:44 +02:00

avfilter/vf_eq: add support for alpha channel

Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
This commit is contained in:
the.real.laplace@gmail.com 2021-10-18 14:29:48 +03:00 committed by Michael Niedermayer
parent 2aa343bb6f
commit c13a2f701d

View File

@ -236,9 +236,9 @@ static const enum AVPixelFormat pixel_fmts_eq[] = {
AV_PIX_FMT_GRAY8, AV_PIX_FMT_GRAY8,
AV_PIX_FMT_YUV410P, AV_PIX_FMT_YUV410P,
AV_PIX_FMT_YUV411P, AV_PIX_FMT_YUV411P,
AV_PIX_FMT_YUV420P, AV_PIX_FMT_YUV420P, AV_PIX_FMT_YUVA420P,
AV_PIX_FMT_YUV422P, AV_PIX_FMT_YUV422P, AV_PIX_FMT_YUVA422P,
AV_PIX_FMT_YUV444P, AV_PIX_FMT_YUV444P, AV_PIX_FMT_YUVA444P,
AV_PIX_FMT_NONE AV_PIX_FMT_NONE
}; };
@ -281,12 +281,13 @@ static int filter_frame(AVFilterLink *inlink, AVFrame *in)
h = AV_CEIL_RSHIFT(h, desc->log2_chroma_h); h = AV_CEIL_RSHIFT(h, desc->log2_chroma_h);
} }
if (eq->param[i].adjust) if (i == 3 || !eq->param[i].adjust)
eq->param[i].adjust(&eq->param[i], out->data[i], out->linesize[i],
in->data[i], in->linesize[i], w, h);
else
av_image_copy_plane(out->data[i], out->linesize[i], av_image_copy_plane(out->data[i], out->linesize[i],
in->data[i], in->linesize[i], w, h); in->data[i], in->linesize[i], w, h);
else
eq->param[i].adjust(&eq->param[i], out->data[i], out->linesize[i],
in->data[i], in->linesize[i], w, h);
} }
av_frame_free(&in); av_frame_free(&in);