GStreamer中的自定义分配器

Custom allocator in GStreamer

本文关键字:分配器 自定义 GStreamer      更新时间:2023-10-16

为了简化,假设我有一个非常简单的管道,如:

videotestsrc -> appsink

我如何配置它来使用我开发的自定义分配器?(基于gstallocator的实现已经完成,我的问题集中在使用它的管道配置上)。

我正在Gstreamer 1.2上开发一个c++应用程序。

谢谢,e .

Pads使用GST_QUERY_ALLOCATION协商分配器。下游sinkpad可以建议一个分配器,上游源pad可以使用它,也可以使用它自己的分配器。

不幸的是,没有内置的方法(要设置的属性或要调用的方法)来配置GstPipeline, GstBin, GstElement或GstPad使用提供的分配器。

您可以使用pad探针(在您的示例中最好是在videotestsrc的srcpad上)来修改通过那里的GST_QUERY_ALLOCATION,修改它以将您的分配器建议给videotestsrc。根据源pad的实现,在最好的情况下,您建议的分配器将用于该链接。