我试图使用JWPlayer作为一种绕过安卓的方法,它不支持在Phonegap的Webview中播放HLS (或者至少我无法让它工作,只有WebM流和https://github.com/macdonst/VideoPlayer上的视频插件,HLS流只提供音频)。
我知道用户需要安装闪存,但目前最重要的是要在设备上显示RTMP或HLS (.m3u8) (2.3、4.0或4.1,以哪种方式工作!)
然而,在安卓系统中实现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应用程序。
谢谢!
发布于 2012-12-05 12:43:35
JW播放器不再支持Android上的Flash,因为Adobe也放弃了Android Flash支持。只有HTML5 (因此只有MP4/WebM)被支持,从Android2.3开始。
HTTP流确实对安卓系统中的HTML5的支持有限。它只在4.0+中运行,有一些关键的缺陷:显示纵横比不被识别,按需HLS流就像实时流(没有时间线,没有搜索)。
Android上流媒体的最佳解决方案是利用支持本地应用程序HLS的SDK。有几家公司提供这样的SDK (例如devicedrm.com或nexstreaming.com)。不过,我不知道这样的解决方案是否适用于Phonegap。
https://stackoverflow.com/questions/13711759
复制相似问题