发明名称 云计算环境中通过混合使用RFB和H.264编码提高虚拟桌面显示质量的方法
摘要 本发明涉及一种云计算环境中通过混合使用RFB和H.264编码提高虚拟桌面显示质量的方法,服务端设有RFB编码器和H.264编码器,分别实现RFB和H.264两种编码方法;客户端设有RFB解码器和H.264解码器,分别实现RFB和H.264两种解码方法;服务端按设定的规则动态决定当前帧采用何种编码方法,客户端根据所接收IP包中的标志确定当前帧的解码方法,通过混合使用RFB和H.264编码并根据所显示内容的更新率在两种模式之间动态切换,使屏幕显示的质量和效果得到显著提高。本发明的有益效果是:在云计算环境中的虚拟桌面用户就可以像在实体的桌面系统上那样,无论办公或播放高清视频都能得到满意的效果。
申请公布号 CN103716318A 申请公布日期 2014.04.09
申请号 CN201310728714.X 申请日期 2013.12.25
申请人 杭州网新云视科技有限公司 发明人 毛德操;陈侃;郑霄;金涛
分类号 H04L29/06(2006.01)I;H04L29/08(2006.01)I;G06F9/455(2006.01)I 主分类号 H04L29/06(2006.01)I
代理机构 杭州九洲专利事务所有限公司 33101 代理人 陈继亮
主权项 一种云计算环境中通过混合使用RFB和H.264编码提高虚拟桌面显示质量的方法,其特征在于:该方法具体步骤如下:1.1)服务端设有RFB编码器和H.264编码器,分别实现RFB和H.264两种编码方法;1.2)客户端设有RFB解码器和H.264解码器,分别实现RFB和H.264两种解码方法;1.3)服务端以RFB编码或H.264编码作为初始的默认编码方法;1.4)服务端在每一帧的时间里从画面缓冲区FB读取内容,与缓存着的上一帧内容相比对,并计算变动部分的面积在整个画面中所占的比例K;1.5)如果这个比例K大于某个预定的数值K1,就递增一个计数器N;1.6)如果这个比例K小于某个预定的小于K1的数值K2,就递减计数器N,但是减到0之后就不再递减;1.7)服务端按下列规则动态决定当前帧采用何种编码方法:1.7.1)如果当前编码方法为H.264,则:1.7.1.1)如果N大于0,就继续按H.264方法编码,将H.264编码器的输出打包发送给客户端,在发送的IP包中带上表示H.264编码的标志;1.7.1.2)如果N等于0,就切换到按RFB方法编码,切换前先将缓存着的上一帧内容清0,然后将RFB编码器的输出打包发送给客户端,在发送的IP包中带上表示RFB编码的标志;1.7.2)如果当前编码方法为RFB,则;1.7.2.1)如果N小于某个预定的值M,就继续按RFB方法编码,包括将变动部分的画面内容复制到缓存的上一帧内容中,并将RFB编码器的输出打包发送给客户端,在发送的IP包中带上表示RFB编码的标志;1.7.2.2)如果N大于等于M,就切换到按H.264编码,并将当前帧的类型设置成IDR,如果H.264编码器因不能在一帧的时间内完成H.264编码而暂无输出,就暂停打包发送,等到H.264编码器有输出时才恢复打包发送,在发送的IP包中带上表示H.264编码的标志;1.8)客户端按下列规则根据所接收IP包中的标志确定当前帧的解码方法:1.8.1)如果所接收IP包中带有表示RFB编码的标志,就按RFB方法解码,并将RFB解码器输出写入本地的画面缓冲区FB;1.8.2)如果所接收IP包中带有表示H.264编码的标志,就按H.264方法解码,并将H.264解码器输出写入本地的画面缓冲区FB,如果暂无输出就不写。
地址 310030 浙江省杭州市西湖区科技园西园一路18号15楼