分享一下自制的,适合国人使用的Music Assistant最强插件,支持歌手、专辑、歌曲图片自动补全!



插件代码是本人学习 Pytone时编写及豆包修正生成的,歌曲元数据来源需要配合云音乐API使用。 插件代码绿色开源,符合Music Assistant插件开发Demo。
- 主要解决国内使用时Music Assistant的UI歌手图片经常获取不了问题
- 本次插件由 musicbrainz魔改版 和 netease_metadata同共使用(也可以独立使用,需要原版musicbrainz正确识别到数据后才能触发插件)
- 为什么要魔改musicbrainz,因为Music Assistant默认先识别这个插件更新元数据信息,又不能禁用此插件。我们国人在使用时会经常遇到网络等各种问题识别不了元数据,从而触发不了其它插件运作。经过源码分析出原因由于元数据在musicbrainz上有各国语言版本出现,对应的简体元数据比较少,所以经常获取不了数据。如果大家有喜欢的歌手或歌曲也可以去平台上补充下。MusicBrainz,开放音乐百科全书,最全的音乐元信息数据库 https://musicbrainz.org/
使用教程
1、先部署好Music Assistant具体看我发布的应用推荐
【高保真】全平台音乐聚合,全屋音响联动(包括小爱),云音乐接入Music Assistant
2、下载插件源码,上传到飞牛Nas并解压放在Music Assistant目录里
附件:providers.zip

docker compose 里的volumes:下增面加两项,把两个插件目录独立挂载出来,不影响原有插件
volumes:
- ./你的存放目录/netease_metadata:/app/venv/lib/python3.13/site-packages/music_assistant/providers/netease_metadata # 插件目录挂载
- ./你的存放目录/musicbrainz:/app/venv/lib/python3.13/site-packages/music_assistant/providers/musicbrainz # 插件musicbrainz
完整的 docker compose ,把插件文件解压到存放compose文件夹里
services:
music-assistant-server:
image: ghcr.io/music-assistant/server:latest # 可替换为beta版本以获取最新测试版
container_name: music-assistant
restart: unless-stopped
# 网络模式必须设置为host,Music Assistant才能正常工作
network_mode: host
volumes:
- ./providers/netease_metadata:/app/venv/lib/python3.13/site-packages/music_assistant/providers/netease_metadata #插件挂载
- ./providers/musicbrainz:/app/venv/lib/python3.13/site-packages/music_assistant/providers/musicbrainz #musicbrainz
- ./data:/data
- ./config:/config
- /你的音乐文件存放目录:/music #本地音乐目录
cap_add:
- SYS_ADMIN
- DAC_READ_SEARCH
security_opt:
- apparmor:unconfined
environment:
# 日志级别配置,默认值为info,可选值:critical、error、warning、info、debug
- LOG_LEVEL=info
3、重新构建一次Music Assistant,然后启动容器
成功启动后musicbrainz魔改版会自动加载,首次使用需要设置好你的☁️音乐 API Base URL(未部署的最教程最下面有docker compose)
设置->提供者->MusicBrainz

例 http://192.168.110.156:3003 填入并保存

4、到提供者添加netease_metadata插件,首次使用也是需要设置好你的☁️音乐 API Base URL
设置->提供者->添加新的提供者->搜索 netease

同上填入你的☁️音乐 API Base URL

5、到歌手列表点击某个歌手后就就能激活插件了,如果没显示,点击右上角的刷新项目。因为Music Assistant有缓存机制刷新需要多等一会。

6、验证插件有没正常运作,到后台查看【设置-system-serverlogs】里可以查看
设置日志等级为debug 会有详细的识别输出,如遇到识别不了的也可以提供logs给我在下个版本上修正

祝大家使用愉快!
补充
如果大家的音乐文件比较乱,推荐先用别的音乐刮削器先整理下。论坛有很多应用推荐
【Docker工具测评】Musictagweb✨刮削 + 播放一体,我愿称它为本地音乐救星!
音乐没封面 / 歌词?NAS 部署 Music Scraper,一键搞定
☁️音乐API docker compose
services:
ncm-api:
container_name: ncm-api
image: moefurina/ncm-api:latest
ports:
- "3003:3000"
restart: unless-stopped
user: root
environment:
- TZ=Asia/Shanghai
- CORS_ALLOW_ORIGIN=*
- ENABLE_GENERAL_UNBLOCK=true
- ENABLE_FLAC=true
- SELECT_MAX_BR=true
- FOLLOW_SOURCE_ORDER=true