2026-10-03
分类:服务器百科
阅读(4) 评论(0)
文章目录
-
- RTMP 核心高频面试题
-
- 1. 什么是 RTMP?有什么特点?
- 2. RTMP 协议栈分层?
- 3.RTMP 握手过程(Handshake)?
- 4. RTMP Chunk(块)的作用和格式?
- 5. Chunk Stream ID(CSID)和 Message Stream ID 的区别?
- 6. RTMP 消息头的 4 种格式(fmt=0/1/2/3)?
- 7. RTMP 常见消息类型?
- 8. AMF 是什么?AMF0 和 AMF3 的区别?
- 9. RTMP 推流(Publish)完整流程?
- 10. RTMP 拉流(Play)完整流程?
- 11. RTMP 的 AAC/AVC 序列头是什么?
- 12. RTMP 视频数据的关键帧和非关键帧标识?
- 13. RTMP 的时间戳(Timestamp)机制?
- 14. RTMP 的流量控制机制?
- 15. RTMP vs RTSP vs HLS 对比?
- 16. RTMP 的变种协议?
- 17. RTMP 延迟由哪些因素构成?如何优化?
- 18. RTMP 推流为什么首帧慢?怎么优化?
- 19. RTMP 如何实现多路流复用?
- 20. RTMP 连接失败常见原因?
- 21. RTMP 的 Chunk Size 对性能有什么影响?默认值是多少?如何调整?
- 22. RTMP 协议中的 User Control Message 有哪些常见事件?分别在什么场景触发?
- 23. RTMP 播放时如何实现 Seek(跳转)和暂停?
- 24. RTMP 中的 Shared Object 是什么?有什么用途?
- 25. RTMP 连接中,connect 命令通常携带哪些参数?各有什么含义?
- 26. 请描述 RTMP 协议中音频 Tag 的详细结构?
- 27. RTMP 视频 Tag 的详细结构?AVCPacketType 有哪两种?
- 28. RTMP 协议是如何保证可靠性的?TCP 拥塞控制会对 RTMP 直播产生什么影响?
- 29. RTMP 推流过程中,如果网络抖动导致数据积压,常见的处理策略有哪些?
- 30. RTMP、RTSP、WebRTC 三种协议在实时互动直播场景下如何选型?
RTMP 核心高频面试题
1. 什么是 RTMP?有什么特点?
- RTMP(Real-Time Messaging Protocol)是 Adobe 开发的基于 TCP 的实时消息传输协议
- 特点:低延迟(通常 1-3 秒)、基于长连接、支持音视频和数据消息、有状态协议
- 默认端口:1935
2. RTMP 协议栈分层?
- 物理层/传输层:TCP(保证可靠传输)
- RTMP 块层(Chunk Layer):将消息拆分为 Chunk 进行传输,多路复用
- RTMP 消息层(Message Layer):定义各种消息类型(音视频、命令、数据等)
3.RTMP 握手过程(Handshake)?
- 简单握手:
- C0(1字节,版本号)+ C1(1536字节,时间戳+随机数据)
- S0 + S1 + S2(回应 C1 的时间戳等)
- C2(回应 S2)
- 共 3 个来回,C0/C1 → S0/S1/S2 → C2
- 复杂握手</
评论前必须登录!
注册