视频性能分析

评测用户体验上的“快慢”时,基于UI层面的变化入手,比打点日志分析可能更加准确。可以使用“录屏分帧”的测试方法来测试某些场景的耗时。这里提供一个测试案例。

背景

用户点击video tab到看到视频耗时太久,导致许多用户不愿意等待。所以需要降低其耗时,QA需要对优化前后的版本进行耗时统计对比。在这个案例里,开发的优化方向是提前创建播放器:

  1. 优化前:用户点击video tab的时候,video页面初始化、创建、再创建播放器...
  2. 优化方案1:app冷启动成功后,用户点击video tab,app马上通知video开始创建播放器
  3. 优化方案2:app冷启动成功后,会通知video开始创建播放器(用户未点击video tab)

方法

开发这边打的包,杀死app冷启动后,首页出现弹窗,就表示app基本初始化完成。所以测试分上边三种情况多次录制这样的操作视频:


image.png
  1. 录屏:冷启动后,首页出现弹窗后,启动录制,点击tab,等待视频开始播放,停止录制;
  2. 分帧:将步骤1得到的视频,传到PC,使用ffmpeg进行分帧:ffmpeg -i video01.mp4 -r 30 -f image2 ./video01/image-%05d.jpeg (其中,"-r 30"表示将视频按每秒拆分成30帧,所以帧间隔可以理解为1/30s,“%05d”表示5位数字顺序增长,不满5位前边加0,也就是image-00001.jpeg, image-00002.jpeg...image-00010.jpeg...)
  3. 统计:步骤2得到的在video01文件夹里的分帧图,会按顺序排列好,找到目标起始帧和目标结束帧,计算累计有多少帧,乘以帧间隔(步骤2里的命令是1/30s)得到的就是耗时:
    [图片上传失败...(image-b6ed7f-1666776860409)] 如这里,起始帧是00036.jpeg,结束帧是00134.jpeg,间隔98帧,所以耗时是98*1/30≈3.27s
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容