【问题标题】:RTMP live stream using jwplayer使用 jwplayer 进行 RTMP 直播
【发布时间】:2023-03-13 21:25:02
【问题描述】:

我正在尝试为各种广播电台创建一个直播广播网站。许多广播电台使用 RTMP 进行直播。所以我使用 jwplayer 作为我的默认播放器。但是,它似乎不起作用。这是我的代码:

<script type="text/javascript">
jwplayer("container").setup({
flashplayer: "jwplayer.flash",
file: "rtmp://liveRadio.onlinehorizons.net/shabawreada",
height: 270,
width: 480,
autostart: true
});
</script>

我对在 file 参数中放入什么以及是否应该使用 streamer 参数感到困惑。上面的代码不起作用。

【问题讨论】:

    标签: javascript jwplayer rtmp jwplayer7


    【解决方案1】:

    我用 rtmpdump 测试了这个流,有两个问题:

    1) 流的地址是rtmp://liveRadio.onlinehorizons.net/shabawreada/livestream

    2) 我只使用过一次 JW 播放器,但我非常怀疑这是否可行。某些 RTMP 流不受任何保护,任何人都可以随意连接到它们,就像您在这里尝试做的那样。但是,其他人(在某种程度上)受到保护,这就是其中之一。

    在 RTMP 握手期间,此流与许多其他流一样,需要 2 个附加参数。一个是发起 RTMP 握手的 SWF 播放器的地址,另一个是正在使用该播放器的 html 页面的地址。不幸的是,JWPlayer 不允许您任意设置这些字段 (See "Configuration Options"),这意味着您不能将其用于当前目的。

    可以寻找支持此功能的播放器,但我不会打赌找到一个。当然,此操作可以通过桌面应用程序轻松完成。

    【讨论】:

    • 我确实有它正在播放的网页和播放器的网址。那是你提到的参数?是否有任何参数可以将流转换为只有 Android 支持的音频?
    • 您是说您实际上是在将网页和播放器的 URL 传递给 JWplayer 吗?那么现在正在播放流吗?至于音频,这个流是mp3,所以安卓支持。但是,this page 表示 JWplayer 仅在 Chrome 和 Android 4.0+ 上得到官方支持。
    • 没有。我试过了,但没有成功,我不知道为什么。这是电台的网页:egradio.eg/radio.php?PubPnt=SootArab&ChnName=4
    • 我正在尝试在 Android 上创建广播电台应用,但 Android 不支持 RTMP。有没有替代的解决方案?也许将链接转换为 Android 支持的另一个链接(Mp3 或 AAC)。
    • 好吧,你必须明白一些事情: 1)RTMP 是一个 TCP/IP 协议。它可以由任何想要实现它的独立应用程序来实现。因此,有很多 Android 应用程序确实 实现了它,但它们不是网络浏览器(除非你安装了Flash 11.1 for Android)。 2) 据我所知,您无法将相关参数传递给 JWplayer,因为 JWPlayer 不会接受它们。3)RTMP 是一种协议,如 HTTP,因此您无法转换将其转换为像 mp3 这样的音频格式
    【解决方案2】:

    试试

    flashplayer: "jwplayer.flash.swf",
    

    改为。

    您还需要为没有文件扩展名的文件指定类型。

    ie: type: 'flv'
    

    它需要 .swf 扩展名,这应该可以。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2014-08-05
      • 2013-09-01
      • 1970-01-01
      • 2017-09-02
      • 2019-06-09
      • 2018-08-08
      • 1970-01-01
      相关资源
      最近更新 更多