对接亚马逊aws通过echo音箱监视摄像头

目前条件:

1、echo音箱

2、摄像头设备,可以对外输出rtsp视频流

目标:

1、通过音箱可以直接查看摄像头的视频流。

对接alexa的流程可以参考:https://github.com/alexa-samples/skill-sample-java-smarthome-switch/tree/master

  • 碰到问题:

1、rtsp需要端口在443,并且支持TLS1.2。

解决方案:

1、使用FFmpeg+mediamtx ,先走通流程。

步骤:

1、下载FFmpeg和mediamtx

2、使用ffmpeg产生视频流

ffmpeg -re -i test.mp4 -c copy -f rtsp rtsp://127.0.0.1:8554/stream

3、启动mediamtx

4、mediamtx配置证书,一开始使用的是自生成的证书。

参考链接:https://blog.yeahlowflicker.com/article/setting-up-a-rtsp-server

  • #####碰到问题:

1、alexa所有接口都已经正确响应,但是输入show me the door station(设备名称)的时候,给出的rtsp视频流链接是:rtsps://100.111.222.193:443/stream,但是音箱一直返回" I'm having trouble reaching the door station"

后续经过google和alexa 网站的技术支持,发现是以下原因:

1、证书不能是自己创建的,要用申请的。

2、不支持rtsps,只支持rtsp的

解决方法:

1、阿里云申请域名,然后申请了临时证书。

2、使用stunnel用于做tls代理。配置内容如下。(这个配置有点坑,下载最新版本,里面竟然直接说明TLS1.2不支持。。。然后我最后下载的是5.44版本)

cert = E:\download\123.pem

key = E:\download\123.key

sslVersion = all

socket = l:TCP_NODELAY=1

socket = r:TCP_NODELAY=1

output = E://stunnel.log

rtsp

accept = 443

connect = 8554

TIMEOUTclose = 0

最后我通过FFmpeg做rtsp视频的转发,完成设备视频流转成支持tls的视频流(尝试过改connect的方式,但是一直无法成功。不懂为什么)

ffmpeg -hwaccel -i rtsp://admin:123456@100.111.222.104:8554/ch01 -c copy -f rtsp rtsp://admin:admin@127.0.0.1:8554/stream

经过以上尝试之后音箱成功能够使用。

国内对接aws echo音箱的文章太少了。。都只能靠谷歌。

提醒:

1、从apkcombo.com下载下来的alexa应用,打开的时候可能会提示异常,需要把手机的语言切换成英文再打开就可以了。。

2、alexa 那边支持输入语音。如果是当前是中文的话,命令不能文字输入的切换到英文就可以。

3、如果rtsp视频源是局域网的话,也需要使用保证视频源和echo音箱是在同一个网络哦。

接下去计划:

1、走通音箱对接的全部流程,包括账户授权流程等。

相关推荐
罗西的思考1 分钟前
【智能硬件】AI 眼镜论文笔记
人工智能
AI浩1 分钟前
Mamba YOLO: 基于状态空间模型的目标检测简单基线
人工智能·yolo·目标检测
GitCode官方20 分钟前
面壁智能入驻 GitCode:端侧 AI 开发获全新生产力引擎
人工智能·gitcode
拓端研究室35 分钟前
专题:2025AI时代的医疗保健业:应用与行业趋势研究报告|附130+份报告PDF、数据、可视化模板汇总下载
大数据·人工智能
咋吃都不胖lyh37 分钟前
激活函数是什么,神经网络中为什么要有激活函数
人工智能·深度学习·神经网络·激活函数
Ma04071340 分钟前
【论文阅读15】-DiagLLM:基于大型语言模型的多模态推理,用于可解释的轴承故障诊断
人工智能·语言模型·自然语言处理
芯盾时代1 小时前
《网络安全法》完成修改,AI安全正式“入法”
人工智能·安全·web安全
啥都鼓捣的小yao1 小时前
一、什么是语言模型?
人工智能·语言模型·自然语言处理
行板Andante1 小时前
AttributeError: ‘super‘ object has no attribute ‘sklearn_tags‘解决
人工智能·python·sklearn
kaikaile19951 小时前
基于MATLAB的传统插值法实现超分辨率重建
人工智能·matlab·超分辨率重建