一种上下行语音驱动处理方法、装置及系统.pdf

上传人:大师****2 文档编号:1344850 上传时间:2018-04-16 格式:PDF 页数:14 大小:453.31KB
返回 下载 相关 举报
摘要
申请专利号:

CN200910055043.9

申请日:

2009.07.13

公开号:

CN101958984A

公开日:

2011.01.26

当前法律状态:

授权

有效性:

有权

法律详情:

授权|||实质审查的生效IPC(主分类):H04M 9/08申请日:20090713|||公开

IPC分类号:

H04M9/08

主分类号:

H04M9/08

申请人:

联芯科技有限公司

发明人:

高兵; 陶然

地址:

200233 上海市钦江路333号41幢4楼

优先权:

专利代理机构:

北京集佳知识产权代理有限公司 11227

代理人:

逯长明;王宝筠

PDF下载: PDF下载
内容摘要

本发明公开了一种上下行语音驱动处理方法、装置及系统,所述方法包括:下行语音驱动处理步骤:确定进行下行语音数据发送时,检测是否存在下行有效数据包,如果不存在,发送空包;上行语音驱动处理步骤:接收上行语音数据,判断上行接收队列中各个数据包是否均已满,如果是,将接收到的上行语音数据添加到接收队列的最后一个数据包中。所述方法、装置及系统能够确保上下行语音数据帧启动传输的时间之间的时间差稳定,进而使所终端能够使用AEC算法实现稳定抑制回声的目标。

权利要求书

1: 一种上下行语音驱动处理方法, 其特征在于, 包括 : 下行语音驱动处理步骤 : 确定进行下行语音数据发送时, 检测是否存在下行有效数据 包, 如果不存在, 发送空包 ; 上行语音驱动处理步骤 : 接收上行语音数据, 判断上行接收队列中各个数据包是否均 已满, 如果是, 将接收到的上行语音数据添加到接收队列的最后一个数据包中。
2: 根据权利要求 1 所述的方法, 其特征在于, 下行语音驱动处理步骤还包括 : 检测存在下行有效数据包时, 发送所述下行有效数据包。
3: 根据权利要求 1 或 2 所述的方法, 其特征在于, 上行语音驱动处理步骤还包括 : 判断上行接收队列存在空数据包时, 依照接收队列中数据包的顺序, 将接收到的上行 语音数据添加到相应的空数据包中。
4: 根据权利要求 1 或 2 所述的方法, 其特征在于, 下行语音驱动处理步骤中, 所述确定 之前, 进一步包括 : 接收下行语音数据并缓存, 当接收到的下行语音数据达到 n 帧时, 确定开始进行所述 下行语音数据的发送, 所述 n 为大于 1 的整数。
5: 一种上下行语音驱动处理系统, 其特征在于, 包括 : 下行语音驱动处理装置以及上 行语音驱动处理装置, 其中, 下行语音驱动处理装置包括 : 检测单元, 用于确定进行下行语音数据发送时, 检测是否存在下行有效数据包 ; 发送单元, 用于当检测单元检测结果为不存在下行有效数据包时, 发送空包 ; 上行语音驱动处理装置包括 : 判断单元, 用于接收上行语音数据, 判断上行接收队列中各个数据包是否均已满 ; 存储单元, 用于判断单元判断上行接收队列中各个数据包均已满时, 将接收到的上行 语音数据添加到接收队列的最后一个数据包中。
6: 根据权利要求 5 所述的系统, 其特征在于, 所述下行语音驱动处理装置中的所述发 送单元还用于 : 当检测单元检测结果为存在下行有效数据包时, 发送所述下行有效数据包。
7: 根据权利要求 5 或 6 所述的系统, 其特征在于, 所述下行语音驱动处理装置还包括 : 接收单元, 用于接收下行语音数据并缓存, 当接收到的下行语音数据达到 n 帧时, 确定 开始进行所述下行语音数据的发送, n 为大于 1 的整数。
8: 根据权利要求 5 或 6 所述的系统, 其特征在于, 所述上行语音驱动处理装置中的所述 存储单元还用于 : 判断单元判断上行接收队列存在空数据包时, 依照接收队列中数据包的 顺序, 将接收到的上行语音数据添加到相应的空数据包中。
9: 一种下行语音驱动处理方法, 其特征在于, 包括 : 确定进行下行语音数据发送时, 检测是否存在下行有效数据包, 如果不存在, 发送空 包。
10: 根据权利要求 9 所述的方法, 其特征在于, 还包括 : 检测存在下行有效数据包时, 发送所述下行有效数据包。
11: 根据权利要求 9 或 10 所述的方法, 其特征在于, 所述确定之前还包括 : 接收下行语音数据并缓存, 当接收到的下行语音数据达到 n 帧时, 确定开始进行所述 2 下行语音数据的发送, n 为大于 1 的整数。
12: 一种下行语音驱动处理装置, 其特征在于, 包括 : 检测单元, 用于确定进行下行语音数据发送时, 检测是否存在下行有效数据包 ; 发送单元, 用于当检测单元检测结果为不存在下行有效数据包时, 发送空包。
13: 根据权利要求 12 所述的装置, 其特征在于, 所述发送单元还用于 : 当检测单元检测 结果为存在下行有效数据包时, 发送下行有效数据包。
14: 根据权利要求 12 或 13 所述的装置, 其特征在于, 还包括 : 接收单元, 用于接收下行语音数据并缓存, 当接收到的下行语音数据达到 n 帧时, 控制 检测单元开始进行所述下行语音数据的发送, n 为大于 1 的整数。
15: 一种上行语音驱动处理方法, 其特征在于, 包括 : 接收上行语音数据, 判断上行接收队列中各个数据包是否均已满, 如果是, 将接收到的 上行语音数据添加到接收队列的最后一个数据包中。
16: 根据权利要求 15 所述的方法, 其特征在于, 还包括 : 判断上行接收队列存在空数据包时, 依照接收队列中数据包的顺序, 将接收到的上行 语音数据添加到相应的空数据包中。
17: 一种上行语音驱动处理装置, 其特征在于, 包括 : 判断单元, 用于接收上行语音数据, 判断上行接收队列中各个数据包是否均已满 ; 存储单元, 用于判断单元判断上行接收队列中各个数据包均已满时, 将接收到的上行 语音数据添加到接收队列的最后一个数据包中。
18: 根据权利要求 17 所述的装置, 其特征在于, 存储单元还用于 : 判断单元判断上行接 收队列存在空数据包时, 依照接收队列中数据包的顺序, 将接收到的上行语音数据依次添 加到相应的空数据包中。

说明书


