2015-07-21 116 views
0

我使用CloudFront设置了基于S3的HLS流式传输,但HLS流式传输看起来不起作用。我有一个创建桶,并使用此网络广播转码的内容: https://www.youtube.com/watch?v=MuQ_qg7U0l8CloudFront HLS流式传输不起作用--S3(HLS v4)

内容似乎有正确的权限,但MIME类型缺失(我看M3U8有MIME类型text/plain的不应该“转码器设置此。正确吗?

我不确定这是否是视频无法播放的原因。在Chrome中,它仅显示使用HTML5标记的空白屏幕,如果我尝试直接播放它,则显示Safari播放按钮,但没有别的。

任何想法在哪里看?我的原始内容是MP4(在使用弹性代码转换器之前)

更新:Ahh似乎是HLS-v4的问题,如果我将代码转换为HLS-v3,则工作正常。因此,也许不相关的MIME类型(在V3相同的MIME类型)

+0

你有测试网址吗? – aergistal

+0

测试网址:http://dza0asocajni2.cloudfront.net/master.m3u8 @aergistal – Ankit

回答

0

我检查你的测试流和MIME类型是正确的:

curl -I http://.../master.m3u8 
HTTP/1.1 200 OK 
Content-Type: application/x-mpegURL 

curl -I http://.../hls_1m_.ts 
HTTP/1.1 200 OK 
Content-Type: video/MP2T 

流也可以正常播放。

某些客户端仅支持协议的版本3,我认为这是您的问题。

版本4通过EXT-X-BYTERANGE增加了字节范围支持。看你的播放列表:

#EXTINF:3.754688999999999, 
#EXT-X-BYTERANGE:[email protected] 
hls_1m_.ts 

这肯定会导致一些玩家不支持新功能的问题。目前最安全的方式是使用版本3

+0

由于某种原因,它刚刚开始在Safari上工作,我很难过!感谢aergistal寻找! – Ankit

+0

Safari可能会支持它,因为它是由苹果公司制造的,它也使HLS – aergistal

+0

是我现在,但是如果您再次阅读我的问题,它在Safari中也不能工作! – Ankit