视频标签无法在iPhone Safari或Chrome和某些iPad上使用

Mar*_*ris 4 iphone video html5 ipad ios

我对某些视频无法在iPhone 6浏览器(Safari和Chrome)和某些ipad上无法播放的问题深信不疑。它在桌面浏览器,Android Chrome甚至是Safari中的iPad mini上都可以很好地工作。我已经研究了一段时间,包括Stack Overflow,但是我尝试的所有操作仍然无法在iPhone上播放视频(仅显示初始帧图像)。这是我在视频测试页面上进行修改的代码,下面是我的代码,以及根据研究尝试修复的内容:

<section id="video-wrap">   
    <video class="video <?php the_field('header_video_class'); ?>" autoplay muted loop>
      <source src="/video/<?php the_field('header_video'); ?>.mp4" type="video/mp4">
      <source src="/video/<?php the_field('header_video'); ?>.ogg" type="video/ogg">
      <source src="/video/<?php the_field('header_video'); ?>.webm" type="video/webm">
    </video><!-- /video -->
    <div id="video-wrapper">
        <div class="video-caption">
            <?php the_title(); ?>
        </div><!-- /content -->
    </div>
</section>
Run Code Online (Sandbox Code Playgroud)
  • 我试过重新添加controllers参数,没有运气
  • 我尝试将视频源添加到视频标签中,并删除其他源标签,但是不走运
  • 我还压缩了视频中的内容。该测试示例当前为640××360,H.264,AAC。仍然没有运气。
  • 我尝试过删除视频字幕叠加,以防发生冲突。没运气。

我缺少什么?在此先感谢您的帮助!

VC.*_*One 6

新答案(有效)

好吧,我以某种方式错过了这个小细节“仅显示初始帧图像”。我误解了该问题,因为“视频甚至无法正常工作”(因为某些型号/品牌与H.264编解码器可能会发生这种情况)。

根据此博客文章:iOS和Android上的html5视频自动播放 ...

您的代码应该看起来像(也使用低分辨率的MP4版本):

<video class="video" playsinline autoplay muted loop>
Run Code Online (Sandbox Code Playgroud)

最后,还要检查:视频的Webkit策略部分。可能会欺骗机器。


较旧的答案

  • 我还压缩了视频中的内容。该测试示例当前为640××360,H.264,AAC。仍然没有运气。

你的H.264视频编码不兼容的个人资料High @ Level 3.0

解决方案:选择重新编码Main @ level 3.1(也可以尝试level 4.0)。

由于此处没有iOS硬件,请测试以下重新编码:

主配置文件@ L3.1:clip-intro-low_v2.mp4

基准资料@ L3.0:clip-intro-low_v3.mp4

PS:您可能有与此问题类似的问题(以防对您有用)。