iPad和iPhone浏览器不支持使用base64编码数据URI作为HTML5视频的来源

10
我需要使用HTML5视频标签以base64数据URI格式播放视频在iPad和iPhone上,这最终可以通过将其存储在websql中使视频离线。
我得到了一个链接,帮助我研究可行性 - http://iandevlin.com/html5/data-uri/video.php(如果您查看链接的源代码,您将看到它以base64格式编码得很好)
我在大多数现代浏览器上尝试过,如Windows机器上的Chrome和Firefox以及Mac OS上的Safari,那里效果很好。
所以我的希望增加了,我在iPhone和iPad上尝试了一下,结果在那里不起作用!我只是得到了一个黑屏而不是视频控件。 此外,在Safari调试模式下也没有任何错误。我想知道是否可以播放base64编码的视频或者这只是iPad和iPhone的已知问题...

1
这里有什么新闻吗?我遇到了同样的问题... - Yaniv Efraim
我刚刚在我的Windows手机上尝试了一下,它的表现非常出色。我之后可以在我的开发用的iPhone上再试一下,并回报结果。 - Daniel Steiner
3个回答

0

我发现相比桌面浏览器,iOS Safari对于在数据URI中使用正确的Mime类型要求更加严格。你应该确保使用了正确的Mime类型。


0
要在HTML5标签下播放视频,您需要提供其内容源,如图像和视频/音频文件的名称,而不带任何路径,这样才能正常工作。

0
当使用Base64媒体编码时,需要注意内存消耗大幅增加。这不同于外部媒体包含,因为媒体不在文档内,并且可以在消耗所需内存的帧中加载。
使用Base64需要加载所有数据才能执行解密,而大多数移动浏览器显示视频需要很长时间,因为它们的可用内存非常小(通常大部分内存被操作系统占用),转换需要很长时间。当进程在移动系统中持续运行时,垃圾回收会将其视为僵尸线程并将其终止。
实际上,在移动浏览器中假设可以使用base64进行视频是不明智的,这应该不起作用。

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接