英文原地址:http://www.joachim-bauch.de/tutorials/red5/SPEC-RTMPT.html/view
等一段时间后我也去整理一个出来,因为现在还没有用到rtmpt,只用到rtmp和rtmpe,所以没有时间去研究。
译:RTMPT协议说明书
SPEC-RTMPT_zh_CN.txt
RTMPT协议说明书
===================================
:author: Joachim Bauch
:contact:
mail@joachim-bauch.de:date: 2006-03-23
:copyright: `Creative Commons License (by-sa)`__
__
http://creativecommons.org/licenses/by-sa/2.5/翻译:屹砾(
www.OpenRed5.com#glseda)联系:
glseda@qq.com日期:2007-06-17
译者的话:
Red5的资料有点乱,没有什么头绪。但是把这些资料翻译成中文多少会有一些帮助,即使有时翻译的内容也不是那会容易看懂。如果大家有时间,也希望能够选择一些资料翻译出来,然后发布到OpenRed5中文社区
http://www.OpenRed5.com,让我们大家共同进步。
概述
--------
此文档描述RTMPT通道协议在Red5开源FLASH服务器上的实现。请注意:此文档不是Macromedia官方规范说明书,但是可以帮助人们开始使用RTMPT开发软件。
RTMPT基本上是一个RTMP协议的HTTP包装。它发送POST请求从客户端到服务端。因为HTTP连接是非持久性的,RTMPT需要客户端获得周期性的更新,顺序的得到从服务端或其它客户端产生的事件通告。
在一个RTMPT会话周期,下面描述四个可能会发送到服务端的请求类型。
URLs
----
URL以以下形式打开:
http://server/<comand>/[<client>/]<index>
`<command>`
指示RTMPT请求类型。
`<client>`
指定执行请求的客户端编号(只发送已确定的会话)
`<index>`
是一个连续的数字,好象是用于侦测丢失的包。
请求/响应(Request / Response)
------------------
所有的HTTP请求共享一些公用属性:
- 使用HTTP 1.1 POST。
- 内容类型为`application/x-fcs`。
- 连接会保持活动,这样客户端和服务端会减少网络开销。
HTTP响应也共享一些属性:
- 内容类型为`application/x-fcs`.
- 所有已确定会话的响应数据的首字节控制客户端检测间隔时间,更高的值表示较少的检测请求。
(译注:polling,检测,可能翻译得不够准确)
检测间隔时间(Polling interval)
----------------
在数据返回后,服务器会以0x01开始,在10次空的回复之后自动增长这个值。最大的延时是0x21,在两次请求之间的延时大约在0.5秒左右。
Red5通常按下列步骤增长延时:
0x01, 0x03, 0x05, 0x09, 0x11, 0x21.
初始化连接(命令"open")
--------------------------------
这是首次请求,会顺序的发送到服务器,注册一个客户端并开始一个新的会话。服务器回复一个惟一的ID(通常是一个数字)给客户端,以便于之后的请求。
注意:回复不会包含检测间隔时间值。成功的连接会重设连续索引以用于URL。
客户端更新(命令"send")
-------------------------------
从客户端发送到服务器的数据会加一个HTTP头作为RTMP的前缀(译注:即RTMPT)。
如果有效的话,服务器响应以HTTP响应,包含一个字节的控制检测间隔时间和RTMP数据,。
检测请求(命令"idle")
---------------------------------
如果客户端没有包含更多的数据发送到服务器,他可以检测更新,会收到流数据或事件,例如共享对象。
断开会话连接(命令"close")
-----------------------------------------
如果客户端希望终止连接,他可以发送close命令到服务器,服务器会回复0x00。
分享到:
相关推荐
*修正rtmp协议解析的BUG,增加rtmpt协议支持 2009-02-22 酷抓6 6.1.0.0 Beta Build090222 *修改部分文件(比如mp4文件)抓取到但不显示的问题 +增加英文版帮助文件 +增加对mms、rtsp等协议的疑难网址拦截 2009-02-14...
Python的dpkt库是一个强大的数据包解析工具,主要用于网络协议分析。...在dpkt中,dpkt-linux是针对Linux环境的扩展,而rtp包解析库则专注于解析Real-Time Transport Protocol (RTP)的数据包。 RTP是一种应用层协议,...
支持广泛的流式视频格式,支持FLV/MP4等格式的渐进式和流式下载播放,支持基于RTMP/RTMPT等流式协议的视频流播放,支持播放使用Apple公司HTTP Live Streaming协议传输的流式视频(M3U8),并可自适应切换码率。...
酷播V4.0版跨平台网页视频播放器(完全免费/支持右键自定义),开放支持播放器... 特色功能说明: 1、支持流媒体RTMP协议、RTMPT协议、RTMPE协议( 全面支持SRS,red5,crtmp,FMS等流媒体的点播与直播 ),同时支持普通H
RTMP推流H.264视频Wireshark抓包文件,过滤命令rtmpt,对应的H.264文件见我的资源下载。 对应我的博文:Windows下搭建基于nginx的rtmp直播服务器 ----------------------------------------------------------------...
2. **安全性**:通过RTMPT、RTMPE和RTMPS,Red5提供了对传输内容的安全保护。RTMPT通过HTTP隧道提供安全连接,RTMPE使用加密的连接,而RTMPS则在SSL/TLS层面上确保了数据的加密传输。 3. **HLS支持**:...
- **URLs**:RTMPT 使用特定格式的 URL 来连接到服务器。 - **请求/响应**:客户端发送请求,服务器返回响应。 - **轮询间隔**:客户端定期向服务器发送轮询请求以维持连接。 - **初始连接**:客户端使用 “open” ...
Protocols: RTMP, RTMPT, RTMPS, and RTMPE Additional features supported via plugin: WebSocket (ws and wss) RTSP (From Axis-type cameras) HLS The Red5 users list may be found here: red5interest ...
该协议基于TCP,是一个协议族,包括RTMP基本协议及RTMPT/RTMPS/RTMPE等多种变种。RTMP是一种设计用来进行实时数据通信的网络协议,主要用来在Flash/AIR平台和支持RTMP协议的流媒体/交互服务器之间进行音视频和数据...
All forms of RTMP are supported, including rtmp://, rtmpt://, rtmpe://, rtmpte://, and rtmps://. License: GPLv2 Copyright (C) 2009 Andrej Stepanchuk Copyright (C) 2010-2011 Howard Chu Download ...
它使用 RTMP,RTMPT,RTMPS 和 RTMPE 流媒体协议, 支持:将音频(MP3)和视频(FLV,MP4,F4V,3GP)转换成播放流;录制客户端播放流;共享对象;现场直播流发布;远程调用。Red5 为即时通信,远程教育,流媒体开发...
首先,常见的直播方案包括RTMP(Real-Time Messaging Protocol)以及其变种RTMPS、RTMPE、RTMPT和RTMFP。RTMP是一种广泛用于直播的协议,适用于PC、iOS、Android以及H5 Web平台。RTMPS增加了安全传输层,RTMPE则采用...
Adobe的Flash Media Server (FMS)则更适合B/S架构,以其便捷性在Web音视频应用开发中占据一席之地,虽然价格相对较高,但能支持RTMP(RTMPT/RTMPE/RTMPS)协议并使用FlashPlayer进行播放。 Ultrant Flash Media ...
NodeMediaClient-Android 一个简单,快速,免费的直播SDK....支持的网络协议 RTMP/RTMPT/RTMPE/RTSP/HLS/HTTP(S)-FLV 支持的视频解码器:H.264, H.265,FLV, VP6, MPEG4 支持的音频解码器:AAC, MP3, SPEEX, NE
该协议基于TCP,是一个协议族,包括RTMP基本协议及RTMPT/RTMPS/RTMPE等多种变种。RTMP是一种设计用来进行实时数据通信的网络协议,主要用来在Flash/AIR平台和支持RTMP协议的流媒体/交互服务器之间进行音视频和数据...
Red5是一个开源的流媒体服务器,它支持实时流传输协议(RTMP)、实时消息协议(RTMP-E)和实时传输控制协议(RTMPT)等,常用于音频、视频的直播和点播服务。这个“demo”可能是为了展示Red5的功能和用法,帮助...
5. **RTMP与RTMPT支持**:RTMP是Red5的主要传输协议,1.0.8版本继续优化了RTMP协议的实现,同时支持通过HTTP隧道的RTMPT协议,增强了穿透防火墙的能力。 6. **HLS支持**:Red5 1.0.8提供对HLS协议的支持,这是苹果...
1. 多协议支持:如前所述,红5red51.0.9支持RTMP、RTMPT、RTMPS、HLS等多种协议,适应不同网络环境和安全需求。 2. 录制功能:用户可以设置服务器自动或手动录制直播流,便于后期编辑和重播。 3. 支持流式分发:红5...
在Red5的手册中,还介绍了Red5使用的默认端口,包括http.port=5080、rtmp.port=1935、rtmpt.port=8088、mrtmp.port=9035、proxy.source_port=1936等,可以在[RED5_HOME]\conf\red5.properties文件中更改。...
2. **Protocol Handlers**:协议处理器,实现了RTMP、RTMPT、RTMPE、RTMFP等各种协议的解析和处理。 3. **Application Handlers**:应用处理器,处理特定的业务逻辑,如录制、播放、互动等。 4. **Storage**:存储...