创建应用程序
文章平均质量分 86
在这些章节中,我们将讨论 GStreamer 的基本概念和最常用的对象,例如element、pads和buffers。 我们将使用这些对象的可视化表示,以便我们可以可视化您稍后将学习构建的更复杂的pipeline。 您将初步了解 GStreamer API,它应该足以构建基本应用程序。
假如我捕获了你
Never Give Up
展开
-
Gstreamer- 衬垫和处理能力 (Pads and capabilities)
pads(衬垫) 和 capabilities(处理能力)正如我们在 Elements 中看到的,pads 是element与外界的接口。从一个element的source pad 到另一个element的sink pad的数据流。element可以处理的特定媒体类型将由pads的处理能力暴露。我们将在本章后面详细讨论功能(请参阅 pad 的功能)。Padspad 类型由两个属性定义:方向和可用性。正如我们之前提到的,GStreamer 定义了两种pad方向:source pads 和 sink pa翻译 2021-06-29 14:55:31 · 982 阅读 · 0 评论 -
Gstreamer-缓冲区和事件(Buffers and Events)
缓冲区和事件流经pipeline的数据由缓冲区和事件的组合构成。缓冲区包含实际的媒体数据。事件包含控制信息 ,例如seeking 信息和end-of-stream通知。在pipeline运行时,所有这些都是自动流经pipeline。本章主要是为了向您解释这个概念;你不需要为此做任何事情。缓冲区缓冲区包含将流经您创建的pipeline的数据。source element通常会创建一个新的缓冲区,并将其通过 pad 传递到链中的下一个element 。使用 GStreamer 基础架构创建媒体pipel翻译 2021-06-29 13:39:21 · 598 阅读 · 0 评论 -
Gstreamer- 消息总线(bus)
消息总线(Bus)消息总线是一个简单的系统,负责将消息从流线程转发到其自己的线程上下文中的应用程序。总线的优点是应用程序不需要知道线程来使用 GStreamer,即使 GStreamer 本身是大量线程的。默认情况下,每个pipeline都包含一个消息总线,因此应用程序不需要创建消息总线或任何东西。应用程序唯一应该做的就是在消息总线上设置一个消息处理程序,这类似于对象的信号处理程序。当主循环运行时,消息总线会定期检查新消息,当有消息可用时会调用回调。消息总线的使用方法有两种不同的方式使用消息总线:翻译 2021-06-29 13:35:10 · 1855 阅读 · 0 评论 -
Gstreamer - 箱柜(Bins)
Binsbin 是一个容器型的 element。 您可以将element添加到 bin。 由于 bin 本身就是一个element,因此可以以与任何其他element相同的方式处理 bin。 因此,整个前一章的内容(element)也适用于 bin。什么是binsBins允许您将一组已链接element组合成一个逻辑element。 您不再处理单个element,而只处理一个element,即 bin。 我们将看到,当您要构建复杂的pipeline时,这非常强大,因为它允许您将pipeline分解为更翻译 2021-06-29 13:16:56 · 994 阅读 · 0 评论 -
Gstreamer- 元素(Elements)
ElementsGStreamer 中对于程序员开发者来说最重要的对象是 GstElement 。Elements 是多媒体 pipeline 的基本构建块。您使用的所有不同的高级组件都源自 GstElement。每个解码器、编码器、解复用器、视频或音频输出实际上都是一个 GstElement什么是elements?对于程序员开发者来说,elements 最好被可视化为黑盒。一方面,你可能向其输入一些东西,elements 用它做一些事情,从另一边会输出其他东西。例如,对于解码器element,您输入翻译 2021-06-29 13:06:38 · 1243 阅读 · 0 评论