一种上下行语音驱动处理方法、 装置及系统

    【技术领域】
     本发明涉及通信领域, 尤其涉及一种上下行语音驱动处理方法、 装置及系统。背景技术 终端如手机等非常重要的一个功能在于语音传输。 在语音传输中保证语音质量非 常重要, 而影响语音质量的关键因素之一是回声。
     目前, 终端在进行语音传输时, 一般使用声学回声消除 (AEC) 方法进行回声抑制。 AEC 方法的原理是 : 以扬声器信号与由扬声器信号产生的多路径回声的相关性为基础, 建 立远端信号的语音模型, 利用该语音模型对回声进行估计, 并不断修改滤波器的系数, 使得 回声估计值更加逼近真实的回声, 然后, 将回声估计值从话筒的输入信号中去除, 从而达到 消除回声的目的。
     图 1 为终端 TD/GSM 模式下的语音处理流程, 如图 1 所示, 终端中包括语音的上行 处理以及语音的下行处理 ; 其中, AEC 处理模块用于使用 AEC 方法对上行语音数据进行回声
     抑制。 AEC 处理模块进行回声抑制时, 是在上行语音驱动处理模块开始接收上行语音数据帧 的时刻, 从同一时刻的下行语音数据帧中进行采样得到下行语音参考数据, 计算回声估计 值, 从而将上行语音驱动处理模块接收到的上行语音数据中的回声消除。
     而由于进行下行语音数据的采样时, 在下行语音数据帧启动发送的时刻采集最为 准确, 因此, AEC 处理模块进行下行语音参考数据的采样时, 需要确定上行语音数据帧对应 的下行语音数据帧, 之后, 在下行语音数据帧确定发送的时刻进行下行语音参考数据的采 集, 从而, AEC 算法要稳定实现回声抑制的条件为 : 上行语音数据帧开始传输的时间与该数 据帧对应的下行语音数据帧开始传输的时间之间时间差稳定, 而且需要尽可能的小。如图 1a 所示, 即为上下行语音数据帧启动传输的时间之间的时间差稳定时的关系示例图。
     然而, 在实际应用中, 现有的上行语音驱动处理模块以及下行语音驱动处理模块 在对上下行语音数据进行接收或发送处理时, 很容易出现上下行语音数据帧传输时间差不 稳定的问题。导致该问题的因素包括但不限于网络延时、 上下行语音线程不同步等。除上 述因素之外, 网络在某个时间段无下行语音数据发送、 网络误码等也将导致上下行语音数 据帧传输时间差的不稳定。
     基于以上描述可知, 现有的上下行语音驱动方法无法确保上下行语音数据帧之间 的传输时间差稳定, 进而使得终端在使用 AEC 方法进行上行语音数据的回声抑制时无法达 到稳定的回声抑制效果。 发明内容 有鉴于此, 本发明要解决的技术问题是, 提供一种上下行语音驱动处理方法、 装置 及系统, 确保上下行语音数据帧之间的传输时间差稳定, 进而使得终端能够使用 AEC 算法 稳定抑制上行语音数据中的回声。
     为此, 本发明实施例采用如下技术方案 :
     本发明实施例提供一种上下行语音驱动处理方法, 包括 :
     下行语音驱动处理步骤 : 确定进行下行语音数据发送时, 检测是否存在下行有效 数据包, 如果不存在, 发送空包 ;
     上行语音驱动处理步骤 : 接收上行语音数据, 判断上行接收队列中各个数据包是 否均已满, 如果是, 将接收到的上行语音数据添加到接收队列的最后一个数据包中。
     其中, 下行语音驱动处理步骤还包括 :
     检测存在下行有效数据包时, 发送所述下行有效数据包。
     上行语音驱动处理步骤还包括 :
     判断上行接收队列存在空数据包时, 依照接收队列中数据包的顺序, 将接收到的 上行语音数据添加到相应的空数据包中。
     下行语音驱动处理步骤中, 所述确定之前, 进一步包括 :
     接收下行语音数据并缓存, 当接收到的下行语音数据达到 n 帧时, 确定开始进行 所述下行语音数据的发送, 所述 n 为大于 1 的整数。
     本发明实施例还提供一种上下行语音驱动处理系统, 包括 : 下行语音驱动处理装 置以及上行语音驱动处理装置, 其中,
     下行语音驱动处理装置包括 :
     检测单元, 用于确定进行下行语音数据发送时, 检测是否存在下行有效数据包 ;
     发送单元, 用于当检测单元检测结果为不存在下行有效数据包时, 发送空包 ;
     上行语音驱动处理装置包括 :
     判断单元, 用于接收上行语音数据, 判断上行接收队列中各个数据包是否均已 满;
     存储单元, 用于判断单元判断上行接收队列中各个数据包均已满时, 将接收到的 上行语音数据添加到接收队列的最后一个数据包中。
     所述下行语音驱动处理装置中的所述发送单元还用于 :
     当检测单元检测结果为存在下行有效数据包时, 发送所述下行有效数据包。
     所述下行语音驱动处理装置还包括 :
     接收单元, 用于接收下行语音数据并缓存, 当接收到的下行语音数据达到 n 帧时, 确定开始进行所述下行语音数据的发送, n 为大于 1 的整数。
     所述上行语音驱动处理装置中的所述存储单元还用于 : 判断单元判断上行接收队 列存在空数据包时, 依照接收队列中数据包的顺序, 将接收到的上行语音数据添加到相应 的空数据包中。
     本发明实施例还提供一种下行语音驱动处理方法, 包括 :
     确定进行下行语音数据发送时, 检测是否存在下行有效数据包, 如果不存在, 发送 空包。
     还包括 : 检测存在下行有效数据包时, 发送所述下行有效数据包。
     所述确定之前还包括 :
     接收下行语音数据并缓存, 当接收到的下行语音数据达到 n 帧时, 确定开始进行 所述下行语音数据的发送, n 为大于 1 的整数。
     本发明实施例同时提供一种下行语音驱动处理装置, 包括 :检测单元, 用于确定进行下行语音数据发送时, 检测是否存在下行有效数据包 ;
     发送单元, 用于当检测单元检测结果为不存在下行有效数据包时, 发送空包。
     其中, 所述发送单元还用于 : 当检测单元检测结果为存在下行有效数据包时, 发送 下行有效数据包。
     还包括 : 接收单元, 用于接收下行语音数据并缓存, 当接收到的下行语音数据达到 n 帧时, 控制检测单元开始进行所述下行语音数据的发送, n 为大于 1 的整数。
     本发明实施例还同时提供一种上行语音驱动处理方法, 包括 :
     接收上行语音数据, 判断上行接收队列中各个数据包是否均已满, 如果是, 将接收 到的上行语音数据添加到接收队列的最后一个数据包中。
     还包括 : 判断上行接收队列存在空数据包时, 依照接收队列中数据包的顺序, 将接 收到的上行语音数据添加到相应的空数据包中。
     本发明实施例还提供一种上行语音驱动处理装置, 包括 :
     判断单元, 用于接收上行语音数据, 判断上行接收队列中各个数据包是否均已 满;
     存储单元, 用于判断单元判断上行接收队列中各个数据包均已满时, 将接收到的 上行语音数据添加到接收队列的最后一个数据包中。 存储单元还用于 : 判断单元判断上行接收队列存在空数据包时, 依照接收队列中 数据包的顺序, 将接收到的上行语音数据依次添加到相应的空数据包中。
     对于上述技术方案的技术效果分析如下 :
     本发明实施例的上下行语音数据驱动处理方法中, 当下行无有效数据包时, 发送 空包, 使得下行语音驱动处理模块持续稳定的发送下行语音数据 ; 上行接收队列的各个数 据包均已满时, 在最后一个数据包中不断更新存储接收到的新上行语音数据, 使得 AEC 处 理模块采集到的下行语音参考数据与上行语音数据相对应 ; 从而确保上下行语音数据帧之 间的传输时间差稳定, 进而使得终端能够使用 AEC 算法稳定抑制上行语音数据中的回声。
     附图说明 图 1 为现有技术终端上下行语音数据处理示意图 ;
     图 1a 为上下行语音数据帧启动传输的时间之间的时间差稳定时的关系示例图 ;
     图 2 为本发明实施例下行语音驱动处理方法流程示意图 ;
     图 2a 为本发明实施例下行语音数据帧启动传输的时间发生漂移时的采样时间差 关系示例图 ;
     图 3 为本发明实施例上行语音驱动处理方法流程示意图 ;
     图 4 为本发明实施例上下行语音驱动处理系统结构示意图 ;
     图 5 为本发明实施例一种下行语音驱动处理装置结构示意图 ;
     图 5a 为本发明实施例另一种下行语音驱动处理装置结构示意图 ;
     图 6 为本发明实施例上行语音驱动处理装置结构示意图。
     具体实施方式
     为了解决现有技术上下行语音数据帧之间的传输时间差不稳定的问题, 保证上下行语音数据稳定同步, 本发明实施例提供一种上下行语音驱动处理方法及装置, 当下行无 有效数据包时, 发送空包 ; 上行接收队列的各个数据包均已满时, 不断将最后一个数据包中 存储的数据更新为接收到的新上行语音数据 ; 从而, 确保上下行语音数据帧之间的传输时 间差稳定, 进而使得终端能够使用 AEC 算法稳定抑制上行语音数据中的回声。
     图 2 为本发明实施例下行语音驱动处理方法流程示意图, 该方法可以应用于终端 的下行语音驱动处理模块中, 进行下行语音数据的驱动处理。如图 2 所示, 包括 :
     步骤 201 : 确定进行下行语音数据发送时, 检测是否存在下行有效数据包, 如果不 存在, 执行步骤 202 ; 否则, 执行步骤 203。
     步骤 202 : 发送空包。所述空包也即为 : 内容全部为 0 的数据包。
     在视频电话 (VP, Video Phone) 等业务中, 可能存在通话对方不说话的情况, 这时, 如果使用现有技术的下行语音数据驱动方法, 由于无下行有效数据包, 则将不进行下行语 音数据包的发送。从而导致进行回声抑制时, 无法在采样的时间点采集到稳定时间差的下 行语音参考数据的问题。本步骤中, 通过发送空包, 使得一直存在下行语音数据, 从而保证 了在采样的时间点, 能够采集到稳定时间差的下行语音数据包, 进而使得 AEC 处理模块进 行回声抑制时达到良好的回声抑制效果。 步骤 203 : 发送相应的下行有效数据包。
     本步骤中所述相应的是指发送队列中当前需要发送的下行有效数据包。当步骤 201 中判断存在下行有效数据包时, 执行本步骤, 本步骤可参考现有技术中数据包的发送方 法完成, 这里不赘述。
     步骤 202 和步骤 203 中将数据包发送给终端的模拟输出设备, 例如听筒、 扬声器等 模拟输出设备。
     图 2 所示本发明实施例下行语音驱动处理方法中, 如果检测不存在下行有效数据 包, 则发送空包, 从而保证下行语音驱动处理模块持续发送下行语音数据, 从而, AEC 处理模 块能够从下行语音驱动处理模块中采样到稳定时间差的下行语音参考数据。
     进一步的, 在实际应用中, 还可能出现短暂没有数据发送的情况。在现有技术中, 当有下行语音数据时, 即将下行语音数据发送给模拟输出设备 ; 没有下行语音数据时, 不进 行任何操作 ; 这样, 就会出现下行语音驱动处理模块中未接收到下行语音数据, 或者, 接收 到下行语音数据的时间发生漂移的问题, 从而导致 AEC 模块在固定的采样时间点无法采集 到下行语音参考数据, 导致采样时间点的漂移。如图 2a 所示, 下行语音驱动处理模块接收 到前一帧下行语音数据后的第 22ms 才接收到第 2 帧下行语音数据帧, 从而导致第 2 帧下行 语音数据帧发送到模拟输出设备的时间发生了 2ms 的漂移, 从而采集下行语音参考数据的 采集点也发生了 2ms 的漂移, 使得采集到的下行语音参考数据之间的时间差不稳定。为了 解决上述下行语音数据帧发送时间的漂移问题, 在步骤 201 中确定进行下行语音数据发送 之前, 还可以进一步包括如下步骤 :
     步骤 201’ : 接收下行语音数据, 判断接收到的下行语音数据是否达到 n 帧, 如果达 到, 确定开始执行所述下行语音数据的发送步骤, 否则, 继续接收下行语音数据, 直到接收 到 n 帧下行语音数据后, 开始执行所述下行语音数据的发送步骤。其中, 所述 n 为大于 1 的 整数。例如, 可以为 3 帧。
     通过对于接收到的下行语音数据的缓冲处理, 可以有效解决接收到的下行语音数
     据存在时间漂移的问题, 从而进一步使得下行语音数据发送均匀, 保证终端在采样的时间 点采集到稳定时间差的下行语音数据包。例如,
     假设当前已经缓存了 3 帧下行语音数据, 而 22ms 后才接收到下一帧下行语音数 据。此时, 对于下行语音数据来说, 已经有 3 帧数据需要发送, 而每一帧发送的时间都为 20ms。
     第一个 20ms 时间内, 发送第一帧下行语音数据。
     第二个 20ms 时间内, 发送第二帧下行语音数据。当第二帧下行语音数据发送后 2ms, 接收到了新一帧的下行语音数据, 此数据会填满刚刚被发送的那一帧下行语音数据所 对应的缓存空间, 但会受到 “收满 3 帧下行语音数据才启动发送” 的限制而暂存在缓存之 中。下行语音驱动处理模块正常发送第二帧下行语音数据, 做到第二帧下行语音数据的发 送时间与接收到的下行语音数据的时间无关。
     从上面的分析中可以看出, 执行步骤 201’ 后, 发送到下行语音驱动处理模块的下 行语音数据的时间不会对下行语音数据的发送产生影响。这样, 即使下一次在 20ms 多一点 时间, 才有下行语音数据发送到下行语音驱动处理模块, 也能保证下行语音驱动处理模块 对于下行语音数据的发送持续进行, 不出现中断。 图 3 为本发明实施例上行语音数据驱动处理方法流程示意图, 如图 3 所示, 包括 :
     步骤 301 : 接收上行语音数据, 判断上行接收队列中各数据包是否均已满, 如果 是, 执行步骤 302 ; 否则, 执行步骤 303。
     其中, 上行接收队列中的数据包用于存储接收到的上行语音数据。
     步骤 302 : 将接收到的上行语音数据添加到接收队列的最后一个数据包中。
     其中, 一般预先设置数据包所能存储数据的数据量, 相应的, 接收到的上行语音数 据发送给上行语音数据驱动处理模块时, 将发送相应数据量的上行语音数据。 如果步骤 301 中判断上行接收队列中各个数据包中均已存储满数据, 这时, 将接收到的数据添加到接收 队列的最后一个数据包中, 从而保证最后一个数据包中始终存储有最新的上行语音数据。
     步骤 303 : 依照接收队列中数据包的顺序, 将接收到的上行语音数据添加到相应 的空数据包中。
     其中, 如果步骤 301 中判断得出接收队列未满, 则将依次将上行语音数据添加到 未存储上行语音数据的数据包中。
     图 3 所示的上行语音数据驱动处理方法中, 如果上行接收队列中的数据包均已 满, 则将新接收到的上行语音数据不断添加到接收队列的最后一个数据包中, 也即 : 使得在 接收队列中数据包均已满的情况下, 接收队列的最后一个数据包中始终存储最新的上行语 音数据, 从而解决了现有技术中上行语音驱动处理模块在上行接收队列中数据包已满的情 况下, 不接收新的上行语音数据导致的上下行语音参考不准确的问题。
     通过图 2 和图 3 所示的上下行语音数据驱动处理方法, 当下行无有效数据包时, 发送空包, 使得下行语音驱动处理模块持续稳定的发送下行语音数据 ; 上行接收队列的各 个数据包均已满时, 在最后一个数据包中不断更新存储接收到的新上行语音数据, 使得 AEC 处理模块采集到的下行语音参考数据与上行语音数据相互对应, 从而确保上下行语音数据 帧之间的传输时间差稳定, 进而使得终端能够使用 AEC 算法稳定抑制上行语音数据中的回 声。
     图 4 为本发明实施例一种上下行语音驱动处理系统, 可以设置于终端中。包括下 行语音驱动处理装置 410 和上行语音驱动处理装置 420 ; 所述下行语音驱动处理装置 410 可以设置于终端的下行语音驱动处理模块中 ; 所述上行语音驱动处理装置 420 可以设置于 终端的上行语音驱动处理模块中。
     下行语音驱动处理装置 410, 用于确定进行下行语音数据发送时, 检测是否存在下 行有效数据包, 如果不存在, 发送空包。
     上行语音驱动处理装置 420, 用于接收上行语音数据, 判断上行接收队列中各个数 据包是否均已满, 如果是, 将接收到的上行语音数据添加到接收队列的最后一个数据包中。
     进一步地, 所述下行语音驱动处理装置 410 还可以用于 : 检测存在下行有效数据 包时, 发送所述下行有效数据包。
     进一步地, 所述下行语音驱动处理装置 410 还可以用于 : 确定之前, 接收下行语音 数据并缓存, 当接收到的下行语音数据达到 n 帧时, 确定开始进行所述下行语音数据的发 送, n 为大于 1 的整数。
     另外, 所述上行语音驱动处理装置 420 还可以用于 : 判断上行接收队列存在空数 据包时, 依照接收队列中数据包的顺序, 将接收到的上行语音数据添加到相应的空数据包 中。
     一般的, 上行语音驱动处理装置 420 还用于将上行接收队列中的数据包依次发送 给 AEC 处理模块进行回声抑制, 这里不再赘述。
     所述下行语音驱动处理装置 410 可以通过图 5 所示的结构实现, 包括 :
     检测单元 510, 确定进行下行语音数据发送时, 检测是否存在下行有效数据包。
     发送单元 520, 用于当检测单元 510 检测结果为不存在下行有效数据包时, 发送空 包。
     进一步地, 所述发送单元 520 还用于 : 当检测单元检测结果为存在下行有效数据 包时, 发送下行有效数据包。
     优选地, 如图 5a 所示, 该装置还可以进一步包括 : 接收单元 530, 用于接收下行语 音数据并缓存, 当接收到的下行语音数据达到 n 帧时, 控制检测单元 510 开始进行所述下行 语音数据的发送, 所述 n 为大于 1 的整数。
     所述上行语音驱动处理装置 420 可以通过图 6 所示的结构实现, 包括 :
     判断单元 610, 接收上行语音数据, 判断上行接收队列中各个数据包是否均已满。
     存储单元 620, 用于判断单元 610 判断上行接收队列中各个数据包均已满时, 将接 收到的上行语音数据添加到接收队列的最后一个数据包中。
     进一步地, 存储单元 620 还可以用于 : 判断单元 610 判断上行接收队列存在空数据 包时, 依照接收队列中数据包的顺序, 将接收到的上行语音数据依次添加到相应的空数据 包中。
     一般的, 下行语音驱动处理装置中还包括发送单元, 用于将上行接收队列中的数 据包发送到 AEC 处理模块中进行回声抑制处理, 这里不再赘述。
     图 4 ~图 6 所示的上下行语音数据驱动处理系统及装置, 当下行无有效数据包时, 发送空包, 使得下行语音驱动处理模块持续稳定的发送下行语音数据 ; 上行接收队列的各 个数据包均已满时, 在最后一个数据包中不断更新存储接收到的新上行语音数据, 使得 AEC处理模块采集到的下行语音参考数据与上行语音数据相互对应, 从而确保上下行语音数据 帧之间的传输时间差稳定, 进而使得终端能够使用 AEC 算法稳定抑制上行语音数据中的回 声。
     本领域普通技术人员可以理解, 实现上述实施例上下行语音驱动处理方法的过程 可以通过程序指令相关的硬件来完成, 所述的程序可以存储于可读取存储介质中, 该程序 在执行时执行上述方法中的对应步骤。所述的存储介质可以如 : ROM/RAM、 磁碟、 光盘等。
     以上所述仅是本发明的优选实施方式, 应当指出, 对于本技术领域的普通技术人 员来说, 在不脱离本发明原理的前提下, 还可以做出若干改进和润饰, 这些改进和润饰也应 视为本发明的保护范围。

