如何改变gstreamer自动音频接收器、自动视频接收器等的行为



gstreamer有autoaudiosk、autovideosink、autoaudiosrc、autovideosrc。

当有多个源或汇与匹配时,这是如何工作的

例如:windows上的视频接收器可以是opengl或directx、

gstreamer如何决定使用哪一个?

有没有可能改变这一点?

gstreamer如何决定使用哪一个?

GStreamer有一个非常通用的自动拖拽机制,这样它就可以做正确的事情。文档非常简洁,但让我们针对autovideosink案例进行讨论。

在第一步中,自动插入将尝试过滤掉系统上的相关元素:例如,如果decodebin元素的输入是H264流,则它将只找到在其汇点上宣传video/xh264上限的元素。在autovideosink的情况下,它将过滤所有已添加显式"0"的元素;水槽";以及";视频";标签来查找相关元素。

在第二步中,它仍然需要从我们刚刚收集的元素集中选择最佳匹配。为此,GStreamer选择了";等级";。插件有一个默认等级,但您可以通过编程方式对其进行修改(如何做到这一点已经在其他地方得到了答案(。

注意:一些元素(如decodebin(还提供了额外的API,用于更细粒度的控制。

有没有可能改变这一点?

所以简单的答案是:通过修改插件排名。

同样值得注意的是,应用程序开发人员通常会选择一个给定的接收器(例如glimagesink(,并通过配置该元素的属性来针对这种情况进行优化。

最新更新