CN112398912B - 一种语音信号加速方法、装置、计算机设备及存储介质 - Google Patents
一种语音信号加速方法、装置、计算机设备及存储介质 Download PDFInfo
- Publication number
- CN112398912B CN112398912B CN202011157621.2A CN202011157621A CN112398912B CN 112398912 B CN112398912 B CN 112398912B CN 202011157621 A CN202011157621 A CN 202011157621A CN 112398912 B CN112398912 B CN 112398912B
- Authority
- CN
- China
- Prior art keywords
- acceleration
- sample points
- total number
- data packet
- voice data
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
- 230000001133 acceleration Effects 0.000 title claims abstract description 180
- 238000000034 method Methods 0.000 title claims abstract description 39
- 238000012545 processing Methods 0.000 claims abstract description 47
- 238000004422 calculation algorithm Methods 0.000 claims abstract description 43
- 238000004364 calculation method Methods 0.000 claims description 12
- 238000004590 computer program Methods 0.000 claims description 4
- 230000002194 synthesizing effect Effects 0.000 claims description 4
- 239000000284 extract Substances 0.000 claims description 3
- 238000009432 framing Methods 0.000 claims description 3
- 238000012937 correction Methods 0.000 claims description 2
- 238000009825 accumulation Methods 0.000 abstract description 9
- 230000006854 communication Effects 0.000 abstract description 7
- 238000010586 diagram Methods 0.000 description 8
- 230000006870 function Effects 0.000 description 4
- 230000015572 biosynthetic process Effects 0.000 description 2
- 238000000354 decomposition reaction Methods 0.000 description 2
- 230000005236 sound signal Effects 0.000 description 2
- 238000003786 synthesis reaction Methods 0.000 description 2
- 230000005856 abnormality Effects 0.000 description 1
- 238000004458 analytical method Methods 0.000 description 1
- 230000009286 beneficial effect Effects 0.000 description 1
- 238000004891 communication Methods 0.000 description 1
- 238000013500 data storage Methods 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 238000007499 fusion processing Methods 0.000 description 1
- 238000010295 mobile communication Methods 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 108090000623 proteins and genes Proteins 0.000 description 1
- 230000008707 rearrangement Effects 0.000 description 1
- 238000005070 sampling Methods 0.000 description 1
- 238000004088 simulation Methods 0.000 description 1
- 238000006467 substitution reaction Methods 0.000 description 1
- 230000001629 suppression Effects 0.000 description 1
- 238000012360 testing method Methods 0.000 description 1
Classifications
-
- G—PHYSICS
- G10—MUSICAL INSTRUMENTS; ACOUSTICS
- G10L—SPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
- G10L19/00—Speech or audio signals analysis-synthesis techniques for redundancy reduction, e.g. in vocoders; Coding or decoding of speech or audio signals, using source filter models or psychoacoustic analysis
- G10L19/04—Speech or audio signals analysis-synthesis techniques for redundancy reduction, e.g. in vocoders; Coding or decoding of speech or audio signals, using source filter models or psychoacoustic analysis using predictive techniques
- G10L19/16—Vocoder architecture
- G10L19/18—Vocoders using multiple modes
- G10L19/24—Variable rate codecs, e.g. for generating different qualities using a scalable representation such as hierarchical encoding or layered encoding
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/02—Protocols based on web technology, e.g. hypertext transfer protocol [HTTP]
Landscapes
- Engineering & Computer Science (AREA)
- Signal Processing (AREA)
- Human Computer Interaction (AREA)
- Computational Linguistics (AREA)
- Health & Medical Sciences (AREA)
- Audiology, Speech & Language Pathology (AREA)
- Quality & Reliability (AREA)
- Physics & Mathematics (AREA)
- Acoustics & Sound (AREA)
- Multimedia (AREA)
- Computer Networks & Wireless Communication (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
- Telephonic Communication Services (AREA)
Abstract
本发明公开了一种语音信号加速方法、装置、计算机设备及存储介质,包括:获取当前语音数据包中未播放的样本点总数;根据当前语音数据包的样本点总数,以及未播放的样本点总数,计算加速因子;获取与当前语音数据包对应的解码信号,利用预设的加速算法,以及加速因子,对解码信号进行加速处理。本发明实施例的技术方案可以有效改善因语音数据包堆积引起的语音丢包和播放延时的问题,提高网络环境下通话过程中的语音质量。
Description
技术领域
本发明实施例涉及语音信号处理技术,尤其涉及一种语音信号加速方法、装置、计算机设备及存储介质。
背景技术
网页实时通信接口(Web Real-Time Communication,WebRTC)是一个支持网页浏览器进行实时语音对话或视频对话的程序接口。音频处理引擎是WebRTC中用于处理音频信号的模块,包括:音频信号编解码器、丢包补偿模块NetEQ、回声消除和噪声抑制等模块。其中,所述丢包补偿模块NetEQ中集成了构建动态抖动缓存区和错误隐藏(丢包补偿)的算法,用于去除网络抖动和数据包丢失的负面影响。
图1a是NetEQ模块的示意图,如图1a所示,在NetEQ模块中,又被大致分为微控单元(Micro Control Unit,MCU)模块和数字信号处理(Digital Signal Process,DSP)模块。MCU模块主要负责把从网络侧接收到的语音数据包经过解析后往抖动缓存区里插入,以及从抖动缓存区里提取语音数据包给DSP模块做解码以及信号处理等,同时MCU模块还根据网络延时和抖动缓存延时以及其他因素确定给DSP模块发送的信号处理命令。其中,主要的信号处理命令包括正常播放、加速播放、减速播放、丢包补偿以及融合处理。DSP模块主要负责对语音数据包进行解码,以及按照上述信号处理命令对语音信号处理,将处理结果放在算法缓存区中,最后将算法缓存区中的数据放进语音播放缓存区,以等待取走播放。
然而,由于抖动缓存区的大小有限,容易造成大量的语音数据包堆积在抖动缓存区,从而引起数据丢失,语音播放出现延迟的情形。为了解决这个技术问题,通常采用波形相似重叠相加算法(Waveform Similarity Overlap-Add,WSOLA)实现对语音进行加速。WSOLA算法采用的是分解合成的思想,首先将原始语音信号以帧间距L,帧长N进行分帧,然后以帧间距αL进行合成,以实现对语音信号加速,其中,α为时长调整因子。
但是,WSOLA算法中对语音信号进行合成时,时长调整因子为固定的预设值,对于语音数据包较大的情形,无法有效改善因语音数据包堆积引起的语音丢包和播放延时的问题。
发明内容
本发明实施例提供一种语音信号加速方法、装置、计算机设备及存储介质,可以有效改善因语音数据包堆积引起的语音丢包和播放延时的问题。
第一方面,本发明实施例提供了一种语音信号加速方法,应用于丢包补偿模块NetEQ中,所述方法包括:
获取当前语音数据包中未播放的样本点总数;
根据所述当前语音数据包的样本点总数,以及所述未播放的样本点总数,计算加速因子;
获取与所述当前语音数据包对应的解码信号,利用预设的加速算法,以及所述加速因子,对所述解码信号进行加速处理。
第二方面,本发明实施例还提供了一种语音信号加速装置,该装置应用于丢包补偿模块NetEQ中,包括:
未播放的样本点总数获取模块,用于获取当前语音数据包中未播放的样本点总数;
加速因子计算模块,用于根据所述当前语音数据包的样本点总数,以及所述未播放的样本点总数,计算加速因子;
加速处理模块,用于获取与所述当前语音数据包对应的解码信号,利用预设的加速算法,以及所述加速因子,对所述解码信号进行加速处理。
第三方面,本发明实施例还提供了一种计算机设备,该计算机设备包括:
一个或多个处理器;
存储装置,用于存储一个或多个程序;
当所述一个或多个程序被所述一个或多个处理器执行,使得所述一个或多个处理器实现本发明任意实施例提供的一种语音信号加速方法。
第四方面,本发明实施例还提供了一种计算机可读存储介质,该存储介质上存储有计算机程序,该程序被处理器执行时实现本发明任意实施例提供的一种语音信号加速方法。
本发明实施例的技术方案通过获取当前语音数据包中未播放的样本点总数,然后根据所述当前语音数据包的样本点总数,以及所述未播放的样本点总数,计算加速因子,最后获取与所述当前语音数据包对应的解码信号,利用预设的加速算法,以及所述加速因子,对所述解码信号进行加速处理。本发明实施例的技术方案可以有效改善因语音数据包堆积引起的语音丢包和播放延时的问题,提高网络环境下通话过程中的语音质量。
附图说明
图1a是NetEQ模块的示意图;
图1b是本发明实施例一中的一种语音信号加速方法的流程图;
图2是本发明实施例二中的一种语音信号加速方法的流程图;
图3a是本发明实施例三中的一种语音信号加速方法的流程图;
图3b是本发明实施例三中的WSOLA算法的示意图;
图4是本发明实施例四中的一种语音信号加速装置的结构图;
图5是本发明实施例五中的一种计算机设备的结构示意图。
具体实施方式
下面结合附图和实施例对本发明作进一步的详细说明。可以理解的是,此处所描述的具体实施例仅仅用于解释本发明,而非对本发明的限定。另外还需要说明的是,为了便于描述,附图中仅示出了与本发明相关的部分而非全部结构。
实施例一
图1b为本发明实施例一提供的一种语音信号加速方法的流程图,本实施例可适用于对语音解码信号进行加速处理的情形,该方法可以由语音信号加速装置来执行,该装置可以由软件和/或硬件来实现,并一般可以集成在内置有NetEQ模块的计算机以及所有包含程序运行功能的智能设备(例如,终端设备或者服务器)中,具体包括如下步骤:
步骤110、获取当前语音数据包中未播放的样本点总数。
在本实施例中,NetEQ模块中集成了构建动态抖动缓存区和错误隐藏(丢包补偿)的算法,用于去除网络抖动和数据包丢失的负面影响。可选的,可以在NetEQ模块中获取当前语音数据包对应的未播放的样本点总数。
在一个具体的实施例中,可选的,可以获取当前语音数据包的样本点总数,和已经播放的样本点数,将所述样本点总数与所述已经播放的样本点数的差,作为所述未播放的样本点总数。
步骤120、根据所述当前语音数据包的样本点总数,以及所述未播放的样本点总数,计算加速因子。
在此步骤中,可选的,可以根据未播放的样本点总数与当前语音数据包的样本点总数的比值,以及预设的计算方式,计算加速因子。
其中,所述未播放的样本点总数越大,计算得到的加速因子越大。
步骤130、获取与所述当前语音数据包对应的解码信号,利用预设的加速算法,以及所述加速因子,对所述解码信号进行加速处理。
在此步骤中,如图1a所示,MCU模块将接收到的当前语音数据包经过解析后往抖动缓存区里插入,然后从抖动缓存区里提取语音样本点到语音解码器中,语音解码器通过对语音样本点进行解码,得到了所述解码信号。
在本实施例中,所述预设的加速算法可以包括重叠添加算法(Overlap-Add,OLA)以及WSOLA算法等,所述加速算法对解码信号进行加速处理时,通常采用分解合成的思想,即首先将解码信号以帧间距L,帧长N进行分帧,然后以帧间距αL进行合成,以实现对语音信号加速,其中,α为时长调整因子。
在本发明实施例的一个实施方式中,计算出加速因子后,可以将所述加速因子赋值给所述时长调整因子,通过所述预设的加速算法,以及所述时长调整因子,对所述解码信号进行加速处理。
由此,通过结合当前语音数据包中未播放的样本点总数,动态调整加速算法中的时长调整因子,可以实时地根据当前网络延迟抖动的情况,动态调整加速比例,改善因语音数据包堆积引起的语音丢包和播放延时的问题,提高了网络环境下通话过程中的语音质量。
本发明实施例的技术方案通过获取当前语音数据包中未播放的样本点总数,然后根据所述当前语音数据包的样本点总数,以及所述未播放的样本点总数,计算加速因子,最后获取与所述当前语音数据包对应的解码信号,利用预设的加速算法,以及所述加速因子,对所述解码信号进行加速处理。本发明实施例的技术方案可以有效改善因语音数据包堆积引起的语音丢包和播放延时的问题,提高网络环境下通话过程中的语音质量。
实施例二
本实施例是对上述实施例一的进一步细化,与上述实施例相同或相应的术语解释,本实施例不再赘述。图2为本发明实施例二提供的一种语音信号加速方法的流程图,在本实施例中,本实施例的技术方案可以与上述实施例的方案中的一种或者多种方法进行组合,在本实施例中,如图2所示,本发明实施例提供的方法还可以包括:
步骤210、从抖动缓存区中获取当前语音数据包对应的第一未播放的样本点数。
在此步骤中,如图1a所示,可以在NetEQ模块中的抖动缓存区中获取剩余样本点数,将此剩余样本点数作为第一未播放的样本点数。
步骤220、从语音播放缓存区中获取当前语音数据包对应的第二未播放的样本点数。
在此步骤中,如图1a所示,可以在NetEQ模块中的语音播放缓存区中获取待播放的样本点数,将此待播放的样本点数作为第二未播放的样本点数。
步骤230、将所述第一未播放的样本点数与所述第二未播放的样本点数的和作为所述未播放的样本点总数。
由此,通过获取抖动缓存区中的剩余样本点数,以及语音播放缓存区中的待播放的样本点数,确定未播放的样本点总数,可以保证未播放的样本点总数获取结果的准确性,提高了后续过程中加速因子计算结果的有效性。
步骤240、获取预设的第一加速参数,以及预设的第二加速参数。
在本实施例中,所述第一加速参数与第二加速参数,用于优化所述加速因子的计算结果,且第一加速参数与第二加速参数根据对历史语音数据包的加速仿真结果进行调整后得到。
步骤250、根据所述当前语音数据包的样本点总数、所述未播放的样本点总数、所述第一加速参数以及所述第二加速参数,计算加速因子。
在本发明实施例的一个实施方式中,可选的,根据所述当前语音数据包的样本点总数、所述未播放的样本点总数、所述第一加速参数以及所述第二加速参数,计算加速因子,包括:计算所述未播放的样本点总数与所述当前语音数据包的样本点总数的比值;计算所述比值与所述第一加速参数的乘积;将所述乘积与所述第二加速参数相加,得到所述加速因子。
在一个具体的实施例中,假设未播放的样本点总数为buffsize,当前语音数据包的样本点总数为packet_len,第一加速参数为λ1,第二加速参数为λ2,加速因子为speed_up_factor,则:
其中,λ1可以设为0.025,λ2可以设为1,具体数值以实际情况进行预设,本实施例对此并不进行限制。
步骤260、获取与所述当前语音数据包对应的解码信号,利用预设的加速算法,以及所述加速因子,对所述解码信号进行加速处理。
本发明实施例的技术方案通过获取第一未播放的样本点数和第二未播放的样本点数,确定未播放的样本点总数,然后获取第一加速参数与第二加速参数,并根据当前语音数据包的样本点总数、未播放的样本点总数、第一加速参数以及第二加速参数,计算加速因子,最后获取与当前语音数据包对应的解码信号,利用预设的加速算法,以及加速因子,对解码信号进行加速处理。本发明实施例的技术方案可以有效改善因语音数据包堆积引起的语音丢包和播放延时的问题,提高网络环境下通话过程中的语音质量。
实施例三
本实施例是对上述实施例二的进一步细化,与上述实施例相同或相应的术语解释,本实施例不再赘述。图3a为本发明实施例三提供的一种语音信号加速方法的流程图,在本实施例中,本实施例的技术方案可以与上述实施例的方案中的一种或者多种方法进行组合,在本实施例中,如图3a所示,本发明实施例提供的方法还可以包括:
步骤310、从抖动缓存区中获取第一未播放的样本点数。
步骤320、从语音播放缓存区中获取第二未播放的样本点数。
步骤330、将所述第一未播放的样本点数与所述第二未播放的样本点数的和作为所述未播放的样本点总数。
步骤340、获取预设的第一加速参数,以及预设的第二加速参数。
步骤350、根据所述当前语音数据包的样本点总数、所述未播放的样本点总数、所述第一加速参数以及所述第二加速参数,计算加速因子。
步骤360、获取波形相似重叠相加算法WSOLA中的时长调整因子,利用所述加速因子对所述时长调整因子进行修正,得到修正后的时长调整因子。
在此步骤中,可选的,可以将加速因子赋值给WSOLA算法中的时长调整因子α,也即,所述修正后的时长调整因子的值与所述加速因子的值相等。
步骤370、根据所述修正后的时长调整因子,以及所述WSOLA算法,对所述解码信号进行加速处理。
在本发明实施例的一个实施方式中,可选的,根据所述修正后的时长调整因子,以及所述WSOLA算法,对所述解码信号进行加速处理,包括:
步骤371、将所述解码信号以预设帧间距、预设帧长进行分帧,得到多个子信号帧;
在此步骤中,具体的,可以以帧间距L,帧长N将解码信号进行分帧,得到多个子信号帧。
步骤372、从所述多个子信号帧中获取一个子信号帧作为当前信号帧,从所述当前信号帧的预设邻域范围内获取与所述当前信号帧相似的子信号帧,作为目标信号帧;
在本实施例中,图3b是WSOLA算法的示意图,如图3b所示,假设解码信号为x(n),x(n)中的子信号帧(1)为当前信号帧,则可以在子信号帧(1)的预设邻域范围内获取与子信号帧(1)相似的子信号帧,作为目标信号帧。
其中,可选的,从当前信号帧的预设邻域范围内获取与当前信号帧相似的子信号帧,作为目标信号帧,包括:从当前信号帧的预设邻域范围内获取与当前信号帧相似的第一子信号帧;从第一子信号帧的预设邻域范围内获取与第一信号帧相似的第二子信号帧,将第二子信号帧作为目标信号帧。
在一个具体的实施例中,如图3b所示,假设x(n)中的子信号帧(1)为当前信号帧,则可以在子信号帧(1)的预设邻域范围[-Δmax,Δmax]内获取与子信号帧(1)相似的子信号帧,如图3b中的子信号帧(1’),并将子信号帧(1’)作为第一子信号帧;然后从子信号帧(1’)的预设邻域范围[-Δmax,Δmax]内获取与子信号帧(1’)相似的子信号帧,如图3b中的子信号帧(2),并将子信号帧(2)作为第二子信号帧,也即目标信号帧。
其中,具体的,可以根据解码信号对应的基因周期设定所述领域范围[-Δmax,Δmax]。例如,如果是女性发出的语音时,对应的基音周期主要集中在5ms左右,领域范围内应该至少包含一个基音周期,所以:
其中,fs为采样频率,fs=8000Hz,[-Δmax,Δmax]=[-40,40]。
在本实施例中,获取与当前信号帧相似的第一子信号帧时,可选的,可以首先从当前信号帧的预设邻域范围内,获取多个备选子信号帧,然后根据预设的相似性计算公式,计算当前信号帧与各备选子信号帧之间的互相关系数或者短时平均幅度差(AverageMagnitude Difference Function,AMDF)系数,根据计算结果选取相似性最大的备选子信号帧作为第一子信号帧。
步骤373、按照目标帧间距,将所述目标信号帧与所述当前信号帧进行合成;其中,所述目标帧间距等于所述预设帧间距与所述修正后的时长调整因子的乘积;
在此步骤中,如图3b所示,假设x(n)中的当前信号帧为子信号帧(1),目标信号帧为子信号帧(2),则可以按照目标帧间距αL,将子信号帧(1)与子信号帧(2)进行合成,得到合成后的信号y(n)。其中,y(n)中的子信号帧(a)与上述子信号帧(1)相同,子信号帧(b)与上述子信号帧(2)相同。
在对x(n)中的子信号帧(1)处理完成之后,返回执行步骤372,即将x(n)中的子信号帧(2)作为当前信号帧,在子信号帧(2)的预设邻域范围Δ内获取与子信号帧(2)相似的子信号帧,即子信号帧(2’),并继续执行上述步骤,直至确定完成对x(n)中全部子信号帧的处理。
本发明实施例的技术方案通过获取第一未播放的样本点数和第二未播放的样本点数,确定未播放的样本点总数,然后获取第一加速参数与第二加速参数,并根据当前语音数据包的样本点总数、未播放的样本点总数、第一加速参数以及第二加速参数,计算加速因子,然后获取WSOLA算法中的时长调整因子,利用加速因子对时长调整因子进行修正,最后根据修正后的时长调整因子,以及WSOLA算法,对解码信号进行加速处理。本发明实施例的技术方案可以有效改善因语音数据包堆积引起的语音丢包和播放延时的问题,提高网络环境下通话过程中的语音质量。
实施例四
图4为本发明实施例四提供的一种语音信号加速装置的结构图,该装置包括:未播放的样本点总数获取模块410、加速因子计算模块420和加速处理模块430。
其中,未播放的样本点总数获取模块410,用于获取当前语音数据包中未播放的样本点总数;
加速因子计算模块420,用于根据所述当前语音数据包的样本点总数,以及所述未播放的样本点总数,计算加速因子;
加速处理模块430,用于获取与所述当前语音数据包对应的解码信号,利用预设的加速算法,以及所述加速因子,对所述解码信号进行加速处理。
本发明实施例的技术方案通过获取当前语音数据包中未播放的样本点总数,然后根据所述当前语音数据包的样本点总数,以及所述未播放的样本点总数,计算加速因子,最后获取与所述当前语音数据包对应的解码信号,利用预设的加速算法,以及所述加速因子,对所述解码信号进行加速处理。本发明实施例的技术方案可以有效改善因语音数据包堆积引起的语音丢包和播放延时的问题,提高网络环境下通话过程中的语音质量。
在上述各实施例的基础上,未播放的样本点总数获取模块410,可以包括:
第一未播放的样本点数获取单元,用于从抖动缓存区中获取当前语音数据包对应的第一未播放的样本点数;
第二未播放的样本点数获取单元,用于从语音播放缓存区中获取当前语音数据包对应的第二未播放的样本点数;
未播放的样本点总数确定单元,用于将所述第一未播放的样本点数与所述第二未播放的样本点数的和作为所述未播放的样本点总数。
加速因子计算模块420,可以包括:
加速参数获取单元,用于获取预设的第一加速参数,以及预设的第二加速参数;
计算单元,用于根据所述当前语音数据包的样本点总数、所述未播放的样本点总数、所述第一加速参数以及所述第二加速参数,计算加速因子;
比值计算单元,用于计算所述未播放的样本点总数与所述当前语音数据包的样本点总数的比值;
乘积计算单元,用于计算所述比值与所述第一加速参数的乘积;
相加单元,用于将所述乘积与所述第二加速参数相加,得到所述加速因子。
加速处理模块430,可以包括:
修正单元,用于获取波形相似重叠相加算法WSOLA中的时长调整因子,利用所述加速因子对所述时长调整因子进行修正,得到修正后的时长调整因子;
处理单元,用于根据所述修正后的时长调整因子,以及所述WSOLA算法,对所述解码信号进行加速处理;
子信号帧确定单元,用于将所述解码信号以预设帧间距、预设帧长进行分帧,得到多个子信号帧;
当前信号帧确定单元,用于从所述多个子信号帧中获取一个子信号帧作为当前信号帧,从所述当前信号帧的预设邻域范围内获取与所述当前信号帧相似的子信号帧,作为目标信号帧;
合成单元,用于按照目标帧间距,将所述目标信号帧与所述当前信号帧进行合成;其中,所述目标帧间距等于所述预设帧间距与所述修正后的时长调整因子的乘积;
返回处理单元,用于返回执行从所述多个子信号帧中获取一个子信号帧作为当前信号帧的操作,直至确定完成对全部子信号帧的处理;
第一子信号帧获取单元,用于从所述当前信号帧的预设邻域范围内获取与所述当前信号帧相似的第一子信号帧;
第二子信号帧获取单元,用于从所述第一子信号帧的预设邻域范围内获取与所述第一信号帧相似的第二子信号帧,将所述第二子信号帧作为所述目标信号帧。
本发明实施例所提供的语音信号加速装置可执行本发明任意实施例所提供的语音信号加速方法,具备执行方法相应的功能模块和有益效果。
实施例五
图5为本发明实施例五提供的一种计算机设备的结构示意图,如图5所示,该计算机设备包括处理器510、存储器520、输入装置530和输出装置540;计算机设备中处理器510的数量可以是一个或多个,图5中以一个处理器510为例;计算机设备中的处理器510、存储器520、输入装置530和输出装置540可以通过总线或其他方式连接,图5中以通过总线连接为例。存储器520作为一种计算机可读存储介质,可用于存储软件程序、计算机可执行程序以及模块,如本发明任意实施例中的一种语音信号加速方法对应的程序指令/模块(例如,一种语音信号加速装置中的未播放的样本点总数获取模块410、加速因子计算模块420和加速处理模块430)。处理器510通过运行存储在存储器520中的软件程序、指令以及模块,从而执行计算机设备的各种功能应用以及数据处理,即实现上述的一种语音信号加速方法。也即,该程序被处理器执行时实现:
获取当前语音数据包中未播放的样本点总数;
根据所述当前语音数据包的样本点总数,以及所述未播放的样本点总数,计算加速因子;
获取与所述当前语音数据包对应的解码信号,利用预设的加速算法,以及所述加速因子,对所述解码信号进行加速处理。
存储器520可主要包括存储程序区和存储数据区,其中,存储程序区可存储操作系统、至少一个功能所需的应用程序;存储数据区可存储根据终端的使用所创建的数据等。此外,存储器520可以包括高速随机存取存储器,还可以包括非易失性存储器,例如至少一个磁盘存储器件、闪存器件、或其他非易失性固态存储器件。在一些实例中,存储器520可进一步包括相对于处理器510远程设置的存储器,这些远程存储器可以通过网络连接至计算机设备。上述网络的实例包括但不限于互联网、企业内部网、局域网、移动通信网及其组合。输入装置530可用于接收输入的数字或字符信息,以及产生与计算机设备的用户设置以及功能控制有关的键信号输入,可以包括键盘和鼠标等。输出装置540可包括显示屏等显示设备。
实施例六
本发明实施例六还提供一种计算机可读存储介质,其上存储有计算机程序,该程序被处理器执行时实现本发明任意实施例所述方法。当然,本发明实施例所提供的一种计算机可读存储介质,其可以执行本发明任意实施例所提供的一种语音信号加速方法中的相关操作。也即,该程序被处理器执行时实现:
获取当前语音数据包中未播放的样本点总数;
根据所述当前语音数据包的样本点总数,以及所述未播放的样本点总数,计算加速因子;
获取与所述当前语音数据包对应的解码信号,利用预设的加速算法,以及所述加速因子,对所述解码信号进行加速处理。
通过以上关于实施方式的描述,所属领域的技术人员可以清楚地了解到,本发明可借助软件及必需的通用硬件来实现,当然也可以通过硬件实现,但很多情况下前者是更佳的实施方式。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品可以存储在计算机可读存储介质中,如计算机的软盘、只读存储器(Read-Only Memory,ROM)、随机存取存储器(RandomAccess Memory,RAM)、闪存(FLASH)、硬盘或光盘等,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本发明各个实施例所述的方法。
值得注意的是,上述一种测试异常的定位装置的实施例中,所包括的各个单元和模块只是按照功能逻辑进行划分的,但并不局限于上述的划分,只要能够实现相应的功能即可;另外,各功能单元的具体名称也只是为了便于相互区分,并不用于限制本发明的保护范围。
注意,上述仅为本发明的较佳实施例及所运用技术原理。本领域技术人员会理解,本发明不限于这里所述的特定实施例,对本领域技术人员来说能够进行各种明显的变化、重新调整和替代而不会脱离本发明的保护范围。因此,虽然通过以上实施例对本发明进行了较为详细的说明,但是本发明不仅仅限于以上实施例,在不脱离本发明构思的情况下,还可以包括更多其他等效实施例,而本发明的范围由所附的权利要求范围决定。
Claims (7)
1.一种语音信号加速方法,其特征在于,所述方法应用于丢包补偿模块NetEQ,所述方法包括:
获取当前语音数据包中未播放的样本点总数;
根据所述当前语音数据包的样本点总数,以及所述未播放的样本点总数,计算加速因子;所述加速因子随所述未播放的样本点总数变化而变化;
获取与所述当前语音数据包对应的解码信号,利用预设的加速算法,以及所述加速因子,对所述解码信号进行加速处理;
获取与所述当前语音数据包对应的解码信号,包括:MCU模块将接收到的所述当前语音数据包经过解析后插入抖动缓存区,从所述抖动缓存区里提取语音样本点至语音解码器,所述语音解码器通过对所述语音样本点进行解码,得到所述解码信号;
根据所述当前语音数据包的样本点总数,以及所述未播放的样本点总数,计算加速因子,包括:
获取预设的第一加速参数,以及预设的第二加速参数;
根据所述当前语音数据包的样本点总数、所述未播放的样本点总数、所述第一加速参数以及所述第二加速参数,计算加速因子;
根据所述当前语音数据包的样本点总数、所述未播放的样本点总数、所述第一加速参数以及所述第二加速参数,计算加速因子,包括:
计算所述未播放的样本点总数与所述当前语音数据包的样本点总数的比值;
计算所述比值与所述第一加速参数的乘积;
将所述乘积与所述第二加速参数相加,得到所述加速因子;
获取与所述当前语音数据包对应的解码信号,利用预设的加速算法,以及所述加速因子,对所述解码信号进行加速处理,包括:
获取波形相似重叠相加算法WSOLA中的时长调整因子,利用所述加速因子对所述时长调整因子进行修正,得到修正后的时长调整因子;
根据所述修正后的时长调整因子,以及所述WSOLA算法,对所述解码信号进行加速处理。
2.根据权利要求1所述的方法,其特征在于,获取当前语音数据包中未播放的样本点总数,包括:
从抖动缓存区中获取当前语音数据包对应的第一未播放的样本点数;
从语音播放缓存区中获取当前语音数据包对应的第二未播放的样本点数;
将所述第一未播放的样本点数与所述第二未播放的样本点数的和作为所述未播放的样本点总数。
3.根据权利要求1所述的方法,其中,根据所述修正后的时长调整因子,以及所述WSOLA算法,对所述解码信号进行加速处理,包括:
将所述解码信号以预设帧间距、预设帧长进行分帧,得到多个子信号帧;
从所述多个子信号帧中获取一个子信号帧作为当前信号帧,从所述当前信号帧的预设邻域范围内获取与所述当前信号帧相似的子信号帧,作为目标信号帧;
按照目标帧间距,将所述目标信号帧与所述当前信号帧进行合成;其中,所述目标帧间距等于所述预设帧间距与所述修正后的时长调整因子的乘积;
返回执行从所述多个子信号帧中获取一个子信号帧作为当前信号帧的操作,直至确定完成对全部子信号帧的处理。
4.根据权利要求3所述的方法,其特征在于,从所述当前信号帧的预设邻域范围内获取与所述当前信号帧相似的子信号帧,作为目标信号帧,包括:
从所述当前信号帧的预设邻域范围内获取与所述当前信号帧相似的第一子信号帧;
从所述第一子信号帧的预设邻域范围内获取与所述第一子信号帧相似的第二子信号帧,将所述第二子信号帧作为所述目标信号帧。
5.一种语音信号加速装置,其特征在于,所述装置应用于丢包补偿模块NetEQ,所述装置包括:
未播放的样本点总数获取模块,用于获取当前语音数据包中未播放的样本点总数;
加速因子计算模块,用于根据所述当前语音数据包的样本点总数,以及所述未播放的样本点总数,计算加速因子;所述加速因子随所述未播放的样本点总数变化而变化;
加速处理模块,用于获取与所述当前语音数据包对应的解码信号,利用预设的加速算法,以及所述加速因子,对所述解码信号进行加速处理;
获取与所述当前语音数据包对应的解码信号,包括:MCU模块将接收到的所述当前语音数据包经过解析后插入抖动缓存区,从所述抖动缓存区里提取语音样本点至语音解码器,所述语音解码器通过对所述语音样本点进行解码,得到所述解码信号;
加速因子计算模块,包括:
加速参数获取单元,用于获取预设的第一加速参数,以及预设的第二加速参数;
计算单元,用于根据所述当前语音数据包的样本点总数、所述未播放的样本点总数、所述第一加速参数以及所述第二加速参数,计算加速因子;
比值计算单元,用于计算所述未播放的样本点总数与所述当前语音数据包的样本点总数的比值;
乘积计算单元,用于计算所述比值与所述第一加速参数的乘积;
相加单元,用于将所述乘积与所述第二加速参数相加,得到所述加速因子;
加速处理模块,包括:
修正单元,用于获取波形相似重叠相加算法WSOLA中的时长调整因子,利用所述加速因子对所述时长调整因子进行修正,得到修正后的时长调整因子;
处理单元,用于根据所述修正后的时长调整因子,以及所述WSOLA算法,对所述解码信号进行加速处理。
6.一种计算机设备,包括:
一个或多个处理器;
存储装置,用于存储一个或多个程序;
当所述一个或多个程序被所述一个或多个处理器执行,使得所述一个或多个处理器执行所述程序时实现如权利要求1-4中任一所述的语音信号加速方法。
7.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,该程序被处理器执行时实现如权利要求1-4中任一所述的语音信号加速方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202011157621.2A CN112398912B (zh) | 2020-10-26 | 2020-10-26 | 一种语音信号加速方法、装置、计算机设备及存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202011157621.2A CN112398912B (zh) | 2020-10-26 | 2020-10-26 | 一种语音信号加速方法、装置、计算机设备及存储介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN112398912A CN112398912A (zh) | 2021-02-23 |
CN112398912B true CN112398912B (zh) | 2024-02-27 |
Family
ID=74596185
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202011157621.2A Active CN112398912B (zh) | 2020-10-26 | 2020-10-26 | 一种语音信号加速方法、装置、计算机设备及存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN112398912B (zh) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113286110A (zh) * | 2021-05-19 | 2021-08-20 | Oppo广东移动通信有限公司 | 视频通话方法、装置、电子设备以及存储介质 |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2017124904A1 (zh) * | 2016-01-22 | 2017-07-27 | 广州视睿电子科技有限公司 | 一种音频播放方法及装置 |
CN109379168A (zh) * | 2018-11-23 | 2019-02-22 | 竞技世界(北京)网络技术有限公司 | 一种用于前端实时语音聊天的语音平滑播放方法 |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107193841B (zh) * | 2016-03-15 | 2022-07-26 | 北京三星通信技术研究有限公司 | 媒体文件加速播放、传输及存储的方法和装置 |
-
2020
- 2020-10-26 CN CN202011157621.2A patent/CN112398912B/zh active Active
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2017124904A1 (zh) * | 2016-01-22 | 2017-07-27 | 广州视睿电子科技有限公司 | 一种音频播放方法及装置 |
CN109379168A (zh) * | 2018-11-23 | 2019-02-22 | 竞技世界(北京)网络技术有限公司 | 一种用于前端实时语音聊天的语音平滑播放方法 |
Also Published As
Publication number | Publication date |
---|---|
CN112398912A (zh) | 2021-02-23 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
WO2021042870A1 (zh) | 语音处理的方法、装置、电子设备及计算机可读存储介质 | |
CN106653056B (zh) | 基于lstm循环神经网络的基频提取模型及训练方法 | |
CN109065067A (zh) | 一种基于神经网络模型的会议终端语音降噪方法 | |
US20220270638A1 (en) | Method and apparatus for processing live stream audio, and electronic device and storage medium | |
JP6587742B2 (ja) | サウンド混合処理方法および装置、装置、並びに記憶媒体 | |
CN111383646B (zh) | 一种语音信号变换方法、装置、设备和存储介质 | |
CN111508498A (zh) | 对话式语音识别方法、系统、电子设备和存储介质 | |
MX2007015446A (es) | Mejora de lenguaje multi-sensorial utilizando un modelo de estado de lenguaje. | |
US10839820B2 (en) | Voice processing method, apparatus, device and storage medium | |
CN103514882A (zh) | 一种语音识别方法及系统 | |
CN111739544A (zh) | 语音处理方法、装置、电子设备及存储介质 | |
CN111883154B (zh) | 回声消除方法及装置、计算机可读的存储介质、电子装置 | |
CN112398912B (zh) | 一种语音信号加速方法、装置、计算机设备及存储介质 | |
CN114596870A (zh) | 实时音频处理方法和装置、计算机存储介质、电子设备 | |
CN113160846B (zh) | 噪声抑制方法和电子设备 | |
WO2024017110A1 (zh) | 语音降噪方法、模型训练方法、装置、设备、介质及产品 | |
CN113921023A (zh) | 一种蓝牙音频啸叫抑制方法、装置、介质及蓝牙设备 | |
CN113782043A (zh) | 语音采集方法、装置、电子设备及计算机可读存储介质 | |
CN104934040B (zh) | 音频信号的时长调整方法和装置 | |
CN115101088A (zh) | 音频信号恢复方法、装置、电子设备及介质 | |
CN110838307B (zh) | 语音消息处理方法及装置 | |
Zhu | [Retracted] Multimedia Recognition of Piano Music Based on the Hidden Markov Model | |
JP2010026323A (ja) | 話速検出装置 | |
CN114220451A (zh) | 音频消噪方法、电子设备和存储介质 | |
CN112201229B (zh) | 一种语音处理方法、装置及系统 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |