MATLAB 2017b(Ubuntu16.04)调用VideoReader初始化视频属性失败求助
解决Ubuntu 16.04 + MATLAB 2017b中VideoReader读取MP4报错的问题
我之前在Ubuntu 16.04上用MATLAB 2017b的时候也碰到过一模一样的问题!当时折腾了好几种方法才解决,给你分享几个靠谱的解决方案:
安装缺失的多媒体解码库
MATLAB的VideoReader依赖系统的GStreamer解码组件,Ubuntu 16.04默认的库可能不全,打开终端执行以下命令安装完整的插件包:sudo apt-get update sudo apt-get install gstreamer1.0-plugins-base gstreamer1.0-plugins-good gstreamer1.0-plugins-bad gstreamer1.0-plugins-ugly gstreamer1.0-libav安装完成后重启MATLAB再测试。
确认视频文件的路径与权限
确保video.mp4在MATLAB当前工作目录下,或者直接使用绝对路径调用:obj = VideoReader('/home/your_username/your_video_folder/video.mp4');同时检查文件权限,确保MATLAB有读取权限:
chmod 644 /path/to/your/video.mp4验证视频文件是否损坏
先用Ubuntu自带的VLC播放器或者其他工具打开video.mp4,如果无法正常播放,说明视频文件本身损坏,需要重新获取或转码修复。转码视频为兼容编码
某些MP4的编码格式可能不被MATLAB 2017b支持,用FFmpeg转码为标准H.264编码的MP4:ffmpeg -i video.mp4 -c:v libx264 -crf 23 -c:a aac compatible_video.mp4然后用转码后的
compatible_video.mp4测试VideoReader。重置MATLAB偏好设置
有时候MATLAB的缓存配置会出问题,关闭MATLAB后删除偏好设置文件夹,再重新启动:rm -rf ~/.matlab/R2017b
你可以按顺序尝试这些方法,大概率是系统解码库缺失的问题,先安装GStreamer插件包应该就能解决。
内容的提问来源于stack exchange,提问作者Quasar
相关产品推荐
相关产品推荐

