更新 2024-6-7

siyuan 2024-06-08 22:33:45 +08:00
parent ac2069b769
commit 72da421ae9

@ -16,6 +16,22 @@ RTMP不仅支持音视频数据的传输还可以传输其他类型的数据
- 可扩展性和灵活性
RTMP可以在本身的基础上添加自定义的消息类型和控制命令来实现多种命令场景它也有很强的灵活性例如RTMP提供了一系列的控制命令例如开始、停止流发布、订阅流等使得RTMP具有亏扩展性和灵活性。
2.1
2.1 RTMP数据单元Message
数据单元是RTMP传输以下信息的基本单位用于封装音频、视频、命令和数据。每个数据单元都有独特的头部信息用于描述数据的属性和格式。一个数据单元包含一下几个部分。
- 类型
主要分为·:音频数据,用于传输音频数据。视频数据,用于传输视频数据。数据消息,用于传输数据。控制消息,用于传输连接,发布,订阅,播放,停止等消息。
- 消息长度
数据单元的有效负载长度,以字节为单位。
- 时间戳
数据单元产生的时间,一般用来同步音视频播放和计算延迟。
- 流ID
标识数据单元所属的流一个RTMP可以有多个并发的流
2.2 RTMP数据块Chunk
数据块是RTMP协议传输的基本单位用与客户端和服务端之间传递数据单元。在传输的过程中·数据单元会被分成多个数据块以便有效的利用网络带宽减少网络延迟提高实时性每个RTMP数据块包含下面的部分。