无法使用iPhone或iPad在Safari上播放Quicktime视频

时间:2020-06-10 22:10:44

标签: ios video safari quicktime

我有一个网站,可以让我的用户加载视频。我有一个简单的文件输入表格。由于用户都是移动或平板电脑用户,因此手机或平板电脑会提示他们(通过浏览器)录制将用作输入的视频。

<input type="file" id="ikid-foto" name="ikid-foto" accept="image/*,video/mp4">

然后我允许他们预览视频:

var fileItem = document.getElementById('ikid-foto');
var files = fileItem.files;
var file = files[0];
var url = URL.createObjectURL(file);
var video = document.getElementsByTagName('video')[0];
video.src = url;
video.load();

然后我使用jQuery.ajax将视频文件存储在服务器上。在另一页上,我让用户查看他先前已加载到站点中的视频,只需将视频的URL作为源添加到htm视频html标签即可。

<video width="300" height="225" src="<?php echo wp_get_attachment_url($foto);?>" controls playsinline type="video/mp4"></video>

这通常没有问题。但是有一个例外。

由于用户使用不同的浏览器和设备,因此我吸引了一些用户上传视频类型为video / mp4文件的视频,而其他用户则上传视频/ quicktime视频。

在某些情况下会出现此问题。

如果用户使用的是iPhone或iPad,并且正在使用Safari浏览器,则一旦将视频上传到服务器后,他将无法查看视频。 因此,如果用户使用带Safari的iPad,则他可以上传自己正在录制的视频。该快速时间视频将显示在预览中。但是,当他浏览想要播放该视频的页面时,该视频不会显示。 如果从非iPhone或iPad的设备上观看了已上传到服务器的相同QuickTime视频,则可以正常观看。另外,如果我尝试从iPad或iPhone观看QuickTime视频,但我改用Chrome,则可以观看视频。

我已经阅读了其他类似问题,这些问题表明在html video标签中使用了playsinline参数,但没有成功。我尝试了其他选项,没有任何改变。

我的网站是wordpress网站。我试图下载在iPad上录制的quicktime视频,并将其直接上传到我的网站服务器。然后,我尝试从wordpress管理面板上查看媒体的视频,但Wordpress没有显示该视频。

关于如何操作的任何想法,我可以让iPhone和iPad用户录制视频,并让他们在存储在服务器上以后能够看到它们吗?

1 个答案:

答案 0 :(得分:0)

发现这是引起问题的插件。 Super Progressive Web Apps插件以其服务工作者的方式与Safari产生冲突。问题尚未解决。

https://wordpress.org/support/topic/it-will-cause-issue-media-error-formats-not-supported-or-sources/