更新 2024-6-7

siyuan 2024-06-08 22:11:26 +08:00
parent db788e1b2c
commit ac2069b769

@ -3,8 +3,19 @@
2. 把OTA升级中的size通过head获取然后重构了部分代码。 2. 把OTA升级中的size通过head获取然后重构了部分代码。
#学习内容 #学习内容
1. 观看了SDK文章中的架构设计使我知道这块代码是做什么的例如系统架构主要分为三部分平台、赛达SDK、设备厂商主程序。通过平台调用Grpc将命令传递到SDK模块SDK模块将命令下发到厂厂商厂商将结果返回SDKSDK将消息内容通过Grpc协议传递给平台(回调函数) 1. 观看了SDK文章中的架构设计使我知道这块代码是做什么的例如系统架构主要分为三部分平台、赛达SDK、设备厂商主程序。通过平台调用Grpc将命令传递到SDK模块SDK模块将命令下发到厂厂商厂商将结果返回SDKSDK将消息内容通过Grpc协议传递给平台(回调函数)
2. RTMP 2. RTMP
RTMP是基于TCP协议的实时消息传输协议应用层协议初步目的是为了解决FLash播放器中实时音视频传输问题虽然目前Flash被逐渐淘汰RTMP备受挑战但是在很多的应用场景中RTMP依然是首选例如实时互动场景等即视频直播、视频会议、网络广播等。具体的流程为在通过TCP建立链接后RTMP协议也要客户端和服务端通过“HandShake”握手来建立基于传输层链接之上的RTMP Connection链接在建立连接之后可以传输一些控制信息例如SetChunkSizeSetACKWindowSize等。其中的CreateStream命令会创建一个Steam链接用于具体音视频数据和控制命令。在进行数据传输时会进行格式化RTMP Message,在传输的过程中为了更好的实现多路复用分包和信息的公平性发送端会将Message消息划分为带有Message ID的Chunk,每个Chunk可以是单独的一个Message也可以是Message中的一部分。在接收端会根据Chunk中包含的Data的长度、id把chunk还原成完成的Message,从而实现消息的发送和接受最后关闭链接释放内存。下面是RTMP的优势和特点。
- 低延时
RTMP提供了稳定的连接和较低的延迟RTMP基于TCP协议TCP能保证数据包的顺序和错误校正即RTMP传输的音视频能够保持高质量不被丢包、
- 支持多种媒体类型
RTMP不仅支持音视频数据的传输还可以传输其他类型的数据包括文本图像脚本数据等。
- 可扩展性和灵活性
RTMP可以在本身的基础上添加自定义的消息类型和控制命令来实现多种命令场景它也有很强的灵活性例如RTMP提供了一系列的控制命令例如开始、停止流发布、订阅流等使得RTMP具有亏扩展性和灵活性。
2.1