为简化起见,我们假设我有一个非常简单的管道,例如:
videotestsrc -> appsink
如何配置它以使用我开发的自定义分配器? (基于GstAllocator的实现已经完成,我的问题集中在管道配置上使用它。)
我正在Gstreamer 1.2上开发C ++应用程序。
谢谢, 即
答案 0 :(得分:1)
Pads使用GST_QUERY_ALLOCATION协商分配器。下游的sinkpad可以建议一个分配器,上游源板可以使用它或者使用它自己的分配器。
遗憾的是,没有内置方式(要设置的属性或要调用的方法)来配置GstPipeline,GstBin,GstElement或GstPad以使用提供的分配器。
您可以使用pad probe(最好在您的示例中的videotestsrc的srcpad上)修改通过那里的GST_QUERY_ALLOCATION,修改它以建议您的分配器到videotestsrc。根据源板的实现,在最好的情况下,您建议的分配器将用于该链接。