美文网首页
RTMP流媒体播放过程

RTMP流媒体播放过程

作者: 书文换酒钱 | 来源:发表于2018-08-10 16:21 被阅读0次

RTMP协议规定,播放一个流媒体有两个前提步骤:第一步,建立一个网络连接(NetConnection);第二步,建立一个网络流(NetStream)。其中,网络连接代表服务器端应用程序和客户端之间基础的连通关系。网络流代表了发送多媒体数据的通道。服务器和客户端之间只能建立一个网络连接,但是基于该连接可以创建很多网络流。他们的关系如下图所示:


image.png

1 简要介绍

播放一个RTMP协议的流媒体需要经过以下几个步骤:握手,建立连接,建立流,播放。RTMP连接都是以握手作为开始的。建立连接阶段用于建立客户端与服务器之间的“网络连接”;建立流阶段用于建立客户端与服务器之间的“网络流”;播放阶段用于传输视音频数据。

2 握手(HandShake)

一个RTMP连接以握手开始,双方分别发送大小固定的三个数据块
1、 握手开始于客户端发送C0、C1块。服务器收到C0或C1后发送S0和S1。
2、 当客户端收齐S0和S1后,开始发送C2。当服务器收齐C0和C1后,开始发送S2。
3、 当客户端和服务器分别收到S2和C2后,握手完成。

3建立网络连接(NetConnection)

1、 客户端发送命令消息中的“连接”(connect)到服务器,请求与一个服务应用实例建立连接。
2、 服务器接收到连接命令消息后,发送确认窗口大小(Window Acknowledgement Size)协议消息到客户端,同时连接到连接命令中提到的应用程序。
3、 服务器发送设置带宽()协议消息到客户端。
4、 客户端处理设置带宽协议消息后,发送确认窗口大小(Window Acknowledgement Size)协议消息到服务器端。
5、 服务器发送用户控制消息中的“流开始”(Stream Begin)消息到客户端。
6、 服务器发送命令消息中的“结果”(_result),通知客户端连接的状态。

4建立网络流(NetStream)

1、 客户端发送命令消息中的“创建流”(createStream)命令到服务器端。
2、 服务器端接收到“创建流”命令后,发送命令消息中的“结果”(_result),通知客户端流的状态。

5 播放(Play)

1 、 客户端发送命令消息中的“播放”(play)命令到服务器。
2 、 接收到播放命令后,服务器发送设置块大小(ChunkSize)协议消息。
3 、 服务器发送用户控制消息中的“streambegin”,告知客户端流ID。
4 、 播放命令成功的话,服务器发送命令消息中的“响应状态” NetStream.Play.Start & NetStream.Play.reset,告知客户端“播放”命令执行成功。
5 、 在此之后服务器发送客户端要播放的音频和视频数据。

相关文章

  • iOS 视频直播(二)

    参考博客:流媒体播放过程 本文描述了从打开一个RTMP流媒体到视音频数据开始播放的全过程。 注意:RTMP中的逻辑...

  • rtmp 协议分析及交互过程

    本文描述了从打开一个RTMP流媒体到视音频数据开始播放的全过程。注意:RTMP中的逻辑结构RTMP协议规定,播放一...

  • RTMP流媒体播放过程

    RTMP协议规定,播放一个流媒体有两个前提步骤:第一步,建立一个网络连接(NetConnection);第二步,建...

  • RTMP流媒体播放过程

    参考博客:流媒体播放过程 RTMP协议规定:第一步,建立一个网络连接(NetConnection):客户端和服务端...

  • RTMP播放流媒体过程

    前言 RTMP协议规定,播放一个流媒体需要执行以下几个步骤: 建立一个网络连接(NetConnection),网络...

  • 使用Android NDK编译ffmpeg

    最近基于ffmpeg用c++写了一个流媒体播放器,支持播放本地/网络文件、rtmp/rtsp流,想将其移植到And...

  • videojs 流媒体播放rtmp协议

    rtmp协议需要flash的支持,html5不支持也无法支持这一协议。 搭建rtmp流媒体服务器可参考crtmps...

  • 2019-10-11RTMP整理

    之前一直用的rtp,最近在用rtmp,相关学习整理如下: RTMP协议规定,播放一个流媒体有两个前提步骤:第一步,...

  • RTSP协议介绍

    流媒体传输协议介绍 1,RTMP协议(1)是流媒体协议。(2)RTMP协议是 Adobe 的私有协议,未完全公开。...

  • 从请求次数理解: HTTP 中 GET 与 POST 的区别

    原文链接:mp.weixin.qq.com 通过 wireshark 抓包了解直播流媒体 RTMP 协议基本过程j...

网友评论

      本文标题:RTMP流媒体播放过程

      本文链接:https://www.haomeiwen.com/subject/ltqlbftx.html