远程控制技术并不算一项新兴的技术,但疫情催生出广泛的远程办公需求让我们开始关注这一技术。
和很多互联网技术一样,基于远程桌面的远程控制技术早些年间是国外企业更有优势,德国的远程控制厂商一度是最为主流的选择。但面对广泛的远程控制需求,以“向日葵远程控制”为代表的国内远程控制品牌从来没有停止过技术进步的脚步,并且在包括编解码算法在内的很多层面上已经取得了不小的突破。
针对远程控制场景的需求,向日葵远程控制自研的“SADDC”(Sunlogin Advanced Desktop Dynamic Codec)算法极具代表性,该自研算法成功帮助向日葵在编解码方向上占据了一定的技术优势,推动了向日葵远程控制软件在流畅度、帧率、清晰度等方面的全方位进步,这里我们就为各位简单解析一下这一算法,看看向日葵这一国民级远程控制品牌是如何做到算法领先的。
针对远程控制场景的三条主要编码策略
远程控制技术实现的核心原理,在于图像的传输以及远程指令的控制。其中图像传输我们可以将其理解为类似视频,这一部分的数据传输以及对应的编解码是整个远程控制的核心技术,也是影响远程控制体验的关键之一。
SADDC算法就是向日葵远程控制在编解码层面的总算法,主要基于三条核心策略:
● 基于焦点应用和视觉显著性理论(visual saliency)对远控画面进行实时的识别区分。
● 对于画面进行智能切片分区、实现分区块解码运算。
● 更高效的利用主机的配置,主机配置足够时配合硬件加速进一步提升远控质量。
视觉显著性策略
基于视觉显著性理论的策略核心在于优化比特资源的分配:对高显著性的区域倾斜比特资源,使得重点区域呈现出更加流畅且清晰的画面,避免将过多的资源投入到非显著区与非焦点区域中,提升整体的编码效率空间。
根据远程控制的键鼠动作以及光标位置,确定画面的焦点区域是相对基础的,向焦点区域倾斜比特资源是SADDC算法策略中的一环。更进一步的是,向日葵还引入了视觉显著性理论(visual saliency),与焦点应用区的策略互为补充,实现整体画质提升的同时降低比特资源占用。
智能切片分区
智能切片分区策略实际上与上文的视觉显著性策略是相辅相成的。
SADDC算法会对远控画面进行智能的切片分区,画面足够复杂的情况下分区会细化至1000-2000个区块,然后将画面有变化的区块进行重新计算、压缩、传输,没有变化的区块则保留画面。
该策略执行的实际效果类似于一些手机屏幕所采取的节能策略:如果画面中不存在大幅运动物体自动降低帧率,最低可无感调节至1帧或是暂停画面刷新。如此一来,传输的数据量得以降低,对上一层的带宽压力也大大减少。
硬件加速
硬件加速概念很多人不会陌生,向日葵通过引入硬件加速策略大大提升了远程控制的性能上限。
如果主机的配置足够强大,那么向日葵可以利用GPU的算力,在GPU“内部”完成远控画面的运算和压缩,这一策略将会极大的降低延迟,让画面的帧率上线大大提升,向日葵SADDC算法通过这一策略可将远控画面的帧率提升至最高144帧,可以满足很多高端的远控需求。
追求极致造就领先算法
关于SADDC算法的核心策略,我们已经有了一个明确的了解,那么向日葵是如何将这一领先的算法成功打造出来的呢?主要在于对技术的极致追求和对产品体验的不断打磨。
早期远程控制领域,缺少专门针对远程控制场景的编解码算法,当时的CPU也不具备足够的算力,无法实时编码H.264、H.265这样的视频编解码算法,为了实现技术突破最终为产品体验提供正反馈,向日葵团队付出了巨大的努力从零开发了SADDC算法,实现了行业技术领先。
当然,成功开发的背后不应该只强调努力,实际上向日葵长年在远程控制领域的技术积累和产品经验也是必要条件,这是其他新出现的远程控制厂商所不具备的。
今年6月,向日葵携SADDC算法参与了首届广州·琶洲算法应用国际大赛,斩获赛道第一名,SADDC算法的成功受到了评委会和业界的一致认可,相信在未来,向日葵仍然不会停下技术进步的脚步,为推动科技发展贡献一份专业力量。