在 Android 中使用 JWplayer 在 Phonegap 中进行流式视频播放

Posted

技术标签:

【中文标题】在 Android 中使用 JWplayer 在 Phonegap 中进行流式视频播放【英文标题】:Using JWplayer in Android for streaming video playback in Phonegap 【发布时间】:2012-12-04 20:55:56 【问题描述】:

我正在尝试使用 JWPlayer 作为解决 android 不支持在 Phonegap 的 Webview 中播放 HLS 的一种方式(或者至少我无法让它工作,只有 WebM 流和 https://github.com/macdonst/VideoPlayer 上的视频插件,HLS流只提供音频)

我知道用户需要安装 flash,但目前对我来说最重要的是让 RTMP 或 HLS (.m3u8) 显示在设备上(2.3、4.0 或 4.1,无论哪个有效!)

但是,在 android 中实现 JWplayer 时,我不断收到“加载播放器时出错:找不到可播放的源”错误。到目前为止,我只在模拟器中进行了测试。

代码没什么花哨的,在包含cordova JS之后的html文件中我所做的就是:

 <script type="text/javascript" src="jwplayer/jwplayer.js" ></script>
 <script type="text/javascript">jwplayer.key="b+mykey"</script>
 <div id="my-video"></div> 
 <script type="text/javascript">
        jwplayer('my-video').setup(
            flashplayer: "javascripts/lib/jwplayer/player.swf",      
                 streamer: "rtmp://myserveraddressgoeshere",
                 file: "corecctfile.goeshere-sdh",
                 provider:"rtmp",
                 autostart: 'true',
                 controlbar: "over",
                 width: '720',
                 height: '405'
         );</script>

显然我有正确的路径,但出于客户隐私的原因在这里将它们隐藏了。

有没有人知道为什么这不起作用?或者我如何可以让 RTMP / HLS 流在 Android 设备上工作? 如前所述,该应用程序是一个PhoneGap 应用程序。

谢谢!

【问题讨论】:

这段代码在默认的 Android 浏览器中是否有效? 【参考方案1】:

JW Player 不再支持 Android 上的 Flash,作为对 Adob​​e 也放弃 Android Flash 支持的回应。从 Android 2.3 开始,仅支持 HTML5(因此仅支持 MP4/WebM)。

HTTP Live Streaming 在 Android 中对 HTML5 的支持确实有限。它仅在 4.0+ 中播放,并且有一些严重的错误:无法识别显示纵横比,并且点播 HLS 流就像实时流一样(没有时间线;没有搜索)。

在 Android 上进行流式传输的最佳解决方案是为您的原生应用使用支持 HLS 的 SDK。有几家公司提供这样的 SDK(例如 devicedrm.com 或 nexstreaming.com)。不过,我不知道这样的解决方案是否适用于 Phonegap。

【讨论】:

我只想补充一点,HTTP Live Streaming 是在 Android 4.0 中引入的,但在 4.1 中被删除了。 Reference - The state of HTML5 Video

以上是关于在 Android 中使用 JWplayer 在 Phonegap 中进行流式视频播放的主要内容,如果未能解决你的问题,请参考以下文章

如何在 JwPlayer for android 中进行 chrome cast

License Edition INVALID 对 JW Player Android SDK 无效

JwPlayer ChromeCast:无法投射:不支持媒体格式

在php中如何使用jwplayer隐藏实际路径

如何在 Angular 2 中集成 JWplayer

JWPlayer 无法在 iPhone 和 iPod 中运行