lavd/lavfi: stop using avfilter_graph_create_filter() incorrectly

See previous commits for details.
This commit is contained in:
Anton Khirnov 2024-09-25 11:58:57 +02:00
parent 577708a70a
commit d3f76dbca1
1 changed files with 12 additions and 6 deletions

View File

@ -249,18 +249,24 @@ av_cold static int lavfi_read_header(AVFormatContext *avctx)
AV_SAMPLE_FMT_FLT, AV_SAMPLE_FMT_DBL, AV_SAMPLE_FMT_FLT, AV_SAMPLE_FMT_DBL,
}; };
ret = avfilter_graph_create_filter(&sink, abuffersink, sink = avfilter_graph_alloc_filter(lavfi->graph, abuffersink, inout->name);
inout->name, NULL, if (!sink) {
NULL, lavfi->graph); ret = AVERROR(ENOMEM);
if (ret >= 0) goto end;
ret = av_opt_set_bin(sink, "sample_fmts", (const uint8_t*)sample_fmts, }
sizeof(sample_fmts), AV_OPT_SEARCH_CHILDREN);
ret = av_opt_set_bin(sink, "sample_fmts", (const uint8_t*)sample_fmts,
sizeof(sample_fmts), AV_OPT_SEARCH_CHILDREN);
if (ret < 0) if (ret < 0)
goto end; goto end;
ret = av_opt_set_int(sink, "all_channel_counts", 1, ret = av_opt_set_int(sink, "all_channel_counts", 1,
AV_OPT_SEARCH_CHILDREN); AV_OPT_SEARCH_CHILDREN);
if (ret < 0) if (ret < 0)
goto end; goto end;
ret = avfilter_init_dict(sink, NULL);
if (ret < 0)
goto end;
} else { } else {
av_log(avctx, AV_LOG_ERROR, av_log(avctx, AV_LOG_ERROR,
"Output '%s' is not a video or audio output, not yet supported\n", inout->name); "Output '%s' is not a video or audio output, not yet supported\n", inout->name);