一种语音码率的调整方法及终端与流程

文档序号:14073285阅读:531来源:国知局

本发明涉及无线通信技术,具体涉及一种语音码率的调整方法及终端。



背景技术:

基于ip多媒体子系统(ims,ipmultimediasubsystem)的多媒体通信采用amr,amr-wb,evs等标准编解码技术处理语音,每种编解码技术定义了多个速率模式,以满足多种场景的语音传输需求。在时变的无线网络环境下,语音数据的传输往往受到网络覆盖、负载、邻区干扰等因素的影响,为了解决局部地区网络容量不足的问题,保障语音通信过程中的用户体验,多媒体终端可基于网络环境和传输状况动态调整编码速率。终端侧的自适应速率调整方法分为基于发送端和基于接收端的调整方案,而接收端往往比发送端更清楚的知道当前的链路传输状况,因此,为避免传输状况误判与码率误调造成传输资源损失,现有的标准规范中仅提供基于接收端的码率调整方案。

接收端根据数据包的丢包率、时延抖动、网络反馈的拥塞情况等信息评估当前数据传输可用的最大带宽,通过在编码模式请求(cmr,changemoderequest)填写相应的速率模式以限制发送端的最大发送速率。这种仅基于接收端反馈的速率调整是单向的,在接收端侧的网络状况变差时,发送端根据接收端反馈的速率模式仅能调整接收端的下行码率,上行码率调整需由发送端评估、触发,接收端上下行链路的码率调整不能并发进行。然而,网络状况变差时,终端的上、下行传输往往同时受到影响,单向速率的调整方案不适用于此场景下上下行码率快速双向调整。并且,通话两方的网络状况通常是不一致的,通话双方由于评估算法的差异也可能导致评估结果不一致,若仅基于接收侧网络状况执行速率切换容易导致速率模式的“乒乓”切换,即通话双方频繁的执行上调或下降编码速率。因此,仅基于单侧网络状况触发的速率调整策略是不周全的。



技术实现要素:

为解决现有存在的技术问题,本发明实施例提供了一种语音码率的调整方法及终端。

为达到上述目的,本发明实施例的技术方案是这样实现的:

本发明实施例提供了一种语音码率的调整方法,所述方法包括:

终端根据下行数据信息获得下行信道传输质量;

根据所述下行信道传输质量获得下行链路支持传输的最大速率模式,以及获得所述下行数据信息中指示的速率模式;

比较所述最大速率模式和所述指示的速率模式,基于所述比较结果调整上行语音码率。

上述方案中,所述基于所述比较结果调整上行语音码率,包括:

当所述最大速率模式表征的第一速率大于所述指示的速率模式表征的第二速率时,则基于所述指示的速率模式调整上行语音码率。

上述方案中,所述基于所述比较结果调整上行语音码率,包括:

当所述最大速率模式表征的第一速率不大于所述指示的速率模式表征的第二速率时,基于所述最大速率模式调整上行语音码率。

上述方案中,所述方法还包括:生成包含有所述最大速率模式的上行数据信息,将所述上行数据信息发送至对端终端,以指示所述对端终端基于获得的上行数据信息中的所述最大速率模式调整上行语音码率。

上述方案中,所述根据下行数据信息获得下行信道传输质量之前,所述方法还包括:

所述终端与对端终端进行通信,获得所述终端自身以及所述对端终端支持的至少一个速率模式;

相应的,获得的所述最大速率模式为所述至少一个速率模式中的其中之一。

本发明实施例还提供了一种终端,所述终端包括:通讯单元、模式获取单元和调整单元;其中,

所述通讯单元,用于获得下行数据信息;

所述模式获取单元,用于根据下行数据信息获得下行信道传输质量;根据所述下行信道传输质量获得下行链路支持传输的最大速率模式;还用于获得所述下行数据信息中指示的速率模式;

所述调整单元,用于比较所述最大速率模式和所述指示的速率模式,基于所述比较结果调整上行语音码率。

