亚马逊 S3/Cloudfront 视频解码失败
Amazon S3/Cloudfront Video Decoding Failed
我在通过 Amazon S3 + Cloudfront 传送静态 HTML5 视频文件时遇到问题。基本上,视频播放正常,但完全忽略了视频播放器中的任何循环功能。我已将播放器元素循环属性设置为 true。而且我还在 Javascript 中设置为备份。 (见下文)。使用本地主机一切正常,但是当我从 AWS 提供服务时,我不断收到错误 net::ERR_CONTENT_DECODING_FAILED
我同时使用 .webm 和 .mp4,并且文件在 AWS 中具有适当的 headers。 Content-Type video/webm 和 Content-Type video/mp4。
我注意到在 S3 上所有视频都默认设置了一次 gzip。删除 gzip header 后,视频甚至不再播放。所以我要么没有视频,要么没有响应的视频有解码错误。
有什么想法吗?
if (typeof player.loop === 'boolean'){
player.loop = true;
}
else{
player.addEventListener('ended', function(){
this.currentTime = 0;
this.play();
}, false);
}
我遇到了完全相同的问题,解决方法也很简单。就我而言,我只是删除了将视频资产部署到 S3/Cloudfront 的 gzip 任务,它解决了问题。
事实上,问题与资源 header Accept-Encoding
和响应 header Content-Encoding
有关,您可以在下面的文档中找到更多详细信息:
我建议在单独的选项卡中打开视频,并检查上面提到的 header,很容易看出问题所在。
我在通过 Amazon S3 + Cloudfront 传送静态 HTML5 视频文件时遇到问题。基本上,视频播放正常,但完全忽略了视频播放器中的任何循环功能。我已将播放器元素循环属性设置为 true。而且我还在 Javascript 中设置为备份。 (见下文)。使用本地主机一切正常,但是当我从 AWS 提供服务时,我不断收到错误 net::ERR_CONTENT_DECODING_FAILED
我同时使用 .webm 和 .mp4,并且文件在 AWS 中具有适当的 headers。 Content-Type video/webm 和 Content-Type video/mp4。
我注意到在 S3 上所有视频都默认设置了一次 gzip。删除 gzip header 后,视频甚至不再播放。所以我要么没有视频,要么没有响应的视频有解码错误。
有什么想法吗?
if (typeof player.loop === 'boolean'){
player.loop = true;
}
else{
player.addEventListener('ended', function(){
this.currentTime = 0;
this.play();
}, false);
}
我遇到了完全相同的问题,解决方法也很简单。就我而言,我只是删除了将视频资产部署到 S3/Cloudfront 的 gzip 任务,它解决了问题。
事实上,问题与资源 header Accept-Encoding
和响应 header Content-Encoding
有关,您可以在下面的文档中找到更多详细信息:
我建议在单独的选项卡中打开视频,并检查上面提到的 header,很容易看出问题所在。