尧图网站设计 尧图网站设计YAOTU DESIGN
ARTICLE DETAIL

资讯详情

深耕网站设计与一线实操的经验洞察。

3步让小爱音箱播放你的私人音乐库:XiaoMusic部署实战指南

3步让小爱音箱播放你的私人音乐库:XiaoMusic部署实战指南 3步让小爱音箱播放你的私人音乐库XiaoMusic部署实战指南【免费下载链接】xiaomusic使用小爱音箱播放音乐音乐使用 yt-dlp 下载。项目地址: https://gitcode.com/GitHub_Trending/xia/xiaomusic你有没有过这样的念头家里的小爱同学只会回答为你找到以下内容然后播放一堆音质平平的在线歌曲。而我收藏的几百G无损音乐躺在NAS里吃灰想用音箱听还得掏出手机手动推流。直到我遇到XiaoMusic——一个让小爱音箱播放本地音乐的开源工具它用yt-dlp下载音乐把语音指令、下载、播放串成一条自动化流水线。今天这篇XiaoMusic部署指南就是带你从零到一让音箱真正听懂你想听什么。那天晚上我对着音箱说了一句播放周杰伦的晴天故事要从一个普通的周末说起。我把珍藏多年的CD转成了FLAC文件拷进NAS然后对着小爱音箱喊小爱同学播放周杰伦的晴天。音箱沉默了半秒回答为你找到以下内容正在为你播放……——放出来的却是某个翻唱版本音质还打了折扣。那一刻我意识到音箱里的曲库从来不是我的曲库而是平台的曲库。我的私人收藏它根本看不到。于是我开始搜索小爱音箱播放本地音乐找到了XiaoMusic。它的思路很直接既然小米开放了音箱的对话记录和播放接口那就做一个桥梁——你说话它解析它去你的音乐目录里找歌再推给音箱播放。找不到的歌就交给yt-dlp现场下载。听起来复杂用起来却异常简单。顿悟它到底是怎么听懂你的很多人以为语音控制音箱是高深的技术其实拆开看只有四步抓对话XiaoMusic定时拉取你和小爱音箱的对话记录解析口令把播放周杰伦的晴天拆成指令播放关键词晴天找歌在音乐目录里匹配歌曲匹配不上就调用yt-dlp从网络下载推流播放通过小米服务把音频推给音箱顺带支持暂停、切歌、循环。整个逻辑核心在command_handler.py里你不需要懂代码只需要知道它把语音和曲库两个原本不相干的世界用一行口令焊在了一起。是不是很神奇上图是XiaoMusic的Web管理界面每个按钮都配了中文说明第一次打开就知道该点哪里。首战告捷10分钟让它跑起来别急着研究配置先让服务转起来。Docker是最省心的方式它能自动处理所有依赖。第一步创建两个目录mkdir -p /xiaomusic_music # 音乐文件放这里 mkdir -p /xiaomusic_conf # 配置信息放这里为什么分开两个目录音乐和配置混在一起将来备份、升级都容易出错。分开存放删配置不丢歌换机器直接拷贝走人。第二步写一个 docker-compose.ymlservices: xiaomusic: image: hanxi/xiaomusic # 官方镜像 container_name: xiaomusic restart: always # 挂了自动重启 ports: - 58090:8090 # 宿主机58090 → 容器8090 volumes: - /xiaomusic_music:/app/music # 挂载音乐目录 - /xiaomusic_conf:/app/conf # 挂载配置目录如果下载镜像慢把hanxi/xiaomusic换成国内镜像docker.hanxi.cc/hanxi/xiaomusic即可其他不用动。第三步启动并访问docker-compose up -d等十几秒浏览器打开http://你的IP:58090看到Web界面就成功了。这时还差最后一步——在设置页输入你的小米账号和密码保存后系统会自动拉取你家的音箱设备列表勾选你的小爱音箱再保存一次。注意带*号的配置必须填其他保持默认就行。小贴士首次保存账号后如果看不到设备列表多半是登录被拦截。去电脑浏览器登录一次小米官网www.mi.com过一遍人机验证基本能解决99%的登陆失败问题。现在试试对小爱音箱说播放歌曲晴天。如果本地没有这首歌你会听到它在后台悄悄下载然后音乐响起。那一刻我的成就感不亚于第一次搭好家里的智能家居。进阶玩法按场景解锁更多姿势跑通之后XiaoMusic才算真正开始好玩。别把它当成一个播放器它是一个可定制的家庭音乐中枢。想解放双手把常用口令背下来基础指令就一句话播放歌曲歌名。其余高频口令记这几个就够下一首 / 上一首切歌单曲循环 / 全部循环 / 随机播放切换播放模式停止播放立即闭嘴播放歌单 目录名比如播放歌单摇滚会播那个文件夹里的所有歌口令词不是死的你可以在设置里完全自定义。比如把播放歌曲改成来一首把停止播放改成闭嘴——设置页的config.py里记录了全部默认口令照着改就行。想全家共享按文件夹建歌单XiaoMusic把音乐目录里的每一层文件夹都识别成一个播放列表。比如music/ ├── 儿歌/ ├── 摇滚/ ├── 睡前故事/ └── 广场舞/孩子喊播放歌单儿歌爸妈喊播放歌单广场舞互不打扰。老人不会打字动嘴就行。想要孩子安静试试隐藏玩法对小爱说播放歌曲小猪佩奇的故事XiaoMusic会先用yt-dlp把故事下载下来再开始播放。这个先下载再播放的机制是它最让我惊喜的地方——没有曲库限制你说什么它找什么。在线找不到的冷门内容它也能自己去下载。想听网络电台配一个JSON歌单XiaoMusic支持JSON格式的网络歌单可以放歌曲也可以放电台流type标记为radio就会一直循环播放[ { name: 我的电台, musics: [ { name: 中央之声, url: http://ngcdn001.cnr.cn/live/zgzs/index.m3u8, type: radio } ] } ]把这段JSON粘贴到设置页的自定义歌单输入框点保存播放歌单我的电台就能让音箱当收音机用。项目还自带m3u转JSON的网页工具在static/default/里电台文件秒变歌单。想要闹钟功能定时任务安排上想被音乐叫醒crontab.py支持标准Cron表达式还能识别工作日和休息日带workday/offday标记。比如30 7 * * 1-5 # workday意思是工作日早上7点半播放。搭配节假日数据周末自动跳过闹铃比手机闹钟聪明多了。Web界面里可以直接搜索本地或网络歌曲、双击快速播放、拖动进度条跳转手机浏览器打开一样能用。踩坑实录我替你踩过的三个坑写代码的人最懂坑在哪下面这些是我和社区用户真实遇到过的提前告诉你能省一晚上。坑一日志说在播放音箱却没声音。检查两处一是hostname是不是填成了localhost改成NAS的局域网IP192.168开头的那个二是端口是不是改过。音箱要通过局域网直接访问你的服务填错地址它就找不到播放源。坑二用几天后后台看不到设备列表了。十有八九是获取对话记录这个开关一直开着请求太频繁被小米限流。不用语音控制的时候随手关掉这个开关。另外可以把TTS改成Edge-TTS音色能减轻登录压力还能用上更自然的声音。坑三FLAC放不出来。部分老型号音箱比如L05B、L05C不支持FLAC无损格式。两种解法提前批量转成MP3或者打开设置里的转换为MP3选项——后者会占CPU曲库大的话建议选前者。安全提醒如果必须把服务暴露到公网请务必开启密码登录并设置复杂密码不要在公共WiFi下配置小米账号。更不要用绑定摄像头的小米账号账号泄露的代价你懂的。拔高收尾从能放歌到音乐中枢跑通XiaoMusic只是开始。它的插件系统能让你走得更远——项目在plugins/目录提供了Python插件接口比如httpget.py、httppost.py你可以写自定义口令让音箱去调用任意HTTP接口。有人用它做了语音点咖啡、语音查天气玩法完全取决于你的脑洞。再配合Web界面看播放列表的动态效果你会觉得这套系统不只是能用而是好用现在轮到你了。按这个清单动手克隆项目仓库git clone https://gitcode.com/GitHub_Trending/xia/xiaomusic顺便看看源码和文档照着上面的三步用Docker把服务跑起来在设置页绑定小米账号勾选你的音箱把几首喜欢的歌丢进音乐目录喊一句播放歌曲歌名再试一次播放歌单目录名把文件夹变成家庭歌单。遇到问题别慌项目文档的FAQ问题集合基本覆盖了所有常见报错Web设置页底部还有下载日志文件按钮排查时把日志翻出来对号入座就行。从音箱只会放平台给的歌到你说什么它就放什么中间只差一个XiaoMusic。音乐是生活的背景音而让它变成你想要的样子只需要今天这10分钟。去试试吧然后告诉我你家音箱第一首响起的歌是什么。【免费下载链接】xiaomusic使用小爱音箱播放音乐音乐使用 yt-dlp 下载。项目地址: https://gitcode.com/GitHub_Trending/xia/xiaomusic创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考
返回列表