上述方案中,所述调整单元,用于当所述最大速率模式表征的第一速率大于所述指示的速率模式表征的第二速率时,则基于所述指示的速率模式调整上行语音码率。

上述方案中,所述调整单元,用于当所述最大速率模式表征的第一速率不大于所述指示的速率模式表征的第二速率时,基于所述最大速率模式调整上行语音码率。

上述方案中,所述通讯单元,还用于生成包含有所述最大速率模式的上行数据信息,将所述上行数据信息发送至对端终端,以指示所述对端终端基于获得的上行数据信息中的所述最大速率模式调整上行语音码率。

上述方案中,所述通讯单元,还用于获得下行数据信息之前,与对端终端进行通信,获得所述终端自身以及所述对端终端支持的至少一个速率模式;

相应的,获得的所述最大速率模式为所述至少一个速率模式中的其中之一。

本发明实施例提供的语音码率的调整方法及终端,所述方法包括:终端根据下行数据信息获得下行信道传输质量;根据所述下行信道传输质量获得下行链路支持传输的最大速率模式,以及获得所述下行数据信息中指示的速率模式;比较所述最大速率模式和所述指示的速率模式,基于所述比较结果调整上行语音码率。本发明实施例的技术方案基于终端的速率模式调整以实现上下行速率双向调整,可确保时变网络环境下,终端快速简单的实现上下行码率对称调整;另一方面,速率模式切换的决策是综合考虑通信两端的网络状况执行的,并不是仅基于一端的网络状况进行速率调整,可避免由于通信两端对传输状况评估不一致而导致速率模式的“乒乓”切换,也可有效实现语音码率的快降慢升,保障时变网络环境中的用户体验。

附图说明

图1a和图1b为本发明实施例的语音码率的调整方法的应用架构示意图;

图2为本发明实施例一的语音码率的调整方法的流程示意图;

图3为本发明实施例二的语音码率的调整方法的流程示意图;

图4为本发明实施例的终端的组成结构示意图。

具体实施方式

图1a和图1b为本发明实施例的语音码率的调整方法的应用架构示意图;为实现本发明实施例的语音码率的调整方案,需两个终端(当然不限于两个终端)进行语音业务,如图1a所示,包括本地终端11和对端终端12;所述本地终端11和对端终端12可通过网络建立通信连接。其中,“本地”和“对端”只是相对性的说明,例如,当本地终端11作为执行主体,可以理解为用户持有本地终端11与另一终端进行语音业务时,相对于本地终端11的另一终端则作为对端终端12。

在本发明各实施例中,对应于终端,在应用架构中,还包括网络侧设备。对应于本地终端11的网络侧设备作为本地网络侧设备13(或者也可称为网络侧设备);对应于对端终端12的网络侧设备作为对端网络侧设备14。其中,本地网络侧设备13和对端网络侧设备14可以是同一设备也可以是不同设备。例如,当所述本地终端11和对端终端12归属于同一基站的覆盖范围内时,所述本地网络侧设备13和对端网络侧设备14可以是同一设备;当所述本地终端11和对端终端12归属于不同基站的覆盖范围内时,所述本地网络侧设备13和对端网络侧设备14可以是不同设备。

在本发明各实施例中,由本地终端11发送给对端终端12的数据称为上行数据,包括本地终端11发送给本地网络侧设备13的数据、本地网络侧设备13发送至对端网络侧设备14的数据以及对端网络侧设备14发送给对端终端12的数据。相应的,由对端终端12发送给本地终端11的数据称为下行数据,包括对端终端12发送给对端网络侧设备14的数据、对端网络侧设备14发送至本地网络侧设备13的数据以及本地网络侧设备13发送给本地终端11的数据。

上述图1a和图1b所示的例子只是实现本发明实施例的一个系统架构实例,本发明实施例并不限于上述图1a和图1b所述的系统结构,基于该系统架构,提出本发明各个实施例。

