因工作需要,将linux 虚拟机中的gstreamer版本从原来的1.11.2切换为1.10.4,因安装过程中的问题较多,简要记录流程。
目前apt-get命令所能获取到的最新的gstreamer版本为1.8.3,因此要安装1.10.4版本,只能通过源码安装。一般全新安装都不会出现问题,所以这里略过不提。
1.下载源码包
下载
源码包从官网获取。
官网:
https://gstreamer.freedesktop.org
源码包下载地址:
https://gstreamer.freedesktop.org/src/
需要安装的源码包包括但不限于:
gstreamer-1.10.4.tar.xz
gst-plugins-base-1.10.4.tar.xz
gst-libav-1.10.4.tar.xz
gst-plugins-good-1.10.4.tar.xz
gst-plugins-bad-1.10.4.tar.xz
orc-0.4.26.tar.xz
gst-plugins-base-1.10.4.xz
gst-plugins-ugly-1.10.4.tar.xz
解压
所有下载的包需要解压,gstreamer解压命令如下,其他包解压参考如下命令:
xz -d gstreamer-1.10.4.tar.xz
xz 压缩工具如果没有需要安装
sudo apt-get install xzip
2.删除gstreamer-1.11.2
Orc卸载
机器上原来的orc版本不满足要求,且是通过apt-get方式安装的,这里需要删除旧的orc,再通过源码编译方式安装新orc
查找旧的包
sudo dpkg -l | grep orc
删除
sudo apt-get remove ....
Gstreamer 核心库卸载
Gstreamer核心库用make uninstall方式卸载后,需要到/usr/local/lib 目录下手工删除11.2版本的 所有库文件,参考如下命令的方式
sudo rm -rf libgstallocators-1.0.so.0.1102.0 libgstallocators-1.0.so.0 libgstallocators-1.0.so
其他包卸载,依次执行
sudo apt-get remove pkgname
3.安装gstreamer-1.10.4
1)首先安装 gstreamer-1.10.4
cd gstreamer-1.10.4/
./configure
sudo make
sudo make install
2)配置环境变量
export LD_LIBRARY_PATH=/usr/local/lib
export GST_PLUGIN_PATH=/usr/local/lib:/usr/lib/x86_64-linux-gnu/gstreamer-1.0
3)安装orc
因为gst-plugins-base依赖于orc,所以需要在安装base之前装好orc
通过源码安装新的orc-0.4.26版本
cd orc-0.4.26/
./configure
Sudo make
Sudo make install
4)安装 gst-plugins-base-1.10.4
cd gst-plugins-base-1.10.4/
./configure
sudo make
sudo make install
5)安装4)的方式安装其他包。
4.问题与解决办法
1)apt-get remove卸载提示
E: Could not get lock /var/lib/dpkg/lock - open (11: Resource temporarily unavailable)
E: Unable to lock the administration directory (/var/lib/dpkg/), is another process using it?
解决办法:
sudo rm /var/cache/apt/archives/lock
sudo rm /var/lib/dpkg/lock
输入以上命令后再试。
2)gst-launch 命令播放音频没有声音
可能是没有装alsa,安装alsa: libasound2 libasound2-data libasound2-dev libasound2-plugins
通过syncaptc 包管理工具安装
然后重新安装gst-plugins-base-1.10.4