CN1184615C - 准周期性波形的语音压缩方法 - Google Patents
准周期性波形的语音压缩方法 Download PDFInfo
- Publication number
- CN1184615C CN1184615C CNB011307587A CN01130758A CN1184615C CN 1184615 C CN1184615 C CN 1184615C CN B011307587 A CNB011307587 A CN B011307587A CN 01130758 A CN01130758 A CN 01130758A CN 1184615 C CN1184615 C CN 1184615C
- Authority
- CN
- China
- Prior art keywords
- cycle
- voice
- quasi
- data
- byte
- 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.)
- Expired - Fee Related
Links
Images
Landscapes
- Compression, Expansion, Code Conversion, And Decoders (AREA)
Abstract
一种准周期性波形的语音压缩方法,是在一准周期性语音波形中取一个代表周期,其他的周期则用复制(Duplicate)的方式产生,只记录振幅的变化及微小的周期变动,以达到压缩的目的。并可在Z80微处理器上做即时解压缩,只需简单的模拟至数字转换器(DAC)即可播放,不需数字信号处理器(DSP)及语音合成器(Speech Synthesizer),非常有利于中低档真人发音产品的应用。
Description
技术领域
本发明为一种语音压缩方法,特别是指一种准周期性波形的语音压缩方法。
背景技术
语音压缩是将声音讯号以最少的数字数据来代表原始信号。而数据的多寡决定了还原后的品质。如语音波形编码中的自适应增量脉冲编码调制(Adaptive Delta Pulse Code Modulation;ADPCM)的编码方式,以使重建的信号与原始信号波形愈像愈好,从数学的观点而言,是采用最小均方误差的准则(Minimum Mean Square Error Criterion),但比特率小于24kbps(Kilo Bit Per Second)的ADPCM方法,不是声音品质变差,就是运算量变大。如语音参数编码中的线性预测编码(Linear Prediction Coding;LPC),是基于语音发声模型,而估计信号的声道滤波器(Vocal TractFilter)参数及基本周期(Pitch)达到压缩的目的,可达到非常低的比特率(Low Bit Rate),但运算量相对提高了。在信号频宽不变的情形下,若欲传送更多数据时,压缩的比率就要更高,想要达到高品质低运算量及比特率小于24kbps的目的,以ADPCM及LPC方式都不易达成。
语音压缩是语音信号处理中一项非常重要的技术,几乎只要有语音的地方,都会使用到语音压缩技术,然而,以电子辞典为例,标榜以真人发音的功能,已成为电子辞典主要诉求的特色。为了提升中低档电子辞典在市场的竞争力,节省语音数据存储器并提高声音品质,一种只需简单的模拟至数字转换器(D/A Converter)即可实现即时解压缩及播放的语音压缩技术,遂成为一被关注的议题。
发明内容
本发明主要提出一种准周期性波形的语音压缩方法,其原理是依据语音信号在很短的时间内约(20-25ms)其信号频谱变化不大,若视为固定不变的(stationary),那么在这段语音中包含了数个准周期性语音波形,这些波形可只取一个代表周期,其他周期则用复制(Duplicate)的方式产生,只记录振幅的变化及微小的周期变动,以达到压缩的目的,若相邻的周期变化越小则压缩的品质越好;若复制的周期数越多则压缩比特率(Bit-Rate)越低。
本发明的语音压缩方法,为非固定(not constant;varying)压缩比特率(Bit Rate/Sec;bps),其平均比特率视所需的压缩品质而定,对不同的语音可设定不同的压缩参数,可达到低于12kbps,记忆容量约为原音(8k Hz Sampling Rate,16bit,mono;128kbps)的1/10,并维持平均信号信噪比(Signal-to-Noise Ratio;SNR)约7-10dB以上,且其解压缩的运算量极低,目前已经以Z80程序处理撰写,并已实验证明可成功的在Z80微处理器上做即时解压缩,只需简单的D/A转换器即可播放,不需数字信号处理器(DSP)及语音合成器(Speech Synthesizer)。非常有利于中低档真人发音产品的应用。
本发明提供一种准周期性波形的语音压缩方法,该方法至少包含下列步骤:
提供一语音(x),并取一段该语音的音框(x’)(音框:frame,取样的声波信号);
计算该音框的周期,决定复制周期数(Duplicate);
从该周期中找出一代表周期,并计算该代表周期的供复制的数据长度L、供复制的数据Data与振幅AMPmax;
计算每个该周期的振幅AmpD与该周期的变动量ShiftD;及
依据一编码比特配置表进行参数编码,其中该周期的编码是以复制该代表周期的方式产生,依据该代表周期的该供复制的数据长度、该供复制的数据与该复制周期数进行编码,并记录每个该周期的该振幅与该变动量,最后填入FFH当作结束码。
所述的准周期性波形的频谱变化为固定不变。
所述的该音框约20-25ms。
所述的代表周期是利用一绝对振幅差异函数(Absolute MagnitudeDifference Function;AMDF)计算出。
所述的计算每个该周期的该振幅与该变动量的步骤至少包含下列步骤:
(a)令D=D+1,其中D为复制份数;
(b)令xp’=x(Ms:Ms+L-1),其中xp为代表的周期,xp’为代表的周期的音框;
(c)找出xp’的振幅AmpD;
(d)令xp’=xp’×AMPmax/AmpD,找出周期的变动量ShiftD及DistD(步骤150),其中:DistD为D误差值,
shift~=-P/4~P/4,其中P为代表的周期长度;
(e)计算已编码语音长度Ms=Ms+L+ShjftD;
(f)如果D<D_min,回到步骤(a),其中D_min为D的最小值,即复制份数的最小值;
(g)回到步骤(a)直到DistD大于Dist Thrd为止,其中Dist Thrd为误差边界值。
所述的编码比特配置表如下所示:
1.若D>0,D≠FFH:
D | L | Data | Amp 1 | Shift 1 | … | AmpD | ShiftD |
1 Byte | 1 Byte | L Bytes | 1 Byte | 1 Byte | … | 1 Byte | 1 Byte |
其中:
D(Duplicate):复制份数
L:供复制的数据长度
Data:供复制的数据
Amp 1:第一份复制周期振幅
Shft 1:第一份复制周期变动量
AmpD:第D份复制周期振幅
ShftD:第D份复制周期变动量
2.若D=0,表示这个音框的数据全部为零;
D | L |
1 Byte | 1 Byte |
L:零的个数
3.若D=FFH,表示语音编码结束。
D |
1 Byte |
所述的原语音数据每个Sample是16时,压缩率=数据长度/表长度=[LD+(shift1+…+shiftD)]×2/(2+L+2D)。
所述的原语音数据每个Sample是8时,压缩率=数据长度/表长度=[LD+(shiftl+…+shiftD)]/(2+L+2D)。
本发明如应用在语音合成的音素压缩上,可先把所有可共用的音素气音的部分移除。
本发明可以在低阶的Z80微处理器上做在线(on-line)即时(real-time)解压缩及播放。
本发明的有益效果为:本发明提出一种准周期性波形的语音压缩方法,是特别针对有声语音信号做处理,首先,在PC上离线(off-line)对有声语音信号做波形编码,利用有声语音波形准周期性(quasi-periodic)的特性,利用相邻周期的波形的相似度,将数个周期以同一波形周期取代并记录每个周期的振幅变化及周期变化,以此编码方式来达到压缩的目的。然后,可在低阶的微处理器(如:Z80微处理器)上做在线(on-line)即时(real-time)解压缩及播放,不需数字信号处理器(DSP)及语音合成器(Speech Synthesizer),非常有利于中低档真人发音产品的应用。
附图说明
图1为本发明的准周期性波形的语音编码流程图;
图2为本发明的准周期性波形的语音解码流程图;
图3为本发明的第一实施例的原语音与解压缩后的语音相比较波形图;及
图4为本发明的第二实施例的原语音与解压缩后的语音相比较波形图。
具体实施方式
本发明揭露一种准周期性波形的语音压缩方法,是在一准周期性语音波形中取一个周期代表,其他的周期则用复制(Duplicate)的方式产生,只记录振幅的变化及微小的周期变动,以达到压缩的目的。其中,图1为本发明的准周期性波形的语音编码流程图。
首先,输入语音x(步骤100),设定Duplicate最小值D_min(步骤102),设定误差边界值(Distortion Threshold)Dist Thrd(步骤104),令已编码语音长度Ms=0(步骤106),令Duplicate=0(步骤108),并自x(Ms)点起取一段约20-25ms的语音音框长度M(步骤110),再利用绝对振幅差异函数(Absolute Magnitude Difference Function;AMDF),找出代表的周期长度P(步骤120),其中:
k:为可能的周期范围,对8kHz取样的语音而言,通常为k=20,21…150;
M:为x’的语音长度。
接着找出代表的周期xP=x’(c1:c2)(步骤130),首先,找出x’的振幅AMPmax;接着在AMPmax位置前1/2-3/4周期间找出切点c1,并设定切点条件为x’(c1)>0且x’(c1-1)≤0;并在AMPmax位置后1/2-3/4周期间找出切点c2,并设定切点条件为x’(c2+1)>0且x’(c2)≤0。找出代表的周期xP=x’(c1:c2)(步骤130)后(长度为L=c2-c1+1),接着进行计算第D个周期的振幅AmpD(步骤140),与周期的变动量ShiftD及DistD(步骤150),其执行步骤为:
(a)令D=D+1;
(b)令xp’=x(Ms:Ms+L-1);
(c)找出xp’的振幅AmpD;
(d)令xp’=xp’×AMPmax/AmpD,找出周期的变动量ShiftD及DistD(步骤150),其中:
shift~=-P/4~P/4
(e)计算已编码语音长度Ms=Ms+L+ShiftD;
(f)如果D<D_min,回到步骤(a);
(g)回到步骤(a)直到DistD大于DistThrd为止。最后,依据编码比特配置表进行参数编码(步骤160),其中,每个语音音框(SpeechFrame)的编码比特配置表如表1所示:
1.若D>0,D≠FFH:
D | L | Data | Amp 1 | Shift 1 | … | AmpD | ShiftD |
1 Byte | 1 Byte | L Bytes | 1 Byte | 1 Byte | … | 1 Byte | 1 Byte |
表1
其中:
D(Duplicate):复制份数
L:供复制的数据长度
Data:供复制的数据
Amp 1:第一份复制周期振幅
Shift 1:第一份复制周期变动量
AmpD:第D份复制周期振幅
ShiftD:第D份复制周期变动量
若原数据每个Sample是16bits,则需先将16bits转为8bits,若最后解压缩发音不为8bits,则可用查表方式将8bits转为实际的bit数。
其中,若原数据每个取样点(Sample)是8bits,压缩率=数据长度/表长度=[LD+(shift1+…+shiftD)]/(2+L+2D)。其中,若原数据每个取样点(Sample)是16bits,压缩率=数据长度/表长度=[LD+(shift1+…+shiftD)]×2/(2+L+2D)。
以原音(8k Hz Sampling Rate,16bit,正常约为128kbps)为例,L=50,D=6,Shiftl~ShiftD=0:其压缩率=50*6*2/(2+50+12)=9.375倍~13.6533kbps。
2.若D=0,表示这个音框的数据全部为零。
D | L |
1 Byte | 1 Byte |
L:零的个数
3.若D=FFH,表示语音编码结束。
D |
1 Byte |
因此,本发明的语音压缩方法是依据编码比特配置表,填入复制份数(Duplicate)、L=xP长度、Data=xp、AmpD、ShiftD,最后填入FFH当作结束码,完成语音压缩的编码程序。
图2为本发明的准周期性波形的语音解码流程图,首先输入语音压缩码xc(步骤200);再读取复制周期(Duplicate)(步骤210);接着判断Duplicate=FFH?(步骤220);如果Duplicate=FFH,则表示结束,否则进行读取长度L(步骤230);再进行判断Duplicate=0H?(步骤240),如果Duplicate=0H,则读取下一个Byte=L,并产生语音L个0(步骤245),否则进行读取长度L的语音(步骤250)。当Duplicate>0时,进行读下一个Byte=L,并读L个Byte=xP(n),n=0,1,…,L-1(步骤250),接着读取振幅AmpD(步骤260),以及读取ShiftD(步骤270),其中,长度L的语音乘以振幅AmpD后,再通过一延迟(步骤280)位移ShiftD个取样点(Samples),此ShiftD可以是大于等于或小于零,若大于零则长度L的语音向后位移,并在位移处补零;若小于零则长度L的语音向前位移,并截掉与前语音重叠处,最后合成语音长度L+ShiftD(步骤290),若以数学式表示,则
xs(n)=xP(n+ShiftD)×AmpD,
n=-ShiftD,…,0,1,…,L-1,
令Duplicate=Duplicate-1((步骤292),并再加以判断Duplicate=0H?(步骤295),如果是,则回到步骤210,否则,继续执行步骤260,并直到Duplicate=FFH为止。
现以二实施例说明本发明的准周期性波形的语音压缩方法的实例验证。
以一语音[a]为例(8k Hz Sampling Rate,16bits,mono长度411ms):
本发明的第一实施例设定Dist Thrd=0.1;限定D_min=6,解压缩后后SNR~=10dB,Bit-Rate~=13.25kbps,图3表其原语音与解压缩后的语音相较波形图,其中,以前500个取样点为例,1代表原语音,2代表解压缩后的语音,可看出1与2重合的周期,即为代表的周期(用来复制的周期)。
本发明的第二实施例设定Dist Thrd=0.5;限定D_min=6,解压缩后SNR~=7dB,Bit-Rate~=6.4kbps,图4为其原语音与解压缩后的语音相较波形图,其中,以前500个取样点为例,1代表原语音,2代表解压缩后的语音,可看出1与2重合的周期,即是代表的周期(用来复制的周期)。
本压缩法已成功的应用在语音合成的音素压缩上,可先把所有的音素气音的部份移除(例如:fa、fe、fai中f的气音),因为他们的气音部份是可共用的,因此不需压缩,且其所占空间甚小。把有声语音的部份编码后,约可压缩原音7~10倍左右,Bit-Rate约为15kbps。可把原本约70MBytes的音素文件,压成约7~10Mbytes,音质保持在SNR 7-20dB以上。
Claims (10)
1.一种准周期性波形的语音压缩方法,该方法至少包含下列步骤:
提供一语音x,并取一段该语音的音框x’;
计算该音框的周期,决定复制周期数;
从该周期中找出一代表周期,并计算该代表周期的供复制的数据长度L、供复制的数据与振幅AMPmax;
计算每个该周期的振幅AmpD与该周期的变动量ShiftD;及
依据一编码比特配置表进行参数编码,其中该周期的编码是以复制该代表周期的方式产生,依据该代表周期的该供复制的数据长度、该供复制的数据与该复制周期数进行编码,并记录每个该周期的该振幅与该变动量,最后填入FFH当作结束码。
2.如权利要求1所述的准周期性波形的语音压缩方法,其特征在于所述的准周期性波形的频谱变化为固定不变。
3.如权利要求1所述的准周期性波形的语音压缩方法,其特征在于所述的该音框为20-25ms。
4.如权利要求1所述的准周期性波形的语音压缩方法,其特征在于所述的代表周期是利用一绝对振幅差异函数计算出。
5.如权利要求1所述的准周期性波形的语音压缩方法,其特征在于计算每个该周期的该振幅与该变动量的步骤至少包含下列步骤:
(a)令D=D+1,其中D为复制份数;
(b)令xp’=x(Ms:Ms+L-1),其中xp为代表的周期,xp’为代表的周期的音框;
(c)找出xp’的振幅AmpD;
(d)令xp’=xp’×AMPmax/AmpD,找出周期的变动量ShiftD及DistD,其中:DistD为D误差值,
shift~=-P/4~P/4,其中P为代表的周期长度;
(e)计算已编码语音长度Ms=Ms+L+ShiftD;
(f)如果D<D_min,回到步骤(a),其中D_min为D的最小值,即复制份数的最小值;
(g)回到步骤(a)直到DistD大于Dist Thrd为止,其中Dist Thrd为误差边界值。
6.如权利要求1所述的准周期性波形的语音压缩方法,其特征在于所述的编码比特配置表如下所示:
(1)若D>0,D≠FFH:
D
L
Data
Amp1
Shift1
…
AmpD
ShiftD
1 Byte
1 Byte
L Bytes
1 Byte
1 Byte
…
1 Byte
1 Byte
其中:
D:复制份数;
L:供复制的数据长度;
Data:供复制的数据;
Amp1:第一份复制周期振幅;
Shift1:第一份复制周期变动量;
AmpD:第D份复制周期振幅;
ShiftD:第D份复制周期变动量;
(2)若D=0,表示这个音框的数据全部为零:
D
L
1 Byte
1 Byte
L:零的个数;
(3)若D=FFH,表示语音编码结束。
D
1 Byte
7.如权利要求6所述的准周期性波形的语音压缩方法,其特征在于所述的原语音数据每个取样点是16比特时,压缩率=数据长度/表长度=[LD+(shift1+…+shiftD)]×2/(2+L+2D)。
8.如权利要求6所述的准周期性波形的语音压缩方法,其特征在于所述的原语音数据每个取样点是8比特时,压缩率=数据长度/表长度=[LD+(shift1+…+shiftD)]/(2+L+2D)。
9.如权利要求1所述的准周期性波形的语音压缩方法,其特征在于应用在语音合成的音素压缩上,先把所有可共用的音素气音的部分移除。
10.如权利要求1所述的准周期性波形的语音压缩方法,其特征在于还在低阶的Z80微处理器上做在线即时解压缩及播放。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CNB011307587A CN1184615C (zh) | 2001-08-23 | 2001-08-23 | 准周期性波形的语音压缩方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CNB011307587A CN1184615C (zh) | 2001-08-23 | 2001-08-23 | 准周期性波形的语音压缩方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN1404033A CN1404033A (zh) | 2003-03-19 |
CN1184615C true CN1184615C (zh) | 2005-01-12 |
Family
ID=4670121
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CNB011307587A Expired - Fee Related CN1184615C (zh) | 2001-08-23 | 2001-08-23 | 准周期性波形的语音压缩方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN1184615C (zh) |
Families Citing this family (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP4940888B2 (ja) * | 2006-10-23 | 2012-05-30 | ソニー株式会社 | オーディオ信号伸張圧縮装置及び方法 |
CN115695564B (zh) * | 2022-12-30 | 2023-03-10 | 深圳市润信数据技术有限公司 | 一种物联网数据的高效传输方法 |
-
2001
- 2001-08-23 CN CNB011307587A patent/CN1184615C/zh not_active Expired - Fee Related
Also Published As
Publication number | Publication date |
---|---|
CN1404033A (zh) | 2003-03-19 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN103258541B (zh) | 音频解码方法 | |
CN1154086C (zh) | Celp转发 | |
CN1272911C (zh) | 音频信号解码装置及音频信号编码装置 | |
CN1159691A (zh) | 用于声频信号线性预测分析的方法 | |
CN100350453C (zh) | 强壮语音分类方法和装置 | |
CN1266674C (zh) | 闭环多模混合域线性预测语音编解码器和处理帧的方法 | |
CN1302459C (zh) | 用于编码和解码非话音语音的方法和设备 | |
CN1271597C (zh) | 对声源信号进行编码/解码的方法和装置 | |
TW200532646A (en) | Classification of audio signals | |
CN101061535A (zh) | 用于人工扩展语音信号的带宽的方法和装置 | |
CN1922659A (zh) | 编码模式选择 | |
CN101044554A (zh) | 可扩展性编码装置、可扩展性解码装置以及可扩展性编码方法 | |
CN101055720A (zh) | 对音频信号编码和解码的方法和设备 | |
JPS5870300A (ja) | パラメ−タのコ−ド化法及び解析コ−ド化装置 | |
CN1161750C (zh) | 语音编码译码方法和装置、电话装置、音调变换方法和介质 | |
CN105359211A (zh) | 语音处理的清音/浊音判决 | |
CN1591574A (zh) | 使用基于谐波模型的前端用于健壮语音识别的方法和装置 | |
CN1173690A (zh) | 识别浊音/清音的方法和装置及其语音编码方法 | |
CN1145925C (zh) | 具有改进语音编码器和解码器的发射机 | |
CN1112674C (zh) | 用于语音有效编码的谱参数预测分解矩阵量化 | |
CN1293535C (zh) | 声音编码设备和方法以及声音解码设备和方法 | |
CN1184615C (zh) | 准周期性波形的语音压缩方法 | |
WO2004090864A2 (en) | Method and apparatus for the encoding and decoding of speech | |
CN1231050A (zh) | 具有改进谐波语音编码器的发射机 | |
CN1210688C (zh) | 语音音素的编码及语音合成方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C14 | Grant of patent or utility model | ||
GR01 | Patent grant | ||
C17 | Cessation of patent right | ||
CF01 | Termination of patent right due to non-payment of annual fee |
Granted publication date: 20050112 Termination date: 20110823 |