下面结合附图及具体实施例对本发明作进一步详细的说明。

实施例一

本发明实施例提供了一种语音码率的调整方法。图2为本发明实施例一的语音码率的调整方法的流程示意图;如图2所示,所述方法包括:

步骤201:终端根据下行数据信息获得下行信道传输质量。

步骤202:根据所述下行信道传输质量获得下行链路支持传输的最大速率模式,以及获得所述下行数据信息中指示的速率模式。

步骤203:比较所述最大速率模式和所述指示的速率模式,基于所述比较结果调整上行语音码率。

本实施例中,所述下行数据信息可以为发送/接收的报告,或者网咯拥塞指示等等。所述终端可根据接收到的下行数据信息评估下行信道传输质量,以及根据所述下行信道传输质量评估当前下行链路支持传输的最大速率模式。作为一种示例,所述最大速率模式具体为最大cmr速率模式。

本实施例中,所述终端基于接收到的下行数据信息中所包含的速率指示信息获得指示的速率模式。作为一种示例,所述指示的速率模式为指示的cmr速率模式,具体可通过cmr值表示。

本实施例中,所述终端比较所述最大速率模式表征的第一速率以及所述指示的速率模式表征的第二速率,基于比较结果调整上行语音码率。

具体的,作为一种实施方式,所述基于所述比较结果调整上行语音码率,包括:当所述最大速率模式表征的第一速率大于所述指示的速率模式表征的第二速率时,则基于所述指示的速率模式调整上行语音码率。另一方面,将所述最大速率模式填写至上行数据信息中,并将所述上行数据信息发送至对端终端,以指示对端终端根据接收到的上行数据信息中的所述最大速率模式调整终端的下行速率。

作为另一种实施方式,所述基于所述比较结果调整上行语音码率,包括:当所述最大速率模式表征的第一速率不大于所述指示的速率模式表征的第二速率时,基于所述最大速率模式调整上行语音码率。另一方面,将所述最大速率模式填写至上行数据信息中,并将所述上行数据信息发送至对端终端,以指示对端终端根据接收到的上行数据信息中的所述最大速率模式调整终端的下行速率。

本发明实施例的技术方案基于终端的速率模式调整以实现上下行速率双向调整,可确保时变网络环境下,终端快速简单的实现上下行码率对称调整;另一方面,速率模式切换的决策是综合考虑通信两端的网络状况执行的,并不是仅基于一端的网络状况进行速率调整,可避免由于通信两端对传输状况评估不一致而导致速率模式的“乒乓”切换,也可有效实现语音码率的快降慢升,保障时变网络环境中的用户体验。

实施例二

本发明实施例还提供了一种语音码率的调整方法。图3为本发明实施例二的语音码率的调整方法的流程示意图;如图3所示,所述方法包括:

步骤301:终端根据下行数据信息获得下行信道传输质量。

步骤302:根据所述下行信道传输质量获得下行链路支持传输的最大速率模式,以及获得所述下行数据信息中指示的速率模式。

步骤303:当所述最大速率模式表征的第一速率大于所述指示的速率模式表征的第二速率时,则基于所述指示的速率模式调整上行语音码率。

步骤304:当所述最大速率模式表征的第一速率不大于所述指示的速率模式表征的第二速率时,基于所述最大速率模式调整上行语音码率。

步骤305:生成包含有所述最大速率模式的上行数据信息,将所述上行数据信息发送至对端终端,以指示所述对端终端基于获得的上行数据信息中的所述最大速率模式调整上行语音码率。

本实施例中,所述下行数据信息可以为发送/接收的报告,或者网咯拥塞指示等等。所述终端可根据接收到的下行数据信息评估下行信道传输质量,以及根据所述下行信道传输质量评估当前下行链路支持传输的最大速率模式。作为一种示例,所述最大速率模式具体为最大cmr速率模式。

