为何moov头在尾部的mp4可以快速播放、拖动

用户反馈用chrome直接播MP4,可以快速播放和拖拽,而使用Flash播放器要等很久才可以播放。

分析了一下:

一、关于chrome的快速播放和拖拽

1、chrome使用H5的video标签来播放

2、chrome很智能,如果读取MP4文件,发现moov box不在文件前部,会直接读取MP4的文件尾部,加载moov box

3、拖拽时,chrome根据moov box得到的关键帧的字节偏移量,采用range请求来请求

二、关于Flash

1、Flash如果读取MP4文件,发现moov box不在文件前部,不会直接读取MP4的文件尾部去寻找moov box,所以Flash要等文件全部下载完,取到文件尾部的moov头,才可以正常播放。


PS:俺们的流媒体服务器,即使moov在文件尾部 也会先发moov头出去给CDN或用户,相当于CDN回源,或者用户回源请求到的MP4,已经是moov头在文件头部的了,虽然 这个时候 源站存储的还是moov头在文件尾部的MP4。


  • 1
    点赞
  • 6
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值