摘要:
mips-openwrt-linux-gcc: warning: environment variable 'STAGING_DIR' not defined mips-openwrt-linux-gcc: warning: environment variable 'STAGING_DIR' not defined mips-openwrt-linux-gcc: warning:... 阅读全文
摘要:
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。当你在构建一个复杂的管道时,你... 阅读全文
摘要:
在前面的部分,我们简要介绍过 GstElementFactory 可以用来创建一个element的实例,但是GstElementFactory不仅仅只能做这件事,GstElementFactory作为在 GStreamer 注册系统中的一个基本类型,它可以描述所有的插件(plugins)以及由GStreamer创建的element。这意味着GstElementFactory可以应用于一些自动ele... 阅读全文
摘要:
对程序员来说,GStreamer 中最重要的一个概念就是 GstElement 对象。该对象是构建一个媒体管道的基本块。所有上层(high-level)部件都源自GstElement对象。任何一个解码器编码器、分离器、视频/音频输出部件实际上都是一个 GstElement对象。对程序员来说,elem... 阅读全文
摘要:
GStreamer 是一个非常强大而且通用的流媒体应用程序框架。 GStreamer所具备的很多优点来源于其框架的模块化: GStreamer能够无缝的合并新的插件。 但是, 由于追求模块化和高效率, 使得GStreamer在整个框架上变的复杂, 也同时因为复杂度的提高, 使得开发一个新的应用程序显... 阅读全文
摘要:
FLAC: ( Free Lossless Audio Codec)无损音频压缩编码。 其特点是无损压缩。不同于其他有损压缩编码如MP3 及AAC,它不会破坏任何原有的音频资讯,也就是说音频以FLAC编码压缩后不会丢失任何信息,将FLAC文件还原为WAV文件后,与压缩前的WAV文件内容相同。 结构: 4字节头:“flaC”,用于用于区分flac数据流 特点: 1)无损失压缩:被编码的音... 阅读全文
摘要:
#include #include #include #include #include //#include static gint repeats = 2; static gint max_size = 8; static gboolean verbose... 阅读全文