本实施例中,所述终端基于接收到的下行数据信息中所包含的速率指示信息获得指示的速率模式。作为一种示例,所述指示的速率模式为指示的cmr速率模式,具体可通过cmr值表示。

作为一种实施方式,步骤301之前,即所述终端根据下行数据信息获得下行信道传输质量之前,还包括步骤300:所述终端与对端终端进行通信,获得所述终端自身以及所述对端终端支持的至少一个速率模式。

这里,所述终端可在初始语音会话建立时与对端终端进行通信,在与对端终端协商过程中可通过信令交互获得终端以及对端终端同时支持的速率模式集合。

本发明实施例的技术方案基于终端的速率模式调整以实现上下行速率双向调整,可确保时变网络环境下,终端快速简单的实现上下行码率对称调整;另一方面,速率模式切换的决策是综合考虑通信两端的网络状况执行的,并不是仅基于一端的网络状况进行速率调整,可避免由于通信两端对传输状况评估不一致而导致速率模式的“乒乓”切换,也可有效实现语音码率的快降慢升,保障时变网络环境中的用户体验。

在本发明各实施例中,由于3gppts26.114规定媒体接收端使用4比特(bit)的cmr字段指示速率模式索引值,限制发送端的最大发送速率,达到根据网络状况自适应调整语音速率的目的。对于使用amr编解码的语音包,cmr取值范围为0-7,分别表示8种速率模式,如果使用amr-wb,cmr取值范围为0-8,分别表示9种速率。其中,cmr有如下两种传送方式。

1、通过实时传输协议(rtp,real-timetransportprotocol)数据包包头携带cmr。接收端通过统计接收rtp包的丢包率、时延抖动、网络反馈的拥塞情况等信息作为依据来动态调整码率,并在即将发送的rtp包头cmr字段中填写要求对端发送的语音码率,发送方接收到rtp包后,解析出包头中的cmr信息,按照接收端的要求调整速率;

2、通过rtcp-app数据包携带cmr。接收端依据与rtp传送cmr相似的原则来填写rtcp-app数据包中的cmr字段,与上述方案不同的是,这种方案是基于实时传输控制协议rtcp传输cmr,语音数据收发端均需使用支持反馈的音视频配置文件(avfp)。

gsma官方文档ir.92中规定语音业务必选支持音视频配置文件avp,avpf为非必选。因此,目前语音业务均使用avp作为传输配置文件,采用在rtp数据包包头携带cmr的方式动态调整码率。

基于此,在本发明各实施例中,所发送的上行/下行数据可以为rtp数据,当然不限于rtp数据,还可以是rtcp-app数据等等。

以下结合具体实施例对本发明实施例的语音码率的调整方法进行说明。

实施例三

1、终端与对端终端在初始会话建立时成功协商语音速率模式集{amr-wb6.6kpbs,12.65kpbs,23.85kpbs},并以支持的最高速率amr-wb23.85kpbs建立语音通话。

2、终端根据下行数据信息评估当前下行信道的传输质量,具体可根据发送/接收的报告或网络拥塞指示对下行信道的传输质量进行评估。终端根据当前的下行信道的传输质量评估当前下行链路可支持的最大速率模式。

3、终端评估当前可支持的最大速率模式为amr-wb12.65kpbs,而接收到的下行cmr指示速率模式应调整为amr-wb23.85kpbs,终端根据评估出的最大速率模式(即amr-wb12.65kpbs)调整上行语音码率,即上行编码速率调整为amr-wb12.65kpbs,并将上行rtp包中cmr置为amr-wb12.65kpbs速率模式索引值。

实施例四

1、终端当前以amr-wb12.65kpbs的速率模式与对端终端进行语音通话。

2、终端在会话建立时获取会话双方均支持的速率模式集为{amr-wb6.6kpbs,12.65kpbs,23.85kpbs}。

