MATLAB on Ubuntu 15.04: The VideoReader plugin libmwgstreamerplugin failed to load properly

Viewed 5672

In MATLAB R2015b following command:

obj = VideoReader('traffic.avi');

causes the following error:

Error using VideoReader/init (line 619)
The VideoReader plugin libmwgstreamerplugin failed to load properly.

Error in VideoReader (line 172)
            obj.init(fileName);

I've installed gstreamer0.10 evidenced by:

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

I'm assuming I have the required plugins because of the following feedback:

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

Can anybody help?

2 Answers

To work around this issue, replace the version of the library libstdc++.so.6 shipped with MATLAB® with the native version on your system.

To do this, first complete the following steps to ensure that the system's libstdc++.so.6 version is higher than the one shipped with MATLAB®.

  1. In a Linux terminal, navigate to matlabroot/sys/os/glnxa64 and type the following:

    ls -l

The version of the library shipping with MATLAB® should be libstdc++.so.6.0.17.

  1. Navigate to /usr/lib/x86_64-linux-gnu and type the following:

    ls -l libstdc++*

If the resulting version is higher than 6.0.17, then continue with the following steps.

  1. Navigate to matlabroot/sys/os/glnxa64.

  2. Execute the following:

    unlink libstdc++.so.6

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

  3. Restart MATLAB®.

Related