Chinaunix首页 | 论坛 | 博客
  • 博客访问: 57976
  • 博文数量: 9
  • 博客积分: 226
  • 博客等级: 二等列兵
  • 技术积分: 131
  • 用 户 组: 普通用户
  • 注册时间: 2012-08-22 22:43
文章分类

全部博文(9)

文章存档

2013年(2)

2012年(7)

我的朋友

分类: 嵌入式

2012-09-05 13:41:27

                                    Gstreamer 提供的各种工具

上一篇文章详细的讲解了 gst-launch命令,现在开始讲解gst-inspect和 gst-typefind命令。

gstreamer 使用的插件机制,允许系统提供者更新插件而不影响应用程序,因此我在跟客户交流的时候都强调不要直接包

含插件提供的头文件,这会导致你的应用程序跟具体的 插件绑定。gstreamer所有的插件都有统一的格式,因此你的应用

程序只需要包含gstreamer 提供的一些标准的头文件即可。但是客户经常会问我:“那我该如何查看各个插件提供的详细

功能呢? 例如插件A提供了什么样的property, 提供了哪些signal? 支持哪些caps?”答案就是用gst-inspect命令。


gst-inspect

gst-inspect   用来查看Plugin和Elements的接口信息,例如在用gst-launch命令的时候,你可能需要查看property的name,

或者在写 基于gstreamer框架的应用程序的时候,你也需要用gst-inspect来查看property, signal, caps等等,甚至你在开发

自己的插件的时候不知道应该创建什么样的pad_templete,这些时候你都可以借助 gst-inspect命令。


Synopsis

gst-inspect [OPTION...] [PLUGIN|ELEMENT]


Options
gst-inspect accepts the following arguments and options:

PLUGIN

Name of a plugin.  一般来说你肯定不记得plugin name,不过gstreamer插件在Linux环境下以so的形式存放,因此你可


以直接将该so的名字作为gst-inspect的参数就好了,例 如:gst-inspect libgsttta.so. 将so的文件名前面的libgst和.so


去掉就是plugin 的名字。libgsttta.so对用的plugin 名字是tta。

ELEMENT

Name of an element. 例如qtdemux, 一般来说你也很难记住element的名字,但是你知道你想要的功能,例如demux,


这个时候只需要执行 gst-inspect | grep demux. gst-inspect如果不带任何参数,会将系统当前所有的插件和elemeent


的信息列举出来,这时再grep你想要的插件就好了。


gst-inspect不带任何参数的时候,输出的格式如下:


Plugin Name:   Element Name: Descriptions


例如:

avi: avidemux: Avi demuxer


--help

Print help synopsis and available FLAGS


-a, --print-all


打 印出所有的plugin和element的信息,上面说如果gst-inspect不带任何参数也会打印出所有的信息,不过这些信息


仅仅是一个简单的列 表,而gst-inspect -a将会打印非常详细的信息。自己试验下就知道了。我只用过一次-a参数,


就是在自己写插件的时候不知道该定义什么样的caps,这个时候用gst- inspect -a 然后用grep命令去检索各种Caps.


--print-plugin-auto-install-info
--gst-debug-mask=FLAGS
--gst-mask=FLAGS
--gst-plugin-spew
这四个参数,我做完一个完整的量产过的项目也没用上,因此就不做介绍;

--gst-plugin-path=PATH
添 加插件的搜索路径,多个路径用冒号分开;

gst-inspect element输出的格式如下:

Factory Details    //typefinder在根据caps查找对应的element的时候会参考这一项

Plugin Details  //

Object Hierarchy  //

...

Pad Templates  //在你开发自己平台的gstramer插件的时候,可以从这里抄caps

...

Element Flags:

...

Element Implementations:  //列出来该element重写了哪些方法

...

Pads:  //列举该element有哪些pad

...

Element Properties //列举出该element所有的properties

...

Element Signals   //列举出该element所有的signal.


至 此gst-inspect命令介绍这么多了。

gst-typefind
Find the file corresponding MIME type,你可以用这个工具帮你判断文件的类型,然后根据文类型编写caps信息。

关于gstreamer提供的工具,目前就写这 么多,下一篇介绍几个环境变量






阅读(2300) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~