之前用电脑的摄像头,做了一个监控,过年看看有没有哪个臭小子偷偷跑我房间去翻东西。
虽然人体识别功能都有,也对接了QQ机器人,能及时提醒到我,可是那又怎样,熊孩子也不知道我在看着他。我还需要一个喇叭来“呵退”熊孩子才行。
喇叭没有,不过有个小爱音箱,正好之前也整了一个小爱音箱的TTS功能。方式有很多,我是破解了音箱的,属于是最复杂的方式。
还可以用这个node写的,功能也挺全。也最简单。
https://github.com/vv314/xiaoai-tts
或者参考我之前的帖子,用python-miio来控制。
剩下的就是给QQ机器人写个指令,接收到文本消息,就给小爱TTS读出来。这都很简单,QQ机器人基本上文档都很全了
https://github.com/Mrs4s/go-cqhttp
但是!!!小爱的声音太过于温柔,我怕熊孩子吓不走,反倒给我把音箱熊了。你试想,小爱那细嗲嗲的声音,对你说:“快走开~不要进来~”,卧槽这哪里是呵斥,这简直是诱惑。
要是小爱能播放我这粗犷的声音,上去就一顿骂,熊孩子一听,小爱变性了,还骂人,怕是见鬼了,直接溜溜球,效果一定不错。
播放音频的功能,上面提到的3种方案都可以,唯一的问题是,QQ语音要转成小爱可以播放的mp3
机器人接收到的语音,都存在data/voices 里面,格式是amr。这玩意儿ffmpeg还没发直接转。于是我在gayhub上找到了这个项目。
https://github.com/kn007/silk-v3-decoder
不过这个程序是依赖gcc的,如果你的环境不方便安装gcc,可以用这个go写的玩意儿,先解码成pcm文件,再用ffmpeg转。
https://www.fxxkcar.com/file/silk.zip
decoder filename.amr filename.pcm ffmpeg -y -ac 1 -ar 24000 -f s16le -i filename.pcm -c:a libmp3lame -q:a 2 filename.mp3
这里的采样率就用24000,如果你写的很低,声音就会很低沉。当然你可以用,ffmpeg做出各种诡异的音效,起到更好的效果。
下面是一个效果展示的视频
啊啊啊离谱