Javascript 将设备的HTML 5视频标记的blob设置为src属性

Javascript 将设备的HTML 5视频标记的blob设置为src属性,javascript,ios,html5-video,blob,mobile-devices,Javascript,Ios,Html5 Video,Blob,Mobile Devices,我试图通过将HTML5视频标记的src属性设置为Blob(使用createObjectURL(Blob)函数)来播放视频。它似乎在台式机上运行良好,但在设备上不起作用。以下是代码流程: 我保存了一个.txt文件,其中包含Base64格式的视频(这是必需的,所以无法更改) 单击一个按钮,我使用文件系统API加载.txt文件,并将Base64字符串转换为Blob 然后使用createObjectURL(Blob)为Blob创建url 将createObjectURL(blob)生成的url设置为视频

我试图通过将HTML5视频标记的src属性设置为Blob(使用createObjectURL(Blob)函数)来播放视频。它似乎在台式机上运行良好,但在设备上不起作用。以下是代码流程:

  • 我保存了一个.txt文件,其中包含Base64格式的视频(这是必需的,所以无法更改)
  • 单击一个按钮,我使用文件系统API加载.txt文件,并将Base64字符串转换为Blob
  • 然后使用createObjectURL(Blob)为Blob创建url
  • 将createObjectURL(blob)生成的url设置为视频标记的src属性

  • 我还为视频附加了监听器“OneError”、“loadstart”和“loadedmetadata”。“loadstart”和“loadedmetadata”事件在Android设备上触发,但单击视频的默认控件后视频不会播放,而在IOS设备上“loadstart”和“loadedmetadata”事件不会触发。

    我也遇到过同样的问题,无法找到简单的解决方案。然而,我注意到,新的媒体源API似乎在Android Chrome中工作,这将允许您解决这个问题——尽管只是在一些设备上,而且需要付出很多努力


    下面是媒体源API的一个示例:

    目前我正在ios6上检查它,不过我也可以在ios7上测试它。据我所知,IO6-six需要一个webkit前缀,我不确定视频标签在ios7之前是否能在window.URL上播放良好。实际上,它是ios7,并且仍然不起作用(至少在我的测试中)。有人找到解决办法了吗?