宜昌本地软件开发与弱电工程服务商
项目咨询 · 快速响应
您当前的位置: > 博客2 > AS2与AS3技术

[RTMP]RTMP协议中的两次握手

2016-10-13 00:16:48 点击量:45 标签: 收藏本文

RTMP真正完成握手操作是分两步:
一、建立连接,SOCKET接收到长度为1537byte的数据,注意1536是握手的关键值

HandshakeSize = 1536;
ByteBuffer hs = ByteBuffer.Allocate(2 * HandshakeSize + 1);
hs.Put(0×03);
hs.Fill((byte)0×00, HandshakeSize);
context.Stream.Get();// about:www.CuPlayer.com skip the header byte
ByteBuffer.Put(hs, context.Stream, HandshakeSize);
hs.Flip();
这段代码不用看,是我程序里的
接收到1537byte
byte[] data=”1537byte的数据”;
byte[] reData=new byte[3073];//2 * HandshakeSize + 1
reData[0]=0×03;
之后,将data写入reData 从 1537 位置开始
送回,收工 CuPlayer.com ;
第二步: 接收客户端信息:
这儿进行了AMF编码,解码后得到数据,原来是客户端调用服务器端方法connect,同时传过来一个对象(键值对)

ABOUT US
宜昌农人网络科技有限公司

我们是一家提供综合软件外包与弱电工程服务的技术公司。

业务涵盖定制软件、管理系统、网站、小程序、APP、系统集成、网络布线、监控安防、门禁、机房建设及长期技术维护。

公司地址:湖北省宜昌市伍家岗区东站二路6号三峡(宜昌)大数据产业园海洋馆二楼A203室