You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Ubuntu 17.04下MATLAB的VideoReader无法运行求解决方案

解决Ubuntu 17.04上MATLAB VideoReader依赖gstreamer0.10的问题

我之前也踩过这个坑——Ubuntu 17.04确实把gstreamer0.10从官方源里移除了,直接安装肯定行不通,而且gstreamer1.0确实没法兼容MATLAB旧版本的VideoReader。不想降级系统的话,给你几个亲测有效的解决办法:

办法一:手动下载Ubuntu 16.04的gstreamer0.10 deb包安装

Ubuntu 16.04的官方源里还保留着gstreamer0.10的包,我们可以直接下载对应架构的deb文件来安装:

  • 先确认你的MATLAB是64位还是32位,然后找到这些关键包:
    • gstreamer0.10-tools
    • gstreamer0.10-plugins-base
    • gstreamer0.10-plugins-good
    • gstreamer0.10-plugins-ugly
  • 把这些deb文件下载到本地后,打开终端切换到下载目录,执行:
    sudo dpkg -i *.deb
    
  • 如果出现依赖错误,先执行sudo apt-get -f install自动修复;要是还有冲突,就手动下载对应的依赖旧版本deb包一起安装。

办法二:给MATLAB指定gstreamer0.10的库路径

如果已经通过其他方式(比如拷贝旧系统的库)获得了gstreamer0.10的库文件,可以让MATLAB优先加载这些旧库:

  • 打开终端,先执行以下命令设置环境变量,再启动MATLAB:
    export LD_PRELOAD=/usr/lib/x86_64-linux-gnu/libgstreamer-0.10.so.0
    matlab
    
    (32位系统的话路径改为/usr/lib/i386-linux-gnu/,请根据实际库位置调整)
  • 要是想每次启动MATLAB都自动生效,可以编辑MATLAB的启动脚本:
    1. 找到MATLAB安装目录下的bin/matlab文件,比如/usr/local/MATLAB/R2017b/bin/matlab
    2. 在文件开头注释之后,加上刚才的export LD_PRELOAD命令

办法三:源码编译安装gstreamer0.10

如果deb包安装遇到无法解决的依赖问题,可以自己编译源码:

  • 按顺序下载gstreamer0.10的核心库和插件源码:
    1. gstreamer核心库(gstreamer-0.10.36.tar.bz2)
    2. gst-plugins-base-0.10.36.tar.bz2
    3. gst-plugins-good-0.10.31.tar.bz2
    4. gst-plugins-ugly-0.10.19.tar.bz2
  • 依次编译安装每个包,编译时指定统一的安装路径(比如/usr/local/gstreamer0.10):
    ./configure --prefix=/usr/local/gstreamer0.10
    make
    sudo make install
    
  • 最后设置MATLAB的环境变量,让它能找到这些库:
    export LD_LIBRARY_PATH=/usr/local/gstreamer0.10/lib:$LD_LIBRARY_PATH
    matlab
    

注意事项

  • 安装完成后一定要重启MATLAB,再测试v = VideoReader('flame.avi'),确保生效。
  • 64位MATLAB必须搭配64位的gstreamer0.10库,否则会出现架构不兼容的错误。

内容的提问来源于stack exchange,提问作者Taylor

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.05.15 08:34:58