摘要:
1)概述 管道的数据流由一组缓冲区和事件组成,缓冲区包括实际的管道数据,事件包括控制信息,如寻找信息和流的终止信号。所有这些数据流在运行的时候自动的流过管道。 2) 缓冲区(Buffers) 缓冲区包含了你创建的管道里的数据流。通常一个source element会创建一个新的缓冲区,同时element还将会把缓冲区的数据传递给下一个element。当使用GStreamer底层构造来创建一个... 阅读全文
摘要:
一:概述 如我们在Elements一章中看到的那样,Pads是element对外的接口。数据流从一个element的source pad到另一个element的sink pad。pads的功能(capabilities)决定了一个element所能处理的媒体类型。 一个pad的类型由2个特性决定:它的数据导向(direction)以及它的时效性(availability)。正如我们先前提到 的... 阅读全文
摘要:
1)概述 BUS(总线) 是一个简单的系统,它采用自己的线程机制将一个管道线程的消息分发到一个应用程序当中。总线的优势是:当使用GStreamer的时候,应用程序不需要线程识别,即便GStreamer已经被加载了多个线程。 每一个管道默认包含一个总线,所以应用程序不需要再创建总线。应用程序只需要在总线上设置一个类似于对象的信号处理器的消息处理器。当主循环运行的时候,总线将会轮询这个消息处理器是... 阅读全文
摘要:
1)概述 Bins是一种容器element。你可以往Bins中添加element。由于Bins本身也是一种element,所以你可以像普通element一样 操作Bins。因此,先前关element的内容同样可以应用于Bins。 Bins允许你将一组有链接的element组合成一个大的逻辑element。你不再需要对单个element进行操作,而仅仅操作Bins。当你在构建一个复杂的管道时,你... 阅读全文