一种上下行语音驱动处理方法、装置及系统.pdf_第1页
第1页 / 共14页
一种上下行语音驱动处理方法、装置及系统.pdf_第2页
第2页 / 共14页
一种上下行语音驱动处理方法、装置及系统.pdf_第3页
第3页 / 共14页
点击查看更多>>
资源描述

《一种上下行语音驱动处理方法、装置及系统.pdf》由会员分享,可在线阅读,更多相关《一种上下行语音驱动处理方法、装置及系统.pdf(14页珍藏版)》请在专利查询网上搜索。

1、10申请公布号CN101958984A43申请公布日20110126CN101958984ACN101958984A21申请号200910055043922申请日20090713H04M9/0820060171申请人联芯科技有限公司地址200233上海市钦江路333号41幢4楼72发明人高兵陶然74专利代理机构北京集佳知识产权代理有限公司11227代理人逯长明王宝筠54发明名称一种上下行语音驱动处理方法、装置及系统57摘要本发明公开了一种上下行语音驱动处理方法、装置及系统,所述方法包括下行语音驱动处理步骤确定进行下行语音数据发送时,检测是否存在下行有效数据包,如果不存在,发送空包;上行语音驱动。

2、处理步骤接收上行语音数据,判断上行接收队列中各个数据包是否均已满,如果是,将接收到的上行语音数据添加到接收队列的最后一个数据包中。所述方法、装置及系统能够确保上下行语音数据帧启动传输的时间之间的时间差稳定,进而使所终端能够使用AEC算法实现稳定抑制回声的目标。51INTCL19中华人民共和国国家知识产权局12发明专利申请权利要求书2页说明书7页附图4页CN101958985A1/2页21一种上下行语音驱动处理方法,其特征在于,包括下行语音驱动处理步骤确定进行下行语音数据发送时,检测是否存在下行有效数据包,如果不存在,发送空包;上行语音驱动处理步骤接收上行语音数据,判断上行接收队列中各个数据包是。

