在大多数人看来,播放高清视频似乎没什么大不了的,但对于国产应用环境,尤其是云桌面环境,却是不小的挑战。
原因一是虚拟化的性能折损和GPU支持的缺乏,导致视频处理能力弱,二是视频播放和显示过程更复杂,任务更多更重。
传统视频播放是将视频文件或网络视频流读取后,经CPU/GPU解码成图像,再进行播放的过程。
在云桌面环境中,还需要将视频画面再次编码和压缩,网络传输到客户端,再次解码,才能呈现呈现,导致计算资源开销是传统PC的3倍,结果占用了大量“云端”计算资源。
对此,银河麒麟安全云桌面软件采用了自研的云视频播放协议,简化云桌面视频播放流程,将原始视频数据直接经专用通道传输到客户端,解码播放。
这样一来,服务端不再需要进行繁复的编解码工作,释放了服务端的计算性能,能够在保证画质的前提下,增加后端用户并发数,缓解视频集中播放场景下计算资源挤兑的风险,比如远程教育。
应用自研云视频播放协议后的麒麟安全云桌面,在播放H.264、H.265等不同编码标准,480p、720p、1080、4K等不同分辨率视频时,服务端的CPU核心数消耗均有大幅降低,最多减少了97.9%。
其中,每一路1080p24的视频播放减少约4个CPU核消耗,每一路4Kp24的视频播放可以减少8个CPU核的消耗,从而可以流畅播放4K视频。
下图是基于Arm架构服务器、麒麟桌面操作系统,云桌面播放视频时服务端CPU使用情况的优化前后对比。
据介绍,云视频播放协议的研发过程中,由于其独立于云桌面协议,存在一些与桌面交互的技术难点,包括:视频播放区域定位、播放区域窗口叠加判断、浮窗和弹幕显示等等。
为此,银河麒麟安全云桌面独创了占位符全域定位和掩膜技术,有效解决了云桌面与云视频的画面交互问题,保证流畅观看。
银河麒麟安全云桌面的云视频播放协议经过底层的统一优化,实现了对上层应用的无感知,也就是播放器、浏览器都无需进行适配。
目前,已经测试了VLC、麒麟影音、MPlayer等多款主流播放器、多款浏览器,效果均有提升。
标签: 麒麟软件