Gstreamer 源与接收器

Gstreamer source vs sink

我对汇元素和源元素的概念感到困惑。 直觉上,我希望源是我们从中获取数据的东西,汇是我们放置过程结果的地方。 在 Gstreamer 教程 2 中,这似乎是正确的:https://gstreamer.freedesktop.org/documentation/tutorials/basic/images/figure-1.png 但是当我在看教程3的时候,定义好像是相反的:https://gstreamer.freedesktop.org/documentation/tutorials/basic/images/filter-element.png 我不确定为什么第二张图片中的过滤器元素包含左侧的 sink 元素和右侧的 src 元素,而不是相反的元素。我的意思是,我希望输出被发送到接收器而不是源。是因为我们是从“外面”看的吗?也就是说,过滤器的输出是我们(以及管道中的下一个元素)的来源,尽管在非 gstreamer 术语中,它可以被视为过滤器内部的接收器。这是正确的吗?

第二张图片不是管道中的元素,而是单个元素上的填充。在第一个上你看到了一个完整的管道,但你已经想通了。

在第二个上你看到了一个单一的元素,它是垫子。该元件有两个焊盘。左边的是接收器垫,数据进入那里并被元素消耗。在右侧有一个源垫,该元素将 生成 数据并将其推送到该垫(因此它在某种程度上是一个数据源)。

treat is 作为一个词汇。命名当然可以争论,但这是大家一致同意的。