云桌面在我们生活中的应用越来越广泛 ,在大幅降低能耗实现快速办公的同时,其图形和视频性能的不足一直被用户诟病。基于银河麒麟操作系统,采用API转发的VirtIO-GPU虚拟化技术可极大提升虚拟机的图形性能(可达60%以上),使云桌面场景中运行大型3D游戏变成现实。但虚拟GPU不支持硬件视频解码的弊端却导致软件解码CPU占用率过高、画面不流畅,甚至丢帧等现象。
针对此类问题,麒麟软件结合VirtIO-GPU虚拟化,创新性推出VirtIO-GPU前后端视频加速技术,为其增加硬件编解码功能,实现高清视频的流畅播放。视频加速技术前端为“VirtIO-GPU视频驱动”,后端为“VirtIO-GPU视频服务程序”。前后端之间采用“VirtIO-GPU视频协议”进行通信,该协议定义了创建编解码器、创建视频缓冲区、解码比特流等编解码相关命令。 VirtIO-GPU硬件视频加速机制整体框架
在虚拟机内使用MPV播放器分别播放不同编码标准和清晰度的视频文件时,使用VirtIO-GPU硬件解码时的CPU占有率明显低于软件编解码,在Arm架构上降幅则超过90%,在x86_64架构上降幅超过70%,大幅提升了用户的使用体验。
使用Firefox浏览器进行4K在线视频的播放测试,使用VirtIO-GPU硬件解码时Firefox解码进程的CPU占用率相较于软件解码降低了95%以上,画面清晰流畅。
Firefox播放在线4K视频的效果图 目前,VirtIO-GPU硬件视频加速已经实现了H.264和H.265的硬件解码功能,其相关补丁也已经合入到mesa、virglrenderer上游开源社区。创新永无止境,科技引领未来,麒麟软件在科技创新之路上再接再厉勇毅笃行,打造好用、易用的操作系统产品赋能千行百业,助力我国数字经济建设。 通讯员 | 陈美妤、杜式薇、杨洋 来 源 | 产品与社区发展中心、研发中心 审 核 | 市场与政府事务部