3、否均已满,如果是,将接收到的上行语音数据添加到接收队列的最后一个数据包中。2根据权利要求1所述的方法,其特征在于,下行语音驱动处理步骤还包括检测存在下行有效数据包时,发送所述下行有效数据包。3根据权利要求1或2所述的方法,其特征在于,上行语音驱动处理步骤还包括判断上行接收队列存在空数据包时,依照接收队列中数据包的顺序,将接收到的上行语音数据添加到相应的空数据包中。4根据权利要求1或2所述的方法,其特征在于,下行语音驱动处理步骤中,所述确定之前,进一步包括接收下行语音数据并缓存,当接收到的下行语音数据达到N帧时,确定开始进行所述下行语音数据的发送,所述N为大于1的整数。5一种上下行语音驱动处理系。

4、统,其特征在于,包括下行语音驱动处理装置以及上行语音驱动处理装置,其中,下行语音驱动处理装置包括检测单元,用于确定进行下行语音数据发送时,检测是否存在下行有效数据包;发送单元,用于当检测单元检测结果为不存在下行有效数据包时,发送空包;上行语音驱动处理装置包括判断单元,用于接收上行语音数据,判断上行接收队列中各个数据包是否均已满;存储单元,用于判断单元判断上行接收队列中各个数据包均已满时,将接收到的上行语音数据添加到接收队列的最后一个数据包中。6根据权利要求5所述的系统,其特征在于,所述下行语音驱动处理装置中的所述发送单元还用于当检测单元检测结果为存在下行有效数据包时,发送所述下行有效数据包。7。

