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.pswp.cn/diannao/93350.shtml
繁体地址,请注明出处:http://hk.pswp.cn/diannao/93350.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

使用Python,OpenCV,K-Means聚类查找图像中最主要的颜色

使用Python&#xff0c;OpenCV&#xff0c;K-Means聚类查找图像中最主要的颜色 分别把跑图聚类选取1, 2, 3&#xff0c;4, 5, 6, 7&#xff0c;8, 9种主要颜色并绘制colormap颜色图; 效果图 分别把跑图聚类选取3&#xff0c;4, 5&#xff0c;7&#xff0c;9种主要颜色并绘制…

DBAPI 实现分页查询的两种方法

DBAPI 实现分页查询的两种方法 背景 在进行分页查询时&#xff0c;用户通常需要传入当前页码 pageNo 和每页显示的条数 pageSize 参数。根据这两个参数&#xff0c;我们可以从数据库中查询出当前页的数据。以 MySQL 为例&#xff0c;分页查询的 SQL 语句如下&#xff1a; se…

第五天上课 SSLPolicy策略和Network Discovery技术

SSL Policy场景1:拥有自家服务器的私钥&#xff0c;解密访问自家服务器的ssl流量场景2: 内部用户访问互联网的ssl流量&#xff0c;需要解密并重签名Correlation and Compliance相关性与合规性配置相关性与合规性策略&#xff0c;在10.1.1.0/24网络中&#xff0c;当通过Network …

进阶07:C#与通用OPC UA通信范例

本节目标&#xff1a; 1&#xff09;安装软件&#xff0c;搭建虚拟OPC UA服务器&#xff1b; 2&#xff09;使用UaExpert&#xff0c;读取OPC UA服务器中的变量&#xff1b; 3&#xff09;编写Winform程序&#xff0c;读写服务器中变量值&#xff0c;创建订阅触发事件&#…

大模型微调学习笔记(基于讯飞星辰MaaS速学版)

文章目录参考资料说明大模型微调入门微调简介微调步骤数据准备模型选择训练方式效果评估模型部署大模型微调&#xff08;基于讯飞星辰Maas&#xff09;构建数据集方法1&#xff1a;预置数据集方法2&#xff1a;创建数据集数据辅助工具数据集划分模型微调数据配置参数配置模型部…

[CSS]让overflow不用按shift可以滚轮水平滚动(纯CSS)

前言 我不爽前端无法直接滚轮横向滚动很久了 明明浏览器可以直接判断 x滚动且y不滚动的时候滚轮事件可以直接操作横向滚动 这个是我探究出来的方法,尤其适合这种很多很多小tag的情况解析 原理是将竖向排列的overflow旋转成横向,实际操作的还是竖向overflow.继而实现鼠标滚轮不用…

截稿倒计时 TrustCom‘25大会即将召开

会议资讯IEEE TrustCom-2025&#xff08;第24届IEEE计算与通信领域信任、安全与隐私国际会议&#xff09;是一个展示可信计算、通信、网络和机器学习领域前沿成果的学术平台。会议聚焦计算机系统、网络及人工智能在信任、安全、隐私、可靠性、可依赖性、生存性、可用性和容错性…

Day4.AndroidAudio初始化

1.AudioServer初始化 AudioServer 是 Android 音频系统的核心服务&#xff0c;负责管理音频硬件资源、音频策略调度、跨进程音频通信等核心功能。它由 Init 进程启动&#xff0c;是系统核心服务之一&#xff0c;直接影响音频播放、录音、音效处理等功能的正常运行。 1.1AudioSe…

OSPF 协议(多区域)

1. OSPF 单区域存在的问题① LSDB庞大&#xff0c;占用内存大&#xff0c;SPF计算开销大&#xff1b;② LSA洪泛范围大&#xff0c;拓扑变化影响范围大&#xff1b;③ 路由不能被汇总&#xff0c;路由表庞大&#xff0c;查找路由开销大。2. OSPF 多区域优点① 每个区域独立存储…

R 语言绘制六种精美热图:转录组数据可视化实践(基于 pheatmap 包)

在转录组 Bulk 测序数据分析中&#xff0c;热图是展示基因表达模式、样本聚类关系的核心可视化工具。一张高质量的热图不仅能清晰呈现数据特征&#xff0c;更能提升研究成果的展示效果。本文基于 R 语言的pheatmap包&#xff0c;整理了六种适用于不同场景的热图绘制方法&#x…

