树莓派音乐闹钟,定时播放网易云音乐每日推荐歌单歌曲及插播语音天气预报
2018-5-31
| 2023-9-1
0  |  0 分钟
页面类型
发布状态
发布日期
文章地址
内容摘要
文章标签
文章分类
icon代码
密码
早些时候写了一篇文章《树莓派打造淡入闹钟,让电台轻轻的叫你起床》,可是现在听FM音质差不说未必也太怀旧了;最近闲下来又写了个Shell脚本配合NeteaseCloudMusicAPI实现播放网易云音乐每日推荐歌曲,并支持插播一段天气预报或者自定义语音提示;由于是纯Shell实现理论上支持运行Shell的Linux系统都能使用。

环境准备

TTS API

使用百度语音将文本转换为音频文件
官方首页:百度TTS 注册教程:官方文档

Weather API

使用和风天气获取城市天气预报信息
官方首页:和风天气 注册教程:官方文档

Environment

Mplayer 播放音乐、播放天气预报以及语音类;JQ 分析API、分析Cookies并保存。
获取网易云音乐的每日歌单需要依赖 NeteaseCloudMusicAPI 安装文档:网易云音乐API

安装脚本

安装好 NeteaseCloudMusicAPI 及注册了百度语音、和风天气后,直接拉取代码库或者在 Github 获取脚本放到任意目录并根据注释修改参数。

脚本参数

只列出关键参数,完整脚本托管在 Github

主程序脚本

脚本名称:NeteaseCloudMusic 脚本参数:-weather(插播天气预报,可选)
播放音乐并插播天气预报:./NeteaseCloudMusic -weather
修改 playermusic() 函数中 *if [ "$weather" = "-weather" ]&&[ "$1" = "1" ];then *的 1 可控制第几首播放天气(0为第一首,1为第二首以此类推)

和风天气脚本

脚本名称:Heweather 脚本参数:T天气简报/S生活指数/K空气质量
例如获取空气质量:./Heweather K

百度语音转换脚本

脚本名称:BaiduTTS 脚本参数参数:(需要转换的文本) (播放音量,若为空则输出音频播放地址)
例如播放一段文本:./BaiduTTS "Hello world" 50

运行脚本

修改好参数后需要给脚本添加执行权限,并测试下

定时启动

将脚本添加到 Systemd **或者 **Crontab 即可实现定时启动既闹钟的功能

Systemd

/lib/systemd/system 创建两个文件
nano /lib/systemd/system/NeteaseCloudMusicApi.service
nano /lib/systemd/system/NeteaseCloudMusic.timer
安装 Unit

Crontab

运行命令 export EDITOR="nano" ; crontab -e -u root 在末尾添加一段代码

END

How to live without music ?
 
极客创意
  • 树莓派
  • 树莓派Aria2不限速下载利器安装与配置全攻略免费 Let's Encrypt 证书申请、部署全攻略与自动续期教程
    目录