MP4 视频无法在 Safari iPhone 上播放

问题描述 投票:0回答:1

显示问题的示例视频:https://gget.it/io64/h264test13576.mp4 - 你可以在 Safari 上播放吗?


我在 HTML 页面上有一个视频

<video controls><source src="/files/test.mp4"></video>

它可以在 PC(Firefox、Chrome 等)上运行,但遗憾的是它不能在 iPhone Safari 上运行(我手头没有,所以很难调试):不是视频,而是灰色背景。

阻止 MP4 视频在 iPhone 版 Safari 上播放的常见原因有哪些?

注意:我尝试过各种方法,例如:

但是问题依然存在。

html iphone safari html5-video mp4
1个回答
0
投票

Safari 不喜欢

moov
原子不在文件开头。

ffprobe -v trace -i h264test13576.mp4 2>&1 | grep -e 'mdat' -e 'moov'
[mov,mp4,m4a,3gp,3g2,mj2 @ 0x14a704930] type:'mdat' parent:'root' sz: 592695 56 597025
[mov,mp4,m4a,3gp,3g2,mj2 @ 0x14a704930] type:'moov' parent:'root' sz: 4282 592751 597025
[mov,mp4,m4a,3gp,3g2,mj2 @ 0x14a704930] type:'mvhd' parent:'moov' sz: 108 8 4274
[mov,mp4,m4a,3gp,3g2,mj2 @ 0x14a704930] type:'trak' parent:'moov' sz: 1943 116 4274
[mov,mp4,m4a,3gp,3g2,mj2 @ 0x14a704930] type:'trak' parent:'moov' sz: 2105 2059 4274
[mov,mp4,m4a,3gp,3g2,mj2 @ 0x14a704930] type:'udta' parent:'moov' sz: 118 4164 4274

这解决了它:

ffmpeg -i h264test13576.mp4 -movflags faststart -c copy updated.mp4
ffprobe -v trace -i updated.mp4 2>&1 | grep -e 'mdat' -e 'moov'
[mov,mp4,m4a,3gp,3g2,mj2 @ 0x140605150] type:'moov' parent:'root' sz: 4022 40 596757
[mov,mp4,m4a,3gp,3g2,mj2 @ 0x140605150] type:'mvhd' parent:'moov' sz: 108 8 4014
[mov,mp4,m4a,3gp,3g2,mj2 @ 0x140605150] type:'trak' parent:'moov' sz: 2200 116 4014
[mov,mp4,m4a,3gp,3g2,mj2 @ 0x140605150] type:'trak' parent:'moov' sz: 1609 2316 4014
[mov,mp4,m4a,3gp,3g2,mj2 @ 0x140605150] type:'udta' parent:'moov' sz: 97 3925 4014
[mov,mp4,m4a,3gp,3g2,mj2 @ 0x140605150] type:'mdat' parent:'root' sz: 592695 4070 596757
© www.soinside.com 2019 - 2024. All rights reserved.