Android 安卓4.3以后的HLS播放问题

Android 安卓4.3以后的HLS播放问题,android,html5-video,http-live-streaming,live-streaming,Android,Html5 Video,Http Live Streaming,Live Streaming,我试图实现的是通过Android设备进行流媒体直播。 经过测试,在4.3之前的版本中,设备正在正确使用HLS.m3u8进行实时流媒体播放。 示例源代码如下所示: <video controls="controls" style="height:400px; width:320px;"> <source src="/hls-live/my-stream_/my-stream_,1360,500,.m3u8"></source> </video>

我试图实现的是通过Android设备进行流媒体直播。 经过测试,在4.3之前的版本中,设备正在正确使用HLS.m3u8进行实时流媒体播放。 示例源代码如下所示:

<video controls="controls" style="height:400px; width:320px;">
    <source src="/hls-live/my-stream_/my-stream_,1360,500,.m3u8"></source>
</video>

<a href="/hls-live/my-stream_/my-stream_,1360,560,.m3u8">Direct Link<a/>

直接链接
正如您在上面看到的,我正在尝试使用HTML5视频标记来呈现流。 它不会在浏览器中播放,但是,如果您单击具有完全相同路径的直接链接,将弹出一个播放器,流将正确播放

所以我在这里有点困惑,为什么live不能在html5播放器下正常播放,但可以在弹出式播放器中播放(我假设后者是Android下的本地播放器?)

环境:

  • 安卓操作系统4.3
  • 华硕Nexus7
  • 浏览器
编辑:此处添加了更多信息, 我也尝试过其他类型的视频,例如
http://184.72.239.149/vod/mp4:BigBuckBunny_115k.mov/playlist.m3u8
从此页
http://www.wowza.com/forums/showthread.php?32675-HLS-playback-issue-on-Android-4-3
。因此,将此m3u8替换为
标记中的一个,Chrome浏览器将正常播放。 如果查看正在工作的m3u8,您可以看到编解码器是avc1.66.30,mp4a.40.2,我怀疑文件的实际编解码器是问题的原因


我还尝试调用
media.canPlayType('application/vnd.apple.mpegURL')
,它返回一个空字符串。

我认为它通过浏览器直接工作,但无法通过视频标记的原因是
跨源代理(safari对HSL没有这个限制)


确保将
访问控制允许源代码:
添加到
.m3u8
.ts
文件中,它应该可以工作

需要更多信息。哪个是您的设备?我目前正在通过4.3操作系统的华硕Nexus 7运行测试,您正在应用程序(使用
WebView
)或手机浏览器(如果是,您使用的是哪个浏览器?默认浏览器/其他浏览器?)中工作。我没有构建任何应用程序,我只是使用Chrome浏览器构建HTML页面。许多人报告了此问题: