RTMP协议分析

理论

总体介绍

        RTMP协议是应⽤层协议,是要靠底层可靠的传输层协议(通常是TCP)来保证信息传输的可靠性的。在基于传输层协议的链接建⽴完成后,RTMP协议也要客户端和服务器通过“握⼿”来建⽴基于传输层链接之上的RTMP Connection链接,在Connection链接上会传输⼀些控制信息,如SetChunkSize,SetACKWindowSize。其中CreateStream命令会创建⼀个Stream链接,⽤于传输具体的⾳视频数据和控制这些信息传输的命令信息。RTMP协议传输时会对数据做⾃⼰的格式化,这种格式的消息我们称之为RTMP Message,⽽实际传输的时候为了更好地实现多路复⽤、分包和信息的公平性,发送端会把Message划分为带有Message ID的Chunk,每个Chunk可能是⼀个单独的Message,也可能是Message的⼀部分,在接受端会根据chunk中包含的data的⻓度,message id和message的⻓度把chunk还原成完整的Message,从⽽实现信息的收发。

     介绍

       RTMP(Real Time Messaging Protocol)是一个应用层协议,主要用于 在Flash player和服务器之间传输视频、音频、控制命令等内容。 该协议的突出优点是: 低延时。RTMP基于TCP, 默认使用端口1935。

RTMP 的主要特点如下:

  1. 实时性强:

    • RTMP 采用 TCP 作为传输层协议,可以提供更可靠的实时数据传输。
    • 通过分块传输和优先级控制等机制,可以最大限度地减少传输延迟。
  2. 可靠性高:

    • RTMP 建立在 TCP 之上,能够保证数据传输的可靠性。
    • 支持重传机制来弥补丢包对实时性的影响。
  3. 支持多种媒体格式:

    • RTMP 可以传输 FLV、MP3、H.264 等常见的视频和音频格式。
    • 还支持 ActionScript 对象等数据格式的传输。
  4. 广泛应用:

    • RTMP 被广泛应用于直播、视频点播、在线教育等领域。
    • 主要被 Adobe Flash/AIR 平台和 NGINX 服务器所支持。

总之, RTMP 是一种专门为实时流媒体传输而设计的开放协议,具有高实时性、高可靠性和多格式支持等特点,是当前互联网视频直播和点播领域的重要技术标准之一。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值