首页 文章

mp4视频不能仅使用HTML5视频在ipad上播放

提问于
浏览
1

我们在使用视频HTML 5播放器在网页上的ipad上播放mp4文件时遇到问题 .

问题:它不适用于ipad / iphone . 在所有其他平台(Windows,Android,iOS桌面)上,它可以正常工作 .

这是代码:

<video id="my-video"  width="400" height="240" preload="true"  controls >
<source src="/media/video/6d9ab49-9936-4194-acvb-3cd9b60521fg/myvideo.mp4" />
</video>

将ipad连接到Mac进行调试:无法找到“请求的资源”消息 . 声音非常清晰,但没有意义,因为当您将URL粘贴到浏览器地址栏时可以访问mp4文件 .

已经过测试和检查:

  • 将mp4的src设置为fullpath(包括https://或http://)而不是使用虚拟路径;

  • 已检查'Accept-Ranges: bytes'的hostingprovider(具有部分内容(206)响应);设置还可以

  • 从远程URL播放相同的mp4文件(使用或不使用https访问);奇怪但有意义:这有效!

所以我想问题实际上是无法在ipad上找到或加载mp4 . 但为什么?希望有人能提供帮助 .

2 回答

  • 0

    您是否尝试过这样,直接在 <video> 标签内包含src?

    <video id="my-video" src="/media/video/6d9ab49-9936-4194-acvb-3cd9b60521fg/myvideo.mp4" width="400" height="240" preload="true" controls></video>
    

    如果仍然无效,请尝试仅使用带有src的视频元素,删除预加载和控件 . 只是为了看看你是否可以让它发挥作用 . 如果仍然没有结果,请尝试去绝对的src路径 .

  • 0

    我在Liferay Portal上提供视频时遇到了同样的问题,它在PC和Android上完美运行,但在iOS设备上却没有 . 经过多次测试,我想我终于成功地确定了原因 .

    出于某种原因,如果访客用户可以访问视频文件(例如MP4)(即无需登录服务器即可访问),那么它将在iOS上正常工作 . 但是,如果该文件只能由登录用户访问,则无法使用 .

    我之所以发生这种情况的理论是iOS可能使用不同的会话来进行范围请求检查,而不是用于播放视频文件的会话 . 因此,范围请求检查失败,因为文件不可访问 .

相关问题