ffmpeg定制缓冲区接收器过滤器

时间:2018-11-25 07:40:59

标签: linux ffmpeg

环境

  • Ubuntu 18.04
  • C ++
  • ffmpeg 3.4(git主版)
  • ffmpeg通过C ++ API用作共享库(InProc)

用例

  • 每个this link我正在尝试使用'avfilter_graph_ *'API创建ffmpeg图
  • 我希望将图形输出发送到我的自定义代码(托管应用程序的一部分)

考虑的实现

  • [A]实现一个自定义接收器过滤器(libavfilter的一部分)以实现我的自定义逻辑
  • [B]实现一个自定义接收器过滤器,以获取输出样本并将其发送到我的应用程序(类似于DShow SampleGrabber)

眼前的问题

使用上述任何一种方法都必须修改ffmpeg代码,这会在支持将来的ffmpeg版本时增加开销

我想知道对于外部(托管)应用程序,是否有任何简单的方法来获取图形输出(带有有效负载的最小复制量)。

有什么方法可以使用自定义的AVIOContext来实现?如何构造连接到输出AVIOContext的图?我如何创建在libavfilter外部模块中实现的自定义过滤器,并使用'AVFilterContext'将其与图形相关联?

0 个答案:

没有答案