前端播放 mp4 是整个视频下载下来在播放吗? 使用 m3u8 进行切片会节省一点流量吗? 求大佬指点一下
1
PHPer233 2023-07-26 18:04:21 +08:00
mp4 是先下载整个视频,然后播放。m3u8 是将视频分割成若干个片段,从头到尾缓存一片播放一片。
|
2
lovelylain 2023-07-26 18:14:27 +08:00 via Android
@PHPer233 不同平台不一样吧,安卓可以用 mp4 实现直播,所以应该是支持边下载边播放的,iOS 不行。
|
3
cssk 2023-07-26 18:15:54 +08:00 via iPhone
@lovelylain ios 一样可以边存边播
|
4
duan602728596 2023-07-26 21:16:55 +08:00
mp4 不一定,分片播放需要支持 range 请求,正确响应 206
|
5
bertonzh 2023-07-27 00:38:55 +08:00
都可以分片加载的,只要服务端支持。
|
6
u20237 2023-07-27 01:38:30 +08:00
好像 m3u8 更灵活,方便调试和分析
部分 mp4 格式可能需要把头文件读完才会播放。 服务器也需要考虑客户端带宽 如果下载速度低于播放速度 可能会很卡。 ..前端好像没有那么多的办法来预加载视频文件 目前没法分辨哪个更好,更省流量。但大部分直播平台使用 m3u8 m3u8 非常容限制客户端的下载速度,并发数,和 mp4 比较这是一个好处。 我很想知道 m3u8 文件的视频时长能否更小更小。我定义了 0.1 秒,但测试发现最长可能有 3 秒 |
7
Chad0000 2023-07-27 04:00:54 +08:00 via iPhone
@PHPer233
不要乱说。mp4 需要在压制的时候将一些参数放头部,就可以边下边播。我弄过视频上传功能,必须设置一下参数才可以。 |
8
huisunan OP @duan602728596 试了一下,使用 minio 是支持 range 请求的,chrome 的 network 里显示只有一条请求,但能源源不断的加载内容
|