History

lavfi/buffersink: switch to query_func2()

Anton Khirnov committed 2 years ago

Commit 2fa142f1 parent b8bf2f41 file · +22 −18Browse files

Showing the changes to libavfilter (1 of 1 file). Show all

Unified · Split

libavfilter/buffersink.c+22−18
@@ -367,26 +367,28 @@ int av_buffersink_get_ch_layout(const AVFilterContext *ctx, AVChannelLayout *out · 366 unmodified lines
367367 #define NB_ITEMS(list) (list ## _size / sizeof(*list))
368368 #endif
369369
370−static int vsink_query_formats(AVFilterContext *ctx)
370+static int vsink_query_formats(const AVFilterContext *ctx,
371+ AVFilterFormatsConfig **cfg_in,
372+ AVFilterFormatsConfig **cfg_out)
371373 {
372− BufferSinkContext *buf = ctx->priv;
374+ const BufferSinkContext *buf = ctx->priv;
373375 int ret;
374376
375377 #if FF_API_BUFFERSINK_OPTS
376378 if (buf->nb_pixel_formats || buf->nb_colorspaces || buf->nb_colorranges) {
377379 #endif
378380 if (buf->nb_pixel_formats) {
379− ret = ff_set_common_formats_from_list(ctx, buf->pixel_formats);
381+ ret = ff_set_common_formats_from_list2(ctx, cfg_in, cfg_out, buf->pixel_formats);
380382 if (ret < 0)
381383 return ret;
382384 }
383385 if (buf->nb_colorspaces) {
384− ret = ff_set_common_color_spaces_from_list(ctx, buf->colorspaces);
386+ ret = ff_set_common_color_spaces_from_list2(ctx, cfg_in, cfg_out, buf->colorspaces);
385387 if (ret < 0)
386388 return ret;
387389 }
388390 if (buf->nb_colorranges) {
389− ret = ff_set_common_color_ranges_from_list(ctx, buf->colorranges);
391+ ret = ff_set_common_color_ranges_from_list2(ctx, cfg_in, cfg_out, buf->colorranges);
390392 if (ret < 0)
391393 return ret;
392394 }
@@ -398,7 +400,7 @@ static int vsink_query_formats(AVFilterContext *ctx) · 5 unmodified lines
398400 for (i = 0; i < NB_ITEMS(buf->pixel_fmts); i++)
399401 if ((ret = ff_add_format(&formats, buf->pixel_fmts[i])) < 0)
400402 return ret;
401− if ((ret = ff_set_common_formats(ctx, formats)) < 0)
403+ if ((ret = ff_set_common_formats2(ctx, cfg_in, cfg_out, formats)) < 0)
402404 return ret;
403405 }
404406
@@ -407,7 +409,7 @@ static int vsink_query_formats(AVFilterContext *ctx) · 2 unmodified lines
407409 for (i = 0; i < NB_ITEMS(buf->color_spaces); i++)
408410 if ((ret = ff_add_format(&formats, buf->color_spaces[i])) < 0)
409411 return ret;
410− if ((ret = ff_set_common_color_spaces(ctx, formats)) < 0)
412+ if ((ret = ff_set_common_color_spaces2(ctx, cfg_in, cfg_out, formats)) < 0)
411413 return ret;
412414 }
413415
@@ -416,7 +418,7 @@ static int vsink_query_formats(AVFilterContext *ctx) · 2 unmodified lines
416418 for (i = 0; i < NB_ITEMS(buf->color_ranges); i++)
417419 if ((ret = ff_add_format(&formats, buf->color_ranges[i])) < 0)
418420 return ret;
419− if ((ret = ff_set_common_color_ranges(ctx, formats)) < 0)
421+ if ((ret = ff_set_common_color_ranges2(ctx, cfg_in, cfg_out, formats)) < 0)
420422 return ret;
421423 }
422424 }
@@ -425,26 +427,28 @@ static int vsink_query_formats(AVFilterContext *ctx) · 2 unmodified lines
425427 return 0;
426428 }
427429
428−static int asink_query_formats(AVFilterContext *ctx)
430+static int asink_query_formats(const AVFilterContext *ctx,
431+ AVFilterFormatsConfig **cfg_in,
432+ AVFilterFormatsConfig **cfg_out)
429433 {
430− BufferSinkContext *buf = ctx->priv;
434+ const BufferSinkContext *buf = ctx->priv;
431435 int ret;
432436
433437 #if FF_API_BUFFERSINK_OPTS
434438 if (buf->nb_sample_formats || buf->nb_samplerates || buf->nb_channel_layouts) {
435439 #endif
436440 if (buf->nb_sample_formats) {
437− ret = ff_set_common_formats_from_list(ctx, buf->sample_formats);
441+ ret = ff_set_common_formats_from_list2(ctx, cfg_in, cfg_out, buf->sample_formats);
438442 if (ret < 0)
439443 return ret;
440444 }
441445 if (buf->nb_samplerates) {
442− ret = ff_set_common_samplerates_from_list(ctx, buf->samplerates);
446+ ret = ff_set_common_samplerates_from_list2(ctx, cfg_in, cfg_out, buf->samplerates);
443447 if (ret < 0)
444448 return ret;
445449 }
446450 if (buf->nb_channel_layouts) {
447− ret = ff_set_common_channel_layouts_from_list(ctx, buf->channel_layouts);
451+ ret = ff_set_common_channel_layouts_from_list2(ctx, cfg_in, cfg_out, buf->channel_layouts);
448452 if (ret < 0)
449453 return ret;
450454 }
@@ -457,12 +461,12 @@ static int asink_query_formats(AVFilterContext *ctx) · 6 unmodified lines
457461 for (i = 0; i < NB_ITEMS(buf->sample_fmts); i++)
458462 if ((ret = ff_add_format(&formats, buf->sample_fmts[i])) < 0)
459463 return ret;
460− if ((ret = ff_set_common_formats(ctx, formats)) < 0)
464+ if ((ret = ff_set_common_formats2(ctx, cfg_in, cfg_out, formats)) < 0)
461465 return ret;
462466 }
463467
464468 if (buf->nb_channel_layouts) {
465− ret = ff_set_common_channel_layouts_from_list(ctx, buf->channel_layouts);
469+ ret = ff_set_common_channel_layouts_from_list2(ctx, cfg_in, cfg_out, buf->channel_layouts);
466470 if (ret < 0)
467471 return ret;
468472 }
@@ -472,7 +476,7 @@ static int asink_query_formats(AVFilterContext *ctx) · 3 unmodified lines
472476 for (i = 0; i < NB_ITEMS(buf->sample_rates); i++)
473477 if ((ret = ff_add_format(&formats, buf->sample_rates[i])) < 0)
474478 return ret;
475− if ((ret = ff_set_common_samplerates(ctx, formats)) < 0)
479+ if ((ret = ff_set_common_samplerates2(ctx, cfg_in, cfg_out, formats)) < 0)
476480 return ret;
477481 }
478482 }
@@ -533,7 +537,7 @@ const AVFilter ff_vsink_buffer = { · 54 unmodified lines
533537 .activate = activate,
534538 FILTER_INPUTS(ff_video_default_filterpad),
535539 .outputs = NULL,
536− FILTER_QUERY_FUNC(vsink_query_formats),
540+ FILTER_QUERY_FUNC2(vsink_query_formats),
537541 };
538542
539543 static const AVFilterPad inputs_audio[] = {
@@ -554,5 +558,5 @@ const AVFilter ff_asink_abuffer = { · 14 unmodified lines
554558 .activate = activate,
555559 FILTER_INPUTS(inputs_audio),
556560 .outputs = NULL,
557− FILTER_QUERY_FUNC(asink_query_formats),
561+ FILTER_QUERY_FUNC2(asink_query_formats),
558562 };

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