5、根据权利要求5或6所述的系统,其特征在于,所述下行语音驱动处理装置还包括接收单元,用于接收下行语音数据并缓存,当接收到的下行语音数据达到N帧时,确定开始进行所述下行语音数据的发送,N为大于1的整数。8根据权利要求5或6所述的系统,其特征在于,所述上行语音驱动处理装置中的所述存储单元还用于判断单元判断上行接收队列存在空数据包时,依照接收队列中数据包的顺序,将接收到的上行语音数据添加到相应的空数据包中。9一种下行语音驱动处理方法,其特征在于,包括确定进行下行语音数据发送时,检测是否存在下行有效数据包,如果不存在,发送空包。10根据权利要求9所述的方法,其特征在于,还包括检测存在下行有效数据包时,发。

6、送所述下行有效数据包。11根据权利要求9或10所述的方法,其特征在于,所述确定之前还包括接收下行语音数据并缓存,当接收到的下行语音数据达到N帧时,确定开始进行所述权利要求书CN101958984ACN101958985A2/2页3下行语音数据的发送,N为大于1的整数。12一种下行语音驱动处理装置,其特征在于,包括检测单元,用于确定进行下行语音数据发送时,检测是否存在下行有效数据包;发送单元,用于当检测单元检测结果为不存在下行有效数据包时,发送空包。13根据权利要求12所述的装置,其特征在于,所述发送单元还用于当检测单元检测结果为存在下行有效数据包时,发送下行有效数据包。14根据权利要求12或1。

7、3所述的装置,其特征在于,还包括接收单元,用于接收下行语音数据并缓存,当接收到的下行语音数据达到N帧时,控制检测单元开始进行所述下行语音数据的发送,N为大于1的整数。15一种上行语音驱动处理方法,其特征在于,包括接收上行语音数据,判断上行接收队列中各个数据包是否均已满,如果是,将接收到的上行语音数据添加到接收队列的最后一个数据包中。16根据权利要求15所述的方法,其特征在于,还包括判断上行接收队列存在空数据包时,依照接收队列中数据包的顺序,将接收到的上行语音数据添加到相应的空数据包中。17一种上行语音驱动处理装置,其特征在于,包括判断单元,用于接收上行语音数据,判断上行接收队列中各个数据包是否。