3、终端根据下行数据信息评估当前下行信道的传输质量,具体可根据发送/接收的报告或网络拥塞指示对下行信道的传输质量进行评估。终端根据当前的下行信道的传输质量评估当前下行链路可支持的最大速率模式。

4、终端评估当前可支持的最大速率模式为amr-wb23.85kpbs,而接收到的下行cmr指示速率模式为amr-wb12.65kpbs,终端根据接收到的下行cmr值调整上行编码速率,即上行编码速率保持为amr-wb12.65kpbs,并将终端可支持的最大速率模式amr-wb23.85kpbs填写到上行rtp包中cmr,发送该rtp包至对端终端。

5、对端终端接收到终端发送的下行cmr指示使用amr-wb23.85kpbs速率模式,则对端终端根据本地cmr配置策略调整上行编码速率为:

a、对端终端评估当前可支持的最大速率模式为amr-wb12.65kpbs,通信对端将上行编码速率调整为amr-wb12.65kpbs,并将上行rtp包中cmr置为amr-wb12.65kpbs速率模式索引值。如此,终端的上下行码率保持为12.65kpbs;

b、对端终端评估当前可支持的最大速率模式也为amr-wb23.85kpbs,通信对端将上行编码速率调整为amr-wb23.85kpbs,并将上行rtp包中cmr置为amr-wb23.85kpbs速率模式索引值,指示终端上调编码速率至amr-wb23.85kpbs。如此,终端的上下行码率均调整为23.85kpbs。

本发明实施例的技术方案基于终端的速率模式调整以实现上下行速率双向调整,可确保时变网络环境下,终端快速简单的实现上下行码率对称调整;另一方面,速率模式切换的决策是综合考虑通信两端的网络状况执行的,并不是仅基于一端的网络状况进行速率调整,可避免由于通信两端对传输状况评估不一致而导致速率模式的“乒乓”切换,也可有效实现语音码率的快降慢升,保障时变网络环境中的用户体验。

实施例五

本发明实施例还提供了一种终端。图4为本发明实施例的终端的组成结构示意图;如图4所示,所述终端包括:通讯单元41、模式获取单元42和调整单元43;其中,

所述通讯单元41,用于获得下行数据信息;

所述模式获取单元42,用于根据下行数据信息获得下行信道传输质量;根据所述下行信道传输质量获得下行链路支持传输的最大速率模式;还用于获得所述下行数据信息中指示的速率模式;

所述调整单元43,用于比较所述最大速率模式和所述指示的速率模式,基于所述比较结果调整上行语音码率。

本实施例中,所述下行数据信息可以为发送/接收的报告,或者网咯拥塞指示等等。所述模式获取单元42可根据所述通讯单元41接收到的下行数据信息评估下行信道传输质量,以及根据所述下行信道传输质量评估当前下行链路支持传输的最大速率模式。作为一种示例,所述最大速率模式具体为最大cmr速率模式。

本实施例中,所述模式获取单元42基于接收到的下行数据信息中所包含的速率指示信息获得指示的速率模式。作为一种示例,所述指示的速率模式为指示的cmr速率模式,具体可通过cmr值表示。

本实施例中,所述调整单元43比较所述最大速率模式表征的第一速率以及所述指示的速率模式表征的第二速率,基于比较结果调整上行语音码率。

作为一种实施方式,所述调整单元43,用于当所述最大速率模式表征的第一速率大于所述指示的速率模式表征的第二速率时,则基于所述指示的速率模式调整上行语音码率。另一方面,所述通讯单元41将所述最大速率模式填写至上行数据信息中,并将所述上行数据信息发送至对端终端,以指示对端终端根据接收到的上行数据信息中的所述最大速率模式调整终端的下行速率。

作为另一种实施方式,所述调整单元43,用于当所述最大速率模式表征的第一速率不大于所述指示的速率模式表征的第二速率时,基于所述最大速率模式调整上行语音码率。另一方面,所述通讯单元41将所述最大速率模式填写至上行数据信息中,并将所述上行数据信息发送至对端终端,以指示对端终端根据接收到的上行数据信息中的所述最大速率模式调整终端的下行速率。

