红联Linux门户
Linux帮助

Linux Matlab VideoReader报错的解决方法

发布时间:2017-04-27 11:16:10来源:linux网站作者:Andy965
这篇主要讲一下在Linux系统下,安装MATLAB以后无法使用VideoReader读取MP4等视频格式的问题,适用于Ubuntu16.04系统(用的这个系统)。PS:Deepin系统我也曾经把玩过,然后按照此方法也可行。
 
一、出现的错误
1.1、先来一张报错图:
Linux Matlab VideoReader报错的解决方法
该图说gstreamerplugin加载错误。
2.2、还有可能遇到的报错情况:
Linux Matlab VideoReader报错的解决方法
总是说无法初始化视频。
 
二、解决方法
2.1、这里先说下视频无法初始化的问题:
是因为linux缺少了或者相应的encoder,所以安装相应的GStreamer 0.10插件。
sudo apt install libgstreamer0.10-dev gstreamer-tools gstreamer0.10-tools gstreamer0.10-doc
sudo apt install gstreamer0.10-plugins-base gstreamer0.10-plugins-good gstreamer0.10-plugins-ugly gstreamer0.10-plugins-bad 
sudo apt install gstreamer0.10-plugins-bad-multiverse
这里执行最后一行代码的时候,如果bash出现以下提示:
Linux Matlab VideoReader报错的解决方法
则可以忽略,因为我们已经安装了他所提示的取代包:gstreamer0.10-Plugins-bad
然后重启MATLAB,若还继续报错“视频未能初始化”
执行下面一行代码再次添加一个gstreamer包
wget http://ppa.launchpad.net/mc3man/gstffmpeg-keep/ubuntu/pool/main/g/gstreamer0.10-ffmpeg/gstreamer0.10-ffmpeg_0.10.13-5ubuntu1~trusty2.1_amd64.deb 
sudo dpkg -i gstreamer0.10-ffmpeg_0.10.13-ubuntu1~trusty2.1_amd64.deb //这里包不一样,要deb名字对应,然后dpkg安装。
之后重启MATLAB,可以发现问题已经解决:
Linux Matlab VideoReader报错的解决方法
这个是Ubuntu16.04解决问题的方法。
2.2、若仍提示gstreamer0.10-ffmpeg无法加载的相应解决方法
在玩Deepin的时候,遇到了这个问题,因为deepin的libstdc++的库要比ubuntu16.04的库版本更加新。
可以继续往下看:
cd /你自己安装的matlab目录/sys/os/glnxa64
ls -l
这是后应该看到你自己的链接库为libstdc++.so.6.0.17
cd /usr/lib/x86_64-linux-gnu 
ls -l libstdc++*
若列表里,版本高于6.0.17
Linux Matlab VideoReader报错的解决方法
(找到了问题)
然后
cd /你自己安装的matlab目录/sys/os/glnxa64
sudo unlink libstdc++.so.6
sudo ln -s /usr/lib/x86_64-linux-gnu/libstdc++.so.6 libstdc++.so.6
重启MATLAB可以发现,问题解决。
PS:MATLAB官网说,MatlabR2016b以后的版本,解决了这个问题了。(其实后面发现,之前出现gstreamer未加载不是因为这个问题,是因为未安装gstreamer的问题,及按照第一个问题的解决方法即可解决。)
 
本文永久更新地址:http://www.linuxdiyf.com/linux/30339.html