Ubuntu 15.04 上的 MATLAB:VideoReader 插件 libmwgstreamerplugin 无



在 MATLAB R2015b 中,以下命令:

obj = VideoReader('traffic.avi');

导致以下错误:

Error using VideoReader/init (line 619)
The VideoReader plugin libmwgstreamerplugin failed to load properly.
Error in VideoReader (line 172)
            obj.init(fileName);

我已经安装了 gstreamer0.10,证据是:

alexander@alexander-desktop:~/Documents/MATLAB$ gst-
gst-codec-info-0.10  gst-inspect-0.10     gst-visualise-0.10   
gst-discoverer-0.10  gst-launch-0.10      gst-xmlinspect-0.10  
gst-feedback-0.10    gst-typefind-0.10    gst-xmllaunch-0.10

由于以下反馈,我假设我有所需的插件:

alexander@alexander-desktop:~/Documents/MATLAB$ gst-inspect-0.10 | grep avi
ogg:  oggaviparse: Ogg AVI parser
typefindfunctions: video/x-msvideo: avi
navigationtest:  navigationtest: Video navigation test
avi:  avidemux: Avi demuxer
avi:  avimux: Avi muxer
avi:  avisubtitle: Avi subtitle parser

有人可以帮忙吗?

这是一个已知问题。您能否在此错误报告中尝试以下解决方法?

http://www.mathworks.com/support/bugreports/1246784

从错误报告链接来看,它似乎是MATLAB使用的GLIBC版本和GStreamer使用的版本的问题。

迪内什

要解决此问题,请将 MATLAB® 附带的库 libstdc++.so.6 版本替换为系统上的本机版本。

为此,请首先完成以下步骤,以确保系统的libstdc++.so.6版本高于MATLAB®附带的版本。

  1. 在 Linux 终端中,导航到 matlabroot/sys/os/glnxa64 并键入以下内容:

    ls -l

随 MATLAB® 一起提供的库版本应该是 libstdc++.so.6.0.17。

  1. 导航到/usr/lib/x86_64-linux-gnu 并键入以下内容:

    ls -l libstdc++*

如果生成的版本高于 6.0.17,请继续执行以下步骤。

  1. 导航到 matlabroot/sys/os/glnxa64。

  2. 执行以下操作:

    取消链接 libstdc++.so.6

    ln -s/usr/lib/x86_64-linux-gnu/libstdc++.so.6 libstdc++.so.6

  3. 重新启动 MATLAB。®

最新更新