手机接入树莓派
隔了两个月了,还是要记录一下做了的事情。仅谈及思路和相关的一些模块,代码不谈及 因为确实太菜鸟。上次提及买到的树莓派4b,小容量 内置树莓派的系统 构架是armhf的。后来有发布新的64系统,我买的内存容量是1g,所以上64位系统 感觉卡成????。刚开始没有发现区别的,直到我需要用到一个webengine的模块 旧版叫webkit 官方已然放弃使用,还是可以用,不过我需要播放网络地址音乐,所以也得弃用。想办法安装webengine这个模块,具体怎么装的了 记得不太清楚了,需要回去看一下。通过树莓派4这带的irsend发射红外信号可以控制空调,距离很短,需要改电路或是买大功率的红外发射二极管。树莓派封顶5v 总电流并发不过几百ma 难道我还能让它飞起来?有懂电路的人告诉我简单方法
思路是这样
1 树莓派作为终中端 连接家里的一些设备比如蓝牙音响 呼吸灯 电源开关 要了解几个东西 比如esp8266 5v和8266相连的继电器 用micropython
2 呼吸灯 电源这些中端都是可控的 我没我找到可以通过调节电压的led灯,只发现以前的钨丝灯可以调节。通过esp的pwm dc来调节,对应的pwm模块也买了一个接220v电压就可以了。这几个都已经实现了,但是国家都已经不提倡用钨丝灯了,我又不懂的怎么控制常规的可调节灯,我xxx心塞
3 蓝牙功放我买了一个 50w的蓝牙5.0独立模块(吐槽一下,连接手机隔了一堵墙一点没问题,连接树莓派 断断续续)通过上和博客里面记录的一个神人写的api调用就可以直接播放音乐了 贼方便
4 python 在安卓手机上编译出来的apk在5.1上运行正常发生正常(魅族的一个老机器), 8.1功能正常 可以录音但是没有出声(lg nexus5),虚拟机用的是雷电模拟器。因为8.1系统的手机数据线接口坏了我也不知道发生了什么事情因为看不到log,我也只有两台安卓手机和两台苹果手机,实在没得办法。使用到的录音模块是pyjnuis 加载,播放直接用soundplayer。语音合成用百度云的 免费版,虽然有次数限制,但是个人测试还是够用d,???? 声音虽然怪,好歹是免费的吖。他的语音识别特定格式,这里我不停测试耗时较长,情况是有时候虚拟机出声,手机不出声,有时候手机出声,虚拟机又宕机:格式用不压缩pcm,16000采样率 16bit 单声道 的后缀wav或者pcm。机器人聊天用的是腾讯云的小微,感觉真的很人工很智障,我只打开了它的闲聊模式,其它设置没有,为了不要一直自己语音那么无聊。比如说打开卧室呼吸灯,她还能给你回句话,不会显得很傻x一样。这里有一点我也弄不了,在主机上加载pyaudio加scipy fftpack和numpy 可以做到自动识别没人说话停止。这两个模块要加到python做的安卓apk 我实在装不上这个依赖包,好像是因为其中一个依赖ffmpeg还是什么的、最后还是放弃。有好的建议的可以给我一个,要不然只能倒计时录音了对话????。
5 python做的ios这个对比安卓apk,就多了一个能识别分贝然后说话停止自动停止的功能。用到了avfundation这个框架,加载这个框架,里面有一个avaudiorecorder 控件,打开这个控件下的meteringenable后power和peak forchannel 这两个东西就会产生变化 ,每次meterupdate都会更新一次。范围是-160到1 到实际上环境变化一般是-30到1.xx 这个范围表示静音,有人说话,或有噪音。 生成ios需要苹果系统,我的主板很老 华硕的r4be 也不是常规型号,配置文件很难找,音频驱动用万能驱动,显卡208芯片的 730 2g d5 不知道其他行n卡行不行,不过我感觉这个运气有点好。因为10.13.6之后n卡驱动基本全军覆灭,我的处理器i7 3960x 也是没有集成显卡,只能死马当活马弄。最后除usb设备只有两个usb可以用外其它基本正常包括待机 ,够用了 反正我只是需要这个打包环境而已,听说前置usb可用。但是我一直裸着无机箱使用,也就没有前置这一说法了,conplist配置文件有兴趣可以m我 我给你发。
(小插曲,苹果内置的tts 是siri。当时我想如果可以用这个模块那就不用百度语音合成这个api接口了,因为它有次数限制,AVSpeechUtterance、AVSpeechSynthesizer、AVSpeechSynthesisVoice。这几个组合就可以发生了,怎奈siri的语音合成也是要通过它自己的网络服务器来合成的,而且速度相对慢一些。只能继续用回百度语音合成了)
总结自己用到的几个主要的模块和环境就当记录一下了,代码写的简易丑陋 不献丑。毕竟懂这个的人非常多,我只是个菜鸟
新版window10下可以直接启用安装ubuntu20.04子系统,在这个系统下安装p4a,和相应的安卓依赖sdk 我不太记得了,得回去翻阅一下再补充。
Mac 10.15.6 xcode用最新的就行 官方最后更新建议是10.3 python2.7 但是我用最新的3.8.2和 新版xcode 11.7 也编译出来了,可能我涉及到的模块不多,thread socket time requests baidu -aip
腾讯 pyobjus os几个大模块,其它好像无足轻重。
先写到这里了,迟些看看有什么要补充的再改