摘要:该项目可以通过语音控制小爱音箱播放NAS中的歌曲,如果NAS本地该歌曲不存在,会自动去B站或油管下载存放到本地的指定目录(自动转成MP3格式)。目前支持的自动搜索歌曲格式有:mp3,flac,wav,ape,ogg,m4a, 所有设备类型都已经支持播放。
本内容来源于@什么值得买APP,观点仅代表作者本人 |作者:羊刀仙
大家好,我是羊刀仙。
本期介绍一个国人大大开发的项目:XiaoMusic。
该项目可以通过语音控制小爱音箱播放NAS中的歌曲,如果NAS本地该歌曲不存在,会自动去B站或油管下载存放到本地的指定目录(自动转成MP3格式)。目前支持的自动搜索歌曲格式有:mp3,flac,wav,ape,ogg,m4a, 所有设备类型都已经支持播放。
项目也支持配置 json 格式歌单,支持电台和歌曲,也可以直接用别人分享的链接,同时配备了 m3u 文件格式转换工具,可以很方便的把 m3u 电台文件转换成网络歌单格式的 json 文件。
【播放歌曲】,播放本地的歌曲
【播放歌曲+歌名】,比如:播放歌曲周杰伦晴天,本地找不到会自动下载入库并播放
【上一首】
【下一首】
【单曲循环】
【全部循环】
【随机播放】
【关机】,【停止播放】,两个效果是一样的。
【刷新列表】,当添加新的歌曲进入目录后,可以用这个口令刷新歌单。
【播放列表+列表名】,比如:播放列表其他。
【加入收藏】,把当前播放的歌曲加入收藏歌单。
【取消收藏】,把当前播放的歌曲从收藏歌单里移除。
【播放列表收藏】,这个用于播放收藏歌单。
【播放本地歌曲+歌名】,这个口令和播放歌曲的区别是本地找不到也不会去下载。
【播放列表第几个+列表名】,控制播放'播放列表'的某个文件。
【播放歌曲+关键词】,会搜索关键词作为临时搜索列表播放,比如说【播放歌曲林俊杰】,会播放所有林俊杰的歌。
提前配置文件目录。会用到两个文件目录,仅需要在Docker常用目录下准备一个xiaoMusic文件夹,用于数据持久化。另一个目录则是你存放歌曲的位置,这个可以直接用。
以威联通为例,打开Container Station,创建新的应用程序。将以下代码复制粘贴进框内,修改后进行创建。
version: "3" 最新版本docker compose可删除此行 services: xiaomusic: # 国内镜像源 m.daocloud.io/docker.io/hanxi/xiaomusic image: hanxi/xiaomusic container_name: xiaomusic restart: unless-stopped ports: - 9981:9981 volumes: - /share/Music:/app/music - /share/Music1:/app/music/music1 # 多歌曲目录挂载示例 - /share/Container/xiaomusic/conf:/app/conf environment: - XIAOMUSIC_PORT=9981
如果要修改端口,三处需要保持一致,上面为3个9981;
挂载目录也支持中文名,示例:/data/music1:/app/music/歌曲目录1,支持多层目录,每层的每个目录会识别为一个播放列表。
根据上文部署完毕后,web输入NAS_IP:9981即可访问控制台,我们需要进入控制台继续配置方可使用。
点击左侧栏目的第二个 Purc主题, 进入控制台。
首先输入你的小米账户及登陆密码,点击保存即可。XIAOMUSIC_HOSTNAME 这里,如果你对项目进行了反向代理,则填写外网访问地址,并且在左侧栏【设置】中的【外网访问端口】要修改为监听端口。
接着点击左侧设置,在上面登陆完成后,这里会出现你小米账户所绑定的所有可支持小米音箱。我家就这一个,选中后拉到底直接保存即可。
到这里就可以进行使用,具体语音命令请参照上文。对小爱同学说:播放歌曲+歌曲名,本地找不到会自动进行下载。
示例操作:播放歌曲周杰伦晴天;播放歌曲小猪佩奇的故事。可以看到Docker后台的执行日志,以及在配置的文件目录下缓存好的音频文件。
本地音乐会搜索目录下上面格式的文件,下载的歌曲是 mp3 格式。 已知 L05B L05C LX06 L16A 不支持 flac 格式。 如果你的设备对于某些格式不能播放可以打开【转换为MP3】和【型号兼容模式】选项。
一般我们默认从B站抓取下载,下方的代理地址默认为空;如果选择油管,则需要填写http代理地址。
这里基本是根据作者项目的ISSUES进行总结,更多问题相关请至项目中查阅。
⭕️ 同一个docker可支持几个型号的小爱,比如 did1:客厅,did2:客厅 表示 did1和did2用同一个组名。不配置这个参数就说明一个设备一个分组。后台勾选设备的意图改为哪些设备可以接入。比如: 319762914:a,319518426:a,1236547:b
关于DID获取,找到对应容器,进入容器内部以执行命令。如下图箭头所示,选择容器找到xiaomusic,然后点击执行选中第一个并进入,输入micli list即可获得所有绑定设备的DID。
⭕️ 如果出现登陆报错,可依次尝试以下操作:
修改NAS或服务所在设备的DNS为223.5.5.5
关闭本地代理。
网络由bridge改为host。
米家app重新登陆账号。
小米网重新登陆账号。
⭕️ 其他一些玩法,比如配置歌单、添加电台、自定义口令、批量下载等这些进阶玩法,作者已经介绍的相当详细,大家可以转到Issues的文档汇总中查看。
本篇文章就到这里,觉得不错的朋友可以三连支持下!
感谢观看,本文完~
来源:什么值得买一点号