基于应用虚拟化的网络实时音频传输方法

文档序号:7778407阅读:484来源:国知局
基于应用虚拟化的网络实时音频传输方法
【专利摘要】一种基于应用虚拟化的网络实时音频传输方法,应用于服务端,该方法包括:重定向步骤,当用户在客户端上要使用服务端上的应用时,利用服务端的应用层声音捕捉装置实时捕捉服务端的所述应用产生的音频内容;处理步骤,对所捕获的音频内容进行处理以转换为客户端能够识别的音频数据格式;发送步骤,将处理后的音频内容通过网络传输给客户端。本发明可以在不支持大型3D游戏的客户端设备上支持游戏音频的实时回放;并可以在原先不支持现有网游的客户端设备上支持网游音频回放,大大扩展了游戏的受众范围。
【专利说明】基于应用虚拟化的网络实时音频传输方法
【技术领域】
[0001]本发明涉及应用虚拟化领域,特别涉及一种基于应用虚拟化的网络实时音频传输方法。
【背景技术】
[0002]随着智能手机的普及与发展,智能手机的应用种类不断丰富,人们对应用的要求不断提高,覆盖了交流、办公、娱乐等各个方面。同时随着3G、4G网络的发展,移动终端对多媒体服务的需求越来越强烈。然而,与此相对的是,受制于芯片制作工艺和功耗的限制,移动设备的计算能力先天不足,无法满足大型实时多媒体相关应用的需求,特别是3D渲染和大型游戏的需求。即使是最新的高端智能手机,受制于移动平台的计算能力,也难以实现3D图像的高效渲染与大型游戏的流畅运行。这一瓶颈在很大程度上限制了智能手机和相关应用的进一步发展,而解决这一问题的一种可行方法就是通过应用虚拟化实现运算和交互部分的分离。
[0003]应用虚拟化的一种常见实现方式是采用客户端/服务端的架构。其具体做法是:将应用中计算密集的主要处理逻辑与交互密集的界面显示、输入输出部分进行分离,性能较差的客户端仅负责图形显示、声音播放以及操作输入部分,应用自身则在性能较好的服务端运行。

【发明内容】

[0004]鉴于以上内容,有必要提供一种基于应用虚拟化的网络实时音频传输方法,可以在不支持大型3D游戏的客户端设备上支持游戏音频的实时回放;并可以在原先不支持现有网游的客户端设备上(尤其是便携式设备)支持网游音频回放,大大扩展了游戏的受众范围。
[0005]一种基于应用虚拟化的网络实时音频传输方法,应用于服务端,该方法包括:重定向步骤,当用户在客户端上要使用服务端上的应用时,利用服务端的应用层声音捕捉装置实时捕捉服务端的所述应用产生的音频内容;处理步骤,对所捕获的音频内容进行处理以转换为客户端能够识别的音频数据格式;发送步骤,将处理后的音频内容通过网络传输给客户端。
[0006]相较于现有技术,所述基于应用虚拟化的网络实时音频传输方法,其能够采用重定向Windows Core Audio API的方式获取服务端中的应用的音频数据,对所获取的音频数据进行码率转换以及数据类型的修正后,通过网络将处理后的音频数据传输至客户端以使用户在桌面和移动平台上实时播放客户端所接收的音频数据。
【专利附图】

【附图说明】
[0007]图1是本发明基于应用虚拟化的网络实时音频传输系统的应用环境图。
[0008]图2是本发明的服务端架构图。[0009]图3是本发明Windows Core Audio API接口的参数列表。
[0010]图4是本发明基于应用虚拟化的网络实时音频传输方法的较佳实施例的流程图。
[0011]主要元件符号说明
【权利要求】
1.一种基于应用虚拟化的网络实时音频传输方法,应用于服务端,其特征在于,该方法包括: 重定向步骤,当用户在客户端上要使用服务端上的应用时,利用服务端的应用层声音捕捉装置实时捕捉服务端的所述应用产生的音频内容; 处理步骤,对所捕获的音频内容进行处理以转换为客户端能够识别的音频数据格式; 发送步骤,将处理后的音频内容通过网络传输给客户端。
2.如权利要求1所述的基于应用虚拟化的网络实时音频传输方法,其特征在于,所述重定向步骤包括: (a)通过Hook子程捕捉服务端上的所述应用的消息; (b)重定向WindowsCore Audio API以使服务端的所述应用调用服务端的功能函数; (c)通过重定向后的WindowsCore Audio API获取所述应用的音频元数据; (d)根据所述应用的音频元数据捕捉所述应用的音频内容; Ce)对所捕捉到的所述应用的音频内容进行缓存。
3.如权利要求2所述的基于应用虚拟化的网络实时音频传输方法,其特征在于,所述步骤b包括: (bl)获取Windows Core Audio API接口中函数的入口地址; (b2)根据所获取Windows Core Audio API接口中函数的入口地址重定向WindowsCore Audio API。`
4.如权利要求2所述的基于应用虚拟化的网络实时音频传输方法,其特征在于,所述功能函数与Windows Core Audio API接口中函数的特征保持一致,所述功能函数用于替换服务端中Windows Core Audio API接口中的函数,用以通过功能函数捕捉服务端对Windows Core Audio API的调用,从而获取所述应用写入服务端的硬件的音频数据。
5.如权利要求3所述的基于应用虚拟化的网络实时音频传输方法,其特征在于,步骤bl包括: 在对Windows Core Audio API接口中的函数重定向之前,预先对Audio, dll进行测试加载; 通过加载后的Windows Core Audio API接口中的函数的入口地址以及动态链接库DLL中Audio, dll的入口地址获得Windows Core Audio API接口中函数的入口地址相对于Audio, dll的入口地址的相对差值。
6.如权利要求3所述的基于应用虚拟化的网络实时音频传输方法,其特征在于,步骤bl包括: 通过Windows Core Audio API接口中的函数的入口在接口的实例的虚函数表中的偏移地址获得Windows Core Audio API接口中函数的入口地址。
7.如权利要求5所述的基于应用虚拟化的网络实时音频传输方法,其特征在于,在步骤b2中通过跳转地址将Windows Core Audio API接口中函数的入口地址处的指令更改为跳转指令来实现函数重定向。
8.如权利要求6所述的基于应用虚拟化的网络实时音频传输方法,其特征在于,在步骤b2中通过修改Windows Core Audio API接口中函数的入口在接口的实例的虚函数表中的偏移地址实现对函数的重定向。
9.如权利要求2所述的基于应用虚拟化的网络实时音频传输方法,其特征在于,通过调用功能函数CA_Start、CA_Stop、CA_Reset、CA_Initialize获取所述应用的音频的格式、码率的音频元数据。
10.如权利要求2所述的基于应用虚拟化的网络实时音频传输方法,其特征在于,通过调用GetBuffer对应的功能函数CA_GetBuffer及ReleaseBuffer对应的功能函数CA_ReleaseBuffer实现对应 用的音频内容的获取以及缓存。
【文档编号】H04L29/08GK103701854SQ201310629091
【公开日】2014年4月2日 申请日期:2013年11月29日 优先权日:2013年11月29日
【发明者】张悠慧, 渠鹏, 周佳祥, 郑纬民 申请人:深圳清华大学研究院
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1