大家在直播平台观看直播时,由于手机长时间处在视频直播状态,导致手机发烫的现象十分常见。引起发烫的主要原因是CPU或GPU的占用率过高。其实在直播平台制作时可以通过很多细节方面的优化,降低系统功耗。但前提是要求我们明确其中的原因。那么导致CPU或GPU占用率过高的原因都有哪些呢?
1.数据量过大
在整个视频直播过程中,视频的尺寸和帧率是决定数据量大小的两点因素。通常在直播平台制作过程中,为了不影响用户体验,适当的减小视频尺寸和帧率可以降低CPU或GPU的“压力”,从而降低一定的功耗,但这样需要在用户体验和功耗之间找到最佳的平衡点。
2.格式转换问题
在直播平台制作过程中,不同的模块对于数据格式的要求是存在一定差异的。为了尽可能的减少不同格式之间的数据转换,通常是选择GPU来处理部分复杂的格式转换。这样一来也会加大GPU的占用率,导致系统功耗增加。
3.过度放大图像
过度放大图像会涉及到复杂的运算从而导致CPU功耗升高。当然,如果过度缩小或剪裁图像,也会因为一系列复杂运算而消耗一定的CPU。所以在选择预览分辨率和推流尺寸时,尽可能让两者保持一致,寻求最佳的平衡点,这样既能合理把控CPU功耗,还能保证用户的直播观看体验。
4.编解码问题
直播平台制作时如果软编码或软解码的话也是非常耗费CPU的,但硬编码或硬解码就不会出现这个问题。因为它们是用专门的硬件编解码器模块,可以减轻CPU的“负担”,相比起来还会比较省电。但需要注意的是,采用硬编码或硬解码各类Android机型的兼容问题要能处理好。
5.其他影响因素
在直播业务中,除了以上提到的影响CPU或GPU功耗的因素之外,像是基于人脸识别技术下的萌颜特效,以及高标准的美颜滤镜功能,它们在直播系统正常的运行过程中,对于CPU和GPU的消耗也是比较大的。
所以说用户观看视频直播时,除了用户自身所使用的设备本身因素以外,在直播平台制作时对于系统整体的功耗问题优化,也会多多少少影响用户的直播观看体验。