8、均已满;存储单元,用于判断单元判断上行接收队列中各个数据包均已满时,将接收到的上行语音数据添加到接收队列的最后一个数据包中。18根据权利要求17所述的装置,其特征在于,存储单元还用于判断单元判断上行接收队列存在空数据包时,依照接收队列中数据包的顺序,将接收到的上行语音数据依次添加到相应的空数据包中。权利要求书CN101958984ACN101958985A1/7页4一种上下行语音驱动处理方法、装置及系统技术领域0001本发明涉及通信领域,尤其涉及一种上下行语音驱动处理方法、装置及系统。背景技术0002终端如手机等非常重要的一个功能在于语音传输。在语音传输中保证语音质量非常重要,而影响语音质量的。

9、关键因素之一是回声。0003目前,终端在进行语音传输时,一般使用声学回声消除AEC方法进行回声抑制。AEC方法的原理是以扬声器信号与由扬声器信号产生的多路径回声的相关性为基础,建立远端信号的语音模型,利用该语音模型对回声进行估计,并不断修改滤波器的系数,使得回声估计值更加逼近真实的回声,然后,将回声估计值从话筒的输入信号中去除,从而达到消除回声的目的。0004图1为终端TD/GSM模式下的语音处理流程,如图1所示,终端中包括语音的上行处理以及语音的下行处理;其中,AEC处理模块用于使用AEC方法对上行语音数据进行回声抑制。AEC处理模块进行回声抑制时,是在上行语音驱动处理模块开始接收上行语音数。

10、据帧的时刻,从同一时刻的下行语音数据帧中进行采样得到下行语音参考数据,计算回声估计值,从而将上行语音驱动处理模块接收到的上行语音数据中的回声消除。0005而由于进行下行语音数据的采样时,在下行语音数据帧启动发送的时刻采集最为准确,因此,AEC处理模块进行下行语音参考数据的采样时,需要确定上行语音数据帧对应的下行语音数据帧,之后,在下行语音数据帧确定发送的时刻进行下行语音参考数据的采集,从而,AEC算法要稳定实现回声抑制的条件为上行语音数据帧开始传输的时间与该数据帧对应的下行语音数据帧开始传输的时间之间时间差稳定,而且需要尽可能的小。如图1A所示,即为上下行语音数据帧启动传输的时间之间的时间差稳。

11、定时的关系示例图。0006然而,在实际应用中,现有的上行语音驱动处理模块以及下行语音驱动处理模块在对上下行语音数据进行接收或发送处理时,很容易出现上下行语音数据帧传输时间差不稳定的问题。导致该问题的因素包括但不限于网络延时、上下行语音线程不同步等。除上述因素之外,网络在某个时间段无下行语音数据发送、网络误码等也将导致上下行语音数据帧传输时间差的不稳定。0007基于以上描述可知,现有的上下行语音驱动方法无法确保上下行语音数据帧之间的传输时间差稳定,进而使得终端在使用AEC方法进行上行语音数据的回声抑制时无法达到稳定的回声抑制效果。发明内容0008有鉴于此,本发明要解决的技术问题是,提供一种上下行。

12、语音驱动处理方法、装置及系统,确保上下行语音数据帧之间的传输时间差稳定,进而使得终端能够使用AEC算法稳定抑制上行语音数据中的回声。0009为此,本发明实施例采用如下技术方案说明书CN101958984ACN101958985A2/7页50010本发明实施例提供一种上下行语音驱动处理方法,包括0011下行语音驱动处理步骤确定进行下行语音数据发送时,检测是否存在下行有效数据包,如果不存在,发送空包;0012上行语音驱动处理步骤接收上行语音数据,判断上行接收队列中各个数据包是否均已满,如果是,将接收到的上行语音数据添加到接收队列的最后一个数据包中。0013其中,下行语音驱动处理步骤还包括0014检。

13、测存在下行有效数据包时,发送所述下行有效数据包。0015上行语音驱动处理步骤还包括0016判断上行接收队列存在空数据包时,依照接收队列中数据包的顺序,将接收到的上行语音数据添加到相应的空数据包中。0017下行语音驱动处理步骤中,所述确定之前,进一步包括0018接收下行语音数据并缓存,当接收到的下行语音数据达到N帧时,确定开始进行所述下行语音数据的发送,所述N为大于1的整数。0019本发明实施例还提供一种上下行语音驱动处理系统,包括下行语音驱动处理装置以及上行语音驱动处理装置,其中,0020下行语音驱动处理装置包括0021检测单元,用于确定进行下行语音数据发送时,检测是否存在下行有效数据包;00。

14、22发送单元,用于当检测单元检测结果为不存在下行有效数据包时,发送空包;0023上行语音驱动处理装置包括0024判断单元,用于接收上行语音数据,判断上行接收队列中各个数据包是否均已满;0025存储单元,用于判断单元判断上行接收队列中各个数据包均已满时,将接收到的上行语音数据添加到接收队列的最后一个数据包中。0026所述下行语音驱动处理装置中的所述发送单元还用于0027当检测单元检测结果为存在下行有效数据包时,发送所述下行有效数据包。0028所述下行语音驱动处理装置还包括0029接收单元,用于接收下行语音数据并缓存,当接收到的下行语音数据达到N帧时,确定开始进行所述下行语音数据的发送,N为大于1。

15、的整数。0030所述上行语音驱动处理装置中的所述存储单元还用于判断单元判断上行接收队列存在空数据包时,依照接收队列中数据包的顺序,将接收到的上行语音数据添加到相应的空数据包中。0031本发明实施例还提供一种下行语音驱动处理方法,包括0032确定进行下行语音数据发送时,检测是否存在下行有效数据包,如果不存在,发送空包。0033还包括检测存在下行有效数据包时,发送所述下行有效数据包。0034所述确定之前还包括0035接收下行语音数据并缓存,当接收到的下行语音数据达到N帧时,确定开始进行所述下行语音数据的发送,N为大于1的整数。0036本发明实施例同时提供一种下行语音驱动处理装置,包括说明书CN10。

16、1958984ACN101958985A3/7页60037检测单元,用于确定进行下行语音数据发送时,检测是否存在下行有效数据包;0038发送单元,用于当检测单元检测结果为不存在下行有效数据包时,发送空包。0039其中,所述发送单元还用于当检测单元检测结果为存在下行有效数据包时,发送下行有效数据包。0040还包括接收单元,用于接收下行语音数据并缓存,当接收到的下行语音数据达到N帧时,控制检测单元开始进行所述下行语音数据的发送,N为大于1的整数。0041本发明实施例还同时提供一种上行语音驱动处理方法,包括0042接收上行语音数据,判断上行接收队列中各个数据包是否均已满,如果是,将接收到的上行语音数。

