您如何仅通过 Javascript 读取 RTMP 流?

Posted

技术标签:

【中文标题】您如何仅通过 Javascript 读取 RTMP 流?【英文标题】:How do you read an RTMP stream through Javascript only? 【发布时间】:2011-08-15 19:07:18 【问题描述】:

我们想在不支持 Flash(ios 等)的移动平台上使用 RTMP 数据流(不是视频)。由于 Java 也不是某些手机的选项,我们正在考虑创建一个 javascript rtmp 客户端。这不适用于 iphone/ipad 应用程序,而是用于 Safari 浏览器应用程序,通过 HTTP url 访问。

有谁知道最好的起点,或者是否已经存在?谢谢!

【问题讨论】:

在我们所做的所有研究中,似乎同源策略en.wikipedia.org/wiki/Same_origin_policy 通过 CDN 使用此限制将成为一个问题,因为我们将无法设置 Access-Control-Allow-来自边缘服务器的响应的 Origin 标头,这将阻止我们通过 RTMPT 进行必要的握手。参考:w3.org/TR/XMLHttpRequest 【参考方案1】:

试试RTMP-dump。

另见:Communicating with a flash server using rtmp without Flash

【讨论】:

我查看了这个,它似乎是用于应用程序的。我需要这个才能在客户端 safari web 浏览器上工作。不在应用程序内。我相信 RTMP-dump 是在应用程序中使用的。 它不是免费的,但digital-life.cz/en/rtmp-protocol-library/blog 可能是您需要的。 谢谢马特。我去看看。 只是想跟进数字生活。他们对我的问题的回答是“它是用 iOS 平台的 Objective-C 编写的。我认为用 javascript 编写这样的库是不可能的。RTMP 客户端几乎是一个服务器,需要大量交互,这必须通过套接字实时执行(如数据包解析、多流逻辑、控制消息和共享对象)"

以上是关于您如何仅通过 Javascript 读取 RTMP 流?的主要内容,如果未能解决你的问题,请参考以下文章

如何从 Pentaho 的 javascript 步骤中的另一行读取?

利用FFMPEG以及EasyRTMP实现读取H.264文件推RTMP视频流的两种方式

FFmpeg命令读取RTMP流如何设置超时时间

如何通过javascript读取swf的大小

如何断开 rtmp 连接?

使用您自己的 AMS,如何在 RTMP 流上使用 BitmapData.draw() 而没有安全异常?