本领域技术人员应当理解,本发明实施例的终端中各处理单元的功能,可参照前述语音码率的调整方法的相关描述而理解,本发明实施例的终端中各处理单元,可通过实现本发明实施例所述的功能的模拟电路而实现,也可以通过执行本发明实施例所述的功能的软件在智能终端上的运行而实现。

实施例六

本发明实施例还提供了一种终端。如图4所示,所述终端包括:通讯单元41、模式获取单元42和调整单元43;其中,

所述通讯单元41,用于获得下行数据信息;

所述模式获取单元42,用于根据下行数据信息获得下行信道传输质量;根据所述下行信道传输质量获得下行链路支持传输的最大速率模式;还用于获得所述下行数据信息中指示的速率模式;

所述调整单元43,用于当所述最大速率模式表征的第一速率大于所述指示的速率模式表征的第二速率时,则基于所述指示的速率模式调整上行语音码率;当所述最大速率模式表征的第一速率不大于所述指示的速率模式表征的第二速率时,基于所述最大速率模式调整上行语音码率;

所述通讯单元41,还用于生成包含有所述最大速率模式的上行数据信息,将所述上行数据信息发送至对端终端,以指示所述对端终端基于获得的上行数据信息中的所述最大速率模式调整上行语音码率。

本实施例中,所述下行数据信息可以为发送/接收的报告,或者网咯拥塞指示等等。所述模式获取单元42可根据所述通讯单元41接收到的下行数据信息评估下行信道传输质量,以及根据所述下行信道传输质量评估当前下行链路支持传输的最大速率模式。作为一种示例,所述最大速率模式具体为最大cmr速率模式。

本实施例中,所述模式获取单元42基于接收到的下行数据信息中所包含的速率指示信息获得指示的速率模式。作为一种示例,所述指示的速率模式为指示的cmr速率模式,具体可通过cmr值表示。

本实施例中,所述调整单元43比较所述最大速率模式表征的第一速率以及所述指示的速率模式表征的第二速率,基于比较结果调整上行语音码率。

作为一种实施方式,所述通讯单元41,还用于获得下行数据信息之前,与对端终端进行通信,获得所述终端自身以及所述对端终端支持的至少一个速率模式;相应的,获得的所述最大速率模式为所述至少一个速率模式中的其中之一。

这里,所述通讯单元41可在初始语音会话建立时与对端终端进行通信,在与对端终端协商过程中可通过信令交互获得终端以及对端终端同时支持的速率模式集合。

本领域技术人员应当理解,本发明实施例的终端中各处理单元的功能,可参照前述语音码率的调整方法的相关描述而理解,本发明实施例的终端中各处理单元,可通过实现本发明实施例所述的功能的模拟电路而实现,也可以通过执行本发明实施例所述的功能的软件在智能终端上的运行而实现。

本发明实施例中,所述终端中的模式获取单元42和调整单元43,在实际应用中可由所述终端中的中央处理器(cpu,centralprocessingunit)、数字信号处理器(dsp,digitalsignalprocessor)、微控制单元(mcu,microcontrollerunit)或可编程门阵列(fpga,field-programmablegatearray)实现;所述终端中的通讯单元41,在实际应用中可通过通信模组(包含:基础通信套件、操作系统、通信模块、标准化接口和协议等)及收发天线实现。

本领域内的技术人员应明白,本发明的实施例可提供为方法、系统、或计算机程序产品。因此,本发明可采用硬件实施例、软件实施例、或结合软件和硬件方面的实施例的形式。而且,本发明可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器和光学存储器等)上实施的计算机程序产品的形式。

本发明是参照根据本发明实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。

这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。

这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。

以上所述,仅为本发明的较佳实施例而已,并非用于限定本发明的保护范围。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1