-
Notifications
You must be signed in to change notification settings - Fork 137
Open
Labels
技术文章技术文章技术文章
Description
最近做了一些折腾,花了点精力终于实现了晚上趟床上看书不用下地,直接跟小爱说一声关灯,手指机器人就能控制开关了。
效果
5ff47a26ceba3da409fa8c9b90bc69.mp4
手指机器人选购
- 开始选用了一款射频开关的,控制不灵敏放弃
- 之后找了款配合米家的,但是逆向蓝牙略麻烦,米家这块安全性做的不错
- 最后选定了一款涂鸦的,可以无痛申请开发者,拿到 local token, 就它了(大家如果选用任意平台搜索涂鸦手指机器人就行)
如何操作
- 结合 xiaogpt 使用 git clone 的方式,因为我们需要改一些代码(未来可能会做成插件)
- 下载涂鸦 app 然后参考这个项目拿到所有的 key -> https://github.com/redphx/tuya-local-key-extractor
- 使用这个项目设置手指机器人的蓝牙并测试 https://github.com/redphx/poc-tuya-ble-fingerbot (可能需要改一定代码,如果你想复刻出现困难可以留 comment 我来帮忙
- 把 fingerbot 代码整合进 xiaogpt 并更改关键词
- 搞定
By the way
我还给 miservice 加了循环播放和列表播放,下面是一些技术细节。
- 需求来自这个 issue 请问如何控制播放一个URL列表? MiService#16
- 最困难的事如何拿到 remote url mp3 的时长,我还改写了个 js 项目 -> python https://github.com/yihong0618/remote_mp3_duration
- 后来发现并不完美,有些 ffmpeg 转换的 mp3 需要计算 samples
- 既然都是拿 header 去解析,但传统的 mutagen 不支持 url,那么我为啥不给支持了呢
- 具体参考这个 commit yihong0618/MiService@53f9262 我们只需要最多拿前 1000 个字节也就能完成解析,也就是只需要 temp file
- 搞定
效果:
e385e908071aeac3e6f00f63e2731b.mp4
ttys3, yihong0618, huxiaoxu2019 and renjieliu
Metadata
Metadata
Assignees
Labels
技术文章技术文章技术文章