ffmpeg以编程方式添加水印(叠加过滤器)

时间:2014-09-30 16:01:47

标签: video ffmpeg overlay watermark

我正在尝试在播放视频时在视频上实现水印。

我配置了三个过滤器,正如我在一些例子中看到的那样:

  1. 输入视频(INPUT 1)

    avfilter_graph_create_filter(&filt_src,avfilter_get_by_name("buffer"),"in", buffersrc_args, NULL,graph);
    
  2. Png叠加(INPUT 2)

    avfilter_graph_create_filter(&bufferovrlay_ctx,bufferovrlay, "overlay", argsStrOvrlay, NULL,graph);
    
  3. 输出视频(输出)

    avfilter_graph_create_filter(&filt_out, avfilter_get_by_name("ffbuffersink"),"out", NULL, buffersink_params, graph)
    
  4. 此时我不确定我是否正确设置了叠加过滤器的参数,因为我没有找到任何示例,但函数返回正常。

    创建过滤器后,我调用avfilter_graph_parse2(图形,"覆盖",输入和输出) 也没有返回任何错误。

    最后我打电话给avfilter_graph_config(graph, NULL);,我收到以下错误:

      

    -22(AVERROR_INVALIDDATA)

    我发现了很多例子,但总是使用命令行。你觉得我做错了什么?有人以编程方式提供示例吗?

0 个答案:

没有答案