最近在做一个视频播放器,用到了libvlc,使用起来也是挺方便的,不过刚开始的时候遇到了一个问题:
libvlc_new(0, NULL)这个函数总是返回NULL,后来发现是没把vlc的Plugins文件夹也放到程序执行目录,我只放了libvlc.dll与libvlccore.dll那两个dll文件,vlc初始化过程也需要初始化相应插件。放了之后,一切正常。
---------------------------------------------------------------------------------------------------
/*2015-12-25*/
今天在linux下做libvlc开发,也遇到了libvlc_new执行失败的问题,我用的是QT框架。程序执行这一函数时候,报如下错误提示:
1 2 |
The inferior stopped because it received a signal from the Operating System. Signal name : SIGSEGV Signal meaning : Segmentation fault |
卸载重装vlc与libvlc-dev也没解决问题,后来查了些资料,发现问题是出在vlc的插件缓存,该缓存需要刷新。
1 |
sudo /usr/lib/vlc/vlc-cache-gen -f /usr/lib/vlc/plugins |
通过上述命令即可解决。
--------------------------------------------------------------------------------------------------
文章评论
博主用的是最新版本的vlc吗?
@维纳斯 是的
卧槽,谢谢楼主,我在linux下面也遇到了libvlc_new崩溃问题,重装vlc都没法,按着你说的就解决!!
@番茄 不客气,解决就好
写的不错,正好我也遇到了这个问题
谢谢大佬,我解决了,点赞