『瀚思彼岸』» 智能家居技术论坛

 找回密码
 立即注册
楼主: 秋雨轩

[进阶教程] 你是我的眼,也是我的嘴——利用萤石摄像头TTS播报

  [复制链接]

15

主题

636

帖子

2179

积分

金牌会员

Rank: 6Rank: 6

积分
2179
金钱
1543
HASS币
0
发表于 2021-11-18 21:39:23 | 显示全部楼层
厉害了楼主,佩服大神。
一直想在门口弄个音响TTS,提醒是否下雨等,这下用摄像头兼顾了,哈哈哈
后续再研究下萝卜大神说的,微信语音直接推送到音响TTS出来就更牛了。
回复

使用道具 举报

30

主题

526

帖子

2319

积分

金牌会员

Rank: 6Rank: 6

积分
2319
金钱
1788
HASS币
20
发表于 2021-11-18 23:27:58 | 显示全部楼层
老哥。提示  {"msg":"上传的语音文件格式不正确","code":"111001"} 咋整 baid TTS 节点
回复

使用道具 举报

19

主题

329

帖子

2317

积分

论坛积极会员

积分
2317
金钱
1988
HASS币
0
发表于 2021-11-18 23:36:34 | 显示全部楼层
感谢楼主分享,顺便提示一点,我发现萤石下发语音文件时,好像对语音文件时长有限制,我有一段回家的提醒,文字比较长,下发时提示语音文件时长错误,当我尝试提高百度tts语速或者减小这段话的长度时,播放正常,由于我没有本地保存tts文件,所以还无法测试具体的时长限制,我已经在萤石上发了工单询问。
我回家的提醒如下:女士,欢迎您回家!现在是2021年11月18日晚上10点54分。家中温度为摄氏23.3度,室内温度适宜。家中空气质量一级,优!aqi指数为44。系统探测到室外空气很糟糕,室内空气很清新,建议您一定紧闭所有门窗,必要时手动开启空气净化器和新风系统。今日空气净化系统已经运行了76分钟,剩余44分钟净化时间将在您下次离家的时候完成。我在关闭监控过程中出现了问题,系统检测监控尚未完全关闭,建议您手动检查。您已经离开家24小时,期间,妈妈曾经在家,在妈妈离开家的8小时时间里,我曾经检测到有1次有人在家中活动,强烈建议您检查是否正常!信息播报完毕,祝您在家愉快。
回复

使用道具 举报

19

主题

329

帖子

2317

积分

论坛积极会员

积分
2317
金钱
1988
HASS币
0
发表于 2021-11-18 23:49:16 | 显示全部楼层
另外,可以使用我这个流,直接调用百度语音的api接口,返回的二进制的语音文件直接传给萤石api,可以避免保存本地tts文件。
[{"id":"f9cd54d46d358393","type":"tab","label":"流程 2","disabled":false,"info":""},{"id":"1c68dcdac28f5072","type":"inject","z":"f9cd54d46d358393","name":"tts文字","props":[{"p":"payload"},{"p":"topic","vt":"str"}],"repeat":"","crontab":"","once":false,"onceDelay":0.1,"topic":"","payload":"这是一条语音测试,主要是看看你的摄像头是不是哑巴了。","payloadType":"str","x":130,"y":220,"wires":[["d4fceff1b24fc34e"]]},{"id":"d4fceff1b24fc34e","type":"function","z":"f9cd54d46d358393","name":"百度tts-api接口数据整理","func":"msg.headers = {\n    "Content-Type" : "application/x-www-form-urlencoded"\n}\nvar tex = encodeURI(msg.payload)\nvar tok = flow.get('baidu_token')\nvar cuid = 'TbEm3kYYpVuKT0xnQLs3UOGq'\nmsg.payload = {\n    'tex' : tex,\n    "tok" : tok, \n    "cuid" : cuid, \n    'ctp' : '1',\n    'lan' : 'zh',\n//    'per' : '1',\n//    'spd' : '6'\n}\nreturn msg;","outputs":1,"noerr":0,"initialize":"","finalize":"","libs":[],"x":330,"y":220,"wires":[["4f03eb2550039a1e"]]},{"id":"4f03eb2550039a1e","type":"http request","z":"f9cd54d46d358393","name":"api请求","method":"POST","ret":"bin","paytoqs":"ignore","url":"https://tsn.baidu.com/text2audio","tls":"","persist":false,"proxy":"","authType":"","x":520,"y":220,"wires":[["0146e61d9333ab16"]]},{"id":"0146e61d9333ab16","type":"function","z":"f9cd54d46d358393","name":"萤石接口数据整理","func":"msg.token=global.get('ezviz_token','store')\nmsg.url = 'https://open.ys7.com/api/lapp/voice/sendonce'\ndata = msg.payload\nmsg.payload = {\n  file: {\n    field: 'voiceFile',\n    data: data,\n    type: 'base64',\n    name: 'tts'\n  },\n  formOptions: {\n    accessToken: `${msg.token}`,\n    deviceSerial:'你自己的deviceSerial',//你自己的deviceSerial\n  }\n}\nreturn msg;","outputs":1,"noerr":0,"initialize":"","finalize":"","libs":[],"x":730,"y":220,"wires":[["75c29e3b25904d8f"]]},{"id":"75c29e3b25904d8f","type":"http-send-multipart-form-v3","z":"f9cd54d46d358393","name":"摄像头播放","filetype":"base64","formparts":"","ret":"txt","url":"https://open.ys7.com/api/lapp/voice/sendonce","tls":"","sendrequest":false,"x":930,"y":220,"wires":[[]]},{"id":"deb49c376c58a5b1","type":"function","z":"f9cd54d46d358393","name":"token拉取数据处理","func":"msg.headers = {\n    "Content-Type" : "application/x-www-form-urlencoded"\n}\nmsg.payload = {\n    'grant_type' : 'client_credentials',\n    "client_id" : "", //ApiKey\n    "client_secret" : "" //Secret\n}\nreturn msg;","outputs":1,"noerr":0,"initialize":"","finalize":"","libs":[],"x":310,"y":60,"wires":[["aa23297761faa886"]]},{"id":"d328cb682ee9417c","type":"inject","z":"f9cd54d46d358393","name":"","props":[{"p":"payload"}],"repeat":"","crontab":"00 02 * * 1","once":false,"onceDelay":0.1,"topic":"","payloadType":"date","x":120,"y":60,"wires":[["deb49c376c58a5b1"]]},{"id":"aa23297761faa886","type":"http request","z":"f9cd54d46d358393","name":"百度token获取请求","method":"POST","ret":"obj","paytoqs":"ignore","url":"https://aip.baidubce.com/oauth/2.0/token","tls":"","persist":false,"proxy":"","authType":"","x":530,"y":60,"wires":[["5de0e72a62bb3058"]]},{"id":"5de0e72a62bb3058","type":"change","z":"f9cd54d46d358393","name":"保存","rules":[{"t":"move","p":"payload.access_token","pt":"msg","to":"baidu_token","tot":"flow"}],"action":"","property":"","from":"","to":"","reg":false,"x":730,"y":60,"wires":[[]]}]

