对接亚马逊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 小时前
【计算机视觉基础CV-图像分类】05 - 深入解析ResNet与GoogLeNet:从基础理论到实际应用
图像处理·人工智能·深度学习·神经网络·计算机视觉·分类·卷积神经网络
leigm1231 小时前
深度学习使用Anaconda打开Jupyter Notebook编码
人工智能·深度学习·jupyter
Aileen_0v03 小时前
【玩转OCR | 腾讯云智能结构化OCR在图像增强与发票识别中的应用实践】
android·java·人工智能·云计算·ocr·腾讯云·玩转腾讯云ocr
阿正的梦工坊4 小时前
深入理解 PyTorch 的 view() 函数:以多头注意力机制(Multi-Head Attention)为例 (中英双语)
人工智能·pytorch·python
Ainnle4 小时前
GPT-O3:简单介绍
人工智能
OceanBase数据库官方博客4 小时前
向量检索+大语言模型,免费搭建基于专属知识库的 RAG 智能助手
人工智能·oceanbase·分布式数据库·向量数据库·rag
测试者家园4 小时前
ChatGPT助力数据可视化与数据分析效率的提升(一)
软件测试·人工智能·信息可视化·chatgpt·数据挖掘·数据分析·用chatgpt做软件测试
Loving_enjoy6 小时前
ChatGPT详解
人工智能·自然语言处理
人类群星闪耀时6 小时前
深度学习在灾难恢复中的作用:智能运维的新时代
运维·人工智能·深度学习