当前位置: 首页 > news >正文

AWS WebRTC:我们的业务模式

拉流、卡录基本流程

设备端(摄像机) 与 App端 是通过 AWS KVS WebRTC 信令服务进行“点对点连接”的,真正的媒体数据(音视频)是通过 WebRTC 的 ICE 通道(P2P 或 TURN)直接传输的,而不是经过 KVS 中转。

  [Viewer] <---> [AWS Signaling Service] <---> [Master]↘                                ↙↘------- ICE / STUN --------↙(P2P or TURN)↔↔↔↔↔  视频/音频数据传输  ↔↔↔↔↔
  • 信令(SDP/ICE)交换:通过 AWS KVS 的 Signaling Channel
  • 媒体(音视频)数据传输:通过 WebRTC 的 RTP 通道,不走 KVS 存储服务
  • WebRTC 模式下,KVS 提供“信令通道”服务,用于帮助 Master 和 Viewer 建立连接。

Webrtc可以传送实时画面,也可以播放本地文件,我们业务中的设备将视频录制在本地,之后借助webrtc,给app播放本地视频,这是卡录的实现。

媒体数据传输

  • 视频流(RTP)直接在 Master 和 Viewer 之间传输
  • 若网络条件不允许 P2P,AWS 的 TURN 服务器会作为中继(还是不经过 KVS 存储)
  • 无论是 P2P 还是 Relay(TURN 中继),Master 和 Viewer 之间传输媒体数据时,使用的都是 RTP 通道。

补充说明

那么什么时候才走到 AWS KVS 的“Media 服务”?

如果设备端使用的是KVS Producer SDK(使用 PutMedia 或 PutFrame)进行持续推流,使用 HLS / DASH 播放回放链接,才会用到 AWS KVS 的核心存储服务。

云录模式

我们的云录事件业务场景是:
1、设备(云台摄像机)触发事件开始录制;
2、生成事件封面图上报到s3;
3、生成m3u8文件;
4、上报ts文件和m3u8;
5、事件录制中持续上报ts和覆盖m3u8,直到事件结束;
6、业务云提供接口给app端,app端下载ts文件和m3u8文件进行播放。

具体流程请参考下篇文章:
https://blog.csdn.net/zhang_jiamin/article/details/149328779?spm=1011.2415.3001.5331

http://www.lryc.cn/news/599780.html

相关文章:

  • 壁纸管理 API 文档
  • MybatisPlus-17.扩展功能-JSON处理器
  • Asp.net core mvc中TagHelper的GetChildContentAsync和Content区别
  • 【04】C#入门到精通——C# 程序错误处理, try catch 捕获异常,避免程序崩溃
  • Android 的16 KB内存页设备需要硬件支持吗,还是只需要手机升级到Android15系统就可以
  • [python][基础]Flask 技术栈
  • c盘temp文件夹可以删除吗?C盘空间清理指南来了
  • epoll_event数据结构及使用案例详解
  • WPF高级学习(一)
  • 智能机器人的技术革命:从感知到决策的全栈架构解析
  • leetcode933最近的请求次数
  • Keepalived 深度技术解析与高可用实践指南
  • 三种深度学习模型(GRU、CNN-GRU、贝叶斯优化的CNN-GRU/BO-CNN-GRU)对北半球光伏数据进行时间序列预测
  • Python 爬虫(五):PyQuery 框架
  • Gin 框架的中间件机制
  • 【世纪龙科技】新能源汽车电驱动总成装调与检修仿真教学软件
  • PHP:从入门到实践——构建现代Web应用的利器
  • 【STM32项目】有毒气体监测
  • VUE懒加载(4种方式)
  • 【Android】桌面小组件开发
  • Java设计模式-建造者模式
  • Tomcat线程池深度优化指南:高并发场景下的maxConnections计算与监控体系
  • iOS 加固工具实战解析,主流平台审核机制与工具应对策略
  • iOS WebView 调试实战,文件上传与权限弹窗异常的排查路径
  • Win11批量部署神器winget
  • 【通识】算法案例
  • Python--文件操作
  • MYSQL高可用集群搭建--docker
  • Kingbasepostgis 安装实践
  • 电子电气架构 --- 车载软件与样件产品交付的方法