History

avfilter/vf_chromakey: Use formats list instead of query function

In this case it also allows to avoid a runtime check to which filter an AVFilterContext belongs to.

Andreas Rheinhardt committed 5 years ago

Commit 17e44e41 parent a4722a41 file · +3 −11Browse files

Unified · Split

libavfilter/vf_chromakey.c+3−11
@@ -301,9 +301,7 @@ static av_cold int config_output(AVFilterLink *outlink) · 300 unmodified lines
301301 return 0;
302302 }
303303
304−static av_cold int query_formats(AVFilterContext *avctx)
305−{
306− static const enum AVPixelFormat pixel_fmts[] = {
304+static const enum AVPixelFormat chromakey_fmts[] = {
307305 AV_PIX_FMT_YUVA420P,
308306 AV_PIX_FMT_YUVA422P,
309307 AV_PIX_FMT_YUVA444P,
@@ -332,12 +330,6 @@ static av_cold int query_formats(AVFilterContext *avctx) · 22 unmodified lines
332330 AV_PIX_FMT_YUVA420P16, AV_PIX_FMT_YUVA422P16, AV_PIX_FMT_YUVA444P16,
333331 AV_PIX_FMT_NONE
334332 };
335− const enum AVPixelFormat *pix_fmts;
336−
337− pix_fmts = !strcmp(avctx->filter->name, "chromahold") ? hold_pixel_fmts : pixel_fmts;
338−
339− return ff_set_common_formats_from_list(avctx, pix_fmts);
340−}
341333
342334 static av_cold int config_input(AVFilterLink *inlink)
343335 {
@@ -401,7 +393,7 @@ const AVFilter ff_vf_chromakey = { · 57 unmodified lines
401393 .priv_class = &chromakey_class,
402394 FILTER_INPUTS(chromakey_inputs),
403395 FILTER_OUTPUTS(chromakey_outputs),
404− FILTER_QUERY_FUNC(query_formats),
396+ FILTER_PIXFMTS_ARRAY(chromakey_fmts),
405397 .flags = AVFILTER_FLAG_SUPPORT_TIMELINE_GENERIC | AVFILTER_FLAG_SLICE_THREADS,
406398 .process_command = process_command,
407399 };
@@ -441,7 +433,7 @@ const AVFilter ff_vf_chromahold = { · 33 unmodified lines
441433 .priv_class = &chromahold_class,
442434 FILTER_INPUTS(chromahold_inputs),
443435 FILTER_OUTPUTS(chromahold_outputs),
444− FILTER_QUERY_FUNC(query_formats),
436+ FILTER_PIXFMTS_ARRAY(hold_pixel_fmts),
445437 .flags = AVFILTER_FLAG_SUPPORT_TIMELINE_GENERIC | AVFILTER_FLAG_SLICE_THREADS,
446438 .process_command = process_command,
447439 };

Keyboard shortcuts

General

Show keyboard shortcuts
?
Focus the current search
/

Issues and pull requests

Open filters
f

Issues, pull requests and Inbox

Select next item
j↓
Select previous item
k↑
Open selected item
Enter
Dismiss filters or clear selection
Esc

Repository code

Go to file
t