我们知道SDK的性能对终端播放的影响非常大。SDK版本迭代快速,每次发布前都要进行系统的测试,测试要有比较一致的行为,要有性能模型作为理论基础,对SDK的性能做量化评估。本文就是来探讨影响SDK性能的指标。
一般我们在讨论SDK的时候,播放终端可以分为Android和iOS两个平台:
Android
GC :可以通过GC日志记录,Mirror GC和Full GC的频次和时间,Full GC会造成比较明显的卡顿,需要评估
UI Loop:就是 VSync Loop :反映 SDK 对 App 流畅度的影响,理论上 60 fps 是最流畅的值。
Memory :反映 SDK 占用内存的大小
CPU Usage :反映 SDK 占用计算资源的大小
iOS
UI Loop :反映 SDK 对 App 流畅度的影响,理论上 60 fps 是最流畅的值。
Memory :反映 SDK 占用内存的大小
CPU Usage :反映 SDK 占用计算资源的大小
除了上面的一些系统级别的指标外,下面是直播 SDK 中特有的一些指标,这些指标可以反映出 SDK 的核心竞争力和一些主要的差异,涉及到视频的清晰度和流畅度,也是可以量化的。
1)影响视频清晰度的指标
帧率
码率
分辨率
量化参数(压缩比)
2)影响视频流畅度的指标
码率
帧率
3)其他重要指标
直播是流量和性能的消耗大户,有一些指标,直接影响了用户的感受,也是我们需要重点关注的:
耗电量
发热(不好量化,大部分情况发热和耗电量正比,可以使用耗电量暂时替代)