在上周经历了最艰难的时光,试图在Raspberry PI上让gst-omx插件与gstreamer一起使用。

我想知道这里是否有人做过并且可以向我展示如何?

我已经安装了Wheezy,因为git://git.collabora.co.uk/git/user/gkiagia/gst-omx0.10-debian.git需要gstreamer的测试版本。

Gstreamer使用常规插件在树莓派上运行良好,因此没有硬件加速。

一旦我安装了gst-omx,它就会出现在gstreamer的黑名单中,并且由于我的Linux知识非常有限,所以无法进行调试。

评论

您能详细说明一下吗?什么不起作用?

另外,您能告诉我们您需要什么吗?也许有更好的选择可以使用。

我需要的只是一个命令行视频/音频播放器。这样我就可以在代码内部调用代码并将其指向媒体文件,让其播放然后返回到代码。我认为我已经使它复杂化了,我应该尝试将hello_video与hello_audio示例合并。我认为gstreamer会更容易,因为它是一个框架,而不是学习如何编码OpenIL,但是我认为框架还不存在。

我认为您需要查看的是这个问题! raspberrypi.stackexchange.com/questions/100/…

omxplayer的问题在于,加载视频需要花费很长时间,而hello_video示例几乎在瞬间完成了加载。如果要使用omx播放器,我将需要一个接一个地连续快速播放许多视频,而文件之间的空白会很大,无法正常工作。这就是为什么我要使用gstreamer或以某种方式合并hello_audio和hello_video的原因。因为我自己无法对视频进行编码,因此始终使用相同的编解码器。

#1 楼

Raspberry Pi论坛帖子中的详细信息

如有必要,获取并安装rpi-update

sudo wget http://goo.gl/1BOfJ -O /usr/bin/rpi-update && sudo chmod +x /usr/bin/rpi-update
sudo apt-get -y install git-core


升级到最新的软件包和固件

sudo apt-get update
sudo apt-get upgrade -y
sudo rpi-update
sudo reboot


从raspberry分支获取gst-omx源文件

cd $HOME 
git clone -b 0.10 git://anongit.freedesktop.org/gstreamer/gst-omx


安装Gstreamer软件包以及构建所需的软件包omx

sudo apt-get install -y autoconf gtk-doc-tools libtool 


自动生成配置脚本,配置,制作和安装gst-omx

cd gst-omx
./autogen.sh --noconfigure
./configure --prefix=/home/pi/omx
make 
make install


设置pi用户的gst-omx环境

cp  omx/gstomx-raspberry.conf $HOME/omx/lib/gstreamer-0.10/gstomx.conf
cd $HOME
echo -e \n# Gstreamer environment >> .profile
echo export GST_PLUGIN_PATH=$HOME/omx/lib/gstreamer-0.10/ >> .profile
echo export GST_OMX_CONFIG_DIR=$HOME/omx/lib/gstreamer-0.10/ >> .profile
echo export LD_LIBRARY_PATH=$HOME/omx/lib/gstreamer-0.10/ >> .profile
. ./.profile


安装GStreamer工具

sudo apt-get install gstreamer0.10-tools


验证gst -omx已正确安装。

如果具有以下命令,则应显示这些插件:

> gst-inspect-0.10 | grep omx
openmax  omxmpeg4videodec: OpenMAX MPEG4 Video Decoder
openmax  omxh264dec: OpenMAX H.264 Video Decoder


omxmpeg插件的问题- ins被列入黑名单

omx和gstreamer-plugins-bad冲突,因此以下内容被清除了黑名单:

sudo aptitude remove libgstreamer-plugins-bad0.10-0


启用omxh264enc pl用于硬件h.264编码的ugin

到目前为止,该插件似乎已损坏,但是如何启用它。
将以下内容添加到$ GST_OMX_CONFIG_DIR / gstomx.conf

[omxh264enc]
type-name=GstOMXH264Enc
core-name=/opt/vc/lib/libopenmaxil.so
component-name=OMX.broadcom.video_encode
rank=256
in-port-index=200
out-port-index=201
hacks=no-empty-eos-buffer;no-component-role


评论


根据一个匿名用户的说法,git分支名称已更改,因此在从raspberry分支获取gst-omx源下,git clone -b raspberry应该是git clone -b 0.10。我没有证实这一点。

–金锁♦
13年7月21日在7:51

如何使用gstreamer从CSI摄像头模块向nginx-rtmp发送视频?

– WillyWonka
13-10-29在15:16



#2 楼

将此回购行添加到/etc/apt/sources.list

deb http://vontaene.de/raspbian-updates/中。 main


然后.....

sudo apt-get update
sudo apt-get install gstreamer1.0


该第三方存储库由Pi论坛的成员托管。他们会编译gst-omx项目的最新版本并在此处发布文件。

您可以使用以下命令检查它是否识别Pi的硬件​​功能

gst-inspect-1.0 | grep omx




评论


到目前为止,这是最快,最简单的方法。像下面Unkle George的答案中所述的那样进行编译对我来说不起作用,因为某些缺陷已过时。

–PTS
2014年3月19日14:58



#3 楼

截至2015年4月,Raspbian存储库包括GStreamer 1.2和OpenMAX插件,因此最简单的方法是ppumkin的答案,但无需编辑/etc/apt/sources.list

sudo apt-get update
sudo apt-get install gstreamer1.0


然后检查:

gst-inspect-1.0 | grep omx


评论


我在存储库中没有gstreamer1.0。如何添加?

– shrx
2015年5月3日7:44



没有gstreamer1.0软件包,但apt-get应该将其用作正则表达式并下载所有gstreamer1.0 ...软件包。 apt-cache搜索^ gstreamer1.0是否显示任何软件包?

– M. Rubio-Roy
2015年5月4日,11:58

它确实找到了与gstreamer相关的软件包,我只是认为应该有一个包含所有基本gstreamer软件包的实际gstreamer1.0 deb软件包。

– shrx
2015年5月4日在12:02