移动终端及其编码速率控制方法
技术领域
本发明涉及移动通信技术领域,尤其涉及移动终端及其编码速率控制方法。
背景技术
在3G(3rd Generation)、LTE(Long Time Evolution,长期演进)时代,视频电话及VOIP(Voice Over Intemet Protoco1)业务应用越来越广泛,如skype、Viber以及Call+业务都支持视频电话和VOIP业务。
由于移动网络的带宽是变化的,当前的视频电话及VOIP业务都支持多种编码速率,以适应不同的网络带宽。并且,在现有技术中,移动终端主要基于进行通信对方的反馈进行编码速率的自适应调整。具言之:
首先,作为发送侧的移动终端(以下又称之为本端)基于默认的编码速率,发送音视频数据报文给作为接收侧的移动终端(以下又称之为对端),并且在报文的头部附带报文的序列号。接着,对端基于接收到的报文的序列号判断数据报文的丢失情况,生成用于记录丢包情况的控制报文,并将所生成的控制报文反馈给本端。然后,本端基于报文的时延变化和对端反馈的丢包情况调整编码速率,并基于新的编码速率发送音视频数据报文。
目前,无线网络环境变化迅速,网络中接纳的用户数在不断变化,基站给移动终端分配的带宽也在不断变化。尤其在网络负载较重的时候,移动终端获得的带宽变化非常剧烈。并且,移动终端之间的信息传输有比较大的时延,也即本端将几乎无法实时获得与对端之间的传输链路的带宽变化情况。
这使得,基于上述现有技术,本端将无法及时调整数据报文的编码速率,容易造成编码速率和空口的带宽不匹配,使得大量数据积累在传输链路上,从而额外增加了业务时延并且劣化了用户体验。
发明内容
有鉴于此,本发明的实施例提供了编码速率控制方法和移动终端以实现尽量及时地调整数据报文的编码速率,从而减少音视频流的时延抖动。
根据本发明的第一方面,提供了一种编码速率控制方法,用于控制移动终端进行编码以生成数据报文的速率,包括:
所述移动终端的空口协议处理器检测发送状态参数,其中所述发送状态参数表示所述移动终端作为发送侧参与通信的实时状态;
所述移动终端的编解码器基于所述发送状态参数调整编码速率;以及
所述移动终端的编解码器以调整后的编码速率生成数据报文,并将所生成的数据报文发送至所述空口协议处理器。
结合第一方面,在第一种可能的实现方式中,所述移动终端的空口协议处理器检测发送状态参数,包括:
所述空口协议处理器检测发送侧缓存区大小,其中所述发送侧缓存区大小表示缓存在所述空口协议处理器中的待发送数据报文的数据量;
在所检测到的发送侧缓存区大小超过缓存区上限的情况下,所述空口协议处理器向所述编解码器发送速率下调指令;以及
在所检测到的发送侧缓存区大小低于缓存区下限的情况下,所述空口协议处理器向所述编解码器发送速率上调指令。
结合第一方面的第一种可能的实现方式,在第二种可能的实现方式中,所述移动终端的编解码器基于所述发送状态参数调整编码速率,包括:
在接收到所述速率下调指令的情况下,所述编解码器减小所述编码速率;以及
在接收到所述速率上调指令的情况下,所述编解码器增大所述编码速率。
结合第一方面的第一种、第二种可能的实现方式,在第三种可能的实现方式中,所述移动终端的空口协议处理器检测发送状态参数,还包括:
在所述空口协议处理器测量发送侧缓存区大小之前或之后,所述空口协议处理器如下计算所述缓存区上限和所述缓存区下限,
所述缓存区上限等于所述编码速率的当前值与所述编解码器的端到端平均时延上限的乘积;以及
所述缓存区下限等于所述编码速率的当前值与所述编解码器的端到端平均时延下限的乘积;
其中,所述端到端平均时延表示所述移动终端与通信对端之间的平均传输时延。
结合第一方面的上述可能的实施方式,在第四种可能的实施方式中,所述移动终端的空口协议处理器检测发送状态参数,包括:
所述空口协议处理器检测发送速率,其中所述发送速率表示所述移动终端发送数据报文的速率。
结合第一方面的第四种可能的实现方式,在第五种可能的实现方式中,所述移动终端的编解码器基于所述发送状态参数调整编码速率,包括:
所述编解码器检测接收速率,其中所述接收速率表示所述移动终端接收数据报文的速率;
所述编解码器检测端到端时延,其中所述端到端时延表示所述移动终端与通信对端之间的传输时延;以及
所述编解码器基于所述接收速率、所述端到端时延以及从所述空口协议处理器接收到的发送速率来调整所述编码速率。
结合第一方面的第五种可能的实现方式,在第六种可能的实现方式中,所述编解码器基于所述接收速率、所述端到端时延以及从所述空口协议处理器接收到的发送速率来调整所述编码速率,包括:
在所述端到端时延持续上升的情况下,所述编解码器减小所述编码速率,并且减小后的所述编码速率不低于所述发送速率和所述接收速率中的最小值;以及
在所述端到端时延维持稳定或持续下降的情况下,所述编解码器增大所述编码速率。
结合第一方面的上述可能的实施方式,在第七种可能的实现方式中,所述数据报文为所述编解码器通过对音视频数据流进行编码所生成的数据报文。
在第二方面,本发明提供了一种移动终端,包括:
空口协议处理器,用于检测发送状态参数,其中所述发送状态参数表示所述移动终端作为发送侧参与通信的实时状态;
编解码器,与所述空口协议处理器连接,用于基于所述发送状态参数调整编码速率,以调整后的编码速率生成数据报文,并将所生成的数据报文发送至所述空口协议处理器。
结合第二方面,在第一种可能的实现方式中,所述空口协议处理器包括:
测量模块,所述测量模块用于检测发送侧缓存区大小,其中所述发送侧缓存区大小表示缓存在所述空口协议处理器中的待发送数据报文的数据量;以及
指令模块,用于在所述测量模块检测到的发送侧缓存区大小超过缓存区上限的情况下,向所述编解码器发送速率下调指令,以及在所述测量模块检测到的发送侧缓存区大小低于缓存区下限的情况下,向所述编解码器发送速率上调指令。
结合第二方面的第一种可能的实现方式,在第二种可能的实现方式中,所述空口协议处理器还包括门限更新模块,
所述门限更新模块被配置为如下计算所述缓存区上限和所述缓存区下限,
所述缓存区上限等于所述编码速率的当前值与所述编解码器的端到端平均时延上限的乘积;以及
所述缓存区下限等于所述编码速率的当前值与所述编解码器的端到端平均时延下限的乘积;
其中,所述端到端平均时延表示所述移动终端与通信对端之间的平均传输时延。
结合第二方面的上述可能的实施方式,在第三种可能的实现方式中,所述空口协议处理器包括:测量模块,所述测量模块用于检测发送速率,其中,所述发送速率表示所述移动终端发送数据报文的速率;以及
指令模块,所述指令模块用于向所述编解码器发送所述发送速率。
结合第二方面的上述可能的实施方式,在第四种可能的实现方式中,所述编解码器包括自适应编码模块,所述自适应编码模块被配置为:
在接收到所述速率下调指令的情况下,减小所述编码速率;以及
在接收到所述速率上调指令的情况下,增大所述编码速率。
结合第二方面的第四种可能的实现方式,在第五种可能的实现方式中,所述编解码器还包括:
第一检测模块,用于检测接收速率,其中所述接收速率表示所述移动终端接收数据报文的速率;以及
第二检测模块,用于检测端到端时延,其中所述端到端时延表示所述移动终端与通信对端之间的传输时延,
所述自适应编码模块还被配置为基于所述接收速率、所述端到端时延以及从所述空口协议处理器接收到的发送速率来调整所述编码速率。
结合第二方面的第五种可能的实现方式,在第六种可能的实现方式中,所述自适应编码模块被配置为:
在所述端到端时延持续上升的情况下,减小所述编码速率,并且减小后的所述编码速率不低于所述发送速率和所述接收速率中的最小值;以及
在所述端到端时延维持稳定或持续下降的情况下,增大所述编码速率。
通过由移动终端的空口协议处理器检测移动终端的发送状态参数,并由移动终端的编解码器基于相应的检测结果调整其数据报文的编码速率,根据本发明实施例的移动终端及其编码速率控制方法,能够适应网络的带宽变化而及时调整对诸如音视频流等数据报文的编码速率,从而有效减少传输链路上的数据积累,减少业务时延,提升用户体验。
附图说明
为了更清楚地说明本发明实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简要介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域的普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。
图1示出根据本发明一实施例的编码速率控制方法的示意图;
图2示出根据本发明另一实施例的编码速率控制方法的示意图;
图3示出根据本发明另一实施例的编码速率控制方法的流程图;
图4示出根据本发明又一实施例的编码速率控制方法的示意图;
图5示出根据本发明又一实施例的编码速率控制方法的流程图;
图6示出根据本发明一实施例的移动终端的示意图;
图7示出根据本发明另一实施例的移动终端的示意图。
具体实施方式
以下将参考附图详细说明本发明的各种示例性实施例、特征和方面。附图中相同的附图标记表示功能相同或相似的元件。尽管在附图中示出了实施例的各种方面,但是除非特别指出,不必按比例绘制附图。
在这里专用的词“示例性”意为“用作例子、实施例或说明性”。这里作为“示例性”所说明的任何实施例不必解释为优于或好于其它实施例。
另外,为了更好的说明本发明,在下文的具体实施方式中给出了众多的具体细节。本领域技术人员应当理解,没有这些具体细节,本发明同样可以实施。在另外一些实例中,对于大家熟知的方法、手段、元件和电路未作详细描述,以便于凸显本发明的主旨。
为了顺应网络带宽的急剧变化及时调整诸如音视频流等数据报文的编码速率,以尽量降低编码速率与空口带宽之间的不匹配,本发明的实施例由移动终端的空口协议处理器检测发送状态参数,其中发送状态参数表示移动终端作为发送侧参与通信的实时状态;由移动终端的编解码器基于发送状态参数调整编码速率,可包括例如上调编码速率、下调编码速率、或者维持现有编码速率;从而使得移动终端的编解码器能够以调整后的编码速率生成数据报文,并将所生成的数据报文发送至空口协议处理器。
具体地,如图1所示,移动终端作为通信的参与方,可以作为发送侧参与通信,也可作为接收侧参与通信。移动终端的空口协议处理器,可具体为其中的测量模块检测发送状态参数(图示为步骤1),所述发送状态参数表示所述移动终端作为发送侧参与通信的实时状态,将检测到的发送状态参数发送至编解码器(图示为步骤2)。
这样,通过在空口协议处理器与编解码器之间建立跨层通信通道,可以使得空口协议处理器能够几乎实时地将发送状态参数发送给编解码器,并使得编解码器能够及时地调整数据报文的编码速率(图示为步骤3)。然后,编解码器能够基于调整后的编码速率生成和发送数据报文(图示为步骤4和5),使数据报文的生成、累积速率和空口的带宽尽量匹配,减少空口的拥塞丢包和/或数据报文的时延抖动,从而提升业务服务质量和用户体验。
在一种可能的实现方式中,所述数据报文为编解码器通过对音视频数据流进行编码所生成的数据报文。
实施例1
图2和图3分别示出根据本发明另一实施例的编码速率控制方法的示意图和流程图。图2中标号与图1相同的组件具有相同的功能,为简明起见,省略对这些组件的详细说明。
如图2所示,在本实施例中,移动终端的空口协议处理器可检测发送侧缓存区大小,将检测结果作为发送状态参数(图示为步骤21),并根据所检测到的发送状态参数,向该移动终端的编解码器上报速率上调指令或速率下调指令(图示为步骤22),以使该移动终端的编解码器能够及时调整编码速率(图示为步骤23)。
具言之,如图3所示,根据本实施例的编码速率控制方法主要包括:
步骤S210、移动终端的空口协议处理器例如实时地检测发送侧缓存区大小,其中发送侧缓存区大小表示缓存在空口协议处理器中的待发送数据报文的数据量。
步骤S220、空口协议处理器判断所检测到的发送侧缓存区大小是否小于缓存区下限,并在判定为是的情况下进入步骤S260,否则进入步骤S230;
步骤S230、空口协议处理器判断所检测到的发送侧缓存区大小是否超过缓存区上限,并在判定为是的情况下进入步骤S240,否则认为当前的编码速率适当,从而可不进行编码速率调整、即维持现有编码速率;
步骤S240、空口协议处理器向该移动终端的编解码器发送速率下调指令,以使编解码器执行步骤S250;
步骤S250、编解码器下调数据报文的编码速率;
步骤S260、空口协议处理器向该移动终端的编解码器发送速率上调指令,以使编解码器执行步骤S270;以及
步骤S270、编解码器上调数据报文的编码速率。
根据本实施例的上述编码速率控制方法,一方面,当空口协议处理器检测到发送侧缓存区大小超过缓存区上限时,表明编解码器以当前编码速率形成的数据报文,高于当前网络空口带宽的处理能力,有可能会造成传输链路上的数据积累,从而导致业务时延增加。因此,空口协议处理器向编解码器发送速率下调指令,以使得编解码器能够及时减小编码速率,例如将编码速率从当前的128kbps下调至64kbps,从而使数据报文的生成、累积速率尽量匹配网络空口带宽,能够有效减少业务时延。
另一方面,当空口协议处理器检测到发送侧缓存区大小低于缓存区下限时,表明编解码器以当前编码速率形成的数据报文,低于当前网络空口带宽的处理能力,有可能造成带宽浪费。因此,空口协议处理器向编解码器发送速率上调指令,以使得编解码器能够及时增大编码速率,例如将编码速率从当前的128kbps上调至512kbps,从而使数据报文的生成、累积速率尽量匹配网络空口带宽,能够有效避免网络带宽浪费。
通常编解码器支持的编码速率是非连续的几种速率,编解码器的编码速率调整是根据编解码器支持的速率进行选择,例如32kbps、64kbps、128kbps、192kbps、320kbps、384Kbps、512kbps、1024kbps、2048kbps等。此外,在通常的应用场景中,典型的编码速率范围为32kbps~2048kbps。
需要说明的是,如编解码器支持更多的速率,或编解码器支持连续速率,或编解码器支持VBR(Variable Bitrate)动态比特率、ABR(Average Bitrate)平均比特率等格式的编码,编解码器可以根据本发明实施例的编码速率控制方法来对编码速率进行控制。
需要说明的是,尽管图3示出先执行步骤S220、再执行步骤S230,本领域技术人员应能理解,步骤S220、S230的执行时序不限于此。例如,可以先执行步骤S230、再执行步骤S220,甚至还可以同时执行步骤S220、S230,只要能够确定发送侧缓存区大小与缓存区门限的关系即可。
在一种可能的实现方式中,在步骤S220、S230之前或之后还可执行缓存区门限更新步骤。具言之,空口协议处理器按如下方式计算所述缓存区上限和所述缓存区下限,即:
缓存区上限=编码速率的当前值*编解码器的端到端平均时延上限;
缓存区下限=编码速率的当前值*编解码器的端到端平均时延下限。
一般来说,移动终端的编解码器的端到端平均时延上限大于其端到端平均时延下限。这使得,缓存区上限通常大于缓存区下限。端到端平均时延,可以根据滑动平均模型等算法模型获得。
在不同的应用场景下,端到端平均时延上限可以有不同的配置。例如,在使用视频电话时,端到端平均时延上限可以配置为200ms或300ms;然而,在进行视频文件传输时,端到端平均时延可以配置得约大一些,比如1s或1.5s。此外,端到端平均时延下限通常可以配置为20ms~50ms。
通常,空口协议处理器计算缓存区上限和缓存区下限是周期性的,在4G的网络下周期可以为1ms左右,3G网络下周期为2ms~10ms。空口协议处理器可以基于本周期或者上一周期来计算缓存区上限和下限。
实施例2
图4和图5分别示出根据本发明另一实施例的编码速率控制方法的示意图和流程图。图4中与图1、图2标号相同的组件具有相同的功能,为简明起见,省略对这些组件的详细说明。
如图4所示,在本实施例中,移动终端的空口协议处理器可检测发送速率作为发送状态参数(图示为步骤41),并将所检测到的发送速率上报给该移动终端的编解码器(图示为步骤42),以使该移动终端的编解码器能够及时调整编码速率(图示为步骤43)。
具言之,如图5所示,根据本实施例的编码速率控制方法主要包括:
步骤S510、移动终端的空口协议处理器例如实时地检测发送速率,其中发送速率表示该移动终端发送数据报文的速率;
步骤S520、空口协议处理器向该移动终端的编解码器发送所检测到的发送速率;
步骤S530、编解码器检测接收速率,其中接收速率表示该移动终端接收数据报文的速率;
步骤S540、编解码器检测端到端时延,其中端到端时延表示该移动终端与通信对端之间的传输时延;以及
步骤S550、编解码器基于自身所检测到的接收速率、端到端时延以及从空口协议处理器接收到的发送速率,按照预定的调整规则来调整编码速率。
根据本实施例的上述编码速率调整方法,由空口协议处理器检测移动终端的发送速率,对网络的变化更敏感。尤其当网络带宽变化剧烈时,空口协议处理器可以迅速发现网络带宽的变化,并使编解码器可以及时地对编码速率进行调整,从而使得数据报文的编码、累积速率尽量匹配空口带宽。
需要说明的是,尽管图5示出依次执行步骤S520、S530、S540,本领域技术人员应能理解,这三个步骤的执行时序不限于此。例如,可以首先执行步骤S530,也可以首先执行S540,甚至还可以同时执行这三个步骤,只要编解码器能够获知发送速率、接收速率以及端到端时延这三个参数即可。
在一种可能的实现方式中,步骤S550中的预定调整规则可包括:在端到端时延持续上升的情况下,编解码器减小编码速率,例如将编码速率减小为不低于发送速率和接收速率中的最小值的一个值;以及,在端到端时延维持稳定或持续下降的情况下,编解码器增大编码速率,例如将编码速率从128kbps上调至512kbps。
通常,编解码器具有一定的编码周期,典型的周期为1s~5s。在当前编码周期内的端到端时延与上一编码周期的端到端时延相比保持稳定或者有所下降的情况下,编解码器增加编码速率。
具言之,一方面,当端到端时延持续上升时,表明编解码器以当前编码速率生成的数据报文,高于当前网络空口带宽的处理能力,可能会造成传输链路上的数据积累,导致业务时延增加。因此,编解码器可减小编码速率,以使得数据报文的生成、累积速率尽量匹配空口带宽,从而减小空口的拥塞丢包。并且,在一种可能的具体实现方式中,减小后的编码速率不低于发送速率和接收速率中的最小值,以避免浪费传输带宽。例如,当测量到的发送速率高于接收速率时,说明下行拥塞比上行严重,此时调整编码速率适宜以接收速率为准;反之亦然。
另一方面,当端到端时延维持稳定或持续下降时,表明编解码器以当前编码速率生成的数据报文,低于当前网络空口带宽的处理能力,可能会造成带宽浪费。因此,编解码器可增大编码速率,以使得数据报文的生成、累积速率尽量匹配空口带宽,从而减小数据报文的时延抖动。端到端时延具有一定的延后性,可以结合发送速率和/或接收速率等状态参数,可以更准确的确定现时的通信状态。
需要说明的是,尽管分别以发送侧缓存区大小、发送速率作为发送状态参数的示例介绍本发明实施例如上,本领域技术应能理解,本发明不限于此。例如,发送状态参数还可为其它参数,只要该参数能够反映移动终端作为发送侧参与通信的实时状态即可。此外,空口协议处理器可以同时检测多个发送状态参数,而编解码器可结合多个发送状态参数进行编码速率调整,以尽量提高数据报文的生成、累积速率与空口带宽的实时匹配度。
实施例3
图6示为本发明一实施例的移动终端600的结构框图。如图6所示,移动终端600包括空口协议处理器610、编解码器620。空口协议处理器610用于检测发送状态参数,其中发送状态参数表示移动终端600作为发送侧参与通信的实时状态。编解码器620与空口协议处理器610连接,编解码器620用于基于发送状态参数调整编码速率,以调整后的编码速率生成数据报文,并将所生成的数据报文发送至空口协议处理器610。
通过在空口协议处理器610与编解码器620之间建立跨层通信通道,可以使得空口协议处理器610能够几乎实时地将发送状态参数发送给编解码器620,并使得编解码器620能够及时地调整数据报文的编码速率。然后,编解码器620能够基于调整后的编码速率生成和发送数据报文,使数据报文的生成、累积速率和空口的带宽尽量匹配,减少空口的拥塞丢包和/或数据报文的时延抖动,从而提升业务服务质量和用户体验。
在一种可能的实现方式中,如图6所示,空口协议处理器610可包括测量模块611、指令模块612、门限更新模块613。
其中,测量模块611主要用于检测发送侧缓存区大小,所述发送侧缓存区大小表示缓存在空口协议处理器610中的待发送数据报文的数据量。
指令模块612主要用于在测量模块611检测到的发送侧缓存区大小超过缓存区上限的情况下,向编解码器620发送速率下调指令,以及在测量模块611检测到的发送侧缓存区大小低于缓存区下限的情况下,向编解码器620发送速率上调指令。
门限更新模块613主要用于如下计算缓存区上限和缓存区下限,即:
缓存区上限=编码速率的当前值*编解码器620的端到端平均时延上限;
缓存区下限=编码速率的当前值*编解码器620的端到端平均时延下限。
其中,所述端到端平均时延表示移动终端600与通信对端之间的平均传输时延。
在这种实现方式中,编解码器620可如图6所示包括自适应编码模块621。自适应编码模块621可被配置为:在从空口协议处理器610(可具体为指令模块612)接收到速率下调指令的情况下,减小所述编码速率;在从空口协议处理器610(可具体为指令模块612)接收到速率上调指令的情况下,增大所述编码速率。
在另一种可能的实施方式中,空口协议处理器610中的测量模块611可被配置为检测发送速率。其中,发送速率表示移动终端600发送数据报文的速率。在这种实施方式中,指令模块612可被配置为向编解码器620发送所述发送速率。
此外,在这种实施方式中,如图6所示,编解码器620还可包括第一检测模块622、第二检测模块623。第一检测模块622主要用于检测接收速率,其中接收速率表示移动终端600接收数据报文的速率。第二检测模块623主要用于检测端到端时延,其中端到端时延表示移动终端600与通信对端之间的传输时延。这样,自适应编码模块621还可被配置为基于接收速率、端到端时延以及从空口协议处理器610(可具体为指令模块612)接收到的发送速率来调整编码速率。
例如,在一种可能的具体实施方式中,自适应编码模块621可被配置为:在端到端时延持续上升的情况下,减小所述编码速率,并且减小后的编码速率不低于发送速率和接收速率中的最小值;在端到端时延维持稳定或持续下降的情况下,增大所述编码速率。
实施例4
图7为根据本发明另一实施例的移动终端700的结构框图。所述移动终端700可以是具备计算能力的主机服务器、个人计算机PC、或者可携带的便携式计算机或终端等。本发明具体实施例并不对计算节点的具体实现做限定。
所述终端设备700包括处理器(processor)710、通信接口(CommunicationsInterface)720、存储器(memory)730和总线740。其中,处理器710、通信接口720、以及存储器730通过总线740完成相互间的通信。
通信接口720用于与网元通信,其中网元包括例如虚拟机管理中心、共享存储等。
处理器710用于执行程序。处理器710可能是一个中央处理器CPU,或者是专用集成电路ASIC(Application Specific Integrated Circuit),或者是被配置成实施本发明实施例的一个或多个集成电路。
存储器730用于存放程序或者数据。存储器730可能包含高速RAM存储器,也可能还包括非易失性存储器(non-volatile memory),例如至少一个磁盘存储器。存储器730也可以是存储器阵列。存储器730还可能被分块,并且所述块可按一定的规则组合成虚拟卷。
在一种可能的实施方式中,上述程序可为包括计算机操作指令的程序代码。处理器710通过运行存储器730中的该程序,可控制移动终端进行编码以生成数据报文的速率,具体可执行以下步骤:
使所述移动终端的空口协议处理器检测发送状态参数,其中所述发送状态参数表示所述移动终端作为发送侧参与通信的实时状态;
使所述移动终端的编解码器基于所述发送状态参数调整编码速率;以及
使所述移动终端的编解码器以调整后的编码速率生成数据报文,并将所生成的数据报文发送至移动终端的空口协议处理器。
本领域普通技术人员可以意识到,本文所描述的实施例中的各示例性单元及算法步骤,能够以电子硬件、或者计算机软件和电子硬件的结合来实现。这些功能究竟以硬件还是软件形式来实现,取决于技术方案的特定应用和设计约束条件。专业技术人员可以针对特定的应用选择不同的方法来实现所描述的功能,但是这种实现不应认为超出本发明的范围。
如果以计算机软件的形式来实现所述功能并作为独立的产品销售或使用时,则在一定程度上可认为本发明的技术方案的全部或部分(例如对现有技术做出贡献的部分)是以计算机软件产品的形式体现的。该计算机软件产品通常存储在计算机可读取的存储介质中,包括若干指令用以使得计算机设备(可以是个人计算机、服务器、或者网络设备等)执行本发明各实施例方法的全部或部分步骤。而前述的存储介质包括U盘、移动硬盘、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,Random Access Memory)、磁碟或者光盘等各种可以存储程序代码的介质。
以上所述,仅为本发明的具体实施方式,但本发明的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,可轻易想到变化或替换,都应涵盖在本发明的保护范围之内。因此,本发明的保护范围应所述以权利要求的保护范围为准。