HTML Video标签在Safari和iPhone设备上不起作用

时间:2019-10-21 05:56:08

标签: iphone safari html5-video

我有一个Spring MVC项目,我将视频保存在资源文件夹(D:/ folder / videos /)中,并且在我的spring servlet xml中输入了相同的内容,例如

在我的jsp文件中,我有以下条目显示视频

<div id="groupsign" class="tab-pane fade">

<video width="100%" height="400px" controls="controls" controlsList="nodownload" autoplay  loop  muted  playsinline >

<source src="<%=appUrl %>/videos/FirstVideo.mp4?preview=true" type="video/mp4">

<source src="<%=appUrl %>/videos/SecondVideo.mp4?preview=true" type="video/gg">

</video>

</div>

在服务器上运行我的应用程序时,仍然不显示视频。它在视频区域显示空白且仅在搜索符号。相同的代码/视频在android设备上工作。如果我通过提供任何公共视频链接来替换视频源,则它可以工作。我没有遇到什么问题以及如何解决该问题。任何指导都会帮助我更多。

Safari

使用自动播放循环使视频代码中的播放静音,但不走运

在Spring servlet中配置资源文件夹,例如

<resources mapping="/videos/**" location="file:D:/folder/videos/"/ >

在JSP编写的视频标签中,例如

<video width="100%" height="400px" controls="controls" controlsList="nodownload" autoplay  loop  muted  playsinline >

<source src="<%=appUrl %>/videos/FirstVideo.mp4?preview=true" type="video/mp4">

<source src="<%=appUrl %>/videos/SecondVideo.mp4?preview=true" type="video/gg">

</video>

1 个答案:

答案 0 :(得分:0)

我在ios移动设备上遇到了同样的问题,并解决了该问题。

如此处所述:在iPhone上为Safari创建视频:“托管iOS媒体文件的HTTP服务器必须支持字节范围请求,iOS用来在媒体播放中执行随机访问。(字节范围支持也称为内容-range或部分范围支持。)大多数(但不是全部)HTTP 1.1服务器已经支持字节范围请求。”

因此,您必须检查您的服务器是否使用字节范围缓存或重新配置它(我是用nginx完成的。)

PS:ios视频​​不兼容的另一个次要原因可能是每个视频的编解码器不兼容。支持以下压缩标准:

-H.264 Baseline Profile Level 3.0视频,在30 fps下最高为640 x 480。请注意,基准配置文件中不支持B帧。 -MPEG-4 Part 2视频(简单配置文件)-AAC-LC音频,最高48 kHz