回复

使用道具 举报

11

主题

266

帖子

2574

积分

金牌会员

Rank: 6Rank: 6

积分
2574
金钱
2298
HASS币
50
 楼主| 发表于 2021-11-19 09:03:48 | 显示全部楼层
dinglifeng 发表于 2021-11-18 23:27
老哥。提示  {"msg":"上传的语音文件格式不正确","code":"111001"} 咋整 baid TTS 节点 ...

你这个问的太宽泛了,不好排除故障啊。根据现在你提供的线索,只能证明要么是百度TTS节点没有正确生产语音文件数据,要么就是语音文件数据没有正确传给萤石云。建议你多拉几个debug出来看看到底哪里的数据不正确。
回复

使用道具 举报

30

主题

526

帖子

2319

积分

金牌会员

Rank: 6Rank: 6

积分
2319
金钱
1788
HASS币
20
发表于 2021-11-19 10:12:39 | 显示全部楼层
秋雨轩 发表于 2021-11-19 09:03
你这个问的太宽泛了,不好排除故障啊。根据现在你提供的线索,只能证明要么是百度TTS节点没有正确生产语 ...

流是复制您的,我看debug内容应该是没有msg.data 截屏2021-11-19 上午10.04.11.png

inject节点内容有填写msg.data
截屏2021-11-19 上午10.04.45.png
我检查了看baidutts 也没问题啊
截屏2021-11-19 上午10.04.59.png
截屏2021-11-19 上午10.05.12.png
回复

使用道具 举报

11

主题

266

帖子

2574

积分

金牌会员

Rank: 6Rank: 6

积分
2574
金钱
2298
HASS币
50
 楼主| 发表于 2021-11-19 11:19:41 | 显示全部楼层
dinglifeng 发表于 2021-11-19 10:12
流是复制您的,我看debug内容应该是没有msg.data

inject节点内容有填写msg.data

你的截图里不是都写的很清楚了吗?“语音合成失败,请检查配置”

问题肯定就在百度TTS那里,看看是不是百度TTS的配置填错了,或者是不是百度云有什么问题了,去百度云看看,有没有开通TTS应用,有没有申请TTS额度。
回复

使用道具 举报

19

主题

329

帖子

2317

积分

论坛积极会员

积分
2317
金钱
1988
HASS币
0
发表于 2021-11-19 12:08:43 | 显示全部楼层
BobbyCoon 发表于 2021-11-18 23:36
感谢楼主分享,顺便提示一点,我发现萤石下发语音文件时,好像对语音文件时长有限制,我有一段回家的提醒, ...

自问自答,萤石工单答复最长60S
回复

使用道具 举报

30

主题

526

帖子

2319

积分

金牌会员

Rank: 6Rank: 6

积分
2319
金钱
1788
HASS币
20
发表于 2021-11-19 12:35:14 | 显示全部楼层
BobbyCoon 发表于 2021-11-18 23:49
另外,可以使用我这个流,直接调用百度语音的api接口,返回的二进制的语音文件直接传给萤石api,可以避免保 ...

您这个报错 无法导入
回复

使用道具 举报

30

主题

526

帖子

2319

积分

金牌会员

Rank: 6Rank: 6

积分
2319
金钱
1788
HASS币
20
发表于 2021-11-19 13:09:48 | 显示全部楼层
秋雨轩 发表于 2021-11-19 11:19
你的截图里不是都写的很清楚了吗?“语音合成失败,请检查配置”

问题肯定就在百度TTS那里,看看是不是 ...

截屏2021-11-19 下午1.08.19.png

这应该是没次数了吧,我看也没地方能领取
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

Archiver|手机版|小黑屋|Hassbian

GMT+8, 2024-4-19 16:49 , Processed in 3.321646 second(s), 32 queries .

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

快速回复 返回顶部 返回列表