0

我有以不同比特率编码的 MP4 视频文件,以兼容 Wifi 上的 iOS 和 Edge 连接。我想让它们使用 HTML5 视频标签从我的网站逐步加载。

video_big.mp4 在 Wifi
H.264 基线上为 iOS 编码,25fps,640x480,500kbps

video_small.mp4 在 Edge/3G
H.264 基线上为 iOS 编码,25fps,320x240,56kbps

我的问题是:如何编写 HTML5 视频标签以将video_big.mp4提供给通过 Wifi 连接的 iOS 设备,并将video_small.mp4提供给通过 Edge/3G 连接的 iOS 设备?我在 PHP/Apache 服务器上运行。谢谢 :)

4

2 回答 2

3

不幸的是,您不能,因为目前没有可靠的方法来检测设备连接的网络类型(或速度)。

目前,您可以做的最好的事情是依靠媒体查询来假设(可能是错误的)小屏幕意味着小设备,因此无论他们的网络连接速度如何,都可以为他们提供较低分辨率的视频。

例如:

<video controls>
   <source src="video_small.mp4" type="video/mp4" media="all and (max-width:360px)">
   <source src="video_big.mp4 " type="video/mp4">
</video>
于 2013-11-12T09:49:44.377 回答
0

您正在寻找的是HTTP Live Streaming 或 HLS。其配置基于 M3U 播放列表,视频以 MPEG-2 TS 文件的形式存储为等长的片段,并保存为 .ts 文件。

于 2020-05-13T12:18:37.237 回答