RTMP握手流程

RTMP(Real-Time Messaging Protocol)

不支持除H.264/AAC之外的标准。

使用TCP,当到达网络拥塞、宽带上限时,传输质量受到影响。

URL格式:

复制代码
rtmp://host:port/app(名称)/stream(流ID)
默认端口:1935

三次握手

数据块详解​
  • ​C0/S0(版本协商)​​:

    • 1字节,标识RTMP版本(通常为0x03)。
    • 若服务器不支持C0的版本,立即断开连接。
  • ​C1/S1(时间戳与随机数据)​​:

    • 时间戳:4字节,客户端/服务器的当前Unix时间戳。
    • 零填充:4字节全零(保留字段)。
    • 随机数据:1528字节,用于后续验证(必须为非零随机值)。
  • ​S2/C2(验证回应)​​:

    • 内容为对方发送的C1/S1的时间戳和随机数据的拷贝,用于确认握手有效性。
相关推荐
richard_yuu5 小时前
JSON vs XML vs 二进制:3种序列化终极选型
xml·c++·qt·学习·json
秋田君5 小时前
QT_实战TCP 聊天程序说明文档以及实现
数据库·qt·tcp/ip
byxdaz18 小时前
QT中服务使用
开发语言·qt
秋田君1 天前
QT_网络编程体系
网络·arm开发·qt
Quz1 天前
QML TextArea 实战(下):大文本加载与性能优化
qt
Quz1 天前
QML TextArea 实战(中):Markdown 渲染与保持滚动
qt
C++ 老炮儿的技术栈2 天前
基于Qt实现轻量化本地音乐播放器
开发语言·c++·qt·c·播放器·音乐
我不是疯子是傻子2 天前
Qt 实时曲线卡顿优化:从QPainter到OpenGL的3级加速实战
开发语言·qt
秋田君2 天前
QT_XML文件操作
xml·数据库·qt
我不是疯子是傻子2 天前
串口通信数据帧粘包拆包再进化:基于 Qt 的滑动窗口与 CRC 校验实战
开发语言·qt