怎么编写并注册Gstreamer插件

7 篇文章 0 订阅

作者:敖滚

环境:debian linux 2.6.8 + Gstreamer0.10

 

1.1.            编写插件前的准备:

由于编写插件需要一定的格式,需要写一些固定 的函数和代码,所以为了方便,首先用cvs先从网上获取gstreamer插件的模板:

cvs -d:pserver:anoncvs@cvs.freedesktop.org/cvs/gstreamer login

CVS password: [ENTER]

cvs -z3 -d:pserver:anoncvs@cvs.freedesktop.org:/cvs/gstreamer co gst-template

获取成功后,在获取的文件夹gst-template/gst-template/gst-plugin/tools 目录下有一个shellmake_element,利用这个shell和目录gst-template/gst-plugin/src/下的gstplugin.*文件可以创建一个基本插件所需的代码,shell的使用方法如下:

./make_element <your plugin> ../src/ gstplugin

如果成功的话在当前目录下会出现两个c文件,名称为<your plugin>.c<your plugin>.h,然后根 据你的需要在这两个文件的基础上编写你的插件

1.2.            编写Makefile

gstreamer的源代码目录中拷贝shell文件:libtool到你编写的插件目录,然后按照下面的格式编写Makefile文件,<>中为自己填写的内容,根据不同的需要在此基础上修改,(注意:1.1中根据模板生成的插件代码是不能直接编译通过的,需要自己进行 一些修改):

 

CFLAGS=$(shell pkg-config --cflags gstreamer-0.10) -DGST_PACKAGE='"GStreamer"' -DGST_ORIGIN='"http://gstreamer.net"' -DVERSION='"0.0"' -DHAVE_USER_MTU -Wall -Wimplicit -g

ur plugin>.c

 

<your_plugin_name>.la: <your_plugin_name>.lo

        ./libtool gcc --mode=link -module -avoid-version\

        -rpath <your plugin directory>\

        -export-symbols-regex gst_plugin_desc \

        -o <your_plugin_name>.la \

        <your_plugin_name>.lo \

        $(pkg-config --libs gstreamer-0.10)

 

<your_plugin_name>.lo: <your_plugin_name>.c

        ./libtool --mode=compile gcc $(CFLAGS) -o <your_plugin_name>.lo -c <your_plugin_name>.c

 

.PHONY: install

 

 

install: <your_plugin_name>.la

        ./libtool --mode=install install <your_plugin_name>.la /usr/local/lib/gstreamer-0.10/

 

clean:

        rm -rf *.o *.lo *.a *.la .libs

 

1.3.            编译并注册

编写完 makefile 之后,执行 make;make install 命令,成功后执行 gst-inspect <your plugin name> 就可以查到自己编写
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值