17、据添加到接收队列的最后一个数据包中。0043还包括判断上行接收队列存在空数据包时,依照接收队列中数据包的顺序,将接收到的上行语音数据添加到相应的空数据包中。0044本发明实施例还提供一种上行语音驱动处理装置,包括0045判断单元,用于接收上行语音数据,判断上行接收队列中各个数据包是否均已满;0046存储单元,用于判断单元判断上行接收队列中各个数据包均已满时,将接收到的上行语音数据添加到接收队列的最后一个数据包中。0047存储单元还用于判断单元判断上行接收队列存在空数据包时,依照接收队列中数据包的顺序,将接收到的上行语音数据依次添加到相应的空数据包中。0048对于上述技术方案的技术效果分析如下0。

18、049本发明实施例的上下行语音数据驱动处理方法中,当下行无有效数据包时,发送空包,使得下行语音驱动处理模块持续稳定的发送下行语音数据;上行接收队列的各个数据包均已满时,在最后一个数据包中不断更新存储接收到的新上行语音数据,使得AEC处理模块采集到的下行语音参考数据与上行语音数据相对应;从而确保上下行语音数据帧之间的传输时间差稳定,进而使得终端能够使用AEC算法稳定抑制上行语音数据中的回声。附图说明0050图1为现有技术终端上下行语音数据处理示意图;0051图1A为上下行语音数据帧启动传输的时间之间的时间差稳定时的关系示例图;0052图2为本发明实施例下行语音驱动处理方法流程示意图;0053图2。

19、A为本发明实施例下行语音数据帧启动传输的时间发生漂移时的采样时间差关系示例图;0054图3为本发明实施例上行语音驱动处理方法流程示意图;0055图4为本发明实施例上下行语音驱动处理系统结构示意图;0056图5为本发明实施例一种下行语音驱动处理装置结构示意图;0057图5A为本发明实施例另一种下行语音驱动处理装置结构示意图;0058图6为本发明实施例上行语音驱动处理装置结构示意图。具体实施方式0059为了解决现有技术上下行语音数据帧之间的传输时间差不稳定的问题,保证上下说明书CN101958984ACN101958985A4/7页7行语音数据稳定同步,本发明实施例提供一种上下行语音驱动处理方法及。

20、装置,当下行无有效数据包时,发送空包;上行接收队列的各个数据包均已满时,不断将最后一个数据包中存储的数据更新为接收到的新上行语音数据;从而,确保上下行语音数据帧之间的传输时间差稳定,进而使得终端能够使用AEC算法稳定抑制上行语音数据中的回声。0060图2为本发明实施例下行语音驱动处理方法流程示意图,该方法可以应用于终端的下行语音驱动处理模块中,进行下行语音数据的驱动处理。如图2所示,包括0061步骤201确定进行下行语音数据发送时,检测是否存在下行有效数据包,如果不存在,执行步骤202;否则,执行步骤203。0062步骤202发送空包。所述空包也即为内容全部为0的数据包。0063在视频电话VP。

21、,VIDEOPHONE等业务中,可能存在通话对方不说话的情况,这时,如果使用现有技术的下行语音数据驱动方法,由于无下行有效数据包,则将不进行下行语音数据包的发送。从而导致进行回声抑制时,无法在采样的时间点采集到稳定时间差的下行语音参考数据的问题。本步骤中,通过发送空包,使得一直存在下行语音数据,从而保证了在采样的时间点,能够采集到稳定时间差的下行语音数据包,进而使得AEC处理模块进行回声抑制时达到良好的回声抑制效果。0064步骤203发送相应的下行有效数据包。0065本步骤中所述相应的是指发送队列中当前需要发送的下行有效数据包。当步骤201中判断存在下行有效数据包时,执行本步骤,本步骤可参考现。

22、有技术中数据包的发送方法完成,这里不赘述。0066步骤202和步骤203中将数据包发送给终端的模拟输出设备,例如听筒、扬声器等模拟输出设备。0067图2所示本发明实施例下行语音驱动处理方法中,如果检测不存在下行有效数据包,则发送空包,从而保证下行语音驱动处理模块持续发送下行语音数据,从而,AEC处理模块能够从下行语音驱动处理模块中采样到稳定时间差的下行语音参考数据。0068进一步的,在实际应用中,还可能出现短暂没有数据发送的情况。在现有技术中,当有下行语音数据时,即将下行语音数据发送给模拟输出设备;没有下行语音数据时,不进行任何操作;这样,就会出现下行语音驱动处理模块中未接收到下行语音数据,或。

23、者,接收到下行语音数据的时间发生漂移的问题,从而导致AEC模块在固定的采样时间点无法采集到下行语音参考数据,导致采样时间点的漂移。如图2A所示,下行语音驱动处理模块接收到前一帧下行语音数据后的第22MS才接收到第2帧下行语音数据帧,从而导致第2帧下行语音数据帧发送到模拟输出设备的时间发生了2MS的漂移,从而采集下行语音参考数据的采集点也发生了2MS的漂移,使得采集到的下行语音参考数据之间的时间差不稳定。为了解决上述下行语音数据帧发送时间的漂移问题,在步骤201中确定进行下行语音数据发送之前,还可以进一步包括如下步骤0069步骤201接收下行语音数据,判断接收到的下行语音数据是否达到N帧,如果达。

24、到,确定开始执行所述下行语音数据的发送步骤,否则,继续接收下行语音数据,直到接收到N帧下行语音数据后,开始执行所述下行语音数据的发送步骤。其中,所述N为大于1的整数。例如,可以为3帧。0070通过对于接收到的下行语音数据的缓冲处理,可以有效解决接收到的下行语音数说明书CN101958984ACN101958985A5/7页8据存在时间漂移的问题,从而进一步使得下行语音数据发送均匀,保证终端在采样的时间点采集到稳定时间差的下行语音数据包。例如,0071假设当前已经缓存了3帧下行语音数据,而22MS后才接收到下一帧下行语音数据。此时,对于下行语音数据来说,已经有3帧数据需要发送,而每一帧发送的时间。

25、都为20MS。0072第一个20MS时间内,发送第一帧下行语音数据。0073第二个20MS时间内,发送第二帧下行语音数据。当第二帧下行语音数据发送后2MS,接收到了新一帧的下行语音数据,此数据会填满刚刚被发送的那一帧下行语音数据所对应的缓存空间,但会受到“收满3帧下行语音数据才启动发送”的限制而暂存在缓存之中。下行语音驱动处理模块正常发送第二帧下行语音数据,做到第二帧下行语音数据的发送时间与接收到的下行语音数据的时间无关。0074从上面的分析中可以看出,执行步骤201后,发送到下行语音驱动处理模块的下行语音数据的时间不会对下行语音数据的发送产生影响。这样,即使下一次在20MS多一点时间,才有下。

