libVLC C库:通过编程方式禁用专辑封面缓存生成
禁用libVLC自动生成专辑封面缓存的方法
你遇到的这个问题是libVLC默认启用的媒体封面缓存机制在搞鬼——它会自动提取音频文件的专辑封面,然后把这些封面和对应目录存在~/.cache/vlc里,几千首歌堆下来确实会占用不少磁盘空间。下面给你几个直接有效的解决方法:
直接关闭封面缓存功能
在初始化libVLC实例的时候,加上--no-art-cache这个启动参数,就能彻底禁用封面缓存的生成逻辑。在你的C代码里可以这么写:const char *vlc_args[] = { "--no-art-cache", // 核心参数:禁用封面缓存 "--quiet" // 可选:让播放器少输出日志,更清爽 }; libvlc_instance_t *inst = libvlc_new(sizeof(vlc_args)/sizeof(vlc_args[0]), vlc_args);进阶:连封面提取操作都跳过
如果你想进一步减少不必要的资源消耗(连提取封面的步骤都省掉),可以再加上--no-fetch-art参数,组合起来就是:const char *vlc_args[] = { "--no-art-cache", "--no-fetch-art", // 跳过封面提取操作 "--quiet" };清理已有的缓存文件(可选)
要是已经攒了一堆缓存目录想清理,直接用终端命令一次性搞定:rm -rf ~/.cache/vlc/art/album/*注意:执行这个命令前确认不需要保留这些缓存封面,一旦删除就找不回来了。
这些都是libVLC官方支持的配置参数,不会影响音频播放的核心功能,放心用就行。
内容的提问来源于stack exchange,提问作者moosambi2020
相关产品推荐
相关产品推荐

