最近公司在国双监测一个视频mp4点播,后来可用性一直不是很好,下载详细数据分析了下,发现很多加载5s就算失败的情况,问国双的人说是因为5s没有加载出第一个关键帧所以失败了

  问题就来了:

   1.第一个关键帧在这个256M的mp4文件的什么位置,也就是说用户需要下载多大的视频才能开始播放

   2.知道了第一个关键帧的大小位置,用户需要什么样的网路才能在5s内把第一个关键帧加载出来,才能统计成功

  mp4文件是现成的,怎么知道mp4的第一个关键帧呢,后来问了问公司的视频大牛,他给了一个视频解析工具,可以分析出mp4的详细信息,从而找出第一个关键帧的位置

  第一个关键帧是分析出来文件的第一个key_samples的pos+size大小,如下图:

 wKiom1WD2FjzLaeVAAJPcA0VW-4682.jpg

从pos+size加起来是1190986字节,也就是差不都1163kb的地方,如果用户想5s加载成,就需要1163/5=232kb/s,折合下网速是2MB/s,后来分析CDN日志,发现很多失败的用户网络是不符合2MB/s的,把情况告知客户,OK


备注:

  mp4分析工具附件不让上传,需要请联系本人

  使用用法是:./mp4_reader.reader -f h264_800k_mp4.mp4 -o mp4info.txt -d sk

  最后看mp4info.txt就能看到上面的截图