图片PDF识别工具:扫描PDF文件批量OCR区域图识别改名,识别大量PDF区域内容一次性改名

以下是使用“咕嘎批量OCR识别图片PDF多区域内容重命名导出表格系统”进行操作的具体步骤&#xff1a;1. 打开工具并获取区域坐标打开软件后&#xff0c;选择“PDF识别模式”。导入一个PDF文件作为样本&#xff0c;框选需要提取文字的区域&#xff0c;并保存区域坐标。如果有多个…

中国汽车能源消耗量(2010-2024年)

1419中国汽车能源消耗量&#xff08;2010-2024年&#xff09;发文主题分布数据来源中华人民共和国工业和信息化部-中国汽车能源消耗量查询中国汽车能源消耗量查询 (miit.gov.cn)时间跨度2010-2024年数据范围全国汽车企业数据指标本数据集包含包含传统汽车能源消耗量数据以及新能…

Python 实现服务器自动故障处理工具:从监控到自愈的完整方案

在服务器运维过程中,80% 的故障都是重复性的简单问题(如磁盘空间不足、内存泄漏、服务进程挂掉等)。本文将介绍如何使用 Python 开发一款轻量级自动故障处理工具,通过状态监控、异常诊断、自动修复三个核心模块,实现服务器常见故障的无人值守处理。 核心依赖库 psutil:跨…

图片上传 el+node后端+数据库

模版部分&#xff1a;鼠标悬浮到头像的部分就出现下拉框显示可以修改头像&#xff0c;el-upload是隐藏的&#xff0c;可能只是为了实现on-change函数和before-upload函数吧这块做的确实有点马虎了。<div class"r-content"><el-dropdown><span class&q…

[java 常用类API] 新手小白的编程字典

目录 1.API 1.1定义: 2.Object类 2.1 toString() 方法 2.2 equals() 方法 3. Arrays 类 3.1 equals() 方法 3.2 sort() 方法 3.2.1排序 3.2.2 自定义对象排序 3.3 binarySearch() 方法 3.4 copyOf() 方法 3.5 fill() 方法 3.6 toString() 方法 4.基本数据类型包装类 4.…

去除视频字幕 2, 使用 PaddleOCR 选取图片中的字幕区域, 根据像素大小 + 形状轮廓

有人问我在搞什么&#xff1a;就是做这里的第2步。问题描述这里误导&#xff0c;误判&#xff0c;太严重了。如果我把这个区域当做是 mask ,那么真正的目标会被去除掉还有什么建议吗&#xff1f;比如我能否根据这个mask 的大致形状来判断它是不是字幕&#xff0c; 如果不是细长…

Ubuntu 连接Visual SVN

Windows服务器上的svn仓库为&#xff1a; https://ldw_online:8443/svn/OnlineRepository/LVC IP地址为192.168.8.8 4. 从 Ubuntu 测试连通性 在 Ubuntu 上可以用&#xff1a; bash 复制编辑 curl -vk https://192.168.8.8:8443/ 如果返回 HTTP 头或 SSL 握手成功&#xff…

JAVA:Spring Boot 集成 Protobuf 的技术指南

🚀 1、简述 在分布式服务通信中,数据序列化与反序列化的效率对系统性能影响极大。Protocol Buffers(Protobuf) 是由 Google 提出的一种高效的结构化数据序列化协议,具有: 🔥 高性能(远优于 JSON/XML) 📦 跨语言支持 📉 较小的体积 本篇将带你了解如何在 Spring…

SQLServer内存释放工具介绍:一款实用的数据库性能优化助手

SQLServer内存释放工具介绍&#xff1a;一款实用的数据库性能优化助手 去发现同类优质开源项目:https://gitcode.com/ 在数据库管理中&#xff0c;内存释放是优化服务器性能的重要环节。本文将为您详细介绍一款名为SQLServer内存释放工具的开源项目&#xff0c;帮助您轻松管理…

《蓝耘容器全栈技术指南:企业级云原生与异构计算实战大全》

&#x1f31f; 嗨&#xff0c;我是Lethehong&#xff01;&#x1f31f; &#x1f30d; 立志在坚不欲说&#xff0c;成功在久不在速&#x1f30d; &#x1f680; 欢迎关注&#xff1a;&#x1f44d;点赞⬆️留言收藏&#x1f680; &#x1f340;欢迎使用&#xff1a;小智初学计…