用于控制平均编码率的系统和方法_5

文档序号:9278246阅读:来源:国知局
、软件或两者的组合加以实施。
[0136] 编码率控制器1042可基于目标速率1080、度量1052和编码信息1058控制平均 编码率。编码率控制器1042可通过试图使平均编码率匹配目标速率1080而控制平均编码 率。可从另一装置(例如,基站)接收或可预先确定目标速率1080。
[0137] 编码率控制器1042可提供编码率指示符1066以选择用于对语音信号的帧进行编 码的编码器。编码率指示符1066指定特定编码器、速率和/或帧类型。一或多个编码器 可将编码信息1058提供到编码率控制器1042。例如,编码信息1058可包含振幅错误度量 (例如,amperror)和低频带增益改变度量(例如,ALgainE)。替代地,编码率控制器1042 可基于编码信息1058确定振幅错误度量和低频带增益改变度量。在一些配置中,编码信息 1058可包含帧编码率。另外或替代地,编码率控制器1042可获得如由编码率指示符1066 指示的帧编码率。
[0138] 平均速率确定模块1044可确定第一平均速率(例如,长期平均速率或Ru)。平均 速率确定模块1044也可测定短期平均速率(例如,RlastNfMJ。可如上文结合图3和/或 方程式(1)所描述而实现此操作。例如,平均速率确定模块1044可基于用于每一帧的帧编 码率而确定短期平均速率和/或长期平均速率。编码率控制器1042可利用短期平均速率 和/或长期平均速率来控制平均编码率。
[0139] 阈值确定模块1046可确定一或多个阈值。例如,阈值确定模块1046可包含第一 阈值确定模块1084、帧调整阈值确定模块1086和/或发声阈值确定模块1088。
[0140] 第一阈值确定模块1084可基于第一平均速率确定第一阈值(例如,THeN)。可如上 文所描述而实现此操作。例如,如果第一平均速率(例如,Ru)大于目标速率1〇80(例如, Rtmgrt)且第一阈值小于第一阈值最大值,那么阈值确定模块1〇46可将第一阈值增大第一 阈值大小因数。然而,如果第一平均速率(例如,RU)小于或等于目标速率1080,那么阈值 确定模块1046可将第一阈值减小第二阈值大小因数。第一阈值可提供到编码率确定模块 1090〇
[0141] 帧调整阈值确定模块1086可基于第一阈值和度量1052确定帧调整阈值组。可如 上文所描述而实现此操作。例如,第一阈值可为SNR阈值,且度量1052可为SNR。如果SNR 大于第一阈值,那么帧调整确定模块1086可选择第一帧调整阈值组。如果SNR不大于第一 阈值,那么帧调整确定模块1086可选择第二帧调整阈值组。此为间接调整帧调整阈值组的 一个实例,因为帧调整阈值组是基于第一阈值而确定。帧调整阈值组可提供到编码率确定 模块1090。
[0142] 帧型样确定模块1082可确定帧型样。可如上文所描述而实现所述操作。例如,如 果第一平均速率大于目标速率1080、如果第一阈值大于或等于第一阈值最大值、如果帧型 样模式指示速率增大帧型样且如果第二平均速率(例如,短期平均速率或RlastNfMJ大于目 标速率1080,那么帧型样确定模块1082可设定帧型样模式以指示速率减小帧型样。帧型样 模式可提供到编码率确定模块1090。
[0143] 帧调整阈值确定模块1086可基于第一平均速率调整帧调整阈值组。可如上文所 描述而实现此操作。例如,如果第一平均速率大于目标速率1080、如果第一阈值大于或等于 第一阈值最大值、如果帧型样模式指示速率减小帧型样且如果第二平均速率大于目标速率 1080,那么帧调整阈值确定模块1086可设定帧调整模式以指示第一帧调整组阈值组。帧调 整模式可提供到编码率确定模块1090。应注意,在一些配置中,可不直接控制帧调整阈值。 例如,帧调整阈值可取决于第一阈值。
[0144] 发声阈值确定模块1088可基于第一平均速率调整发声阈值组。可如上文所描述 而实现此操作。例如,如果第一平均速率大于目标速率1080、如果第一阈值大于或等于第一 阈值最大值、如果帧型样模式指示速率减小帧型样且第二平均速率大于目标速率1080且 如果第一平均速率大于目标速率1080加第一容限,那么发声阈值确定模块1088可设定发 声阈值模式以指示第一发声阈值组。发声阈值模式可提供到编码率确定模块1090。
[0145] 编码率确定模块1090可基于度量1052、第一阈值、帧型样模式、帧调整模式、发声 阈值模式和/或编码信息1058而确定编码率指示符1066。在一些配置中,编码率确定模块 1090可首先将帧分类为清洁或有噪声,接着为浊音或清音。接着,编码率确定模块1090可 强加或强施帧型样。最终,编码率确定模块1090可确定是否要"提高"所述帧。然而,可能 存在稍后状态中的确定改变较早确定的一些情况。可利用编码率指示符1066选择用于对 帧进行编码的编码器,如上文所描述。
[0146] 图11为说明用于控制平均编码率的方法1100的另一更特定配置的流程图。明确 地说,图11展示上文结合图4、图6、图7和图8中的一或多者所述的方法400、600、700、800 中的一或多者的更特定实例。表(2)提供用于图11中的术语和符号的概述。
[0147]
[0148] 表⑵
[0149] 电子装置340可开始译码(1102)。例如,电子装置340可获得语音信号且开始对 所述语音信号进行编码,如上文所描述。
[0150] 电子装置 340 可设定QQFmode=l、THeN=THeNmax、RelaxBMPmode= 1 且RelaxVmode =0(1104)。此为如上文所描述的设定默认参数的一个实例。
[0151] 电子装置340可确定是否已达到N帧块(1106)。可如上文所描述而实现此操作。 如果尚未达到N帧块,那么电子装置340可处理下一帧(1108)。可如上文所描述而实现此 操作。
[0152] 如果已达到N帧块,那么电子装置340可确定MPRlastNframes(1110)。可如上文所 描述而确定Rlt和RiastNframes(1110)。
[0153] 电子装置340可确定是否Ru>R_et(1112)。如果Ru>R_et,那么电子装置 340可确定是否THcn彡THCNmax (1114)。如果THcn<THCNmax,那么电子装置340可设定THcn= THcn+Athl (1124)。电子装置340可返回到处理下一帧(1108)。
[0154] 如果TH ,那么电子装置340可确走是否QQFmode= = 0且是否RlastNfJrames >Rtarget (1116)。如果QQFmode= = 0 且Rlas偷ames>Rtarget,那么电子装置 340 可设定QQFmode=1 (1126)。电子装置340可返回到处理下一帧(1108)。
[0155]如果QQFmode= = 1 或RlastNframes<Rtmget,那么电子装置 340 可确定是否QQFmode ==1 且是否RlastNframse>Rtarget (1118)。如果QQFmode= = 0 或RlastNfra彡Rtarget,那么电 子装置340可返回到处理下一帧(1108)。如果QQFmode= = 1且RlastNframes>Rtmget,那么 电子装置 340 可设定RelaxBMPmode= 1 (1120)。
[0156]电子装置 340 可确定是否RLT>Rtarget+Atoll(1122)。如果RLT>Rtarget+Atoll,那么 电子装置340可设定RelaxVmode= 1 (1128)。电子装置340可返回到处理下一帧(1108)。 如果KRta_+At()11,那么电子装置340可返回到处理下一帧(1108)。
[0157] 如果KRtmget,那么电子装置340可设定RelaxVmode= 0(1130)。电子装置340 可确定是否RelaxBMPmode= = 1(1132)。如果RelaxBMPmode= = 1,那么电子装置340可 设定RelaxBMPmode= 0(1142)。电子装置340可返回到处理下一帧(1108)。
[0158]如果RelaxBMPmode== 0,那么电子装置 340 可确定是否QQFmode== 1 (1134)。 如果QQFmode== 1,那么电子装置340可设定QQFmode= 0(1144)。电子装置340可返回 到处理下一帧(1108)。
[0159] 如果QQFmode== 0,那么电子装置340可确定是否THo^THCNmin(1136)。如果 THCN彡THCNmin,那么电子装置340可设定THcN=THCN-Ath2(1146)。电子装置340可返回到 处理下一帧(1108)。
[0160] 如果THCN<THCNmin,那么电子装置340可确定是否Ru<Rtmget-Atol2 (1138)。如果 彡Rta_+At()11,那么电子装置340可返回到处理下一帧(1108)。
[0161] 如果Ru<Rtawt_Atol2,那么电子装置340可将一或多个低速率帧移到一或多个高 速率帧以增大平均编码率(1140)。在一些配置中,此可基于EVRC-B速率控制算法。电子装 置340可返回到处理下一帧(1108)。
[0162] 图12为说明无线通信装置1240的一个配置的框图,在所述无线通信装置1240中 可实施用于控制平均编码率的系统和方法。图12中所说明的无线通信装置1240可为本文 中所描述的电子装置中的至少一者的实例。无线通信装置1240可包含应用处理器1211。 应用处理器1211通常处理指令(例如,运行程序)以执行无线通信装置1240上的功能。应 用处理器1211可耦合到音频译码器/解码器(编解码器)1209。
[0163] 音频编解码器1209可用于对音频信号进行译码和/或解码。音频编解码器1209 可耦合到至少一个扬声器1201、听筒1203、输出插口 1205和/或至少一个麦克风1207。扬 声器1201可包含将电或电子信号转换成声波信号的一或多个电声转换器。例如,扬声器 1201可用以播放音乐或输出扬声器电话交谈等。听筒1203可为可用以将声波信号(例如, 语音信号)输出到用户的另一扬声器或电声转换器。例如,可使用听筒1203而使得仅一个 用户可可靠地听到声学信号。输出插口 1205可用于将例如头戴式耳机的其它装置耦合到 无线通信装置1240以用于输出音频。扬声器1201、听筒1203和/或输出插口 1205可通常 用于从音频编解码器1209输出音频信号。至少一个麦克风1207可为将声学信号(例如用 户的话音)转换成提供到音频编解码器1209的电或电子信号的声电转换器。
[0164] 音频编解码器1209 (例如,解码器)可包含编码率控制器1242。编码率控制器 1242可为上文所述的编码率控制器342、1042中的一或多者的实例。在一些配置中,音频编 解码器1209可包含多个编码器(例如,编码器356a到356n)。
[0165] 应用处理器1211也可耦合到电力管理电路1221。电力管理电路1221的一个实例 为电力管理集成电路(PMIC),其可用以管理无线通信装置1240的电力消耗。电力管理电路 1221可耦合到电池组1223。电池组1223可通常将电力提供到无线通信装置1240。例如, 电池组1223和/或电力管理电路1221可耦合到包含于无线通信装置1240中的元件中的 至少一者。
[0166] 应用处理器1211可耦合到用于接收输入的至少一个输入装置1225。输入装置 1225的实例包含红外线传感器、图像传感器、加速度计、触摸传感器、小键盘等。输入装置 1225可允许用户与无线通信装置1240交互。应用处理器1211也可耦合到一或多个输出装 置1227。输出装置1227的实例包含打印机、投影仪、屏幕、触觉装置等。输出装置1227可 允许无线通信装置1240产生可由用户体验的输出。
[0167] 应用处理器1211可耦合到应用存储器1229。应用存储器1229可为能够存储电子 信息的任何电子装置。应用存储器1229的实例包含双数据速率同步动态随机存取存储器 (DDRAM)、同步动态随机存取存储器(SDRAM)、快闪存储器等。应用存储器1229可为应用处 理器1211提供存储。例如,应用存储器1229可存储用于使在应用处理器1211上运行的程 序行使功能的数据和/或指令。
[0168] 应用处理器1211可耦合到显示控制器1231,显示控制器1231又可耦合到显示器 1233。显示控制器1231可为用以在显示器1233上产生图像的硬件块。例如,显示控制器 1231可将来自应用处理器1211的指令和/或数据转译成可呈现在显示器1233上的图像。 显示器1233的实例包含液晶显示器(IXD)面板、发光二极管(LED)面板、阴极射线管(CRT) 显示器、等离子显示器等。
[0169] 应用处理器1211可耦合到基带处理器1213。基带处理器1213通常处理通信信 号。例如,基带处理器1213可对所接收的信号进行解调制和/或解码。另外或替代地,基 带处理器1213可对信号进行编码和/或调制以准备传输。
[0170] 基带处理器1213可耦合到基带存储器1235。基带存储器1235可为能够存储电子 信息的任何电子装置,例如,SDRAM、DDRAM、快闪存储器等。基带处理器1213可从基带存储 器1235读取信息(例如,指令和/或数据)和/或将信息写入到基带存储器1235。另外或 替代地,基带处理器1213可使用存储于基带存储器1235中的指令和/或数据来执行通信 操作。
[0171] 基带处理器1213可耦合到射频(RF)收发器1215。RF收发器1215可耦合到功率 放大器1217和一或多个天线1219。RF收发器1215可发射和/或接收射频信号。例如,RF 收发器1215可使用功率放大器1217和至少一个天线1219发射RF信号。RF收发器1215 也可使用一或多个天线1219接收RF信号
当前第5页1 2 3 4 5 6 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1