26、行语音数据发送到下行语音驱动处理模块,也能保证下行语音驱动处理模块对于下行语音数据的发送持续进行,不出现中断。0075图3为本发明实施例上行语音数据驱动处理方法流程示意图,如图3所示,包括0076步骤301接收上行语音数据,判断上行接收队列中各数据包是否均已满,如果是,执行步骤302;否则,执行步骤303。0077其中,上行接收队列中的数据包用于存储接收到的上行语音数据。0078步骤302将接收到的上行语音数据添加到接收队列的最后一个数据包中。0079其中,一般预先设置数据包所能存储数据的数据量,相应的,接收到的上行语音数据发送给上行语音数据驱动处理模块时,将发送相应数据量的上行语音数据。如果。

27、步骤301中判断上行接收队列中各个数据包中均已存储满数据,这时,将接收到的数据添加到接收队列的最后一个数据包中,从而保证最后一个数据包中始终存储有最新的上行语音数据。0080步骤303依照接收队列中数据包的顺序,将接收到的上行语音数据添加到相应的空数据包中。0081其中,如果步骤301中判断得出接收队列未满,则将依次将上行语音数据添加到未存储上行语音数据的数据包中。0082图3所示的上行语音数据驱动处理方法中,如果上行接收队列中的数据包均已满,则将新接收到的上行语音数据不断添加到接收队列的最后一个数据包中,也即使得在接收队列中数据包均已满的情况下,接收队列的最后一个数据包中始终存储最新的上行语。

28、音数据,从而解决了现有技术中上行语音驱动处理模块在上行接收队列中数据包已满的情况下,不接收新的上行语音数据导致的上下行语音参考不准确的问题。0083通过图2和图3所示的上下行语音数据驱动处理方法,当下行无有效数据包时,发送空包,使得下行语音驱动处理模块持续稳定的发送下行语音数据;上行接收队列的各个数据包均已满时,在最后一个数据包中不断更新存储接收到的新上行语音数据,使得AEC处理模块采集到的下行语音参考数据与上行语音数据相互对应,从而确保上下行语音数据帧之间的传输时间差稳定,进而使得终端能够使用AEC算法稳定抑制上行语音数据中的回声。说明书CN101958984ACN101958985A6/7。

29、页90084图4为本发明实施例一种上下行语音驱动处理系统,可以设置于终端中。包括下行语音驱动处理装置410和上行语音驱动处理装置420;所述下行语音驱动处理装置410可以设置于终端的下行语音驱动处理模块中;所述上行语音驱动处理装置420可以设置于终端的上行语音驱动处理模块中。0085下行语音驱动处理装置410,用于确定进行下行语音数据发送时,检测是否存在下行有效数据包,如果不存在,发送空包。0086上行语音驱动处理装置420,用于接收上行语音数据,判断上行接收队列中各个数据包是否均已满,如果是,将接收到的上行语音数据添加到接收队列的最后一个数据包中。0087进一步地,所述下行语音驱动处理装置4。

30、10还可以用于检测存在下行有效数据包时,发送所述下行有效数据包。0088进一步地,所述下行语音驱动处理装置410还可以用于确定之前,接收下行语音数据并缓存,当接收到的下行语音数据达到N帧时,确定开始进行所述下行语音数据的发送,N为大于1的整数。0089另外,所述上行语音驱动处理装置420还可以用于判断上行接收队列存在空数据包时,依照接收队列中数据包的顺序,将接收到的上行语音数据添加到相应的空数据包中。0090一般的,上行语音驱动处理装置420还用于将上行接收队列中的数据包依次发送给AEC处理模块进行回声抑制,这里不再赘述。0091所述下行语音驱动处理装置410可以通过图5所示的结构实现,包括0。

31、092检测单元510,确定进行下行语音数据发送时,检测是否存在下行有效数据包。0093发送单元520,用于当检测单元510检测结果为不存在下行有效数据包时,发送空包。0094进一步地,所述发送单元520还用于当检测单元检测结果为存在下行有效数据包时,发送下行有效数据包。0095优选地,如图5A所示,该装置还可以进一步包括接收单元530,用于接收下行语音数据并缓存,当接收到的下行语音数据达到N帧时,控制检测单元510开始进行所述下行语音数据的发送,所述N为大于1的整数。0096所述上行语音驱动处理装置420可以通过图6所示的结构实现,包括0097判断单元610,接收上行语音数据,判断上行接收队列。

32、中各个数据包是否均已满。0098存储单元620,用于判断单元610判断上行接收队列中各个数据包均已满时,将接收到的上行语音数据添加到接收队列的最后一个数据包中。0099进一步地,存储单元620还可以用于判断单元610判断上行接收队列存在空数据包时,依照接收队列中数据包的顺序,将接收到的上行语音数据依次添加到相应的空数据包中。0100一般的,下行语音驱动处理装置中还包括发送单元,用于将上行接收队列中的数据包发送到AEC处理模块中进行回声抑制处理,这里不再赘述。0101图4图6所示的上下行语音数据驱动处理系统及装置,当下行无有效数据包时,发送空包,使得下行语音驱动处理模块持续稳定的发送下行语音数据。

33、;上行接收队列的各个数据包均已满时,在最后一个数据包中不断更新存储接收到的新上行语音数据,使得AEC说明书CN101958984ACN101958985A7/7页10处理模块采集到的下行语音参考数据与上行语音数据相互对应,从而确保上下行语音数据帧之间的传输时间差稳定,进而使得终端能够使用AEC算法稳定抑制上行语音数据中的回声。0102本领域普通技术人员可以理解,实现上述实施例上下行语音驱动处理方法的过程可以通过程序指令相关的硬件来完成,所述的程序可以存储于可读取存储介质中,该程序在执行时执行上述方法中的对应步骤。所述的存储介质可以如ROM/RAM、磁碟、光盘等。0103以上所述仅是本发明的优选实施方式,应当指出,对于本技术领域的普通技术人员来说,在不脱离本发明原理的前提下,还可以做出若干改进和润饰,这些改进和润饰也应视为本发明的保护范围。说明书CN101958984ACN101958985A1/4页11图1图1A说明书附图CN101958984ACN101958985A2/4页12图2图2A说明书附图CN101958984ACN101958985A3/4页13图3图4图5说明书附图CN101958984ACN101958985A4/4页14图5A图6说明书附图CN101958984A。

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 电学 > 电通信技术


copyright@ 2017-2020 zhuanlichaxun.net网站版权所有
经营许可证编号:粤ICP备2021068784号-1