gstreamer 无组件问题修复

近期需要安装gstreamer,用到的是下面的安装命令

sudo apt-get install libgstreamer1.0-0 gstreamer1.0-plugins-base gstreamer1.0-plugins-good gstreamer1.0-plugins-bad gstreamer1.0-plugins-ugly gstreamer1.0-libav gstreamer1.0-doc gstreamer1.0-tools gstreamer1.0-x gstreamer1.0-alsa gstreamer1.0-gl gstreamer1.0-gtk3 gstreamer1.0-qt5 gstreamer1.0-pulseaudio

安装过程没有任何报错,但在运行官方Basic tutorial1的时候没有运行出任何结果。按理来说运行以后会播放一个视频,但我这里却什么都没有,运行后过几秒没动静,然后程序就结束了。

按照网上教程测试了一些基本命令,试图打开摄像头、播放音频、播放视频,然而全都得到报错。

gst-launch-1.0 v4l2src ! autovideosink

错误: 无法创建管道: 无组件“v4l2src”。 

gst-launch-1.0 filesrc location=~/Music/CloudMusic/Entropy.mp3 ! decodebin ! audioconvert ! audioresample ! autoaudiosink

警告: 错误管道: 无组件“osssink”

gst-launch-1.0 filesrc location=/home/frost/tut1.webm ! decodebin name=decoder decoder. ! queue ! videoconvert ! xvimagesink

警告: 错误管道: 无组件“xvimagesink”

官网查得,以上所有缺少的组件都来自 gstreamer1.0-plugins-good,用以下命令查已安装的包,会发现gstreamer1.0-plugins-good确实是有的。

apt list --installed | grep gstreamer*

然而奇怪的是,用上面apt list命令看到gstreamer各组件的版本号是1.14.5

但用下面这个命令,得到的结果却是1.14.0

gst-launch-1.0 --version

gst-launch-1.0 version 1.14.0
GStreamer 1.14.0
Unknown package origin

于是卸载gstreamer(我也不知道怎么卸载更好一些,我贸然使用sudo apt-get remove命令,最终导致有一些原本依赖gstreamer的应用也被卸载掉,系统险些崩掉)

完成后,gst-launch-1.0 --version居然还能出结果

于是用which看一下应用的位置

which gst-launch-1.0
which gst-inspect-1.0

/home/frost/anaconda3/bin/gst-launch-1.0
/home/frost/anaconda3/bin/gst-inspect-1.0

找到了罪魁祸首anaconda ,原来是因为anaconda的base环境里有安装gstreamer,而我又配置了环境变量,系统一直找到的都是anaconda里的gstreamer。

所以接下来激活base环境,conda list看一下哪些与gstreamer有关,最后移除这些包

conda activate base
conda list
conda remove gstreamer
conda remove gst-plugins-base

再次使用 gst-launch-1.0 v4l2src ! autovideosink 命令测试,系统已经找不到gst-launch-1.0了,两个which命令也不输出任何信息。

再次安装gstreamer,成功。

  • 6
    点赞
  • 16
    收藏
    觉得还不错? 一键收藏
  • 3
    评论
评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值