【问题标题】:TCP /RTMP handshakeTCP /RTMP 握手
【发布时间】:2011-08-19 23:37:01
【问题描述】:

我正在编写一个应用程序来(非正式地)替换一个用 adobe air 制作的客户端,他们使用 RTMP 作为连接协议,我必须创建自己的类来实现它:

据我所知RTMP是放在TCP协议下的,但是我必须先建立TCP连接/handshake,然后再进行RTMP握手吗?

还是忽略了 TCP 握手而 TCP 标头仅用于传输 RTMP 握手/数据?

亲切的问候。

【问题讨论】:

    标签: tcp rtmp


    【解决方案1】:

    您建立 TCP 连接,然后立即进行 RTMP 握手,即您从发送 C0 开始,然后转到 S0、C1、S1、C2、S2。一旦你收到后者,RTMP 握手就完成了。祝您使用 RTMP 好运,您将需要它。

    【讨论】:

      【解决方案2】:

      哇,你有一个很好的项目。

      按照您的建议,RTMP 通过 TCP。有趣的是,不仅控制命令而且媒体数据都是通过 TCP 发送的。与按预期使用 UDP 的 RTSP 不同。还有一些图书馆可以做你想做的事情。我发现有趣的一个是用 php - http://code.google.com/p/php-rtmp-client/ 编写的。

      您还需要使用 AMF,这是一种用于对 RTMP 命令进行编码的二进制格式。有一篇关于它的很好的维基百科文章和一些解析器,比如 AMFPHP

      【讨论】:

        【解决方案3】:

        如果有人像我一样在 Google 上寻找解决方案时偶然发现了这个问题,我在 http://www.fluorinefx.com/ 中找到了我的解决方案。无需担心握手或任何事情。都包得很整齐:)

        【讨论】:

          猜你喜欢
          • 2020-09-18
          • 1970-01-01
          • 2017-07-08
          • 1970-01-01
          • 1970-01-01
          • 2011-05-01
          • 1970-01-01
          • 2011-07-02
          • 2012-04-04
          相关资源
          最近更新 更多