
3 步配好 xiaomusic 在线搜索MusicFree 插件与 LX Server 双生态实战全解【免费下载链接】xiaomusic使用小爱音箱播放音乐音乐使用 yt-dlp 下载。项目地址: https://gitcode.com/GitHub_Trending/xia/xiaomusic如果你的小爱音箱还只能放自己用 yt-dlp 下载过的本地歌曲「在线搜索」这个扩展值得装一下。它让音箱绕过本地曲库直接联网搜索音乐平台的歌曲并播放结果既能推给音箱也能在网页播放器里试听还支持用一句语音口令直接点歌。快速上手三步跑出第一次在线搜索结果这一步的目标只有一个让你在半小时内听到第一首联网搜来的歌。第 1 步打开扩展后台。在线搜索的设置入口在 setting.html配套逻辑拆在 setting-musicfree.js 和 setting-lxserver.js 里。首次运行时系统会把 plugins-config-example.json 复制成运行时的conf/plugins-config.json后面所有操作都在改这份文件。第 2 步选定一种接口生态。页面「接口生态」区域只有两个选项且二选一、互不兼容生态你需要准备的东西配置核心MusicFree 插件版一批.js插件文件订阅或上传管理插件的启停与排序LX Server 接口版一台已部署的 LX Sync Server填接口地址 平台列表对应配置项back_conf_info.api_type只存一个值1是 MusicFree 插件2是 LX Server 接口修改走POST /api/back-conf/update。切生态时前端会弹确认框因为两边的配置项插件列表 vs 平台列表放不到同一份结构里。第 3 步搜一首歌并播放。在搜索页输入关键词结果按服务端分页返回每页默认 20 条每条带标题、艺术家、专辑、时长、音质和来源平台标签。命中后有两个播放出口推送到已绑定的音箱或直接在当前网页播放音频流。避坑提示推送音箱之前务必先在「小爱音箱设置面板」完成绑定否则搜索能出结果、播放指令却无处可去。选型决策MusicFree 插件版还是 LX Server 接口版两个生态都能完成「搜索 → 播放」区别在于歌曲资源从哪来、你愿意维护什么。先对号入座如果你不想多部署任何服务只想装几个.js插件就把搜索跑起来 → 选 MusicFree 插件版如果你已经在跑洛雪LX生态、有现成的 LX Sync Server → 选 LX Server 接口版只填个地址就行如果你看重播放保障机制音质降级、跨平台换源、缓存加速→ 选 LX Server 接口版这套兜底逻辑目前只在这条线上做得最完整如果你想要更自由的插件生态、支持订阅自动更新→ 选 MusicFree 插件版。两条线的落地差异可以这样看对比维度MusicFree 插件版LX Server 接口版资源来源JS 插件对接各音乐源服务端统一维护接口新增搜索源订阅更新 / 上传插件 / 在线导入在平台列表里加一个平台 key运行依赖内置 Node.js 沙箱子进程外部 LX Sync Server失败兜底聚合多插件取排序最优结果音质降级 跨平台自动换源配置项载体music_free_info节点lx_server_info节点MusicFree 线的工作机制值得多说一句JS 插件管理器 会拉起一个node js_plugin_runner.js子进程当插件沙箱Python 端通过标准输入/输出收发 JSON 消息插件本体存放在配置目录的js_plugins/文件夹。搜索结果排序规则固定为「歌曲名匹配度 歌手名匹配度 插件权重」权重即启用列表里的位置只有前 9 个插件参与加权排第 1 的权重最高9 分。LX Server 线的播放链路在 在线音乐服务OnlineMusicService里写得相当完整音质按LX_QUALITY_PRIORITY [master, flac24bit, flac, 320k, 192k, 128k]从用户偏好开始依次降级原平台解析失败时按「歌名 歌手 时长误差 ≤ 5 秒」跨平台找同一首歌重试播放前先查${base_url}/music/cache/check命中缓存直接返回缓存 URL未命中则走 SSE 进度接口配合${base_url}/music/url异步拿直链服务端返回相对路径时自动拼上base_url补全。版本提醒LX Music Sync Server v1.8.2 起对接口加了 Token 限制使用 LX Server 前建议先停在旧版本等 onlineSearch 新版适配文档 V1.1.2 的说明。配置实操两条线分别怎么填下面按你正在配的生态只展示对应的那段 JSON 和对应操作。MusicFree 线订阅、上传与权重更新订阅——把插件源地址填进plugin_source.source_url点「更新订阅」。后端请求该地址校验返回 JSON 里含plugins数组后才批量下载。手动上传——只收.js文件文件名若是ALL、all、OpenAPI、OPENAPI会被拒保留字段同名插件不可重复传。在线导入——粘贴一个http(s)://开头的插件地址单个远程导入。启停与卸载——走 插件路由PUT /api/js-plugins/{name}/enable|disable、DELETE /api/js-plugins/{name}/uninstall。装完插件后记得把它加入enabled_plugins顺序就是权重顺序。music_free_info: { enabled_plugins: [MusicFree, BiliMusic], plugin_source: {source_url: https://example.com/plugins.json}, box_play_platform: all }后台还提供直达 MusicFree 官方插件市场的入口按钮找插件不用翻仓库。LX Server 线地址、鉴权与平台把 API 地址填进base_url占位示例是http://127.0.0.1:9527/api。填完点「接口测试」V1.1.2 起提供后端会请求${base_url}/music/config检查返回里是否带player.enableAuth和user.enablePublicRestriction两个字段据此判断地址是不是一个合法的 LX Server 接口。V1.1.3 起支持鉴权配置x-user-name与x-user-token之后所有请求自动带上这两个头。歌词查询V1.1.2 起走${base_url}/music/lyric。平台列表决定聚合搜索的范围在platforms里增删平台 key例如tx小秋音乐、kg小枸音乐、kw小蜗音乐、wy小芸音乐、mg小蜜音乐。搜索时所有已配置平台被并行请求结果合并后交给统一的排序函数optimize_search_results。lx_server_info: { base_url: http://127.0.0.1:9527/api, x-user-name: your_user, x-user-token: your_token, platforms: {tx: 小秋音乐, kw: 小蜗音乐}, box_play_platform: all }高级设置五个常被忽略的开关高级设置模态框对应GET/POST /api/advanced-config/*五张卡片逐一说明自动追加歌曲——auto_add_song默认开启。音箱播到歌单末尾时自动搜索同歌手歌曲续上仅对「全部播放」即全部循环模式生效。自动拉取并转换V1.1.3 起——auto_convert默认关闭且只在 LX Server 生态下显示。开启后每 30 秒拉一次 LX 歌单并转成 XM 歌单。AI 大模型配置——aiapi_info默认关闭用法见下文「玩法升级」。口令搜索偏好——box_play_platform两个生态节点下各有一份填all表示聚合搜索填具体平台则只搜该平台。语音搜单策略——voice_playlist_strategy可选default取首条、max_songs歌曲最多、max_plays播放最多、random随机默认default。auto_add_song: true, aiapi_info: {enabled: false, api_key: }玩法升级语音口令、AI 提取、密码锁语音口令直搜。在线搜索新增两条口令生效的前提是后台「允许唤醒的命令」列表里加上,singer_play,online_play,——加之前先确认列表里确实有这两项口令指令格式示例后端行为在线播放在线播放 关键词在线播放 林俊杰 江南online_play搜索后取最高分歌曲立即播放播放歌手播放歌手 歌手名播放歌手 周杰伦singer_play生成_online_歌手名临时歌单顺序播放online_play内部用_search_top_one给结果打分歌名完全匹配 90、开头匹配 70、结尾匹配 50、包含 30歌手名匹配按 9 / 7 / 5 / 3 递减取最高分播放。另外还有一条独立链路online_playlist_play先搜歌单列表、按上面的搜单策略挑出最优一条再拉全量歌曲推给音箱。搜索前有一个小优化_parse_keyword_by_dash会把「歌曲名 - 艺术家」格式按第一个-拆开所以网页搜索时直接写江南 - 林俊杰比写江南 林俊杰更准。AI 智能口令提取。模糊指令比如「我想听那首关于秋天的歌」交给传统拆分逻辑命中率不高这个开关就是补这块的。打开aiapi_info.enabled并填入api_key后_parse_keyword_with_ai会调用 OpenAI 工具封装 里的analyze_music_command解析出歌名与歌手名解析失败或 AI 不可用时自动回退到-分割功能不会断。接口地址留空默认走阿里百炼模型默认qwen-flash。安全说明模型接口目前只支持 OpenAI API 规范用其他协议的推理服务前先确认兼容性。后台密码锁V1.1.2 起。默认未开启。在conf/plugins-config.json顶层把password填成非空字符串即启用之后进入后台时前端先请求GET /api/password/check返回required: true就弹密码框通过POST /api/password/verify才能进配置页。忘了密码就把该字段置空锁随之关闭。避坑手册现象、原因与处理现象可能原因处理LX 生态搜到歌但放不出来接口连通、鉴权或版本问题先跑「接口测试」再核对x-user-name/x-user-token完整排查思路见 issues/811AI 口令提取不生效aiapi_info.enabled为 false、api_key为空或接口不符合 OpenAI API 规范逐项核对 plugins-config-example.json 中aiapi_info结构确认模型服务兼容LX 转换出来的歌单点不了转换歌单以_online_lx_为前缀只在 LXServer 生态下可播放把「接口生态」切回 LX Server 再用搜索有结果、音箱没反应音箱未在「小爱音箱设置面板」绑定先完成绑定再推流后台密码忘了进不去密码锁是纯本地配置编辑conf/plugins-config.json把password置空即关闭密码锁个别来源如 B 站源音箱播不了该音频流格式不被小爱支持这类资源改用网页端在线播放升级后配置全部失效配置结构有变化的版本如 V1.1.1 重构字段不兼容删掉conf/plugins-config.json重启后在网页端重新配置补充一条安全设计所有在线 URL 在 在线音乐服务 的_make_request_with_validation里做校验内网、回环、链路本地、多播地址一律拒绝用于防范 SSRF。所以如果你的 LX Server 跑在局域网里走的是显式配置的base_url属于正常路径但别让插件插件源或搜索结果指向这些地址。平台歌单想同步到音箱播放的需求也在讨论中方案可以参考 issues/807。延伸阅读在线搜索核心业务搜索、聚合、直链解析、换源降级、SSRF 防护xiaomusic/online_music.py插件沙箱与 LX 接口请求、自动转换定时任务xiaomusic/js_plugin_manager.py全部在线搜索 REST 接口xiaomusic/api/routers/plugin.py后台配置页与搜索页xiaomusic/static/onlineSearch/LX 生态播放故障处理方案docs/issues/811.md下一步建议先把 MusicFree 订阅跑通、用「在线播放」口令点一首歌验证链路再按需把 LX Server 作为第二生态备着——两条线的配置互不干扰切换成本很低。【免费下载链接】xiaomusic使用小爱音箱播放音乐音乐使用 yt-dlp 下载。项目地址: https://gitcode.com/GitHub_Trending/xia/xiaomusic创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考