CN102203855B - 用于低位速率应用的译码方案选择 - Google Patents
用于低位速率应用的译码方案选择 Download PDFInfo
- Publication number
- CN102203855B CN102203855B CN2009801434768A CN200980143476A CN102203855B CN 102203855 B CN102203855 B CN 102203855B CN 2009801434768 A CN2009801434768 A CN 2009801434768A CN 200980143476 A CN200980143476 A CN 200980143476A CN 102203855 B CN102203855 B CN 102203855B
- Authority
- CN
- China
- Prior art keywords
- frame
- task
- value
- encoded
- tone pulses
- 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
- 238000000034 method Methods 0.000 claims abstract description 267
- 230000005284 excitation Effects 0.000 claims description 29
- 230000004044 response Effects 0.000 claims description 13
- 238000010586 diagram Methods 0.000 description 200
- 230000007704 transition Effects 0.000 description 114
- 239000013598 vector Substances 0.000 description 90
- 238000005086 pumping Methods 0.000 description 87
- 230000008569 process Effects 0.000 description 84
- 230000000875 corresponding effect Effects 0.000 description 61
- 230000001747 exhibiting effect Effects 0.000 description 36
- 239000004148 curcumin Substances 0.000 description 26
- 238000004891 communication Methods 0.000 description 24
- 238000012360 testing method Methods 0.000 description 22
- 239000004233 Indanthrene blue RS Substances 0.000 description 21
- 238000001514 detection method Methods 0.000 description 21
- 239000000284 extract Substances 0.000 description 20
- 239000004106 carminic acid Substances 0.000 description 18
- 239000004334 sorbic acid Substances 0.000 description 18
- 238000004364 calculation method Methods 0.000 description 17
- 238000001228 spectrum Methods 0.000 description 16
- 230000033228 biological regulation Effects 0.000 description 15
- 238000005070 sampling Methods 0.000 description 15
- 206010021703 Indifference Diseases 0.000 description 14
- 230000008859 change Effects 0.000 description 14
- 239000001752 chlorophylls and chlorophyllins Substances 0.000 description 14
- 239000002131 composite material Substances 0.000 description 14
- 239000000395 magnesium oxide Substances 0.000 description 14
- 238000013139 quantization Methods 0.000 description 14
- 239000004173 sunset yellow FCF Substances 0.000 description 14
- 230000002596 correlated effect Effects 0.000 description 13
- 239000004245 inosinic acid Substances 0.000 description 13
- 239000001733 1,4-Heptonolactone Substances 0.000 description 12
- 230000000737 periodic effect Effects 0.000 description 12
- 239000004255 Butylated hydroxyanisole Substances 0.000 description 11
- 238000005516 engineering process Methods 0.000 description 11
- 239000005711 Benzoic acid Substances 0.000 description 10
- 239000001825 Polyoxyethene (8) stearate Substances 0.000 description 10
- 230000008878 coupling Effects 0.000 description 10
- 238000010168 coupling process Methods 0.000 description 10
- 238000005859 coupling reaction Methods 0.000 description 10
- 238000001914 filtration Methods 0.000 description 10
- 239000004220 glutamic acid Substances 0.000 description 9
- 239000001814 pectin Substances 0.000 description 9
- 239000001394 sodium malate Substances 0.000 description 9
- 239000004291 sulphur dioxide Substances 0.000 description 9
- 238000004458 analytical method Methods 0.000 description 8
- 230000000694 effects Effects 0.000 description 8
- 238000010606 normalization Methods 0.000 description 8
- LWIHDJKSTIGBAC-UHFFFAOYSA-K potassium phosphate Substances [K+].[K+].[K+].[O-]P([O-])([O-])=O LWIHDJKSTIGBAC-UHFFFAOYSA-K 0.000 description 8
- 230000002123 temporal effect Effects 0.000 description 8
- 239000001177 diphosphate Substances 0.000 description 7
- 235000011180 diphosphates Nutrition 0.000 description 7
- 239000000711 locust bean gum Substances 0.000 description 7
- 239000000600 sorbitol Substances 0.000 description 7
- 239000004149 tartrazine Substances 0.000 description 7
- 230000009466 transformation Effects 0.000 description 7
- 239000004134 Dicalcium diphosphate Substances 0.000 description 6
- 239000001913 cellulose Substances 0.000 description 6
- 239000004247 glycine and its sodium salt Substances 0.000 description 6
- 239000004300 potassium benzoate Substances 0.000 description 6
- 239000000473 propyl gallate Substances 0.000 description 6
- 239000004246 zinc acetate Substances 0.000 description 6
- NLXLAEXVIDQMFP-UHFFFAOYSA-N Ammonium chloride Substances [NH4+].[Cl-] NLXLAEXVIDQMFP-UHFFFAOYSA-N 0.000 description 5
- 239000001836 Dioctyl sodium sulphosuccinate Substances 0.000 description 5
- 239000004111 Potassium silicate Substances 0.000 description 5
- 239000004115 Sodium Silicate Substances 0.000 description 5
- 239000001164 aluminium sulphate Substances 0.000 description 5
- 239000011668 ascorbic acid Substances 0.000 description 5
- KRKNYBCHXYNGOX-UHFFFAOYSA-N citric acid Substances OC(=O)CC(O)(C(O)=O)CC(O)=O KRKNYBCHXYNGOX-UHFFFAOYSA-N 0.000 description 5
- 238000013500 data storage Methods 0.000 description 5
- 238000000605 extraction Methods 0.000 description 5
- 239000000194 fatty acid Substances 0.000 description 5
- 206010038743 Restlessness Diseases 0.000 description 4
- 238000005311 autocorrelation function Methods 0.000 description 4
- 238000006243 chemical reaction Methods 0.000 description 4
- 239000001755 magnesium gluconate Substances 0.000 description 4
- 238000012545 processing Methods 0.000 description 4
- 238000011002 quantification Methods 0.000 description 4
- 230000000903 blocking effect Effects 0.000 description 3
- 230000001413 cellular effect Effects 0.000 description 3
- 238000006073 displacement reaction Methods 0.000 description 3
- 230000007774 longterm Effects 0.000 description 3
- 239000003550 marker Substances 0.000 description 3
- 239000004302 potassium sorbate Substances 0.000 description 3
- 239000004065 semiconductor Substances 0.000 description 3
- 238000004088 simulation Methods 0.000 description 3
- 230000003595 spectral effect Effects 0.000 description 3
- 238000012935 Averaging Methods 0.000 description 2
- -1 L200 Substances 0.000 description 2
- 101100522110 Oryza sativa subsp. japonica PHT1-10 gene Proteins 0.000 description 2
- 101100522109 Pinus taeda PT10 gene Proteins 0.000 description 2
- 125000002015 acyclic group Chemical group 0.000 description 2
- 238000009826 distribution Methods 0.000 description 2
- 239000004403 ethyl p-hydroxybenzoate Substances 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 230000003287 optical effect Effects 0.000 description 2
- 238000011112 process operation Methods 0.000 description 2
- 230000008929 regeneration Effects 0.000 description 2
- 238000011069 regeneration method Methods 0.000 description 2
- 238000003860 storage Methods 0.000 description 2
- 230000009471 action Effects 0.000 description 1
- 238000013459 approach Methods 0.000 description 1
- 230000008901 benefit Effects 0.000 description 1
- 238000004422 calculation algorithm Methods 0.000 description 1
- 230000006835 compression Effects 0.000 description 1
- 238000007906 compression Methods 0.000 description 1
- 238000004590 computer program Methods 0.000 description 1
- 238000010276 construction Methods 0.000 description 1
- 230000007423 decrease Effects 0.000 description 1
- 230000003247 decreasing effect Effects 0.000 description 1
- 238000013461 design Methods 0.000 description 1
- 238000011156 evaluation Methods 0.000 description 1
- 230000008676 import Effects 0.000 description 1
- 238000003780 insertion Methods 0.000 description 1
- 230000037431 insertion Effects 0.000 description 1
- 238000004519 manufacturing process Methods 0.000 description 1
- 230000008447 perception Effects 0.000 description 1
- 238000011084 recovery Methods 0.000 description 1
- 238000007430 reference method Methods 0.000 description 1
- 230000005236 sound signal Effects 0.000 description 1
- 230000003068 static effect Effects 0.000 description 1
- 239000000126 substance Substances 0.000 description 1
- 238000012546 transfer Methods 0.000 description 1
- 230000004304 visual acuity Effects 0.000 description 1
Images
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/22—Mode decision, i.e. based on audio signal content versus external parameters
-
- 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/08—Determination or coding of the excitation function; Determination or coding of the long-term prediction parameters
- G10L19/12—Determination or coding of the excitation function; Determination or coding of the long-term prediction parameters the excitation function being a code excitation, e.g. in code excited linear prediction [CELP] vocoders
-
- 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/08—Determination or coding of the excitation function; Determination or coding of the long-term prediction parameters
- G10L19/12—Determination or coding of the excitation function; Determination or coding of the long-term prediction parameters the excitation function being a code excitation, e.g. in code excited linear prediction [CELP] vocoders
- G10L19/125—Pitch excitation, e.g. pitch synchronous innovation CELP [PSI-CELP]
-
- 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
-
- 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
- G10L25/00—Speech or voice analysis techniques not restricted to a single one of groups G10L15/00 - G10L21/00
- G10L25/90—Pitch determination of speech signals
-
- 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/08—Determination or coding of the excitation function; Determination or coding of the long-term prediction parameters
- G10L19/097—Determination or coding of the excitation function; Determination or coding of the long-term prediction parameters using prototype waveform decomposition or prototype waveform interpolative [PWI] coders
Landscapes
- Engineering & Computer Science (AREA)
- Computational Linguistics (AREA)
- Signal Processing (AREA)
- Health & Medical Sciences (AREA)
- Audiology, Speech & Language Pathology (AREA)
- Human Computer Interaction (AREA)
- Physics & Mathematics (AREA)
- Acoustics & Sound (AREA)
- Multimedia (AREA)
- Compression, Expansion, Code Conversion, And Decoders (AREA)
Abstract
本发明揭示用于过渡语音帧的低位速率译码的系统、方法和设备。
Description
依据35U.S.C.§120主张优先权
本专利申请案是2008年10月30日申请的待决且转让给本受让人的题目为“用于低位速率应用的过渡语音帧的译码(CODING OF TRANSITIONAL SPEECH FRAMESFOR LOW-BIT-RATE APPLICATIONS)”的第12/261,518号专利申请案(代理人案号071323)的部分接续申请案,所述第12/261,815号专利申请案是2008年6月20日申请的题目为“用于低位速率应用的过渡语音帧的译码(CODING OF TRANSITIONALSPEECH FRAMES FOR LOW-BIT-RATE APPLICATIONS)”的第12/143,719号专利申请案(代理人案号071321)的部分接续申请案。
技术领域
本发明涉及语音信号的处理。
背景技术
通过数字技术来发射音频信号(例如,话音和音乐)尤其在长途电话、例如IP话音(也称为VoIP,其中IP表示因特网协议)等包交换式电话和例如蜂窝式电话等数字无线电电话中已变得普遍。此激增已产生对减小用以经由发射信道传送话音通信的信息量同时维持经重建的语音的感知质量的兴趣。举例来说,需要最佳地利用可用无线系统带宽。有效率地使用系统带宽的一种方式为使用信号压缩技术。对于载运语音信号的无线系统来说,出于此目的通常使用语音压缩(或“语音译码”)技术。
经配置以通过提取与人类语音产生模型有关的参数来压缩语音的装置通常称为声码器、“音频译码器”或“语音译码器”。(本文中可互换地使用这三个术语。)语音译码器通常包括编码器和解码器。编码器通常将传入的语音信号(表示音频信息的数字信号)划分成称为“帧”的时间段,分析每一帧以提取特定相关参数,且将所述参数量化成经编码的帧。经编码的帧经由发射信道(即,有线或无线网络连接)发射到包括解码器的接收器。解码器接收并处理经编码的帧、将其解量化以产生参数,且使用经解量化的参数来重新建立语音帧。
在典型的通话中,每一说话者在约百分之六十的时间内静寂。语音编码器通常经配置以区别语音信号的含有语音的帧(“活动帧”)与语音信号的仅含有静默或背景噪声的帧(“非活动帧”)。此编码器可经配置以使用不同译码模式和/或速率来编码活动帧与非活动帧。举例来说,语音编码器通常经配置以与编码活动帧相比使用较少位来编码非活动帧。语音译码器可将较低位速率用于非活动帧以支持在极少甚至无感知到的质量损失的情况下以较低平均位速率传送语音信号。
用以编码活动帧的位速率的实例包括每帧171个位、每帧80个位和每帧40个位。用以编码非活动帧的位速率的实例包括每帧16个位。在蜂窝式电话系统(尤其依照如由电信工业协会(弗吉尼亚州阿灵顿市;Arlington,VA)发布的临时标准(IS)-95或类似工业标准的系统)的情形下,这四个位速率还分别称作“全速率”、“半速率”、“四分之一速率”和“八分之一速率”。
发明内容
一种根据一个配置对语音信号帧进行编码的方法包括计算所述帧的残余的峰值能量,以及计算所述残余的平均能量。此方法包括基于所述所计算的峰值能量与所述所计算的平均能量之间的关系从(A)噪声激励译码方案和(B)无差别音调原型译码方案的集合选择一个译码方案,以及根据所述选定的译码方案对所述帧进行编码。在此方法中,根据所述无差别音调原型译码方案对所述帧进行编码包括产生经编码的帧,所述经编码的帧包括所述帧的音调脉冲的时域形状、所述帧的音调脉冲的位置和所述帧的所估计的音调周期的表示。
一种根据另一配置对语音信号帧进行编码的方法包括估计所述帧的音调周期,以及计算(A)基于所述所估计的音调周期的第一值与(B)基于所述帧的另一参数的第二值之间的关系的值。此方法包括基于所述所计算的值从(A)噪声激励译码方案和(B)无差别音调原型译码方案的集合选择一个译码方案,以及根据所述选定的译码方案对所述帧进行编码。在此方法中,根据所述无差别音调原型译码方案对所述帧进行编码包括产生经编码的帧,所述经编码的帧包括所述帧的音调脉冲的时域形状、所述帧的音调脉冲的位置和所述所估计的音调周期的表示。
本文中还明确地预期并揭示经配置以执行此类方法的设备和其它装置,以及具有在由处理器执行时致使所述处理器执行此类方法的元素的指令的计算机可读媒体。
附图说明
图1展示语音信号的有声段的实例。
图2A展示语音段的随时间而变的振幅的实例。
图2B展示LPC残余的随时间而变的振幅的实例。
图3A展示根据一般配置的语音编码方法M100的流程图。
图3B展示编码任务E100的实施方案E102的流程图。
图4展示帧中的特征的示意性表示。
图5A展示编码任务E200的实施方案E202的图。
图5B展示方法M100的实施方案M110的流程图。
图5C展示方法M100的实施方案M120的流程图。
图6A展示根据一般配置的设备MF100的框图。
图6B展示装置FE100的实施方案FE102的框图。
图7A展示根据一般配置解码语音信号的激励信号的方法M200的流程图。
图7B展示解码任务D100的实施方案D102的流程图。
图8A展示根据一般配置的设备MF200的框图。
图8B展示用于解码的装置FD100的实施方案FD102的流程图。
图9A展示语音编码器AE10和对应的语音解码器AD10。
图9B展示语音编码器AE10的例项(instance)AE10a、AE10b和语音解码器AD10的例项AD10a、AD10b。
图10A展示根据一般配置用于对语音信号的帧进行编码的设备A100的框图。
图10B展示编码器100的实施方案102的框图。
图11A展示根据一般配置的用于解码语音信号的激励信号的设备A200的框图。
图11B展示第一帧解码器300的实施方案302的框图。
图12A展示语音编码器AE10的多模式实施方案AE20的框图。
图12B展示语音解码器AD10的多模式实施方案AD20的框图。
图13展示残余产生器R10的框图。
图14展示用于卫星通信的系统的示意图。
图15A展示根据一般配置的方法M300的流程图。
图15B展示任务L100的实施方案L102的框图。
图15C展示任务L200的实施方案L202的流程图。
图16A展示由任务L120进行的搜索的实例。
图16B展示由任务L130进行的搜索的实例。
图17A展示任务L210的实施方案L210a的流程图。
图17B展示任务L220的实施方案L220a的流程图。
图17C展示任务L230的实施方案L230a的流程图。
图18A到图18F说明任务L212的反复的搜索操作。
图19A展示用于任务L214的测试条件的表。
图19B和图19C说明任务L222的反复的搜索操作。
图20A说明任务L232的搜索操作。
图20B说明任务L234的搜索操作。
图20C说明任务L232的反复的搜索操作。
图21展示任务L300的实施方案L302的流程图。
图22A说明任务L320的搜索操作。
图22B和图22C说明任务L320的替代搜索操作。
图23展示任务L330的实施方案L332的流程图。
图24A展示可供任务L334的实施方案使用的四组不同测试条件。
图24B展示任务L338的实施方案L338a的流程图。
图25展示任务L300的实施方案L304的流程图。
图26展示用于语音编码器AE10的实施方案的各种译码方案的位分配的表。
图27A展示根据一般配置的设备MF300的框图。
图27B展示根据一般配置的设备A300的框图。
图27C展示根据一般配置的设备MF350的框图。
图27D展示根据一般配置的设备A350的框图。
图28展示根据一般配置的方法M500的流程图。
图29A到图29D展示160位帧的各个区域。
图30A展示根据一般配置的方法M400的流程图。
图30B展示方法M400的实施方案M410的流程图。
图30C展示方法M400的实施方案M420的流程图。
图31A展示包模板PT10的一个实例。
图31B展示另一包模板PT20的实例。
图31C说明部分交错的两组不相交的位位置。
图32A展示方法M400的实施方案M430的流程图。
图32B展示方法M400的实施方案M440的流程图。
图32C展示方法M400的实施方案M450的流程图。
图33A展示根据一般配置的设备MF400的框图。
图33B展示设备MF400的实施方案MF410的框图。
图33C展示设备MF400的实施方案MF420的框图。
图34A展示设备MF400的实施方案MF430的框图。
图34B展示设备MF400的实施方案MF440的框图。
图34C展示设备MF400的实施方案MF450的框图。
图35A展示根据一般配置的设备A400的框图。
图35B展示设备A400的实施方案A402的框图。
图35C展示设备A400的实施方案A404的框图。
图35D展示设备A400的实施方案A406的框图。
图36A展示根据一般配置的方法M550的流程图。
图36B展示根据一般配置的设备A560的框图。
图37展示根据一般配置的方法M560的流程图。
图38展示方法M560的实施方案M570的流程图。
图39展示根据一般配置的设备MF560的框图。
图40展示设备MF560的实施方案MF570的框图。
图41展示根据一般配置的方法M600的流程图。
图42A展示将滞后范围均匀划分成频段的实例。
图42B展示将滞后范围非均匀划分成频段的实例。
图43A展示根据一般配置的方法M650的流程图。
图43B展示方法M650的实施方案M660的流程图。
图43C展示方法M650的实施方案M670的流程图。
图44A展示根据一般配置的设备MF650的框图。
图44B展示设备MF650的实施方案MF660的框图。
图44C展示设备MF650的实施方案MF670的框图。
图45A展示根据一般配置的设备A650的框图。
图45B展示设备A650的实施方案A660的框图。
图45C展示设备A650的实施方案A670的框图。
图46A展示方法M650的实施方案M680的流程图。
图46B展示设备MF650的实施方案MF680的框图。
图46C展示设备A650的实施方案A680的框图。
图47A展示根据一般配置的方法M800的流程图。
图47B展示方法M800的实施方案M810的流程图。
图48A展示方法M800的实施方案M820的流程图。
图48B展示根据一般配置的设备MF800的框图。
图49A展示设备MF800的实施方案MF810的框图。
图49B展示设备MF800的实施方案MF820的框图。
图50A展示根据一般配置的设备A800的框图。
图50B展示设备A800的实施方案A810的框图。
图51展示用于帧分类方案中的特征的列表。
图52展示用于计算基于音调的正规化自相关函数的程序的流程图。
图53为说明帧分类方案的高阶流程图。
图54为说明帧分类方案中的状态之间的可能过渡的状态图。
图55到图56、图57到图59以及图60到图63展示帧分类方案的三个不同程序的代码列表。
图64到图71B展示帧重新分类的条件。
图72展示语音编码器AE20的实施方案AE30的框图。
图73A展示语音编码器AE10的实施方案AE40的框图。
图73B展示周期性帧编码器E70的实施方案E72的框图。
图74展示周期性帧编码器E72的实施方案E74的框图。
图75A到图75D展示可能需要使用过渡帧译码模式的一些典型帧序列。
图76展示代码列表。
图77展示用于取消使用过渡帧译码的决策的四个不同条件。
图78展示根据一般配置的方法M700的图。
图79A展示根据一般配置的方法M900的流程图。
图79B展示方法M900的实施方案M910的流程图。
图80A展示方法M900的实施方案M920的流程图。
图80B展示根据一般配置的设备MF900的框图。
图81A展示设备MF900的实施方案MF910的框图。
图81B展示设备MF900的实施方案MF920的框图。
图82A展示根据一般配置的设备A900的框图。
图82B展示设备A900的实施方案A910的框图。
图83A展示设备A900的实施方案A920的框图。
图83B展示根据一般配置的方法M950的流程图。
图84A展示方法M950的实施方案M960的流程图。
图84B展示方法M950的实施方案M970的流程图。
图85A展示根据一般配置的设备MF950的框图。
图85B展示设备MF950的实施方案MF960的框图。
图86A展示设备MF950的实施方案MF970的框图。
图86B展示根据一般配置的设备A950的框图。
图87A展示设备A950的实施方案A960的框图。
图87B展示设备A950的实施方案A970的框图。
参考标记可能出现在一个以上图中以指示相同结构。
具体实施方式
如本文中所描述的系统、方法和设备(例如,方法M100、M200、M300、M400、M500、M550、M560、M600、M650、M700、M800、M900和/或M950)可用以支持处于低恒定位速率或处于低最大位速率(例如,每秒二千位)的语音译码。此受约束位速率语音译码的应用包括经由卫星链路的话音电话的发射(也称为“卫星上话音”),其可用以支持缺少蜂窝式或有线电话的通信基础架构的偏远地区的电话服务。卫星电话还可用以支持用于例如车队等移动接收器的连续广域覆盖,从而实现例如即按即说等服务。更一般来说,此受约束位速率语音译码的应用并不限于涉及卫星的应用,且可延伸到任何功率受限信道。
除非受其上下文明确地限制,否则术语“信号”在本文中用以指示其普通意义中的任一者,包括如在电线、总线或其它发射媒体上表达的存储器位置(或存储器位置的集合)的状态。除非受其上下文明确地限制,否则术语“产生”在本文中用以指示其普通意义中的任一者,例如,计算或以其它方式生成。除非受其上下文明确地限制,否则术语“计算”在本文中用以指示其普通意义中的任一者,例如,计算、评估、产生和/或从一组值进行选择。除非受其上下文明确地限制,否则术语“获得”用以指示其普通意义中的任一者,例如计算、导出、接收(例如,从外部装置)和/或检索(例如,从存储元件的阵列)。除非受其上下文明确地限制,否则术语“估计”用以指示其普通意义中的任一者,例如,计算和/或评估。在本描述内容和权利要求书中使用术语“包含”或“包括”时,其并不排除其它元件或操作。术语“基于”(如在“A基于B”中)用以指示其普通意义中的任一者,其包括以下状况:(i)“至少基于”(例如,“A至少基于B”)和(在特定情形下适当时)(ii)“等于”(例如,“A等于B”)。以引用的方式对文献的一部分的任何并入还应理解为并入在所述部分内引用的术语或变量的定义,其中此类定义出现于所述文献的其它地方。
除非另外指示,否则具有特定特征的语音编码器的任何揭示内容还明确地希望揭示具有类似特征的语音编码方法(且反之亦然),且根据特定配置的语音编码器的任何揭示内容还明确地希望揭示根据类似配置的语音编码方法(且反之亦然)。除非另外指示,否则用于对语音信号的帧执行操作的设备的任何揭示内容还明确地希望揭示用于对语音信号的帧执行操作的对应的方法(且反之亦然)。除非另外指示,否则具有特定特征的语音解码器的任何揭示内容还明确地希望揭示具有类似特征的语音解码方法(且反之亦然),且根据特定配置的语音解码器的任何揭示内容还明确地希望揭示根据类似配置的语音解码方法(且反之亦然)。可互换地使用术语“译码器”、“编解码器”和“译码系统”以表示一系统,所述系统包括经配置以接收语音信号的帧(可能在例如感知加权和/或其它滤波操作等一个或一个以上预处理操作之后)的至少一个编码器和经配置以产生帧的经解码的表示的对应的解码器。
出于语音译码的目的,语音信号通常经数字化(或量化)以获得样本流。可根据此项技术中已知的各种方法中的任一者(包括(例如)脉冲代码调制(PCM)、压扩mu律PCM和压扩A律PCM)执行数字化过程。窄带语音编码器通常使用8kHz的取样率,而宽带语音编码器通常使用较高取样率(例如,12或16kHz)。
语音编码器经配置以将经数字化的语音信号处理为一系列帧。虽然处理帧或帧段(也称为子帧)的操作也可包括其输入中的一个或一个以上相邻帧的段,但此系列通常实施为非重叠系列。语音信号的帧通常足够短以致可预期信号的频谱包络在整个帧期间保持相对固定。帧通常对应于5与35毫秒之间的语音信号(或约40到200个样本),其中10、20和30毫秒为常用帧大小。经编码的帧的实际大小可随编码位速率而在帧间改变。
20毫秒的帧长度在7千赫兹(kHz)的取样率下对应于140个样本,在8kHz的取样率下对应于160个样本,且在16kHz的取样率下对应于320个样本,但可使用被视为适于特定应用的任何取样率。可用于语音译码的取样率的另一实例为12.8kHz,且其它实例包括在12.8kHz到38.4kHz的范围内的其它速率。
通常,所有帧具有相同长度,且在本文中描述的特定实例中假定均匀帧长度。然而,还明确预期到且借此揭示可使用非均匀的帧长度。举例来说,本文中所描述的各种设备和方法的实施方案还可用于将不同帧长度用于活动帧和非活动帧和/或用于有声帧和无声帧的应用中。
如上所注明,可能需要配置语音编码器以使用不同译码模式和/或速率来编码活动帧和非活动帧。为了区分活动帧与非活动帧,语音编码器通常包括语音活动检测器(通常称为话音活动检测器或VAD),或以其它方式执行检测语音活动的方法。此类检测器或方法可经配置以基于一个或一个以上因素(例如,帧能量、信噪比、周期性和过零率)将帧分类为活动或非活动的。此分类可包括:将此类因素的值或量值与阈值进行比较,和/或将此类因素的改变的量值与阈值进行比较。
检测语音活动的语音活动检测器或方法还可经配置以将活动帧分类为两个或两个以上不同类型中的一者,例如,有声(例如,表示元音声)、无声(例如,表示摩擦音声)或过渡(例如,表示字的开始或结束)。此分类可基于例如以下各者等因素:语音和/或残余的自相关、过零率、第一反射系数和/或如(例如,相对于译码方案选择器C200和/或帧重新分类器RC10)在本文中更详细描述的其它特征。对于语音编码器来说,可能需要使用不同译码模式和/或位速率来编码不同类型的活动帧。
有声语音的帧倾向于具有长期的(即,持续一个以上帧周期)且关于音调的周期性结构。使用编码此长期频谱特征的描述的译码模式来编码有声帧(或有声帧的序列)通常为较有效的。此类编码模式的实例包括码激励线性预测(CELP)和例如原型波形内插(PWI)等波形内插技术。PWI译码模式的一个实例称为原型音调周期(PPP)。另一方面,无声帧和非活动帧通常缺少任何显著的长期频谱特征,且语音编码器可经配置以使用不试图描述此特征的译码模式来编码这些帧。噪声激励线性预测(NELP)为此类译码模式的一个实例。
语音编码器或语音编码方法可经配置以在位速率和译码模式(也称为“译码方案”)的不同组合中作出选择。举例来说,语音编码器可经配置以将全速率CELP方案用于含有有声语音的帧和过渡帧,将半速率NELP方案用于含有无声语音的帧,且将八分之一速率NELP方案用于非活动帧。此类语音编码器的其它实例支持一个或一个以上译码方案的多个译码速率,例如,全速率CELP方案和半速率CELP方案和/或全速率PPP方案和四分之一速率PPP方案。
如由语音编码器或语音编码方法产生的经编码的帧通常含有可借以重建语音信号的对应帧的值。举例来说,经编码的帧可包括帧内的能量在频谱上的分布的描述。此类能量分布也称为帧的“频率包络”或“频谱包络”。经编码的帧通常包括描述帧的频谱包络的有序值序列。在一些状况下,有序序列的每一值指示在对应频率处或在对应频谱区域上的信号振幅或量值。此类描述的一个实例为有序傅立叶(Fourier)变换系数序列。
在其它状况下,有序序列包括译码模型的参数值。此类有序序列的一个典型实例为线性预测译码(LPC)分析的系数值集合。这些LPC系数值编码经编码的语音的共振(也称为“共振峰”),且可配置为滤波器系数或反射系数。多数现代语音译码器的编码部分包括提取每一帧的LPC系数值集合的分析滤波器。集合(其通常布置为一个或一个以上向量)中的系数值的数目也称为LPC分析的“阶数”。如由通信装置(例如,蜂窝式电话)的语音编码器执行的LPC分析的典型阶数的实例包括4、6、8、10、12、16、20、24、28和32。
语音译码器通常配置成以经量化形式跨越发射信道发射频谱包络的描述(例如,作为到对应的查找表或“码簿”中的一个或一个以上索引)。因此,对于语音编码器来说,可能需要以可经有效地量化的形式计算LPC系数值的集合,例如线频谱对(LSP)、线频谱频率(LSF)、导抗频谱对(ISP)、导抗频谱频率(ISF)、倒频谱系数或对数面积比的值的集合。语音编码器还可经配置以在转换和/或量化之前对有序值序列执行其它操作(例如,感知加权)。
在一些状况下,帧的频谱包络的描述还包括帧的时间信息的描述(例如,如在傅立叶变换系数的有序序列中)。在其它状况下,经编码的帧的语音参数集合还可包括帧的时间信息的描述。时间信息的描述的形式可取决于用以对帧进行编码的特定译码模式。对于一些译码模式来说(例如,对于CELP译码模式来说),时间信息的描述包括LPC分析的残余的描述(也称为激励信号的描述)。对应的语音解码器使用激励信号来激励LPC模型(例如,如由频谱包络的描述所定义)。激励信号的描述通常以经量化形式(例如,作为到对应码簿中的一个或一个以上索引)出现于经编码的帧中。
时间信息的描述还可包括与激励信号的音调分量有关的信息。对于PPP译码模式来说,例如,经编码的时间信息可包括待由语音解码器使用以再生激励信号的音调分量的原型的描述。与音调分量有关的信息的描述通常以经量化形式(例如,作为到对应码簿中的一个或一个以上索引)出现于经编码的帧中。对于其它译码模式来说(例如,对于NELP译码模式来说),时间信息的描述可包括帧的时间包络(也称为帧的“能量包络”或“增益包络”)的描述。
图1展示有声语音段(例如,元音)的随时间而变的振幅的一个实例。对于有声帧来说,激励信号通常类似于在音调频率下周期性的一系列脉冲,而对于无声帧来说,激励信号通常类似于白高斯(Gaussian)噪声。CELP或PWI译码器可采用为有声语音段的特性的较高周期性以实现较好译码效率。图2A展示随时间而变的从背景噪声过渡到有声语音的语音段的振幅的实例,且图2B展示随时间而变的从背景噪声过渡到有声语音的语音段的LPC残余的振幅的实例。因为LPC残余的译码占用大量经编码的信号流,所以已开发各种方案以减小译码残余所需要的位速率。此类方案包括:CELP、NELP、PWI和PPP。
可能需要以提供长途质量(toll-quality)的经解码的信号的方式以低位速率(例如,每秒2千位)执行语音信号的受约束位速率编码。长途质量的特征通常在于具有约200到3200Hz的带宽和大于30dB的信噪比(SNR)。在一些状况下,长途质量的特征还在于具有小于2%或3%的谐波失真。遗憾的是,以接近每秒2千位的位速率编码语音的现有技术通常产生听起来为人工(例如,机器人)、嘈杂和/或过度谐波(例如,嗡嗡声)的合成语音。
例如静寂和无声帧等非有声帧的高质量编码可通常使用噪声激励线性预测(NELP)译码模式以低位速率来执行。然而,可能较难以以低位速率执行有声帧的高质量编码。已通过将较高位速率用于例如包括从无声语音到有声语音的过渡的帧(也称为开始帧或向上瞬变帧)等困难帧且将较低位速率用于后续有声帧以实现低平均位速率而获得良好结果。然而对于受约束位速率声码器来说,将较高位速率用于困难帧的选择可能为不可用的。
例如增强型可变速率编解码器(EVRC)等现有可变速率声码器通常使用例如CELP等波形译码模式以较高位速率编码此类困难帧。可用于以低位速率存储或发射有声语音段的其它译码方案包括例如PPP译码方案等PWI译码方案。此类PWI译码方案在残余信号中周期性地定位具有一个音调周期的长度的原型波形。在解码器处,所述残余信号被内插在原型之间的音调周期上以获得原始高度周期性残余信号的近似。PPP译码的一些应用使用混合位速率,以使得高位速率编码的帧为一个或一个以上后续低位速率编码的帧提供参考。在此状况下,低位速率帧中的信息的至少一些可被有差别地编码。
可能需要以无差别方式来编码过渡帧(例如,开始帧),所述无差别方式为序列中的后续帧的有差别PWI(例如,PPP)编码提供良好原型(即,良好音调脉冲形状参考)和/或音调脉冲相位参考。
可能需要在位速率受约束的译码系统中提供用于开始帧和/或其它过渡帧的译码模式。举例来说,可能需要在受约束而具有低恒定位速率或低最大位速率的译码系统中提供此译码模式。此译码系统的应用的典型实例为卫星通信链路(例如,如本文中参看图14所描述)。
如上所论述,语音信号的帧可分类为有声、无声或静寂。有声帧通常为高度周期性的,而无声和静寂帧通常为非周期性的。其它可能帧分类包括开始、瞬变和向下瞬变。(也称为向上瞬变帧的)开始帧通常出现于字的开始处。如在图2B中的400与600样本之间的区域中,开始帧在帧开始时可为非周期性的(例如,无声),且在帧结束时变为周期性的(例如,有声)。瞬变类别包括具有有声但较小周期性的语音的帧。瞬变帧显现音调的改变和/或减小的周期性,且通常在有声段的中间或结束处(例如,在语音信号的音调正改变之处)出现。典型的向下瞬变帧具有低能量有声语音且在字的结束处出现。开始帧、瞬变帧和向下瞬变帧也可称为“过渡”帧。
对于语音编码器来说,可能需要以无差别方式编码脉冲的位置、振幅和形状。举例来说,可能需要编码开始帧或一系列有声帧中的第一者,以使得经编码的帧为后续经编码的帧的激励信号提供良好参考原型。此类编码器可经配置以:定位帧的最终音调脉冲,定位相邻于最终音调脉冲的音调脉冲,根据所述音调脉冲的峰值之间的距离估计滞后值,且产生指示最终音调脉冲的位置和所估计的滞后值的经编码的帧。此信息在解码已在无相位信息的情况下编码的后续帧时可用作相位参考。编码器还可经配置以产生包括音调脉冲的形状的指示的经编码的帧,其在解码已被有差别地编码(例如,使用QPPP译码方案)的后续帧时可用作参考。
在译码过渡帧(例如,开始帧)时,向后续帧提供良好参考可能比实现帧的准确再生重要。此经编码的帧可用以向使用PPP或其它编码方案编码的后续有声帧提供良好参考。举例来说,对于经编码的帧来说,可能需要包括音调脉冲的形状的描述(例如,以提供良好形状参考)、音调滞后的指示(例如,以提供良好滞后参考)和帧的最终音调脉冲的位置的指示(例如,以提供良好相位参考),同时开始帧的其它特征可使用较少位来编码或甚至被忽略。
图3A展示根据一配置的语音编码方法M100的流程图,所述语音编码方法M100包括编码任务E100和E200。任务E100对语音信号的第一帧进行编码,且任务E200对语音信号的第二帧进行编码,其中第二帧在第一帧之后。任务E100可实施为无差别地对第一帧进行编码的参考译码模式,且任务E200可实施为相对于第一帧对第二帧进行编码的相对译码模式(例如,有差别译码模式)。在一个实例中,第一帧为开始帧,且第二帧为紧接在开始帧之后的有声帧。第二帧还可为紧接在开始帧之后的一系列连续有声帧中的第一者。
编码任务E100产生包括激励信号的描述的第一经编码的帧。此描述包括指示音调脉冲在时域中的形状(即,音调原型)和音调脉冲重复之处的位置的一组值。音调脉冲位置通过编码滞后值连同例如帧的终端音调脉冲的位置等参考点来指示。在此描述中,使用音调脉冲峰值的位置来指示音调脉冲的位置,但是本发明的范围明确地包括音调脉冲的位置等效地由脉冲的另一特征(例如,其第一或最后样本)的位置来指示的情形。第一经编码的帧还可包括其它信息的表示,例如,帧的频谱包络的描述(例如,一个或一个以上LSP索引)。任务E100可经配置以将经编码的帧产生作为符合模板的包。举例来说,任务E100可包括如本文中所描述的包产生任务E320、E340和/或E440的例项。
任务E100包括基于来自第一帧的至少一个音调脉冲的信息选择一组时域音调脉冲形状中的一者的子任务E110。任务E110可经配置以选择与帧中的具有最高峰值的音调脉冲最紧密匹配(例如,在最小平方意义上)的形状。或者,任务E110可经配置以选择与帧中的具有最高能量(例如,平方样本值的最高总和)的音调脉冲最紧密匹配的形状。或者,任务E110可经配置以选择与帧的两个或两个以上音调脉冲(例如,具有最高峰值和/或能量的脉冲)的平均值最紧密匹配的形状。任务E110可实施成包括经由音调脉冲形状(也称为“形状向量”)的码簿(即,量化表)的搜索。举例来说,任务E110可实施为如本文中所描述的脉冲形状向量选择任务T660或E430的例项。
编码任务T100还包括计算帧的终端音调脉冲位置(例如,帧的初始音调峰值或帧的最终音调峰值的位置)的子任务E120。可相对于帧的开始、相对于帧的结束或相对于帧内的另一参考位置来指示终端音调脉冲的位置。任务E120可经配置以通过(例如,基于样本的振幅或能量与帧平均值之间的关系,其中能量通常计算为样本值的平方)选择接近帧边界的样本并在接近此样本的区域内搜索具有最大值的样本而找到终端音调脉冲峰值。举例来说,可根据下文描述的终端音调峰值定位任务L100的配置中的任一者来实施任务E120。
编码任务E100还包括估计帧的音调周期的子任务E130。音调周期(也称为“音调滞后值”、“滞后值”、“音调滞后”或简称为“滞后”)指示音调脉冲之间的距离(即,邻近音调脉冲的峰值之间的距离)。典型的音调频率范围为男性说话者的约70到100Hz到女性说话者的约150到200Hz。对于8kHz的取样率来说,这些音调频率范围对应于典型女性说话者的约40到50个样本的滞后范围和典型男性说话者的约90到100个样本的滞后范围。为了适应具有在这些范围外的音调频率的说话者,可能需要支持约50到60Hz到约300到400Hz的音调频率范围。对于8kHz的取样率来说,此频率范围对应于约20到25个样本到约130到160个样本的滞后范围。
音调周期估计任务E130可经实施以使用任何合适的音调估计程序(例如,作为如下文描述的滞后估计任务L200的实施方案的例项)来估计音调周期。此类程序通常包括找到邻近于终端音调峰值的音调峰值(或以其它方式找到至少两个邻近音调峰值)并将滞后计算为峰值之间的距离。任务E130可经配置以基于样本的能量的量度(例如,样本能量与帧平均能量之间的比率)和/或样本的邻域与经确认的音调峰值的类似邻域(例如,终端音调峰值)相关的程度的量度而将样本识别为音调峰值。
编码任务E100产生包括第一帧的激励信号的特征的表示(例如,由任务E110选择的时域音调脉冲形状、由任务E120计算的终端音调脉冲位置,和由任务E130估计的滞后值)的第一经编码的帧。通常,任务E100将经配置以在音调周期估计任务E130之前执行音调脉冲位置计算任务E120,且在音调脉冲形状选择任务E110之前执行音调周期估计任务E130。
第一经编码的帧可包括直接指示所估计的滞后值的值。或者,对于经编码的帧来说,可能需要将滞后值指示为相对于最小值的偏移。对于二十个样本的最小滞后值来说,例如,七位数字可用以指示在二十到147(即,20+0到20+127)个样本的范围内的任何可能的整数滞后值。对于25个样本的最小滞后值来说,七位数字可用以指示在25到152(即,25+0到25+127)个样本的范围内的任何可能的整数滞后值。以此方式,将滞后值编码为相对于最小值的偏移可用以最大化预期滞后值的范围的覆盖同时最小化编码值的所述范围所要求的位的数目。其它实例可经配置以支持非整数滞后值的编码。对于第一经编码的帧来说,还有可能包括关于音调滞后的一个以上值,例如,第二滞后值或以其它方式指示滞后值从帧的一侧(例如,帧的开始或结束)到另一侧的改变的值。
很可能帧的音调脉冲的振幅将彼此不同。在开始帧中,例如,能量可随时间增加,以使得接近帧的结束的音调脉冲与接近帧的开始的音调脉冲相比将具有较大振幅。至少在此类状况下,对于第一经编码的帧来说,可能需要包括帧的平均能量随时间发生的变化(也称为“增益简档”)的描述,例如,音调脉冲的相对振幅的描述。
图3B展示编码任务E100的实施方案E102的流程图,所述实施方案E102包括子任务E140。任务E140将帧的增益简档计算为对应于第一帧的不同音调脉冲的一组增益值。举例来说,增益值中的每一者可对应于帧的不同音调脉冲。任务E140可包括:经由增益简档的码簿(例如,量化表)的搜索和与帧的增益简档最紧密地匹配(例如,在最小平方意义上)的码簿条目的选择。编码任务E102产生包括以下各者的表示的第一经编码的帧:由任务E110选择的时域音调脉冲形状、由任务E120计算的终端音调脉冲位置、由任务E130估计的滞后值和由任务E140计算的所述组增益值。图4展示帧中的这些特征的示意性表示,其中标记“1”指示终端音调脉冲位置,标记“2”指示所估计的滞后值,标记“3”指示选定的时域音调脉冲形状,且标记“4”指示在增益简档中编码的值(例如,音调脉冲的相对振幅)。通常,任务E102将经配置以在增益值计算任务E140之前执行音调周期估计任务E130,增益值计算任务E140可与音调脉冲形状选择任务E110串行或并行地执行。在一个实例中(如图26的表中所示),编码任务E102以四分之一速率操作以产生四十位的经编码的帧,其包括指示参考脉冲位置的七个位、指示参考脉冲形状的七个位、指示参考滞后值的七个位、指示增益简档的四个位、载运一个或一个以上LSP索引的十三个位和指示帧的译码模式的两个位(例如,“00”指示例如NELP等无声译码模式,“01”指示例如QPPP等相对译码模式,且“10”指示参考译码模式E102)。
第一经编码的帧可包括帧中的音调脉冲(或音调峰值)的数目的明确指示。或者,帧中的音调脉冲或音调峰值的数目可经隐含编码。举例来说,第一经编码的帧可仅使用音调滞后和终端音调脉冲的位置(例如,终端音调峰值的位置)来指示帧中的所有音调脉冲的位置。对应的解码器可经配置以从滞后值和终端音调脉冲的位置计算音调脉冲的潜在位置并从增益简档获得每一潜在脉冲位置的振幅。对于帧含有少于潜在脉冲位置的脉冲的状况来说,增益简档可针对潜在脉冲位置中的一者或一者以上指示增益值零(或其它极小值)。
如本文中所注明,开始帧可以无声开始并以有声结束。对于对应的经编码的帧来说,与支持整个开始帧的准确再生相比,可能更需要为后续帧提供良好参考,且可实施方法M100以仅提供对编码此类开始帧的初始无声部分的有限支持。举例来说,任务E140可经配置以选择指示无声部分内的任何音调脉冲周期的增益值零(或接近零)的增益简档。或者,任务E140可经配置以选择指示无声部分内的音调周期的非零增益值的增益简档。在一个此类实例中,任务E140选择以零或接近零开始并单调地上升到帧的有声部分的第一音调脉冲的增益水平的一般增益简档。
任务E140可经配置以将所述组增益值计算为对一组增益向量量化(VQ)表中的一者的索引,其中不同的增益VQ表用于不同数目个脉冲。所述组表可经配置以使得每一增益VQ表含有相同数目个条目,且不同增益VQ表含有不同长度的向量。在此译码系统中,任务E140基于终端音调脉冲的位置和音调滞后来计算音调脉冲的所估计的数目,且此所估计的数目用以选择所述组增益VQ表中的一者。在此状况下,也可由解码经编码的帧的对应方法执行类似操作。如果音调脉冲的所估计的数目大于帧中的音调脉冲的实际数目,那么任务E140还可通过如上所描述将帧中的每一额外音调脉冲周期的增益设定为较小值或零而传达此信息。
编码任务E200对语音信号的在第一帧之后的第二帧进行编码。任务E200可实施为相对于第一帧的对应特征对第二帧进行编码的特征的相对译码模式(例如,有差别译码模式)。任务E200包括计算当前帧的音调脉冲形状与先前帧的音调脉冲形状之间的音调脉冲形状差别的子任务E210。举例来说,任务E210可经配置以从第二帧提取音调原型,并将音调脉冲形状差别计算为所提取的原型与第一帧的音调原型(即,选定的音调脉冲形状)之间的差。可通过任务E210执行的原型提取操作的实例包括在2004年6月22日颁布的第6,754,630号美国专利(Das等人)和2006年11月14日颁布的第7,136,812号美国专利(Manjunath等人)中描述的原型提取操作。
可能需要配置任务E210以将音调脉冲形状差别计算为在频域中两个原型之间的差。图5A展示编码任务E200的实施方案E202的图,所述实施方案E202包括音调脉冲形状差别计算任务E210的实施方案E212。任务E212包括计算当前帧的频域音调原型的子任务E214。举例来说,任务E214可经配置以对经提取的原型执行快速傅立叶变换运算,或以其它方式将所提取的原型转换到频域。任务E212的此实施方案还可经配置以通过以下操作计算音调脉冲形状差别:将频域原型划分为若干频段(例如,一组非重叠频段),计算元素为每一频段中的平均量值的对应的频率量值向量,以及将音调脉冲形状差别计算为原型的频率量值向量与先前帧的原型的频率量值向量之间的向量差。在此状况下,任务E212还可经配置以对音调脉冲形状差别进行向量量化,以使得对应的经编码的帧包括经量化的差别。
编码任务E200还包括计算当前帧的音调周期与先前帧的音调周期之间的音调周期差别的子任务E220。举例来说,任务E220可经配置以估计当前帧的音调滞后并减去先前帧的音调滞后值以获得音调周期差别。在一个此类实例中,任务E220经配置以将音调周期差别计算为(当前滞后估计-先前滞后估计+7)。为了估计音调滞后,任务E220可经配置以使用任何合适的音调估计技术,例如,上文描述的音调周期估计任务E130的例项、下文描述的滞后估计任务L200的例项,或如在以上参考的EVRC文献C.S0014-C的章节4.6.3(第4-44到4-49页)中描述的程序,所述章节在此作为实例以引用的方式并入。对于先前帧的未经量化的音调滞后值不同于先前帧的经解量化的音调滞后值的状况来说,可能需要任务E220通过从当前滞后估计减去经解量化的值来计算音调周期差别。
可使用例如四分之一速率PPP(QPPP)等具有受限时间同步性的译码方案来实施编码任务E200。QPPP的实施方案在2007年1月的题目为“用于宽带扩展频谱数字系统的增强型可变速率编解码器、语音服务选择3、68和70(Enhanced Variable Rate Codec,Speech Service Options 3,68,and 70for Wideband Spread Spectrum Digital Systems)”的第三代合作伙伴计划2(3GPP2)的文献C.S0014-C版本1.0(在www.3gpp.org可线上获得)的章节4.2.4(第4-10到4-17页)和4.12.28(第4-132到4-138页)中描述,所述章节在此作为实例以引用的方式并入。此译码方案使用带宽随频率增加的一组非均匀的二十一个频段来计算原型的频率量值向量。使用QPPP产生的经编码的帧的四十个位包括:载运一个或一个以上LSP索引的十六个位、载运德耳塔滞后值的四个位、载运帧的振幅信息的十八个位、指示模式的一个位和一个保留位(如图26的表中所示)。相对译码方案的此实例不包括用于脉冲形状的位和用于相位信息的位。
如上所注明,任务E100中编码的帧可为开始帧,且任务E200中编码的帧可为紧接在开始帧之后的一系列连续有声帧中的第一者。图5B展示方法M100的实施方案M110的流程图,所述实施方案M110包括子任务E300。任务E300编码在第二帧之后的第三帧。举例来说,第三帧可为紧接在开始帧之后的一系列连续有声帧中的第二者。编码任务E300可实施为如本文中所描述的任务E200的实施方案的例项(例如,实施为QPPP编码的例项)。在一个此类实例中,任务E300包括:任务E210的(例如,任务E212的)例项,其经配置以计算第三帧的音调原型与第二帧的音调原型之间的音调脉冲形状差别;以及任务E220的例项,其经配置以计算第三帧的音调周期与第二帧的音调周期之间的音调周期差别。在另一此类实例中,任务E300包括:任务E210的(例如,任务E212的)例项,其经配置以计算第三帧的音调原型与第一帧的选定的音调脉冲形状之间的音调脉冲形状差别;以及任务E220的例项,其经配置以计算第三帧的音调周期与第一帧的音调周期之间的音调周期差别。
图5C展示方法M100的实施方案M120的流程图,所述实施方案M120包括子任务T100。任务T100检测包括从非有声语音到有声语音的过渡的帧(也称为向上瞬变帧或开始帧)。任务T100可经配置以根据下文描述(例如,关于译码方案选择器C200)的EVRC分类方案执行帧分类,且还可经配置以将帧重新分类(例如,如下文参考帧重新分类器RC10所描述)。
图6A展示经配置以对语音信号的帧进行编码的设备MF100的框图。设备MF100包括用于对语音信号的第一帧进行编码的装置FE100和用于对语音信号的第二帧进行编码的装置FE200,其中第二帧在第一帧之后。装置FE100包括用于基于来自第一帧的至少一个音调脉冲的信息来选择一组时域音调脉冲形状中的一者(例如,如上文参考任务E110的各种实施方案所描述)的装置FE110。装置FE100还包括用于计算第一帧的终端音调脉冲的位置(例如,如上文参考任务E120的各种实施方案所描述)的装置FE120。装置FE100还包括用于估计第一帧的音调周期(例如,如上文参考任务E130的各种实施方案所描述)的装置FE130。图6B展示装置FE100的实施方案FE102的框图,所述实施方案FE102还包括用于计算对应于第一帧的不同音调脉冲的一组增益值(例如,如上文参考任务E140的各种实施方案所描述)的装置FE140。
装置FE200包括用于计算第二帧的音调脉冲形状与第一帧的音调脉冲形状之间的音调脉冲形状差别(例如,如上文参考任务E210的各种实施方案所描述)的装置FE210。装置FE200还包括用于计算第二帧的音调周期与第一帧的音调周期之间的音调周期差别(例如,如上文参考任务E220的各种实施方案所描述)的装置FE220。
图7A展示根据一般配置解码语音信号的激励信号的方法M200的流程图。方法M200包括解码第一经编码的帧的一部分以获得第一激励信号的任务D100,其中所述部分包括时域音调脉冲形状、音调脉冲位置和音调周期的表示。任务D100包括根据音调脉冲位置将时域音调脉冲形状的第一副本布置于第一激励信号内的子任务D110。任务D100还包括根据音调脉冲位置和音调周期将时域音调脉冲形状的第二副本布置于第一激励信号内的子任务D120。在一个实例中,任务D110和D120从码簿获得时域音调脉冲形状(例如,根据来自第一经编码的帧的表示形状的索引),并将其复制到激励信号缓冲器。任务D100和/或方法M200还可实施成包括进行以下操作的任务:从第一经编码的帧获得一组LPC系数值(例如,通过解量化来自第一经编码的帧的一个或一个以上经量化的LSP向量并对结果进行逆变换),根据所述组LPC系数值配置合成滤波器,以及向经配置的合成滤波器施加第一激励信号以获得第一经解码的帧。
图7B展示解码任务D100的实施方案D102的流程图。在此状况下,第一经编码的帧的部分也包括一组增益值的表示。任务D102包括将所述组增益值中的一者施加到时域音调脉冲形状的第一副本的子任务D130。任务D102还包括将所述组增益值中的一不同者施加到时域音调脉冲形状的第二副本的子任务D140。在一个实例中,任务D130在任务D110期间将其增益值施加到所述形状,且任务D140在任务D120期间将其增益值施加到所述形状。在另一实例中,任务D130在已执行任务D110之后将其增益值施加到激励信号缓冲器的对应部分,且任务D140在已执行任务D120之后将其增益值施加到激励信号缓冲器的对应部分。包括任务D102的方法M200的实施方案可配置成包括向经配置的合成滤波器施加所得的经增益调整的激励信号以获得第一经解码的帧的任务。
方法M200还包括解码第二经编码的帧的一部分以获得第二激励信号的任务D200,其中所述部分包括音调脉冲形状差别和音调周期差别的表示。任务D200包括基于时域音调脉冲形状和音调脉冲形状差别来计算第二音调脉冲形状的子任务D210。任务D200还包括基于音调周期和音调周期差别来计算第二音调周期的子任务D220。任务D200还包括根据音调脉冲位置和第二音调周期将第二音调脉冲形状的两个或两个以上副本布置于第二激励信号内的子任务D230。任务D230可包括将第二激励信号内的副本中的每一者的位置计算为从音调脉冲位置的对应偏移,其中每一偏移为第二音调周期的整数倍。任务D200和/或方法M200还可实施成包括进行以下操作的任务:从第二经编码的帧获得一组LPC系数值(例如,通过解量化来自第二经编码的帧的一个或一个以上经量化的LSP向量并对结果进行逆变换),根据所述组LPC系数值配置合成滤波器,以及将第二激励信号施加到经配置的合成滤波器以获得第二经解码的帧。
图8A展示用于解码语音信号的激励信号的设备MF200的框图。设备MF200包括用于解码第一经编码的帧的一部分以获得第一激励信号的装置FD100,其中所述部分包括时域音调脉冲形状、音调脉冲位置和音调周期的表示。装置FD100包括用于根据音调脉冲位置将时域音调脉冲形状的第一副本布置于第一激励信号内的装置FD110。装置FD100还包括用于根据音调脉冲位置和音调周期将时域音调脉冲形状的第二副本布置于第一激励信号内的装置FD120。在一个实例中,装置FD110和FD120经配置以从码簿获得时域音调脉冲形状(例如,根据来自第一经编码的帧的表示形状的索引),并将其复制到激励信号缓冲器。装置FD200和/或设备MF200还可实施成包括用于从第一经编码的帧获得一组LPC系数值(例如,通过解量化来自第一经编码的帧的一个或一个以上经量化的LSP向量并对结果进行逆变换)的装置,用于根据所述组LPC系数值配置合成滤波器的装置,以及用于向经配置的合成滤波器施加第一激励信号以获得第一经解码的帧的装置。
图8B展示用于解码的装置FD100的实施方案FD102的流程图。在此状况下,第一经编码的帧的部分还包括一组增益值的表示。装置FD102包括用于将所述组增益值中的一者施加到时域音调脉冲形状的第一副本的装置FD130。装置FD102还包括用于将所述组增益值中的一不同者施加到时域音调脉冲形状的第二副本的装置FD140。在一个实例中,装置FD130将其增益值施加到装置FD110内的形状,且装置FD140将其增益值施加到装置FD120内的形状。在另一实例中,装置FD130将其增益值施加到激励信号缓冲器的装置FD110已向其布置第一副本的部分,且装置FD140将其增益值施加到激励信号缓冲器的装置FD120已向其布置第二副本的部分。包括装置FD102的设备MF200的实施方案可配置成包括用于将所得经增益调整的激励信号施加到经配置的合成滤波器以获得第一经解码的帧的装置。
设备MF200还包括用于解码第二经编码的帧的一部分以获得第二激励信号的装置FD200,其中所述部分包括音调脉冲形状差别和音调周期差别的表示。装置FD200包括用于基于时域音调脉冲形状和音调脉冲形状差别来计算第二音调脉冲形状的装置FD210。装置FD200还包括用于基于音调周期和音调周期差别来计算第二音调周期的装置FD220。装置FD200还包括用于根据音调脉冲位置和第二音调周期将第二音调脉冲形状的两个或两个以上副本布置于第二激励信号内的装置FD230。装置FD230可经配置以将第二激励信号内的副本中的每一者的位置计算为从音调脉冲位置的对应偏移,其中每一偏移为第二音调周期的整数倍。装置FD200和/或设备MF200还可实施成包括用于从第二经编码的帧获得一组LPC系数值(例如,通过解量化来自第二经编码的帧的一个或一个以上经量化的LSP向量并对结果进行逆变换)的装置,用于根据所述组LPC系数值配置合成滤波器的装置,以及用于将第二激励信号施加到经配置的合成滤波器以获得第二经解码的帧的装置。
图9A展示语音编码器AE10,其经布置以接收经数字化的语音信号S100(例如,作为一系列帧)并产生对应的经编码的信号S200(例如,作为一系列对应的经编码的帧)以供在通信信道C100(例如,有线、光学和/或无线通信链路)上发射到语音解码器AD10。语音解码器AD10经布置以解码经编码的语音信号S200的所接收的型式S300并合成对应的输出语音信号S400。语音编码器AE10可实施成包括设备MF100的例项和/或执行方法M100的实施方案。语音解码器AD10可实施成包括设备MF200的例项和/或执行方法M200的实施方案。
如上文所描述,语音信号S100表示已根据在此项技术中已知的各种方法中的任一者(例如,脉冲代码调制(PCM)、压扩mu律或A律)数字化并量化的模拟信号(例如,如由麦克风所俘获)。所述信号还可已在模拟和/或数字域中经受其它预处理操作,例如,噪声抑制、感知加权和/或其它滤波操作。另外或作为替代,可在语音编码器AE10内执行此类操作。语音信号S100的例项还可表示已数字化并量化的模拟信号(例如,如由麦克风的阵列所俘获)的组合。
图9B展示语音编码器AE10的第一例项AE10a,其经布置以接收经数字化的语音信号S100的第一例项S110并产生经编码的信号S200的对应例项S210以供在通信信道C100的第一例项C110上发射到语音解码器AD10的第一例项AD10a。语音解码器AD10a经布置以解码经编码的语音信号S210的所接收的型式S310并合成输出语音信号S400的对应例项S410。
图9B还展示语音编码器AE10的第二例项AE10b,其经布置以接收经数字化的语音信号S100的第二例项S120并产生经编码的信号S200的对应例项S220以供在通信信道C100的第二例项C120上发射到语音解码器AD10的第二例项AD10b。语音解码器AD10b经布置以解码经编码的语音信号S220的所接收的型式S320并合成输出语音信号S400的对应例项S420。
语音编码器AE10a和语音解码器AD10b(类似地,语音编码器AE10b和语音解码器AD10a)可在用于发射并接收语音信号的任何通信装置(包括(例如)下文参考图14所描述的用户终端、地面台或网关)中一起使用。如本文中所描述,语音编码器AE10可以许多不同方式来实施,且语音编码器AE10a和AE10b可为语音编码器AE10的不同实施方案的例项。同样,语音解码器AD10可以许多不同方式来实施,且语音解码器AD10a和AD10b可为语音解码器AD10的不同实施方案的例项。
图10A展示根据一般配置的用于对语音信号的帧进行编码的设备A100的框图,所述设备包括:第一帧编码器100,其经配置以对语音信号的第一帧进行编码作为第一经编码的帧;以及第二帧编码器200,其经配置以对语音信号的第二帧进行编码作为第二经编码的帧,其中第二帧在第一帧之后。语音编码器AE10可实施成包括设备A100的例项。第一帧编码器100包括音调脉冲形状选择器110,其经配置以基于来自第一帧的至少一个音调脉冲的信息选择一组时域音调脉冲形状中的一者(例如,如上文参考任务E110的各种实施方案所描述)。编码器100还包括音调脉冲位置计算器120,其经配置以计算第一帧的终端音调脉冲的位置(例如,如上文参考任务E120的各种实施方案所描述)。编码器100还包括音调周期估计器130,其经配置以估计第一帧的音调周期(例如,如上文参考任务E130的各种实施方案所描述)。编码器100可经配置以将经编码的帧产生作为符合模板的包。举例来说,编码器100可包括如本文中所描述的包产生器170和/或570的例项。图10B展示编码器100的实施方案102的框图,所述实施方案102还包括增益值计算器140,其经配置以计算对应于第一帧的不同音调脉冲的一组增益值(例如,如上文参考任务E140的各种实施方案所描述)。
第二帧编码器200包括音调脉冲形状差别计算器210,其经配置以计算第二帧的音调脉冲形状与第一帧的音调脉冲形状之间的音调脉冲形状差别(例如,如上文参考任务E210的各种实施方案所描述)。编码器200还包括音调脉冲差别计算器220,其经配置以计算第二帧的音调周期与第一帧的音调周期之间的音调周期差别(例如,如上文参考任务E220的各种实施方案所描述)。
图11A展示根据一般配置用于解码语音信号的激励信号的设备A200的框图,所述设备A200包括第一帧解码器300和第二帧解码器400。解码器300经配置以解码第一经编码的帧的一部分以获得第一激励信号,其中所述部分包括时域音调脉冲形状、音调脉冲位置和音调周期的表示。解码器300包括第一激励信号产生器310,其经配置以根据音调脉冲位置将时域音调脉冲形状的第一副本布置于第一激励信号内。激励产生器310还经配置以根据音调脉冲位置和音调周期将时域音调脉冲形状的第二副本布置于第一激励信号内。举例来说,产生器310可经配置以执行如本文中所描述的任务D110和D120的实施方案。在此实例中,解码器300还包括合成滤波器320,其根据由解码器300从第一经编码的帧获得的一组LPC系数值(例如,通过解量化来自第一经编码的帧的一个或一个以上经量化LSP向量并对结果进行逆变换)来配置,且经布置以对激励信号进行滤波从而获得第一经解码的帧。
图11B展示第一激励信号产生器310的实施方案312的框图,所述实施方案312针对第一经编码的帧的部分也包括一组增益值的表示的状况包括第一乘法器330和第二乘法器340。第一乘法器330经配置以将所述组增益值中的一者施加到时域音调脉冲形状的第一副本。举例来说,第一乘法器330可经配置以执行如本文中所描述的任务D130的实施方案。第二乘法器340经配置以将所述组增益值中的一不同者施加到时域音调脉冲形状的第二副本。举例来说,第二乘法器340可经配置以执行如本文中所描述的任务D140的实施方案。在包括产生器312的解码器300的实施方案中,合成滤波器320可经布置以对所得经增益调整的激励信号进行滤波从而获得第一经解码的帧。可使用不同结构或在不同时间使用同一结构来实施第一乘法器330和第二乘法器340。
第二帧解码器400经配置以解码第二经编码的帧的一部分以获得第二激励信号,其中所述部分包括音调脉冲形状差别和音调周期差别的表示。解码器400包括第二激励信号产生器440,所述第二激励信号产生器440包括音调脉冲形状计算器410和音调周期计算器420。音调脉冲形状计算器410经配置以基于时域音调脉冲形状和音调脉冲形状差别来计算第二音调脉冲形状。举例来说,音调脉冲形状计算器410可经配置以执行如本文中所描述的任务D210的实施方案。音调周期计算器420经配置以基于音调周期和音调周期差别来计算第二音调周期。举例来说,音调周期计算器420可经配置以执行如本文中所描述的任务D220的实施方案。激励产生器440经配置以根据音调脉冲位置和第二音调周期将第二音调脉冲形状的两个或两个以上副本布置于第二激励信号内。举例来说,产生器440可经配置以执行本文中所描述的任务D230的实施方案。在此实例中,解码器400还包括合成滤波器430,其根据由解码器400从第一经编码的帧获得的一组LPC系数值(例如,通过解量化来自第一经编码的帧的一个或一个以上经量化的LSP向量并对结果进行逆变换)来配置,且经布置以对第二激励信号进行滤波从而获得第二经解码的帧。可使用不同结构或在不同时间使用同一结构来实施合成滤波器320、430。语音解码器AD10可实施成包括设备A200的例项。
图12A展示语音编码器AE10的多模式实施方案AE20的框图。编码器AE20包括:第一帧编码器100的实施方案(例如,编码器102)、第二帧编码器200的实施方案、无声帧编码器UE10(例如,QNELP编码器)和译码方案选择器C200。译码方案选择器C200经配置以分析语音信号S100的传入帧的特性(例如,根据如下文描述的经修改的EVRC帧分类方案),以经由选择器50a、50b来选择用于每一帧的编码器100、200和UE10中的一适当者。可能需要实施第二帧编码器200以应用四分之一速率PPP(QPPP)译码方案且实施无声帧编码器UE10以应用四分之一速率NELP(QNELP)译码方案。图12B展示语音编码器AD10的类似多模式实施方案AD20的框图,所述多模式实施方案AD20包括:第一帧解码器300的实施方案(例如,解码器302)、第二帧编码器400的实施方案、无声帧解码器UD10(例如,QNELP解码器)和译码方案检测器C300。译码方案检测器C300经配置以确定所接收的经编码的语音信号S300的经编码的帧的格式(例如,根据例如第一和/或最后位等经编码的帧的一个或一个以上模式位),以经由选择器90a、90b选择用于每一经编码的帧的解码器300、400和UD10中的一适当对应者。
图13展示可包括于语音编码器AE10的实施方案内的残余产生器R10的框图。产生器R10包括LPC分析模块R110,其经配置以基于语音信号S100的当前帧计算一组LPC系数值。变换块R120经配置以将所述组LPC系数值转换为一组LSF,且量化器R130经配置以量化LSF(例如,作为一个或一个以上码簿索引)以产生LPC参数SL10。逆量化器R140经配置以从经量化的LPC参数SL10获得一组经解码的LSF,且逆变换块R150经配置以从所述组经解码的LSF获得一组经解码的LPC系数值。根据所述组经解码的LPC系数值配置的白化滤波器R160(也称为分析滤波器)处理语音信号S100以产生LPC残余SR10。残余产生器R10还可经实施以根据被视为适合于特定应用的任何其它设计产生LPC残余。残余产生器R10的例项可实施于帧编码器104、204和UE10中的任何一者或一者以上内和/或在所述任何一者或一者以上间共享。
图14展示用于卫星通信的系统的示意图,所述系统包括卫星10、地面台20a、20b和用户终端30a、30b。卫星10可经配置以可能经由一个或一个以上其它卫星在地面台20a与20b之间、用户终端30a与30b之间或地面台与用户终端之间的半双工或全双工信道上中继话音通信。用户终端30a、30b中的每一者可为用于无线卫星通信的便携式装置,例如,移动电话或装备有无线调制解调器的便携式计算机、安装于陆地载具或太空载具内的通信单元或用于卫星话音通信的另一装置。地面台20a、20b中的每一者经配置以将话音通信信道投送到相应网络40a、40b,所述网络40a、40b可为模拟或脉冲代码调制(PCM)网络(例如,公众交换电话网络或PSTN)和/或数据网络(例如,因特网、局域网(LAN)、校园网络(CAN)、都会网络(MAN)、广域网(WAN)、环形网络、星形网络和/或令牌环形网络)。地面台20a、20b中的一者或两者还可包括网关,其经配置以将话音通信信号进行代码转换为另一形式(例如,模拟、PCM、较高位速率译码方案等)和/或从所述另一形式对话音通信信号进行代码转换。本文中所描述的方法中的一者或一者以上可由图14中所展示的装置10、20a、20b、30a和30b中的任何一者或一者以上来执行,且本文中所描述的设备中的一者或一者以上可包括于此类装置中的任何一者或一者以上中。
在PWI编码期间提取的原型的长度通常等于音调滞后的当前值,其在帧间可改变。量化原型以发射到解码器因此呈现量化维度可变的向量的问题。在常规PWI和PPP译码方案中,通常通过将时域向量转换为复合值频域向量(例如,使用离散时间傅立叶变换(DTFT)运算)来执行可变维度原型向量的量化。上文参考音调脉冲形状差别计算任务E210来描述此运算。接着对此复合值可变维度向量的振幅取样以获得固定维度的向量。振幅向量的取样可能为非均匀的。举例来说,可能需要在低频率下与在高频率下相比以更高分辨率对向量进行取样。
可能需要执行对在开始帧之后的有声帧的有差别PWI编码。在全速率PPP译码模式中,频域向量的相位以类似于振幅的方式取样以获得固定维度的向量。然而在QPPP译码模式中,无位可用于将此相位信息载运到解码器。在此状况下,音调滞后经有差别编码(例如,相对于先前帧的音调滞后),且还必须基于来自一个或一个以上先前帧的信息来估计相位信息。举例来说,当过渡帧译码模式(例如,任务E100)用以编码开始帧时,可从音调滞后和脉冲位置信息导出后续帧的相位信息。
对于编码开始帧来说,可能需要执行可预期检测帧内的所有音调脉冲的程序。举例来说,可预期使用稳健的音调峰值检测操作以提供后续帧的较好滞后估计和/或相位参考。可靠的参考值对于后续帧是使用例如有差别译码方案等相对译码方案(例如,任务E200)进行编码的状况可为尤其重要的,因为此类方案通常容易发生误差传播。如上所注明,在此描述中,音调脉冲的位置由其峰值的位置来指示,但在另一情形下,音调脉冲的位置可等效地由脉冲的另一特征(例如,其第一样本或最后样本)的位置来指示。
图15A展示根据一般配置的方法M300的流程图,所述方法M300包括任务L100、L200和L300。任务L100定位帧的终端音调峰值。在特定实施方案中,任务L100经配置以根据(A)基于样本振幅的量与(B)用于帧的量的平均值之间的关系选择一样本作为终端音调峰值。在一个此类实例中,所述量为样本量值(即,绝对值),且在此状况下,可将帧平均值计算为其中s表示样本值(即,振幅),N表示帧中的样本的数目,且i为样本索引。在另一此类实例中,所述量为样本能量(即,振幅平方),且在此状况下,可将帧平均值计算为在下文的描述中,使用能量。
任务L100可经配置以将终端音调峰值定位为帧的初始音调峰值或帧的最终音调峰值。为了定位初始音调峰值,任务L100可经配置以在帧的第一样本处开始且在时间上向前运作。为了定位最终音调峰值,任务L100可经配置以在帧的最后样本处开始且在时间上向后运作。在下文描述的特定实例中,任务L100经配置以将终端音调峰值定位为帧的最终音调峰值。
图15B展示任务L100的实施方案L102的框图,所述实施方案L102包括子任务L110、L120和L130。任务L110定位帧中的有资格成为终端音调峰值的最后样本。在此实例中,任务L110定位相对于帧平均值的能量超出(或者,不小于)对应阈值TH1的最后样本。在一个实例中,TH1的值为六。如果在帧中未发现此样本,那么方法M300终止且另一译码模式(例如,QPPP)用于帧。否则,任务L120(如图16A中所示)在此样本之前的窗口内进行搜索以找到具有最大振幅的样本,且选择此样本作为临时峰值候选者。对于任务L120中的搜索窗口来说,可能需要具有等于最小容许滞后值的宽度WL1。在一个实例中,WL1的值为二十个样本。对于搜索窗口中的一个以上样本具有最大振幅的状况来说,任务L120可经不同地配置以选择第一此类样本、最后此类样本或任何其它此类样本。
任务L130(如图16B中所示)通过在临时峰值候选者之前的窗口内找到具有最大振幅的样本而验证最终音调峰值选择。对于任务L130中的搜索窗口来说,可能需要具有在初始滞后估计的50%与100%之间或50%与75%之间的宽度WL2。初始滞后估计通常等于最新滞后估计(即,来自先前帧)。在一个实例中,WL2的值等于初始滞后估计的八分之五。如果新样本的振幅大于临时峰值候选者的振幅,那么任务L130改为选择新样本作为最终音调峰值。在另一实施方案中,如果新样本的振幅大于临时峰值候选者的振幅,那么任务L130选择新样本作为新临时峰值候选者,并重复在新临时峰值候选者之前的宽度WL2的窗口内的搜索,直到找不到此类样本为止。
任务L200计算帧的所估计的滞后值。任务L200通常经配置以定位邻近于终端音调峰值的音调脉冲的峰值并将滞后估计计算为这两个峰值之间的距离。可能需要配置任务L200以仅在帧边界内进行搜索和/或要求终端音调峰值与邻近音调峰值之间的距离大于(或者,不小于)最小容许滞后值(例如,二十个样本)。
可能需要配置任务L200以使用初始滞后估计来找到邻近峰值。然而首先,对于任务L200来说,可能需要检查初始滞后估计以查看音调加倍误差(其可包括音调三倍和/或音调四倍误差)。通常,将已使用基于相关的方法来确定初始滞后估计。音调加倍误差对于音调估计的基于相关的方法为常见的,且通常为完全听得到的。图15C展示任务L200的实施方案L202的流程图。任务L202包括检查初始滞后估计以查看音调加倍误差的可选但推荐的子任务L210。任务L210经配置以在距终端音调峰值(例如)1/2、1/3和1/4滞后的距离处的窄窗口内搜索音调峰值,且可如下所描述反复。
图17A展示任务L210的实施方案L210a的流程图,所述实施方案L210a包括子任务L212、L214和L216。对于待检查的最小音调分数(例如,滞后/4),任务L212在中心从终端音调峰值偏移实质上等于音调分数(例如,在截断或舍入误差内)的距离的小窗口(例如,五个样本)内进行搜索,以找到具有(例如,在振幅、量值或能量方面的)最大值的样本。图18A说明此操作。
任务T214评估最大值样本(即,“候选者”)的一个或一个以上特征,且将这些值与相应的阈值进行比较。经评估的特征可包括候选者的样本能量、候选者能量与平均帧能量(例如,峰值对RMS能量)的比率和/或候选者能量与终端峰值能量的比率。任务L214可经配置以按任何次序执行此类评估,且评估可彼此串行和/或并行地执行。
对于任务L214来说,还可能需要使候选者的邻域与终端音调峰值的类似邻域相关。对于此特征评估来说,任务L214通常经配置以使以候选者为中心的长度为N1个样本的段与以终端音调峰值为中心的相等长度的段相关。在一个实例中,N1的值等于十七个样本。可能需要配置任务L214以执行正规化相关(例如,具有在零到一的范围内的结果)。可能需要配置任务L214以重复以(例如)候选者之前和之后的一个样本为中心的长度为N1的段的相关(例如,以考量定时偏移和/或取样误差)并选择最大相关结果。对于相关窗口将延伸超出帧边界的状况来说,可能需要移位或截断相关窗口。(对于相关窗口经截断的状况来说,可能需要正规化相关结果,除非所述相关结果已被正规化。)在一个实例中,如果满足展示为图19A中的各栏的三组条件中的任一者,那么接受候选者作为邻近音调峰值,其中阈值T可等于六。
如果任务T214找到邻近音调峰值,那么任务L216将当前滞后估计计算为终端音调峰值与邻近音调峰值之间的距离。否则,任务L210a在终端峰值的另一侧上反复(如图18B中所示),接着对于待检查的其它音调分数在终端峰值的两侧之间从最小到最大交替,直到找到邻近音调峰值为止(如图18C到图18F中所示)。如果在终端音调峰值与最接近的帧边界之间找到邻近音调峰值,那么终端音调峰值被重新标记为邻近音调峰值,且新峰值被标记为终端音调峰值。在替代实施方案中,任务L210经配置以在前导侧之前在终端音调峰值的末尾侧(即,在任务L100中已搜索的侧)上进行搜索。
如果分数滞后测试任务L210并不定位音调峰值,那么任务L220根据初始滞后估计(例如,在从终端峰值位置偏移初始滞后估计的窗口内)搜索邻近于终端音调峰值的音调峰值。图17B展示任务L220的实施方案L220a的流程图,所述实施方案L220a包括子任务L222、L224、L226和L228。任务L222在以距最终峰值的左侧一个滞后的距离为中心的宽度为WL3的窗口内找到候选者(例如,具有在振幅或量值方面的最大值的样本)(如图19B中所示,其中开圆指示终端音调峰值)。在一个实例中,WL3的值等于初始滞后估计的0.55倍。任务L224评估候选样本的能量。举例来说,任务L224可经配置以确定候选者的能量的量度(例如,样本能量与帧平均能量的比率,例如,峰值对RMS能量)是否大于(或者,不小于)对应的阈值TH3。TH3的实例值包括1、1.5、3和6。
任务L226使候选者的邻域与终端音调峰值的类似邻域相关。任务L226通常经配置以使以候选者为中心的长度为N2个样本的段与以终端音调峰值为中心的相等长度的段相关。N2的值的实例包括十、十一和十七个样本。可能需要配置任务L226以执行正规化相关。可能需要配置任务L226以重复以(例如)候选者之前和之后的一个样本为中心的段的相关(例如,以考量定时偏移和/或取样误差)并选择最大相关结果。对于相关窗口将延伸超出帧边界的状况来说,可能需要移位或截断相关窗口。(对于相关窗口经截断的状况来说,可能需要正规化相关结果,除非所述相关结果已被正规化。)任务L226还确定相关结果是否大于(或者,不小于)对应的阈值TH4。TH4的实例值包括0.75、0.65和0.45。可根据不同组的TH3和TH4值来组合任务L224和L226的测试。在一个此类实例中,如果以下若干组值中的任一者产生正结果,那么L224和L226的结果为正:TH3=1且TH4=0.75;TH3=1.5且TH4=0.65;TH3=3且TH4=0.45;TH3=6(在此状况下,任务L226的结果被视为正)。
如果任务L224和L226的结果为正,那么候选者被接受作为邻近音调峰值,且任务L228将当前滞后估计计算为此样本与终端音调峰值之间的距离。任务L224和L226可以任一次序和/或彼此并行地执行。任务L220还可实施成仅包括任务L224和L226中的一者。如果任务L220在未找到邻近音调峰值的情况下结束,那么可能需要在终端音调峰值的末尾侧上反复任务L220(如图19C中所示,其中开圆指示终端音调峰值)。
如果任务L210和L220中的任一者均不定位音调峰值,那么任务L230在终端音调峰值的前导侧上执行对音调峰值的开放窗口搜索。图17C展示任务L230的实施方案L230a的流程图,所述实施方案L230a包括子任务L232、L234、L236和L238。在距终端音调峰值某一距离D1的样本处,任务L232找到相对于平均帧能量的能量超出(或者,不小于)阈值(例如,TH1)的样本。图20A说明此操作。在一个实例中,D1的值为最小容许滞后值(例如,二十个样本)。任务L234在此样本的宽度为WL4的窗口内找到候选者(例如,具有在振幅或量值方面的最大值的样本)(如图20B中所示)。在一个实例中,WL4的值等于二十个样本。
任务L236使候选者的邻域与终端音调峰值的类似邻域相关。任务L236通常经配置以使以候选者为中心的长度为N3个样本的段与以终端音调峰值为中心的相等长度的段相关。在一个实例中,N3的值等于十一个样本。可能需要配置任务L326以执行正规化相关。可能需要配置任务L326以重复以(例如)候选者之前和之后的一个样本为中心的段的相关(例如,以考量定时偏移和/或取样误差)并选择最大相关结果。对于相关窗口将延伸超出帧边界的状况来说,可能需要移位或截断相关窗口。(对于相关窗口经截断的状况来说,可能需要正规化相关结果,除非所述相关结果已被正规化。)任务T326确定相关结果是否超出(或者,不小于)阈值TH5。在一个实例中,TH5的值等于0.45。如果任务L236的结果为正,那么候选者被接受作为邻近音调峰值,且任务T238将当前滞后估计计算为此样本与终端音调峰值之间的距离。否则,任务L230a跨越帧反复(例如,如图20C中所示,开始于先前搜索窗口的左侧),直到找到音调峰值或搜索完为止。
当滞后估计任务L200已结束时,任务L300执行以定位帧中的任何其它音调脉冲。任务L300可经实施以使用相关和当前滞后估计来定位更多脉冲。举例来说,任务L300可经配置以使用例如相关和样本对RMS能量值等准则来测试围绕滞后估计的窄窗口内的最大值样本。与滞后估计任务L200相比,任务L300可经配置以使用较小搜索窗口和/或宽松的准则(例如,较低阈值),尤其在已找到邻近于终端音调峰值的峰值的情况下。举例来说,在开始帧或其它过渡帧中,脉冲形状可改变,以使得帧内的一些脉冲可能并非强烈相关,且可能需要对于第二脉冲之后的脉冲放松或甚至忽略相关准则,只要脉冲的振幅足够高且位置(例如,根据当前滞后值)为正确的便可。可能需要最小化漏掉有效脉冲的机率,且尤其对于大滞后值来说,帧的有声部分可能并非非常有峰的。在一个实例中,方法M300实现每帧最多八个音调脉冲。
任务L300可经实施以计算下一音调峰值的两个或两个以上不同候选者并根据这些候选者中的一者选择音调峰值。举例来说,任务L300可经配置以基于样本值来选择候选样本并基于相关结果来计算候选距离。图21展示任务L300的实施方案L302的流程图,其包括子任务L310、L320、L330、L340和L350。任务L310初始化候选者搜索的锚定位置。举例来说,任务L310可经配置以使用最新接受的音调峰值的位置作为初始锚定位置。在任务L302的第一反复中,例如,锚定位置可为邻近于终端音调峰值的音调峰值的位置(如果此类峰值由任务L200定位)或另外为终端音调峰值的位置。对于任务L310来说,还可能需要初始化滞后乘数m(例如,初始化为值1)。
任务L320选择候选样本并计算候选距离。任务L320可经配置以如图22A中所示搜索窗口内的这些候选者,其中大的有界水平线指示当前帧,左侧大垂直线指示帧开始,右侧大垂直线指示帧结束,点指示锚定位置,且阴影框指示搜索窗口。在此实例中,窗口以距锚定位置的距离为当前滞后估计与滞后乘数m的乘积的样本为中心,且所述窗口向左(即,在时间上向后)延伸WS个样本且向右(即,在时间上向前)延伸(WS-1)个样本。
任务L320可经配置以将窗口大小参数WS初始化为当前滞后估计的五分之一的值。对于窗口大小参数WS来说,可能需要至少具有最小值(例如,十二个样本)。或者,如果尚未找到邻近于终端音调峰值的音调峰值,那么对于任务L320来说,可能需要将窗口大小参数WS初始化为可能较大值(例如,当前滞后估计的一半)。
为了找到候选样本,任务L320搜索窗口以找到具有最大值的样本并记录此样本的位置和值。任务L320可经配置以在搜索窗口内选择值具有最高振幅的样本。或者,任务L320可经配置以在搜索窗口内选择值具有最高量值或最高能量的样本。
候选距离对应于搜索窗口内的与锚定位置的相关为最高的样本。为了找到此样本,任务L320使窗口内的每一样本的邻域与锚定位置的类似邻域相关,且记录最大相关结果和对应的距离。任务L320通常经配置以使以每一测试样本为中心的长度为N4个样本的段与以锚定位置为中心的相等长度的段相关。在一个实例中,N4的值为十一个样本。对于任务L320来说,可能需要执行正规化相关。
如上所陈述,任务T320可经配置以使用同一搜索窗口来找到候选样本和候选距离。然而,任务T320还可经配置以将不同搜索窗口用于这两个操作。图22B展示任务L320在具有大小参数WS1的窗口上执行对候选样本的搜索的实例,且图22C展示任务L320的同一例项在具有为不同值的大小参数WS2的窗口上执行对候选距离的搜索的实例。
任务L302包括选择候选样本和对应于候选距离的样本中的一者作为音调峰值的子任务L330。图23展示任务L330的实施方案L332的流程图,所述实施方案L332包括子任务L334、L336和L338。
任务L334测试候选距离。任务L334通常经配置以将相关结果与阈值进行比较。对于任务L334来说,还可能需要将基于对应样本的能量的量度(例如,样本能量与帧平均能量的比率)与阈值进行比较。对于已识别仅一个音调脉冲的状况来说,任务L334可经配置以验证候选距离至少等于最小值(例如,最小容许滞后值,例如二十个样本)。图24A的表的各栏展示基于此类参数的值的四组不同测试条件,所述参数值可由任务L334的实施方案使用以确定是否接受对应于候选距离的样本作为音调峰值。
对于任务L334接受对应于候选距离的样本作为音调峰值的状况来说,如果所述样本具有较高振幅(或者,较高量值),那么可能需要向左或向右调整峰值位置(例如,调整一个样本)。作为替代或另外,对于任务L334来说,在此类状况下可能需要针对任务L300的其它反复将窗口大小参数WS的值设定为较小值(例如,十个样本)(或将参数WS1和WS2中的一者或两者设定为此类值)。如果新音调峰值仅为对于帧确认的第二者,那么对于任务L334来说,还可能需要将当前滞后估计计算为锚定位置与峰值位置之间的距离。
任务L302包括测试候选样本的子任务L336。任务L336可经配置以确定样本能量的量度(例如,样本能量与帧平均能量的比率)是否超出(或者,不小于)阈值。可能需要依据对于帧已确认多少个音调峰值而改变阈值。举例来说,对于任务L336来说,可能需要使用较低阈值(例如,T-3)(如果对于帧已确认仅一个音调峰值)且使用较高阈值(例如,T)(如果对于帧已确认一个以上音调峰值)。
对于任务L336选择候选样本作为第二经确认的音调峰值的状况,对于任务L336来说,还可能需要基于与终端音调峰值的相关的结果而向左或向右调整峰值位置(例如,调整一个样本)。在此状况下,任务L336可经配置以使以每一此样本为中心的长度为N5个样本的段与以终端音调峰值为中心的相等长度的段相关(在一个实例中,N5的值为十一个样本)。作为替代或另外,对于任务L336来说,在此类状况下可能需要针对任务L300的其它反复将窗口大小参数WS的值设定为较小值(例如,十个样本)(或将参数WS1和WS2中的一者或两者设定为此类值)。
对于测试任务L334和L336中的两者已失败且对于帧已确认仅一个音调峰值的状况来说,任务L302可经配置以(经由任务L350)递增滞后估计乘数m的值,以m的新值反复任务L320从而选择新候选样本和新候选距离,且对于新候选者重复任务L332。
如图23中所示,任务L336可经布置以在候选距离测试任务L334失败后即刻执行。在任务L332的另一实施方案中,候选样本测试任务L336可经布置以首先执行,以使得候选距离测试任务L334仅在任务L336失败后即刻执行。
任务L332还包括子任务L338。对于测试任务L334和L336中的两者已失败且对于帧已确认一个以上音调峰值的状况来说,任务L338测试候选者中的一者或两者与当前滞后估计的一致性。
图24B展示任务L338的实施方案L338a的流程图。任务L338a包括测试候选距离的子任务L362。如果候选距离与当前滞后估计之间的绝对差小于(或者,不大于)阈值,那么任务L362接受候选距离。在一个实例中,阈值为三个样本。对于任务L362来说,还可能需要验证相关结果和/或对应样本的能量是否为高得可接受。在一个此实例中,如果相关结果不小于0.35且样本能量与帧平均能量的比率不小于0.5,那么任务L362接受小于(或者,不大于)阈值的候选距离。对于任务L362接受候选距离的状况来说,如果此样本具有较高振幅(或者,较高量值),那么对于任务L362来说,还可能需要向左或向右调整峰值位置(例如,调整一个样本)。
任务L338a还包括测试候选样本的滞后一致性的子任务L364。如果(A)候选样本与最接近的音调峰值之间的距离与(B)当前滞后估计之间的绝对差小于(或者,不大于)阈值,那么任务L364接受候选样本。在一个实例中,阈值为低值,例如两个样本。对于任务L364来说,还可能需要验证候选样本的能量为高得可接受。在一个此实例中,如果候选样本通过滞后一致性测试且如果样本能量与帧平均能量的比率不小于(T-5),那么任务L364接受所述候选样本。
展示于图24B中的任务L338a的实施方案还包括另一子任务L366,其对照比任务L364的低阈值宽松的界限测试候选样本的滞后一致性。如果(A)候选样本与最接近的经确认峰值之间的距离与(B)当前滞后估计之间的绝对差小于(或者,不大于)阈值,那么任务L366接受候选样本。在一个实例中,阈值为(0.175*滞后)。对于任务L366来说,还可能需要验证候选样本的能量为高得可接受。在一个此实例中,如果样本能量与帧平均能量的比率不小于(T-3),那么任务L366接受候选样本。
如果候选样本和候选距离两者均未通过所有测试,那么任务L302(经由任务L350)递增滞后估计乘数m,以m的新值反复任务L320从而选择新候选样本和新候选距离,并针对新候选者重复任务L330直到到达帧边界为止。一旦已确认新音调峰值,便可能需要在同一方向搜索另一峰值直到到达帧边界为止。在此状况下,任务L340将锚定位置移动到新音调峰值,并将滞后估计乘数m的值复位为一。当到达帧边界时,可能需要将锚定位置初始化到终端音调峰值位置并在相反方向上重复任务L300。
滞后估计从一个帧到下一帧的较大程度减小可指示音调溢出错误。此类错误由音调频率的下降引起,以使得当前帧的滞后值超出最大容许滞后值。对于方法M300来说,可能需要将先前滞后估计与当前滞后估计之间的绝对或相对差与阈值(例如,在计算新滞后估计时或在方法结束时)进行比较并在检测到错误的情况下仅保持帧的最大音调峰值。在一个实例中,阈值等于先前滞后估计的50%。
对于具有两个拥有大量值平方比的脉冲的分类为瞬变的帧(例如,通常朝向字的结束的具有大音调改变的帧)来说,可能需要在接受较小峰值作为音调峰值之前在整个当前滞后估计上而非仅在较小窗口上进行相关。此类状况可在男性话音中出现,所述男性话音通常具有可在小窗口上与主峰值良好相关的次峰值。任务L200和L300中的一者或两者可实施成包括此类操作。
应明确地注意到,方法M300的滞后估计任务L200可为与方法M100的滞后估计任务E130相同的任务。应明确地注意到,方法M300的终端音调峰值定位任务L100可为与方法M100的终端音调峰值位置计算任务E120相同的任务。对于执行方法M100和M300两者的应用来说,可能需要布置音调脉冲形状选择任务E110以在结束方法M300后即刻执行。
图27A展示经配置以检测语音信号的帧的音调峰值的设备MF300的框图。设备MF300包括用于定位帧的终端音调峰值(例如,如上文参考任务L100的各种实施方案所描述)的装置ML100。设备MF300包括用于估计帧的音调滞后(例如,如上文参考任务L200的各种实施方案所描述)的装置ML200。设备MF300包括用于定位帧的额外音调峰值(例如,如上文参考任务L300的各种实施方案所描述)的装置ML300。
图27B展示经配置以检测语音信号的帧的音调峰值的设备A300的框图。设备A300包括终端音调峰值定位器A310,其经配置以定位帧的终端音调峰值(例如,如上文参考任务L100的各种实施方案所描述)。设备A300包括音调滞后估计器A320,其经配置以估计帧的音调滞后(例如,如上文参考任务L200的各种实施方案所描述)。设备A300包括额外音调峰值定位器A330,其经配置以定位帧的额外音调峰值(例如,如上文参考任务L300的各种实施方案所描述)。
图27C展示经配置以检测语音信号的帧的音调峰值的设备MF350的框图。设备MF350包括用于检测帧的音调峰值(例如,如上文参考任务L100的各种实施方案所描述)的装置ML150。设备MF350包括用于选择候选样本(例如,如上文参考任务L320和L320b的各种实施方案所描述)的装置ML250。设备MF350包括用于选择候选距离(例如,如上文参考任务L320和L320a的各种实施方案所描述)的装置ML260。设备MF350包括用于选择候选样本与对应于候选距离的样本中的一者作为帧的音调峰值(例如,如上文参考任务L330的各种实施方案所描述)的装置ML350。
图27D展示经配置以检测语音信号的帧的音调峰值的设备A350的框图。设备A350包括峰值检测器150,其经配置以检测帧的音调峰值(例如,如上文参考任务L100的各种实施方案所描述)。设备A350包括样本选择器250,其经配置以选择候选样本(例如,如上文参考任务L320和L320b的各种实施方案所描述)。设备A350包括距离选择器260,其经配置以选择候选距离(例如,如上文参考任务L320和L320a的各种实施方案所描述)。设备A350包括峰值选择器350,其经配置以选择候选样本和对应于候选距离的样本中的一者作为帧的音调峰值(例如,如上文参考任务L330的各种实施方案所描述)。
可能需要实施语音编码器AE10、任务E100、第一帧编码器100和/或装置FE100以产生唯一地指示帧的终端音调脉冲的位置的经编码的帧。终端音调脉冲的位置与滞后值组合为解码可能缺乏此类时间同步性信息的随后的帧(例如,使用例如QPPP等译码方案编码的帧)提供重要的相位信息。还可能需要将传达此位置信息所需的位的数目最小化。虽然通常将需要8个位(一般来说为个位)来表示160位(一般来说为N位)帧中的唯一位置,但可使用如本文中所描述的方法来仅以7个位(一般来说为个位)编码终端音调脉冲的位置。此方法保留所述7位值中的一者(例如,127(一般来说为)以用作音调脉冲位置模式值。在此描述中,术语“模式值”指示参数(例如,音调脉冲位置或所估计的音调周期)可能值,其经指派以指示操作模式的改变而并非所述参数的实际值。
对于给出终端音调脉冲相对于最后样本(即,帧的最终边界)的位置的情形,帧将与以下三种状况中的一者匹配:
状况1:终端音调脉冲相对于帧的最后样本的位置小于(例如,对于如图29A中所展示的160位帧,小于127),且帧含有一个以上音调脉冲。在此状况下,将终端音调脉冲的位置编码成个位(7个位),且还发射音调滞后(例如,以7个位)。
状况2:终端音调脉冲相对于帧的最后样本的位置小于(例如,对于如图29A中所展示的160位帧,小于127),且帧仅含有一个音调脉冲。在此状况下,将终端音调脉冲的位置编码成个位(例如,7个位),且将音调滞后设定为滞后模式值(在此实例中,为(例如,127))。
状况3:如果终端音调脉冲相对于帧的最后样本的位置大于(例如,对于如图29B中所展示的160位帧,大于126),那么未必可能帧含有一个以上音调脉冲。对于160位帧和8kHz的取样率,此将暗示帧的约第一个20%中的至少250Hz的音调下的活动,在帧的剩余部分中无音调脉冲。对于此类帧来说,将未必可能分类为开始帧。在此状况下,代替实际脉冲位置发射音调脉冲位置模式值(例如,如上文所注明的或127),且使用滞后位来载运终端音调脉冲相对于帧的第一样本(即,帧的初始边界)的位置。对应的解码器可经配置以测试经编码的帧的位置位是否指示音调脉冲位置模式值(例如,脉冲位置)。如果是,那么解码器可接着改为从经编码的帧的滞后位获得终端音调脉冲相对于帧的第一样本的位置。
在如应用于160位帧的状况3中,33个此类位置是可能的(即,0到32)。通过将所述位置中的一者舍入到另一者(例如,通过将位置159舍入到位置158,或通过将位置127舍入到位置128),可仅以5个位来发射实际位置,进而使经编码的帧的7个滞后位中的两者保持空闲以载运其它信息。将音调脉冲位置中的一者或一者以上舍入到其它音调脉冲位置的此类方案还可用于任何其它长度的帧以减少待编码的唯一音调脉冲位置的总数目,可能减少二分之一(例如,通过将每一对邻近位置舍入到用于编码的单一位置)或甚至二分之一以上。
图28展示根据一般配置的方法M500的流程图,所述方法M500根据上述三种状况操作。方法M500经配置以使用r个位编码q位帧中的终端音调脉冲的位置,其中r小于log2q。在一个如上文所论述的实例中,q等于160且r等于7。可在语音编码器AE10的实施方案内(例如,在任务E100的实施方案、第一帧编码器100的实施方案和/或装置FE100的实施方案内)执行方法M500。可大体针对r的大于1的任何整数值应用此类方法。对于语音应用来说,r通常具有在6到9(对应于q的从65到1023的值)的范围中的值。
方法M500包括任务T510、T520和T530。任务T510确定终端音调脉冲位置(相对于帧的最后样本)是否大于(2r-2)(例如,大于126)。如果结果为真,那么帧与上述状况3匹配。在此状况下,任务T520将终端音调脉冲位置位(例如,载运经编码的帧的包的终端音调脉冲位置位)设定为音调脉冲位置模式值(例如,如上文所注明的2r-1或127)且将滞后位(例如,所述包的滞后位)设定为等于终端音调脉冲相对于帧的第一样本的位置。
如果任务T510的结果为假,那么任务T530确定帧是否仅含有一个音调脉冲。如果任务T530的结果为真,那么帧与上述状况2匹配,且不需要发射滞后值。在此状况下,任务T540将滞后位(例如,所述包的滞后位)设定为滞后模式值(例如,2r-1)。
如果任务T530的结果为假,那么帧含有一个以上音调脉冲且终端音调脉冲相对于帧的结束的位置不大于(2r-2)(例如,不大于126)。此类帧与上述状况1匹配,且任务T550以r个位对所述位置进行编码且将滞后值编码成滞后位。
对于给出终端音调脉冲相对于第一样本(即,初始边界)的位置的情形来说,帧将与以下三种状况中的一者匹配:
状况1:终端音调脉冲相对于帧的第一样本的位置大于(例如,对于如图29C中所展示的160位帧,大于32),且帧含有一个以上音调脉冲。在此状况下,将终端音调脉冲的位置负编码成个位(例如,7个位),且还发射音调滞后(例如,以7个位)。
状况2:终端音调脉冲相对于帧的第一样本的位置大于(例如,对于如图29C中所展示的160位帧,大于32),且帧仅含有一个音调脉冲。在此状况下,将终端音调脉冲的位置负编码成个位(例如,7个位),且将音调滞后设定为滞后模式值(在此实例中,为(例如,127))。
状况3:如果终端音调脉冲的位置不大于(例如,对于如图29D中所展示的160位帧,不大于32),那么未必可能帧含有一个以上音调脉冲。对于160位帧和8kHz的取样率,此将暗示帧的约第一个20%中的至少250Hz的音调下的活动,在帧的剩余部分中无音调脉冲。对于此类帧来说,将未必可能分类为开始帧。在此状况下,代替实际脉冲位置发射音调脉冲位置模式值(例如,或127),且使用滞后位来发射终端音调脉冲相对于帧的第一样本(即,初始边界)的位置。对应的解码器可经配置以测试经编码的帧的位置位是否指示音调脉冲位置模式值(例如,脉冲位置)。如果是,那么解码器可接着改为从经编码的帧的滞后位获得终端音调脉冲相对于帧的第一样本的位置。
在如应用于160位帧的状况3中,33个此类位置是可能的(0到32)。通过将所述位置中的一者舍入到另一者(例如,通过将位置0舍入到位置1,或通过将位置32舍入到位置31),可仅以5个位来发射实际位置,进而使经编码的帧的7个滞后位中的两者保持空闲以载运其它信息。将脉冲位置中的一者或一者以上舍入到其它脉冲位置的此类方案还可用于任何其它长度的帧以减少待编码的唯一位置的总数目,可能减少二分之一(例如,通过将每一对邻近位置舍入到用于编码的单一位置)或甚至二分之一以上。所属领域的技术人员将认识到,可针对给出终端音调脉冲相对于第一样本的位置的情形修改方法M500。
图30A展示根据一般配置的处理语音信号帧的方法M400的流程图,所述方法M400包括任务E310和E320。可在语音编码器AE10的实施方案内(例如,在任务E100的实施方案、第一帧编码器100的实施方案和/或装置FE100的实施方案内)执行方法M400。任务E310计算第一语音信号帧内的位置(“第一位置”)。所述第一位置为所述帧的终端音调脉冲相对于所述帧的最后样本(或者,相对于所述帧的第一样本)的位置。任务E310可实施为如本文中所描述的脉冲位置计算任务E120或L100的例项。任务E320产生载运第一语音信号帧且包括第一位置的第一包。
方法M400还包括任务E330和E340。任务E330计算第二语音信号帧内的位置(“第二位置”)。所述第二位置为所述帧的终端音调脉冲相对于(A)所述帧的第一样本和(B)所述帧的最后样本中的一者的位置。任务E330可实施为如本文中所描述的脉冲位置计算任务E120的例项。任务E340产生载运第二语音信号帧且包括帧内的第三位置的第二包。所述第三位置为终端音调脉冲相对于帧的第一样本和帧的最后样本中的另一者的位置。换句话说,如果任务T330计算相对于最后样本的第二位置,那么第三位置相对于第一样本,且反之亦然。
在一个特定实例中,第一位置为第一语音信号帧的最终音调脉冲相对于帧的最终样本的位置,第二位置为第二语音信号帧的最终音调脉冲相对于帧的最终样本的位置,且第三位置为第二语音信号帧的最终音调脉冲相对于帧的第一样本的位置。
通过方法M400处理的语音信号帧通常为LPC残余信号的帧。第一和第二语音信号帧可来自同一话音通信会话或可来自不同话音通信会话。举例来说,第一和第二语音信号帧可来自由一人说出的语音信号或可来自各自由不同的人说出的两个不同语音信号。语音信号帧可在计算音调脉冲位置之前和/或之后经历其它处理操作(例如,感知加权)。
对于第一包与第二包两者来说,可能需要符合指示不同信息项的在包内的对应位置的包描述(也称为包模板)。产生包的操作(例如,如由任务E320和E340执行)可包括根据此类包模板将不同信息项写入到缓冲器。可能需要根据此类模板产生包以促进包的解码(例如,通过根据由包载运的值在包内的位置使所述值与对应的参数相关联)。
包模板的长度可等于经编码的帧的长度(例如,对于四分之一速率译码方案,为40个位)。在一个此类实例中,包模板包括用以指示LSP值和编码模式的17位区域、用以指示终端音调脉冲的位置的7位区域、用以指示所估计的音调周期的7位区域、用于指示脉冲形状的7位区域和用以指示增益简档的2位区域。其它实例包括用于LSP值的区域较小且用于增益简档的区域对应地较大的模板。或者,包模板可比经编码的帧长(例如,对于包载运一个以上经编码的帧的状况)。包产生操作或经配置以执行此类操作的包产生器还可经配置以产生不同长度的包(例如,对于某一帧信息不如其它帧信息频繁地编码的状况)。
在一个一般状况下,方法M400经实施以使用包括第一和第二组位位置的包模板。在此类状况下,任务E320可经配置以产生第一包以使得第一位置占用第一组位位置,且任务E340可经配置以产生第二包以使得第三位置占用第二组位位置。对于第一组位位置与第二组位位置来说,可能需要不相交(即,使得无包的位在两组中)。图31A展示包括不相交的第一组位位置和第二组位位置的包模板PT10的一个实例。在此实例中,第一组和第二组中的每一者为一系列连续的位位置。然而,大体来说,一组内的位位置不需要彼此邻近。图31B展示包括不相交的第一组位位置和第二组位位置的另一包模板PT20的实例。在此实例中,第一组包括彼此由一个或一个以上其它位位置分离的两个位位置系列。包模板中的两组不相交的位位置甚至可至少部分地交错,如(例如)图31C中所说明。
图30B展示方法M400的实施方案M410的流程图。方法M410包括将第一位置与阈值进行比较的任务E350。任务E350产生在第一位置小于所述阈值时具有第一状态且在第一位置大于所述阈值时具有第二状态的结果。在此状况下,任务E320可经配置以响应于具有第一状态的任务E350的结果产生第一包。
在一个实例中,任务E350的结果在第一位置小于阈值时具有第一状态且否则(即,在第一位置不小于阈值时)具有第二状态。在另一实例中,任务E350的结果在第一位置不大于阈值时具有第一状态且否则(即,在第一位置大于阈值时)具有第二状态。任务E350可实施为如本文中所描述的任务T510的例项。
图30C展示方法M410的实施方案M420的流程图。方法M420包括将第二位置与阈值进行比较的任务E360。任务E360产生在第二位置小于所述阈值时具有第一状态且在第二位置大于所述阈值时具有第二状态的结果。在此状况下,任务E340可经配置以响应于具有第二状态的任务E360的结果产生第二包。
在一个实例中,任务E360的结果在第二位置小于阈值时具有第一状态且否则(即,在第二位置不小于阈值时)具有第二状态。在另一实例中,任务E360的结果在第二位置不大于阈值时具有第一状态且否则(即,在第二位置大于阈值时)具有第二状态。任务E360可实施为如本文中所描述的任务T510的例项。
方法M400通常经配置以基于第二位置来获得第三位置。举例来说,方法M400可包括通过从帧长度减去第二位置且递减结果或通过从比帧长度小一的值减去第二位置或通过执行基于第二位置和帧长度的另一操作计算第三位置的任务。然而,方法M400可以其它方式配置以根据本文中所描述(例如,参考任务E120)的音调脉冲位置计算操作中的任一者获得第三位置。
图32A展示方法M400的实施方案M430的流程图。方法M430包括估计帧的音调周期的任务E370。任务E370可实施为如本文中所描述的音调周期估计任务E130或L200的例项。在此状况下,包产生任务E320经实施以使得第一包包括指示所估计的音调周期的经编码的音调周期值。举例来说,任务E320可经配置以使得经编码的音调周期值占用包的第二组位位置。方法M430可经配置以计算经编码的音调周期值(例如,在任务E370内)以使得其将所估计的音调周期指示为相对于最小音调周期值(例如,20)的偏移。举例来说,方法M430(例如,任务E370)可经配置以通过从所估计的音调周期减去最小音调周期值而计算经编码的音调周期值。
图32B展示方法M430的实施方案M440的流程图,所述实施方案M440还包括如本文中所描述的比较任务E350。图32C展示方法M440的实施方案M450的流程图,所述实施方案M450还包括如本文中所描述的比较任务E360。
图33A展示经配置以处理语音信号帧的设备MF400的框图。设备MF100包括用于计算第一位置(例如,如上文参考任务E310、E120和/或L100的各种实施方案所描述)的装置FE310和用于产生第一包(例如,如上文参考任务E320的各种实施方案所描述)的装置FE320。设备MF100包括用于计算第二位置(例如,如上文参考任务E330、E120和/或L100的各种实施方案所描述)的装置FE330和用于产生第二包(例如,如上文参考任务E340的各种实施方案所描述)的装置FE340。设备MF400还可包括用于计算第三位置(例如,如上文参考方法M400所描述)的装置。
图33B展示设备MF400的实施方案MF410的框图,所述实施方案MF410还包括用于将第一位置与阈值进行比较(例如,如上文参考任务E350的各种实施方案所描述)的装置FE350。图33C展示设备MF410的实施方案MF420的框图,所述实施方案MF420还包括用于将第二位置与阈值进行比较(例如,如上文参考任务E360的各种实施方案所描述)的装置FE360。
图34A展示设备MF400的实施方案MF430的框图。设备MF430包括用于估计第一帧的音调周期(例如,如上文参考任务E370、E130和/或L200的各种实施方案所描述)的装置FE370。图34B展示设备MF430的实施方案MF440的框图,所述实施方案MF440包括装置FE370。图34C展示设备MF440的实施方案MF450的框图,所述实施方案MF450包括装置FE360。
图35A展示根据一般配置用于处理语音信号帧的设备(例如,帧编码器)A400的框图,所述设备A400包括音调脉冲位置计算器160和包产生器170。音调脉冲位置计算器160经配置以计算第一语音信号帧内的第一位置(例如,如上文参考任务E310、E120和/或L100所描述)且计算第二语音信号帧内的第二位置(例如,如上文参考任务E330、E120和/或L100所描述)。举例来说,音调脉冲位置计算器160可实施为如本文中所描述的音调脉冲位置计算器120或终端峰值定位器A310的例项。包产生器170经配置以产生表示第一语音信号帧且包括第一位置的第一包(例如,如上文参考任务E320所描述)且产生表示第二语音信号帧且包括第二语音信号帧内的第三位置的第二包(例如,如上文参考任务E340所描述)。
包产生器170可经配置以产生包括指示经编码的帧的其它参数值(例如,编码模式、脉冲形状、一个或一个以上LSP向量和/或增益简档)的信息的包。包产生器170可经配置以从设备A400的其它元件和/或从包括设备A400的装置的其它元件接收此信息。举例来说,设备A400可经配置以执行LPC分析(例如,以产生语音信号帧)或从另一元件(例如,残余产生器RG10的例项)接收LPC分析参数(例如,一个或一个以上LSP向量)。
图35B展示设备A400的实施方案A402的框图,所述实施方案A402还包括比较器180。比较器180经配置以将第一位置与阈值进行比较并产生在第一位置小于所述阈值时具有第一状态且在第一位置大于所述阈值时具有第二状态的第一输出(例如,如上文参考任务E350的各种实施方案所描述)。在此状况下,包产生器170可经配置以响应于具有第一状态的第一输出而产生第一包。
比较器180还可经配置以将第二位置与阈值进行比较并产生在第二位置小于所述阈值时具有第一状态且在第二位置大于所述阈值时具有第二状态的第二输出(例如,如上文参考任务E360的各种实施方案所描述)。在此状况下,包产生器170可经配置以响应于具有第二状态的第二输出而产生第二包。
图35C展示设备A400的实施方案A404的框图,所述实施方案A404包括经配置以估计第一语音信号帧的音调周期(例如,如上文参考任务E370、E130和/或L200所描述)的音调周期估计器190。举例来说,音调周期估计器190可实施为如本文中所描述的音调周期估计器130或音调滞后估计器A320的例项。在此状况下,包产生器170经配置以产生第一包以使得指示所估计的音调周期的一组位占用第二组位位置。图35D展示设备A402的实施方案A406的框图,所述实施方案A406包括音调周期估计器190。
语音编码器AE10可实施成包括设备A400。举例来说,语音编码器AE20的第一帧编码器104可实施成包括设备A400的例项以使得音调脉冲位置计算器120还充当计算器160(音调周期估计器130可能还充当估计器190)。
图36A展示根据一般配置解码经编码的帧(例如,包)的方法M550的流程图。方法M550包括任务D305、D310、D320、D330、D340、D350,和D360。任务D305从经编码的帧提取值P和L。对于经编码的帧符合如本文中所描述的包模板的状况来说,任务D305可经配置以从经编码的帧的第一组位位置提取P且从经编码的帧的第二组位位置提取L。任务D310将P与音调位置模式值进行比较。如果P等于所述音调位置模式值,那么任务D320从L获得相对于经解码的帧的第一样本和最后样本中的一者的脉冲位置。任务D320还将值1指派给帧中的脉冲的数目N。如果P不等于所述音调位置模式值,那么任务D330从P获得相对于经解码的帧的第一样本和最后样本中的另一者的脉冲位置。任务D340将L与音调周期模式值进行进行比较。如果L等于所述音调周期模式值,那么任务D350将值1指派给帧中的脉冲的数目N。否则,任务D360从L获得音调周期值。在一个实例中,任务D360经配置以通过将最小音调周期值与L相加来计算音调周期值。如本文中所描述的帧解码器300或装置FD100可经配置以执行方法M550。
图37展示根据一般配置解码包的方法M560的流程图,所述方法M560包括任务D410、D420和D430。任务D410从第一包(例如,如由方法M400的实施方案产生)提取第一值。对于第一包符合如本文中所描述的模板的状况来说,任务D410可经配置以从所述包的第一组位位置提取第一值。任务D420将第一值与音调脉冲位置模式值进行比较。任务D420可经配置以产生在第一值等于所述音调脉冲位置模式值时具有第一状态且否则具有第二状态的结果。任务D430根据第一值将音调脉冲布置于第一激励信号内。任务D430可实施为如本文中所描述的任务D110的例项且可经配置以响应于任务D420的结果具有第二状态而执行。任务D430可经配置以将音调脉冲布置于第一激励信号内以使得音调脉冲的峰值相对于第一样本和最后样本中的一者的位置与第一值一致。
方法M560还包括任务D440、D450、D460和D470。任务D440从第二包提取第二值。对于第二包符合如本文中所描述的模板的状况来说,任务D440可经配置以从所述包的第一组位位置提取第二值。任务D470从第二包提取第三值。对于包符合如本文中所描述的模板的状况来说,任务D470可经配置以从所述包的第二组位位置提取第三值。任务D450将第二值与音调脉冲位置模式值进行比较。任务D450可经配置以产生在第二值等于所述音调脉冲位置模式值时具有第一状态且否则具有第二状态的结果。任务D460根据第三值将音调脉冲布置于第二激励信号内。任务D460可实施为如本文中所描述的任务D110的另一例项且可经配置以响应于任务D450的结果具有第一状态而执行。
任务D460可经配置以将音调脉冲布置于第二激励信号内以使得音调脉冲的峰值相对于第一样本和最后样本中的另一者的位置与第三值一致。举例来说,如果任务D430将音调脉冲布置于第一激励信号内以使得音调脉冲的峰值相对于第一激励信号的最后样本的位置与第一值一致,那么任务D460可经配置以将音调脉冲布置于第二激励信号内以使得音调脉冲的峰值相对于第二激励信号的第一样本的位置与第三值一致,且反之亦然。如本文中所描述的帧解码器300或装置FD100可经配置以执行方法M560。
图38展示方法M560的实施方案M570的流程图,所述实施方案M570包括任务D480和D490。任务D480从第一包提取第四值。对于第一包符合如本文中所描述的模板的状况来说,任务D480可经配置以从所述包的第二组位位置提取第四值(例如,经编码的音调周期值)。基于第四值,任务D490将另一音调脉冲(“第二音调脉冲”)布置于第一激励信号内。任务D490还可经配置以基于第一值将第二音调脉冲布置于第一激励信号内。举例来说,任务D490可经配置以相对于第一经配置的音调脉冲将第二音调脉冲布置于第一激励信号内。任务D490可实施为如本文中所描述的任务D120的例项。
任务D490可经配置以布置第二音调峰值以使得两个音调峰值之间的距离等于基于第四值的音调周期值。在此状况下,任务D480或任务D490可经配置以计算所述音调周期值。举例来说,任务D480或任务D490可经配置以通过将最小音调周期值与第四值相加来计算音调周期值。
图39展示用于解码包的设备MF560的框图。设备MF560包括用于从第一包提取第一值(例如,如上文参考任务D410的各种实施方案所描述)的装置FD410、用于将第一值与音调脉冲位置模式值进行比较(例如,如上文参考任务D420的各种实施方案所描述)的装置FD420,以及用于根据第一值将音调脉冲布置于第一激励信号内(例如,如上文参考任务D430的各种实施方案所描述)的装置FD430。装置FD430可实施为如本文中所描述的装置FD110的例项。设备MF560还包括用于从第二包提取第二值(例如,如上文参考任务D440的各种实施方案所描述)的装置FD440、用于从第二包提取第三值(例如,如上文参考任务D470的各种实施方案所描述)的装置FD470、用于将第二值与音调脉冲位置模式值进行比较(例如,如上文参考任务D450的各种实施方案所描述)的装置FD450,以及用于根据第三值将音调脉冲布置于第二激励信号内(例如,如上文参考任务D460的各种实施方案所描述)的装置FD460。装置FD460可实施为装置FD110的另一例项。
图40展示设备MF560的实施方案MF570的框图。设备MF570包括用于从第一包提取第四值(例如,如上文参考任务D480的各种实施方案所描述)的装置FD480,以及用于基于第四值将另一音调脉冲布置于第一激励信号内(例如,如上文参考任务D490的各种实施方案所描述)的装置FD490。装置FD490可实施为如本文中所描述的装置FD120的例项。
图36B展示用于解码包的设备A560的框图。设备A560包括经配置以从第一包提取第一值(例如,如上文参考任务D410的各种实施方案所描述)的包解析器510、经配置以将第一值与音调脉冲位置模式值进行比较(例如,如上文参考任务D420的各种实施方案所描述)的比较器520,以及经配置以根据第一值将音调脉冲布置于第一激励信号内(例如,如上文参考任务D430的各种实施方案所描述)的激励信号产生器530。包解析器510还经配置以从第二包提取第二值(例如,如上文参考任务D440的各种实施方案所描述)且从第二包提取第三值(例如,如上文参考任务D470的各种实施方案所描述)。比较器520还经配置以将第二值与音调脉冲位置模式值进行比较(例如,如上文参考任务D450的各种实施方案所描述)。激励信号产生器530还经配置以根据第三值将音调脉冲布置于第二激励信号内(例如,如上文参考任务D460的各种实施方案所描述)。激励信号产生器530可实施为如本文中所描述的第一激励信号产生器310的例项。
在设备A560的另一实施方案中,包解析器510还经配置以从第一包提取第四值(例如,如上文参考任务D480的各种实施方案所描述),且激励信号产生器530还经配置以基于第四值将另一音调脉冲布置于第一激励信号内(例如,如上文参考任务D490的各种实施方案所描述)。
语音解码器AD10可实施成包括设备A560。举例来说,语音解码器AD20的第一帧解码器304可实施成包括设备A560的例项以使得第一激励信号产生器310还充当激励信号产生器530。
四分之一速率实现每帧40个位。在如由编码任务E100、编码器100或装置FE100的实施方案应用的过渡帧译码格式(例如,包模板)的一个实例中,17位区域用以指示LSP值和编码模式,7位区域用以指示终端音调脉冲的位置,7位区域用以指示滞后,7位区域用以指示脉冲形状,且2位区域用以指示增益简档。其它实例包括用于LSP值的区域较小且用于增益简档的区域对应地较大的格式。
对应的解码器(例如,解码器300或560或装置FD100或MF560的实施方案,或执行解码方法M550或M560或解码任务D100的实施方案的装置)可经配置以通过将所指示的脉冲形状向量复制到由终端音调脉冲位置和滞后值指示的位置中的每一者且根据增益VQ表输出按比例缩放所得信号而从脉冲形状VQ表输出建构激励信号。对于所指示的脉冲形状向量比滞后值长的状况来说,可通过将每一对重叠值求平均、通过选择每一对中的一个值(例如,最高值或最低值,或属于左侧或右侧的脉冲的值)或通过简单地废除超过滞后值的样本来处置邻近脉冲之间的任何重叠。类似地,当布置激励信号的第一音调脉冲或最后音调脉冲(例如,根据音调脉冲峰值位置和/或滞后估计)时,可将落在帧边界外部的任何样本与邻近帧的对应样本求平均或简单地将其废除。
激励信号的音调脉冲并不简单地为脉冲或尖峰(spike)。事实上,音调脉冲通常具有取决于说话者的随时间而变的振幅简档或形状,且保存此形状对于说话者辨识可为重要的。可能需要编码音调脉冲形状的良好表示以充当用于后续有声帧的参考(例如,原型)。
音调脉冲的形状提供对于说话者识别和辨识来说感知上重要的信息。为了将此信息提供到解码器,过渡帧译码模式(例如,如由任务E100、编码器100或装置FE100的实施方案执行)可经配置以在经编码的帧中包括音调脉冲形状信息。编码音调脉冲形状可呈现量化维度可变的向量的问题。举例来说,残余中的音调周期的长度和因此音调脉冲的长度可在较宽范围上变化。在如上文所描述的一个实例中,容许音调滞后值在20到146个样本的范围内。
可能需要编码音调脉冲的形状而并不将所述脉冲转换到频域。图41展示根据一般配置对帧进行编码的方法M600的流程图,所述方法M600可在任务E100的实施方案内、由第一帧编码器100的实施方案和/或由装置FE100的实施方案执行。方法M600包括任务T610、T620、T630、T640和T650。任务T610依据帧具有单一音调脉冲还是多个音调脉冲而选择两个处理路径中的一者。在执行任务T610之前,可能需要至少足够地执行用于检测音调脉冲的方法(例如,方法M300)以确定帧具有单一音调脉冲还是多个音调脉冲。
对于单脉冲帧来说,任务T620选择一组不同单脉冲向量量化(VQ)表中的一者。在此实例中,任务T620经配置以根据帧内的音调脉冲的位置(例如,如由任务E120或L100、装置FE120或ML100、音调脉冲位置计算器120或终端峰值定位器A310计算)选择VQ表。任务T630接着通过选择选定的VQ表的向量(例如,通过找到选定的VQ表内的最佳匹配且输出对应的索引)来量化脉冲形状。
任务T630可经配置以选择能量最接近于待匹配的脉冲形状的脉冲形状向量。待匹配的脉冲形状可为整个帧或包括峰值的帧的某一较小部分(例如,峰值的某一距离(例如,帧长度的四分之一)内的段)。在执行匹配操作之前,可能需要将待匹配的脉冲形状的振幅正规化。
在一个实例中,任务T630经配置以计算待匹配的脉冲形状与选定的表的每一脉冲形状向量之间的差,且选择具有最小能量的对应于所述差的脉冲形状向量。在另一实例中,任务T630经配置以选择能量最接近于待匹配的脉冲形状的能量的脉冲形状向量。在此类状况下,可将序列样本(例如,音调脉冲或其它向量)的能量计算为平方样本的总和。任务T630可实施为如本文中所描述的脉冲形状选择任务E110的例项。
所述组单脉冲VQ表中的每一表具有可与帧的长度(例如,160个样本)一样大的向量维度。对于每一表来说,可能需要具有与待与所述表中的向量匹配的脉冲形状相同的向量维度。在一个特定实例中,所述组单脉冲VQ表包括三个表,每一表具有高达128个条目,以使得脉冲形状可编码为7位索引。
对应的解码器(例如,解码器300、MF560或A560或装置FD100的实施方案,或执行解码任务D100或方法M560的实施方案的装置)可经配置以在经编码的帧的脉冲位置值(例如,如由如本文中所描述的提取任务D305或D440、装置FD440或包解析器510确定)等于音调脉冲位置模式值(例如,(2r-1)或127)的情况下将帧识别为单脉冲。此类决策可基于如本文中所描述的比较任务D310或D450、装置FD450或比较器520的输出。作为替代或另外,此解码器可经配置以在滞后值等于音调周期模式值(例如,(2r-1)或127)的情况下将帧识别为单脉冲。
任务T640从多脉冲帧提取待匹配的至少一个音调脉冲。举例来说,任务T640可经配置以提取具有最大增益的音调脉冲(例如,含有最高峰值的音调脉冲)。对于所提取的音调脉冲的长度来说,可能需要等于所估计的音调周期(如(例如)由任务E370、E130或L200计算)。当提取脉冲时,可能需要确保所述峰值并非所提取的脉冲的第一样本或最后样本(此可导致一个或一个以上重要样本的不连续性和/或省略)。在一些状况下,对于语音质量来说,峰值之后的信息可能比峰值之前的信息重要,因此可能需要提取脉冲以使得峰值靠近开始。在一个实例中,任务T640从在音调峰值之前的两个样本开始的音调周期提取形状。此做法允许俘获在峰值之后出现且可能含有重要形状信息的样本。在另一实例中,可能需要俘获峰值之前的也可能含有重要信息的更多样本。在另一实例中,任务T640经配置以提取以所述峰值为中心的音调周期。对于任务T640来说,可能需要从帧提取一个以上音调脉冲(例如,提取具有最高峰值的两个音调脉冲)且从所提取的音调脉冲计算待匹配的平均脉冲形状。对于任务T640和/或任务T660来说,可能需要在执行脉冲形状向量选择之前将待匹配的脉冲形状的振幅正规化。
对于多脉冲帧来说,任务T650基于滞后值(或所提取的原型的长度)选择脉冲形状VQ表。可能需要提供一组9个或10个脉冲形状VQ表以编码多脉冲帧。所述组中的VQ表的每一者具有不同的向量维度且与不同的滞后范围或“频段”相关联。在此状况下,任务T650确定哪一频段含有当前所估计的音调周期(如(例如)由任务E370、E130或L200计算)且选择对应于所述频段的VQ表。如果当前所估计的音调周期等于105个样本,那么(例如)任务T650可选择对应于包括101到110个样本的滞后范围的频段的VQ表。在一个实例中,多脉冲脉冲形状VQ表中的每一者具有高达128个条目,以使得脉冲形状可编码为7位索引。通常,VQ表中的所有脉冲形状向量将具有相同向量维度,而所述VQ表中的每一者通常将具有不同向量维度(例如,等于对应频段的滞后范围中的最大值)。
任务T660通过选择选定的VQ表的向量(例如,通过寻找选定的VQ表内的最佳匹配且输出对应的索引)而量化脉冲形状。因为待量化的脉冲形状的长度可能不确切地与表条目的长度匹配,所以任务T660可经配置以在从表选择最佳匹配之前对脉冲形状(例如,在结束处)填零以与对应的表向量大小匹配。作为替代或另外,任务T660可经配置以在从表选择最佳匹配之前将脉冲形状截断以与对应的表向量大小匹配。
可以均匀方式或以非均匀方式将可能的(容许)滞后值的范围划分成频段。在如图42A中所说明的均匀划分的一个实例中,将20到146个样本的滞后范围划分成以下九个频段:20-33、34-47、48-61、62-75、76-89、90-103、104-117、118-131和132-146个样本。在此实例中,所有频段具有14个样本的宽度(具有15个样本的宽度的最后频段除外)。
如上文所阐述的均匀划分可在高音调频率下导致降低的质量(与低音调频率下的质量相比)。在上述实例中,任务T660可经配置以在匹配之前使具有20个样本的长度的音调脉冲延伸(例如,填零)65%,而具有132个样本的长度的音调脉冲可能仅延伸(例如,填零)11%。使用非均匀划分的一个潜在优点是使在不同滞后频段中最大相对延伸等化。在如图42B中所说明的非均匀划分的一个实例中,将20到146个样本的滞后范围划分成以下九个频段:20-23、24-29、30-37、38-47、48-60、61-76、77-96、97-120和121-146个样本。在此状况下,任务T660可经配置以在匹配之前使具有20个样本的长度的音调脉冲延伸(例如,填零)15%且使具有121个样本的长度的音调脉冲延伸(例如,填零)21%。在此划分方案中,20-146个样本的范围中的任何音调脉冲的最大延伸仅为25%。
对应的解码器(例如,解码器300、MF560或A560或装置FD100的实施方案,或执行解码任务D100或方法M560的实施方案的装置)可经配置以从经编码的帧获得滞后值和脉冲形状索引值,使用所述滞后值选择适当的脉冲形状VQ表,且使用所述脉冲形状索引值从选定的脉冲形状VQ表选择所要的脉冲形状。
图43A展示根据一般配置编码音调脉冲的形状的方法M650的流程图,所述方法M650包括任务E410、E420和E430。任务E410估计语音信号帧(例如,LPC残余的帧)的音调周期。任务E410可实施为如本文中所描述的音调周期估计任务E130、L200和/或E370的例项。基于所估计的音调周期,任务E420选择脉冲形状向量的多个表中的一者。任务E420可实施为如本文中所描述的任务T650的例项。基于来自语音信号帧的至少一个音调脉冲的信息,任务E430在脉冲形状向量的选定的表中选择脉冲形状向量。任务E430可实施为如本文中所描述的任务T660的例项。
表选择任务E420可经配置以将基于所估计的音调周期的值与多个不同值中的每一者进行比较。为了确定如本文中所描述的一组滞后范围频段中的哪一者包括所估计的音调周期,(例如)任务E420可经配置以将所估计的音调周期与所述组频段中的两个或两个以上中的每一者的上限(或下限)进行比较。
向量选择任务E430可经配置以在脉冲形状向量的选定的表中选择能量最接近于待匹配的音调脉冲的脉冲形状向量。在一个实例中,任务E430经配置以计算待匹配的音调脉冲与选定的表的每一脉冲形状向量之间的差,且选择具有最小能量的对应于所述差的脉冲形状向量。在另一实例中,任务E430经配置以选择能量最接近于待匹配的音调脉冲的能量的脉冲形状向量。在此类状况下,可将序列样本(例如,音调脉冲或其它向量)的能量计算为平方样本的总和。
图43B展示方法M650的实施方案M660的流程图,所述实施方案M660包括任务E440。任务E440产生包括(A)基于所估计的音调周期的第一值和(B)识别选定的表中的选定的脉冲形状向量的第二值(例如,表索引)的包。第一值可将所估计的音调周期指示为相对于最小音调周期值(例如,20)的偏移。举例来说,方法M660(例如,任务E410)可经配置以通过从所估计的音调周期减去最小音调周期值而计算第一值。
任务E440可经配置以产生包括相应组不相交的位位置中的第一值和第二值的包。举例来说,任务E440可经配置以根据如本文中所描述的具有第一组位位置和第二组位位置的模板产生包,所述第一组位位置与所述第二组位位置不相交。在此状况下,任务E440可实施为如本文中所描述的包产生任务E320的例项。任务E440的此实施方案可经配置以产生包括第一组位位置中的音调脉冲位置、第二组位位置中的第一值和第三组位位置中的第二值的包,所述第三组与第一组和第二组不相交。
图43C展示方法M650的实施方案M670的流程图,所述实施方案M670包括任务E450。任务E450从语音信号帧的多个音调脉冲中提取音调脉冲。任务E450可实施为如本文中所描述的任务T640的例项。任务E450可经配置以基于能量量度选择音调脉冲。举例来说,任务E450可经配置以选择峰值具有最高能量的音调脉冲,或具有最高能量的音调脉冲。在方法M670中,向量选择任务E430可经配置以选择与所提取的音调脉冲(或基于所提取的音调脉冲的脉冲形状,例如所提取的音调脉冲与另一所提取的音调脉冲的平均值)最佳地匹配的脉冲形状向量。
图46A展示方法M650的实施方案M680的流程图,所述实施方案M680包括任务E460、E470和E480。任务E460计算第二语音信号帧(例如,LPC残余的帧)的音调脉冲的位置。第一和第二语音信号帧可来自同一话音通信会话或可来自不同话音通信会话。举例来说,第一和第二语音信号帧可来自由一人说出的语音信号或可来自各自由不同的人说出的两个不同语音信号。语音信号帧可在计算音调脉冲位置之前和/或之后经历其它处理操作(例如,感知加权)。
基于所计算的音调脉冲位置,任务E470选择脉冲形状向量的多个表中的一者。任务E470可实施为如本文中所描述的任务T620的例项。可响应于第二语音信号帧仅含有一个音调脉冲的确定(例如,通过任务E460或另外通过方法M680)执行任务E470。基于来自第二语音信号帧的信息,任务E480在脉冲形状向量的选定的表中选择脉冲形状向量。任务E480可实施为如本文中所描述的任务T630的例项。
图44A展示用于编码音调脉冲的形状的设备MF650的框图。设备MF650包括用于估计语音信号帧的音调周期(例如,如上文参考任务E410、E130、L200和/或E370的各种实施方案所描述)的装置FE410、用于选择脉冲形状向量的表(例如,如上文参考任务E420和/或T650的各种实施方案所描述)的装置FE420,以及用于选择选定的表中的脉冲形状向量(例如,如上文参考任务E430和/或T660的各种实施方案所描述)的装置FE430。
图44B展示设备MF650的实施方案MF660的框图。设备MF660包括用于产生包括(A)基于所估计的音调周期的第一值和(B)识别选定的表中的选定的脉冲形状向量的第二值的包(例如,如上文参考任务E440所描述)的装置FE440。图44C展示设备MF650的实施方案MF670的框图,所述实施方案MF670包括用于从语音信号帧的多个音调脉冲中提取音调脉冲(例如,如上文参考任务E450所描述)的装置FE450。
图46B展示设备MF650的实施方案MF680的框图。设备MF680包括用于计算第二语音信号帧的音调脉冲的位置(例如,如上文参考任务E460所描述)的装置FE460、用于基于所计算的音调脉冲位置选择脉冲形状向量的多个表中的一者(例如,如上文参考任务E470所描述)的装置FE470,以及用于基于来自第二语音信号帧的信息在脉冲形状向量的选定的表中选择脉冲形状向量(例如,如上文参考任务E480所描述)的装置FE480。
图45A展示用于编码音调脉冲的形状的设备A650的框图。设备A650包括经配置以估计语音信号帧的音调周期(例如,如上文参考任务E410、E130、L200和/或E370的各种实施方案所描述)的音调周期估计器540。举例来说,音调周期估计器540可实施为如本文中所描述的音调周期估计器130、190或A320的例项。设备A650还包括经配置以基于所估计的音调周期来选择脉冲形状向量的表(例如,如上文参考任务E420和/或T650的各种实施方案所描述)的向量表选择器550。设备A650还包括经配置以基于来自语音信号帧的至少一个音调脉冲的信息来选择选定的表中的脉冲形状向量(例如,如上文参考任务E430和/或T660的各种实施方案所描述)的脉冲形状向量选择器560。
图45B展示设备A650的实施方案A660的框图,所述实施方案A660包括经配置以产生包括(A)基于所估计的音调周期的第一值和(B)识别选定的表中的选定的脉冲形状向量的第二值的包(例如,如上文参考任务E440所描述)的包产生器570。包产生器570可实施为如本文中所描述的包产生器170的例项。图45C展示设备A650的实施方案A670的框图,所述实施方案A670包括经配置以从语音信号帧的多个音调脉冲中提取音调脉冲(例如,如上文参考任务E450所描述)的音调脉冲提取器580。
图46C展示设备A650的实施方案A680的框图。设备A680包括经配置以计算第二语音信号帧的音调脉冲的位置(例如,如上文参考任务E460所描述)的音调脉冲位置计算器590。举例来说,音调脉冲位置计算器590可实施为如本文中所描述的音调脉冲位置计算器120或160或终端峰值定位器A310的例项。在此状况下,向量表选择器550还经配置以基于所计算的音调脉冲位置选择脉冲形状向量的多个表中的一者(例如,如上文参考任务E470所描述),且脉冲形状向量选择器560还经配置以基于来自第二语音信号帧的信息来选择脉冲形状向量的选定的表中的脉冲形状向量(例如,如上文参考任务E480所描述)。
语音编码器AE10可实施成包括设备A650。举例来说,语音编码器AE20的第一帧编码器104可实施成包括设备A650的例项以使得音调周期估计器130还充当估计器540。第一帧编码器104的此类实施方案还可包括设备A400的例项(例如,设备A402的例项,以使得包产生器170还充当包产生器570)。
图47A展示根据一般配置解码音调脉冲的形状的方法M800的框图。方法M800包括任务D510、D520、D530和D540。任务D510从经编码的语音信号的包(例如,如由方法M660的实施方案产生)提取经编码的音调周期值。任务D510可实施为如本文中所描述的任务D480的例项。基于所述经编码的音调周期值,任务D520选择脉冲形状向量的多个表中的一者。任务D530从所述包提取索引。基于所述索引,任务D540从所述选定的表获得脉冲形状向量。
图47B展示方法M800的实施方案M810的框图,所述实施方案M810包括任务D550和D560。任务D550从所述包提取音调脉冲位置指示符。任务D550可实施为如本文中所描述的任务D410的例项。基于所述音调脉冲位置指示符,任务D560将基于所述脉冲形状向量的音调脉冲布置于激励信号内。任务D560可实施为如本文中所描述的任务D430的例项。
图48A展示方法M800的实施方案M820的框图,所述实施方案M820包括任务D570、D575、D580和D585。任务D570从第二包提取音调脉冲位置指示符。所述第二包可来自与第一包相同的话音通信会话或可来自不同的话音通信会话。任务D570可实施为如本文中所描述的任务D410的例项。基于来自第二包的音调脉冲位置指示符,任务D575选择脉冲形状向量的第二多个表中的一者。任务D580从所述第二包提取索引。基于来自第二包的索引,任务D585从所述第二多个表中的所述选定者获得脉冲形状向量。方法M820还可经配置以基于所获得的脉冲形状向量产生激励信号。
图48B展示用于解码音调脉冲的形状的设备MF800的框图。设备MF800包括用于从包提取经编码的音调周期值(例如,如本文中参考任务D510的各种实施方案所描述)的装置FD510、用于选择脉冲形状向量的多个表中的一者(例如,如本文中参考任务D520的各种实施方案所描述)的装置FD520、用于从所述包提取索引(例如,如本文中参考任务D530的各种实施方案所描述)的装置FD530,以及用于从所述选定的表获得脉冲形状向量(例如,如本文中参考任务D540的各种实施方案所描述)的装置FD540。
图49A展示设备MF800的实施方案MF810的框图。设备MF810包括用于从包提取音调脉冲位置指示符(例如,如本文中参考任务D550的各种实施方案所描述)的装置FD550,以及用于将基于所述脉冲形状向量的音调脉冲布置于激励信号内(例如,如本文中参考任务D560的各种实施方案所描述)的装置FD560。
图49B展示设备MF800的实施方案MF820的框图。设备MF820包括用于从第二包提取音调脉冲位置指示符(例如,如本文中参考任务D570的各种实施方案所描述)的装置FD570,以及用于基于来自第二包的位置指示符来选择脉冲形状向量的第二多个表中的一者(例如,如本文中参考任务D575的各种实施方案所描述)的装置FD575。设备MF820还包括用于从第二包提取索引(例如,如本文中参考任务D580的各种实施方案所描述)的装置FD580,以及用于基于来自第二包的索引从所述第二多个表中的所述选定者获得脉冲形状向量(例如,如本文中参考任务D585的各种实施方案所描述)的装置FD585。
图50A展示用于解码音调脉冲的形状的设备A800的框图。设备A800包括经配置以从包提取经编码的音调周期值(例如,如本文中参考任务D510的各种实施方案所描述)且从所述包提取索引(例如,如本文中参考任务D530的各种实施方案所描述)的包解析器610。包解析器620可实施为如本文中所描述的包解析器510的例项。设备A800还包括经配置以选择脉冲形状向量的多个表中的一者(例如,如本文中参考任务D520的各种实施方案所描述)的向量表选择器620,以及经配置以从所述选定的表获得脉冲形状向量(例如,如本文中参考任务D540的各种实施方案所描述)的向量表读取器630。
包解析器610还可经配置以从第二包提取脉冲位置指示符和索引(例如,如本文中参考任务D570和D580的各种实施方案所描述)。向量表选择器620还可经配置以基于来自第二包的位置指示符来选择脉冲形状向量的多个表中的一者(例如,如本文中参考任务D575的各种实施方案所描述)。向量表读取器630还可经配置以基于来自第二包的索引从所述第二多个表中的所述选定者获得脉冲形状向量(例如,如本文中参考任务D585的各种实施方案所描述)。图50B展示设备A800的实施方案A810的框图,所述实施方案A810包括经配置以将基于所述脉冲形状向量的音调脉冲布置于激励信号内(例如,如本文中参考任务D560的各种实施方案所描述)的激励信号产生器640。激励信号产生器640可实施为如本文中所描述的激励信号产生器310和/或530的例项。
语音编码器AE10可实施成包括设备A800。举例来说,语音编码器AE20的第一帧编码器104可实施成包括设备A800的例项。第一帧编码器104的此类实施方案还可包括设备A560的例项,在此状况下,包解析器510还可充当包解析器620且/或激励信号产生器530还可充当激励信号产生器640。
根据一配置(例如,根据语音编码器AE20的实施方案)的语音编码器使用三个或四个译码方案来编码不同类别的帧:如上文所描述的四分之一速率NELP(QNELP)译码方案、四分之一速率PPP(QPPP)译码方案和过渡帧译码方案。QNELP译码方案用以编码无声帧和向下瞬变帧。QNELP译码方案或八分之一速率NELP译码方案可用以编码静寂帧(例如,背景噪声)。QPPP译码方案用以编码有声帧。过渡帧译码方案可用以编码向上瞬变(即,开始)帧和瞬变帧。图26的表展示用于这四种译码方案中的每一者的位分配的实例。
现代声码器通常执行语音帧的分类。举例来说,此类声码器可根据将帧分类为上文所论述的六种不同类别(静寂、无声、有声、瞬变、向下瞬变和向上瞬变)中的一者的方案操作。此类方案的实例描述于第2002/0111798号(Huang)美国公开专利申请案中。此分类方案的一个实例还描述于3GPP2(第三代合作伙伴计划2)文献“用于宽带扩展频谱数字系统的增强型可变速率编解码器、语音服务选择3、68和70(Enhanced VariableRate Codec,Speech Service Options 3,68,and 70for Wideband Spread Spectrum DigitalSystems)”(3GPP2C.S0014-C,2007年1月,在www.3gpp2.org可线上获得)章节4.8(第4-57到4-71页)中。此方案使用图51的表中所列的特征将帧分类,且此章节4.8在此以引用的方式并入作为如本文中所描述的“EVRC分类方案”的实例。在图55-63的代码列表中描述EVRC分类方案的类似实例。
在图51的表中出现的参数E、EL和EH可如下计算(针对160位帧):
其中SL(n)和SH(n)分别为输入语音信号的经低通滤波(使用12阶极零低通滤波器)和经高通滤波(使用12阶极零高通滤波器)型式。可用于EVRC分类方案中的其它特征包括先前帧模式决策(“prev_mode”)、先前帧中的固定有声语音的存在(“prev_voiced”)和针对当前帧的话音活动检测结果“curr_va”)。
分类方案中使用的重要特征是基于音调的正规化自相关函数(NACF)。图52展示用于计算基于音调的NACF的程序的流程图。首先,经由具有约100Hz的3dB截止频率的3阶高通滤波器对当前帧的LPC残余和下一帧(也称为预看帧(look-ahead frame))的LPC残余进行滤波。可能需要使用未经量化的LPC系数值来计算此残余。接着用长度为13的有限脉冲响应(FIR)滤波器对经滤波的残余进行低通滤波且抽选十分之二(decimated by a factor of two)。由rd(n)表示经抽选的信号。
将用于当前帧的两个子帧的NACF计算为
其中k=1、2,在所有整数i上进行最大化以使得
其中lag(k)为如由音调估计例程(例如,基于相关的技术)估计的子帧k的滞后值。当前帧的第一和第二子帧的这些值还可分别参考为nacf_at_pitch[2](也写作“nacf_ap[2]”)和nacf_ap[3]。根据用于先前帧的第一和第二子帧的上述表达计算的NACF值可分别参考为nacf_ap[0]和nacf_ap[1]。
将用于预看帧的NACF计算
其中在所有整数i上进行最大化以使得
此值还可参考为nacf_ap[4]。
图53为说明EVRC分类方案的高阶流程图。可将模式决策视为基于先前模式决策且基于例如NACF等特征的状态之间的过渡,其中所述状态为不同帧分类。图54为说明EVRC分类方案中的状态之间的可能过渡的状态图,其中标记S、UN、UP、TR、V和DOWN分别表示帧分类:静寂、无声、向上瞬变、瞬变、有声和向下瞬变。
可通过依据nacf_at_pitch[2](当前帧的第二子帧NACF,也写作“nacf_ap[2]”)与阈值VOICEDTH和UNVOICEDTH之间的关系而选择三种不同程序中的一者来实施EVRC分类方案。跨越图55和图56延伸的代码列表描述可在nacf_ap[2]>VOICEDTH时使用的程序。跨越图57到图59延伸的代码列表描述可在nacf_ap[2]<UNVOICEDTH时使用的程序。跨越图60到图63延伸的代码列表描述可在nacf_ap[2]>=UNVOICEDTH且nacf_ap[2]<=VOICEDTH时使用的程序。
可能需要根据特征curr_ns_snr[0]的值来变化阈值VOICEDTH、LOWVOICEDTH和UNVOICEDTH的值。举例来说,如果curr_ns_snr[0]的值不小于SNR阈值25dB,那么干净语音的以下阈值可适用:VOICEDTH=0.75、LOWVOICEDTH=0.5、UNVOICEDTH=0.35;且如果curr_ns_snr[0]的值小于SNR阈值25dB,那么嘈杂语音的以下阈值可适用:VOICEDTH=0.65、LOWVOICEDTH=0.5、UNVOICEDTH=0.35。
帧的准确分类对于确保低速率声码器中的良好质量可能尤其重要。举例来说,仅在开始帧具有至少一个相异峰值或脉冲时,才可能需要使用如本文中所描述的过渡帧译码模式。此类特征对于可靠脉冲检测可为重要的,在无此类特征的情况下,过渡帧译码模式可产生失真结果。可能需要使用NELP译码方案而非PPP或过渡帧译码方案来编码缺乏至少一个相异峰值或脉冲的帧。举例来说,可能需要将此类瞬变或向上瞬变帧重新分类为无声帧。
此类重新分类可基于一个或一个以上正规化自相关函数(NACF)值和/或其它特征。所述重新分类还可基于不用于EVRC分类方案中的特征,例如,帧的峰值对RMS能量值(“最大样本/RMS能量”)和/或帧中的音调脉冲的实际数目(“峰值计数”)。图64的表中所展示的八个条件中的任何一者或一者以上和/或图65的表中所展示的十个条件中的任何一者或一者以上可用于将向上瞬变帧重新分类为无声帧。图66的表中所展示的十一个条件中的任何一者或一者以上和/或图67的表中所展示的十一个条件中的任何一者或一者以上可用于将瞬变帧重新分类为无声帧。图68的表中所展示的四个条件中的任何一者或一者以上可用于将有声帧重新分类为无声帧。还可能需要将此重新分类限制于相对无低频带噪声的帧。举例来说,仅在curr_ns_snr[0]的值不小于25dB时,才可能需要根据图65、图67或图68中的条件中的任一者或图66的七个最右侧条件中的任一者将帧重新分类。
相反,可能需要将包括至少一个相异峰值或脉冲的无声帧重新分类为向上瞬变或瞬变帧。此类重新分类可基于一个或一个以上正规化自相关函数(NACF)值和/或其它特征。所述重新分类还可基于不用于EVRC分类方案中的特征,例如,帧的峰值对RMS能量值和/或峰值计数。图69的表中所展示的七个条件中的任何一者或一者以上可用于将无声帧重新分类为向上瞬变帧。图70的表中所展示的九个条件中的任何一者或一者以上可用于将无声帧重新分类为瞬变帧。图71A的表中所展示的条件可用于将向下瞬变帧重新分类为有声帧。图71B的表中所展示的条件可用于将向下瞬变帧重新分类为瞬变帧。
作为帧重新分类的替代,例如EVRC分类方案等帧分类方法可经修改以产生等于EVRC分类方案与上文所描述和/或图64到图71B中所阐述的重新分类条件中的一者或一者以上的组合的分类结果。
图72展示语音编码器AE20的实施方案AE30的框图。译码方案选择器C200可经配置以应用例如图55到图63的代码列表中所描述的EVRC分类方案等分类方案。语音编码器AE30包括经配置以根据上文所描述和/或图64到图71B中所阐述的条件中的一者或一者以上将帧重新分类的帧重新分类器RC10。帧重新分类器RC10可经配置以从译码方案选择器C200接收帧分类和/或其它帧特征的值。帧重新分类器RC10还可经配置以计算额外帧特征(例如,峰值对RMS能量值、峰值计数)的值。或者,语音编码器AE30可实施成包括译码方案选择器C200的实施方案,所述实施方案产生等于EVRC分类方案与上文所描述和/或图64到图71B中所阐述的重新分类条件中的一者或一者以上的组合的分类结果。
图73A展示语音编码器AE10的实施方案AE40的框图。语音编码器AE40包括经配置以编码周期性帧的周期性帧编码器E70和经配置以编码非周期性帧的非周期性帧编码器E80。举例来说,语音编码器AE40可包括译码方案选择器C200的实施方案,所述实施方案经配置以指导选择器60a、60b针对分类为有声、瞬变、向上瞬变或向下瞬变的帧选择周期性帧编码器E70,且针对分类为无声或静寂的帧选择非周期性帧编码器E80。语音编码器AE40的译码方案选择器C200可经实施以产生等于EVRC分类方案与上文所描述和/或图64到图71B中所陈述的重新分类条件中的一者或一者以上的组合的分类结果。
图73B展示周期性帧编码器E70的实施方案E72的框图。编码器E72包括如本文中所描述的第一帧编码器100和第二帧编码器200的实施方案。编码器E72还包括经配置以根据来自译码方案选择器C200的分类结果针对当前帧选择编码器100和200中的一者的选择器80a、80b。可能需要配置周期性帧编码器E72以选择第二帧编码器200(例如,QPPP编码器)作为用于周期性帧的默认编码器。非周期性帧编码器E80可经类似地实施以选择无声帧编码器(例如,QNELP编码器)和静寂帧编码器(例如,八分之一速率NELP编码器)中的一者。或者,非周期性帧编码器E80可实施为无声帧编码器UE10的例项。
图74展示周期性帧编码器E72的实施方案E74的框图。编码器E74包括帧重新分类器RC10的例项,所述例项经配置以根据上文所描述和/或图64到图71B中所阐述的条件中的一者或一者以上将帧重新分类且控制选择器80a、80b以根据重新分类的结果针对当前帧选择编码器100和200中的一者。在另一实例中,译码方案选择器C200可配置成包括帧重新分类器RC10,或执行等于EVRC分类方案与上文所描述和/或图64到图71B中所阐述的重新分类条件中的一者或一者以上的组合的分类方案,且选择如由此分类或重新分类指示的第一帧编码器100。
可能需要使用如上文所描述的过渡帧译码模式来编码瞬变和/或向上瞬变帧。图75A到图75D展示可能需要使用如本文中所描述的过渡帧译码模式的一些典型帧序列。在这些实例中,使用过渡帧译码模式通常将经指示以用于以粗体勾勒出的帧。此类译码模式通常对具有相对恒定的音调周期和尖脉冲的完全或部分有声帧良好地起作用。然而,当帧缺乏尖脉冲时或当帧先于发声的实际开始时,可能降低经解码的语音的质量。在一些状况下,可能需要跳过或取消使用过渡帧译码模式,或以其它方式延迟使用此译码模式,直到稍后帧(例如,随后的帧)为止。
脉冲误检测可引起音调误差、遗漏的脉冲和/或外来脉冲的插入。此类误差可导致经解码的语音中的例如啪啪声、咔哒声和/或其它不连续性等失真。因此,可能需要验证所述帧适合于进行过渡帧译码,且当帧不适合时取消使用过渡帧译码模式可帮助减少此类问题。
可确定瞬变或向上瞬变帧不适合于过渡帧译码模式。举例来说,所述帧可能缺乏相异的尖脉冲。在此状况下,可能需要使用过渡帧译码模式来编码在所述不适合的帧之后的第一适合的有声帧。举例来说,如果开始帧缺乏相异尖脉冲,那么可能需要对随后的第一适合的有声帧执行过渡帧译码。此类技术可帮助确保用于后续有声帧的良好参考。
在一些状况下,使用过渡帧译码模式可导致脉冲增益失配问题和/或脉冲形状失配问题。仅有限数目个位可用于编码这些参数,且即使以其它方式指示过渡帧译码,当前帧也可能不提供良好参考。取消不必要地使用过渡帧译码模式可帮助减少此类问题。因此,可能需要验证过渡帧译码模式比另一译码模式更适合于当前帧。
对于跳过或取消使用过渡帧译码的状况来说,可能需要使用过渡帧译码模式来编码随后的第一适合的帧,因为此动作可帮助为后续有声帧提供良好参考。举例来说,如果紧接着的帧是至少部分有声的,那么可能需要对所述紧接着的帧强制使用过渡帧译码。
对过渡帧译码的需要和/或帧对于过渡帧译码的适合性可基于例如当前帧分类、先前帧分类、初始滞后值(例如,如通过例如基于相关的技术等音调估计例程确定,所述基于相关的技术的一个实例在本文参考的3GPP2文献C.S0014-C的章节4.6.3中描述)、经修改的滞后值(例如,如由例如方法M300等脉冲检测操作确定)、先前帧的滞后值和/或NACF值等准则来确定。
可能需要在靠近有声段的开始处使用过渡帧译码模式,因为在无良好参考的情况下使用QPPP的结果可能是不可预测的。然而,在一些状况下,可预期QPPP提供比过渡帧译码模式好的结果。举例来说,在一些状况下,可预期使用过渡帧译码模式产生不良参考或甚至引起比使用QPPP更不适宜的结果。
如果过渡帧译码对于当前帧来说不必要,那么可能需要跳过过渡帧译码。在此状况下,可能需要默认到有声译码模式,例如QPPP(例如,以保存QPPP的连续性)。不必要地使用过渡帧译码模式可导致稍后帧中的脉冲增益和/或脉冲形状的失配的问题(例如,归因于用于这些特征的有限位预算)。具有有限时间同步的有声译码模式(例如,QPPP)可能对此类误差尤其敏感。
在使用过渡帧译码方案对帧进行编码之后,可能需要检查经编码的结果,且如果经编码的结果不良,那么拒绝对帧使用过渡帧译码。对于大部分无声且仅在靠近结束处变为有声的帧来说,过渡译码模式可经配置以在无脉冲的情况下编码无声部分(例如,作为零或低值),或者过渡译码模式可经配置以用脉冲填充无声部分的至少一部分。如果无声部分在无脉冲的情况下经编码,那么帧可在经解码的信号中产生听得到的咔哒声或不连续性。在此状况下,可能需要改为对帧使用NELP译码方案。然而,可能需要避免对有声段使用NELP(因为其可引起失真)。如果对于帧取消过渡译码模式,那么在大多数状况下,可能需要使用有声译码模式(例如,QPPP)而不是无声译码模式(例如,QNELP)来对所述帧进行编码。如上文所描述,对使用过渡译码模式的选择可实施为过渡译码模式与有声译码模式之间的选择。虽然在无良好参考的情况下使用QPPP的结果可能不可预测(例如,帧的相位可从先前无声帧导出),但不可能在经解码的信号中产生咔哒声或不连续性。在此状况下,可延期使用过渡译码模式,直到下一帧为止。
当检测到帧之间的音调不连续性时,可能需要忽略对帧使用过渡译码模式的决策。在一个实例中,任务T710检查以查看与先前帧的音调连续性(例如,检查以查看音调加倍误差)。如果帧分类为有声或瞬变,且由脉冲检测例程指示的用于当前帧的滞后值远小于由脉冲检测例程指示的用于先前帧的滞后值(例如,为其约1/2、1/3或1/4),那么所述任务取消使用过渡译码模式的决策。
在另一实例中,任务T720检查以查看音调溢出(与先前帧相比)。音调溢出在语音具有导致高于最大容许滞后的滞后值的极低音调频率时出现。此类任务可经配置以在用于先前帧的滞后值较大(例如,大于100个样本)且由音调估计和脉冲检测例程指示的用于当前帧的滞后值均远小于先前音调(例如,小50%以上)的情况下取消使用过渡译码模式的决策。在此状况下,还可能需要仅保持帧的最大音调脉冲为单一脉冲。或者,可使用先前滞后估计和有声和/或相对译码模式(例如,任务E200、QPPP)来对帧进行编码。
当检测到来自两个不同例程的结果中的不一致时,可能需要忽略对帧使用过渡译码模式的决策。在一个实例中,任务T730检查以查看在存在强NACF的情况下来自音调估计例程(例如,如(例如)在本文参考的3GPP2文献C.S0014-C的章节4.6.3中描述的基于相关的技术)的滞后值与来自脉冲检测例程(例如,方法M300)的所估计的音调周期之间的一致。所检测到的第二脉冲的音调下的极高NACF指示良好音调估计,以使得将不预期两个滞后估计之间的不一致。此类任务可经配置以在来自脉冲检测例程的滞后估计与来自音调估计例程的滞后估计极为不同(例如,是其大于1.6倍或160%)的情况下取消使用过渡译码模式的决策。
在另一实例中,任务T740检查以查看滞后值与终端脉冲的位置之间的一致性。当如使用滞后估计(其可为峰值之间的距离的平均值)编码的峰值位置中的一者或一者以上与对应的实际峰值位置过于不同时,可能需要取消使用过渡帧译码模式的决策。任务T740可经配置以使用终端脉冲的位置和由脉冲检测例程计算的滞后值来计算经重建的音调脉冲位置,将经重建的位置中的每一者与如由脉冲检测算法检测的实际音调峰值位置进行比较,且在所述差中的任一者过大(例如,大于8个样本)的情况下取消使用过渡帧译码的决策。
在另一实例中,任务T750检查以查看滞后值与脉冲位置之间的一致性。此任务可经配置以在最终音调峰值距最终帧边界大于一个滞后周期的情况下取消使用过渡帧译码的决策。举例来说,此任务可经配置以在最终音调脉冲的位置与帧的结束之间的距离大于最终滞后估计(例如,由滞后估计任务L200和/或方法M300计算的滞后值)的情况下取消使用过渡帧译码的决策。此条件可指示脉冲误检测或尚未稳定的滞后。
如果当前帧具有两个脉冲且分类为瞬变,且如果所述两个脉冲的峰值的平方量值的比率较大,那么可能需要使所述两个脉冲在整个滞后值上相关且除非相关结果大于(或者,不小于)对应的阈值,否则拒绝较小峰值。如果拒绝较小峰值,那么还可能需要取消对帧使用过渡帧译码的决策。
图76展示用于可用以取消对帧使用过渡帧译码的决策的两个例程的代码列表。在此列表中,mod_lag指示来自脉冲检测例程的滞后值;orig_lag指示来自音调估计例程的滞后值;pdelay_transient_coding指示来自脉冲检测例程的用于先前帧的滞后值;PREV_TRANSIENT_FRAME_E指示过渡译码模式是否用于先前帧;且loc[0]指示帧的最终音调峰值的位置。
图77展示可用以取消使用过渡帧译码的决策的四个不同条件。在此表中,curr_mode指示当前帧分类;prev_mode指示用于先前帧的帧分类;number_of_pulses指示当前帧中的脉冲的数目;prev_no_of_pulses指示先前帧中的脉冲的数目;pitch_doubling指示是否在当前帧中已检测到音调加倍误差;delta_lag_intra指示来自音调估计例程(例如,如(例如)在本文参考的3GPP2文献C.S0014-C的章节4.6.3中描述的基于相关的技术)与脉冲检测例程((例如,方法M300))的滞后值之间的差的绝对值(例如,整数)(或者,如果检测到音调加倍,那么指示来自音调估计例程的滞后值的一半与来自脉冲检测例程的滞后值之间的差的绝对值);delta_lag_inten指示先前帧的最终滞后值与来自音调估计例程的滞后值之间的差的绝对值(例如,浮点)(或者,如果检测到音调加倍,那么指示所述滞后值的一半);NEED_TRANS指示是否在先前帧的译码期间指示对当前帧使用过渡帧译码模式;TRANS_USED指示过渡译码模式是否用以编码先前帧;且fully_voiced指示终端音调脉冲的位置与帧的相对端(如由最终滞后值划分)之间的距离的整数部分是否等于number_of_pulses减一。阈值的值的实例包括T1A=[0.1*(来自脉冲检测例程的滞后值)+0.5]、T1B=[0.05*(来自脉冲检测例程的滞后值)+0.5]、T2A=[0.2*(先前帧的最终滞后值)]和T2B=[0.15*(先前帧的最终滞后值)]。
帧重新分类器RC10可实施成包括上文针对取消使用过渡译码模式的决策所描述的规定中的一者或一者以上,例如任务T710到T750、图76中的代码列表和图77中所展示的条件。举例来说,帧重新分类器RC10可经实施以执行如图78中所展示的方法M700,且在测试任务T710到T750中的任一者失败的情况下取消使用过渡译码模式的决策。
图79A展示根据一般配置对语音信号帧进行编码的方法M900的流程图,所述方法M900包括任务E510、E520、E530和E540。任务E510计算帧的残余(例如,LPC残余)的峰值能量。任务E510可经配置以通过将具有最大振幅的样本(或者,具有最大量值的样本)的值进行平方来计算峰值能量。任务E520计算残余的平均能量。任务E520可经配置以通过将样本的平方值求和且将总和除以帧中的样本的数目来计算平均能量。基于所计算的峰值能量与所计算的平均能量之间的关系,任务E530选择噪声激励译码方案(例如,如本文中所描述的NELP方案)或无差别音调原型译码方案(例如,如本文中参考任务E100所描述)。任务E540根据由任务E530选择的译码方案对帧进行编码。如果任务E530选择无差别音调原型译码方案,那么任务E540包括产生经编码的帧,所述经编码的帧包括帧的音调脉冲的时域形状、帧的音调脉冲的位置和帧的所估计的音调周期的表示。举例来说,任务E540可实施成包括如本文中所描述的任务E100的例项。
通常,任务E530所基于的所计算的峰值能量与所计算的平均能量之间的关系为峰值与RMS能量的比率。此比率可由任务E530或由方法M900的另一任务来计算。作为译码方案选择决策的一部分,任务E530可经配置以将此比率与阈值进行比较,所述阈值可根据一个或一个以上其它参数的当前值而改变。举例来说,图64到图67、图69和图70展示根据其它参数的值而将不同值用于此阈值(例如,14、16、24、25、35、40或60)的实例。
图79B展示方法M900的实施方案M910的流程图。在此状况下,任务E530经配置以基于峰值能量与平均能量之间的关系且还基于一个或一个以上其它参数值选择译码方案。方法M910包括计算例如帧中的音调峰值的数目(任务E550)和/或帧的SNR(任务E560)等额外参数的值的一个或一个以上任务。作为译码方案选择决策的一部分,任务E530可经配置以将此参数值与阈值进行比较,所述阈值可根据一个或一个以上其它参数的当前值而改变。图65和图66展示不同阈值(例如,4或5)用以评估如由任务E550计算的当前峰值计数值的实例。任务E550可实施为如本文中所描述的方法M300的例项。任务E560可经配置以计算帧的SNR或帧的一部分的SNR,例如低频带或高频带部分(例如,如图51中所展示的curr_ns_nsr[0]或curr_ns_snr[1])。举例来说,任务E560可经配置以计算curr_ns_snr[0](即,0到2kHz频带的SNR)。在一个特定实例中,任务E530经配置以根据图65或图67的条件中的任一者或图66的七个最右侧条件中的任一者选择噪声激励译码方案,但仅在curr_ns_snr[0]的值不小于阈值(例如,25dB)的情况下如此。
图80A展示方法M900的实施方案M920的流程图,所述实施方案M920包括任务E570和E580。任务E570确定语音信号的下一帧(“第二帧”)为有声的(例如,为高度周期性的)。举例来说,任务E570可经配置以对第二帧执行如本文中所描述的EVRC分类的型式。如果任务E530针对第一帧(即,在任务E540中编码的帧)选择噪声激励译码方案,那么任务E580根据无差别音调原型译码方案对第二帧进行编码。任务E580可实施为如本文中所描述的任务E100的例项。
方法M920还可实施成包括对紧接在第二帧之后的第三帧执行有差别编码操作的任务。此任务可包括产生经编码的帧,所述经编码的帧包括(A)第三帧的音调脉冲形状与第二帧的音调脉冲形状之间的差别和(B)第三帧的音调周期与第二帧的音调周期之间的差别的表示。此任务可实施为如本文中所描述的任务E200的例项。
图80B展示用于对语音信号帧进行编码的设备MF900的框图。设备MF900包括用于计算峰值能量(例如,如上文参考任务E510的各种实施方案所描述)的装置FE510、用于计算平均能量(例如,如上文参考任务E520的各种实施方案所描述)的装置FE520、用于选择译码方案(例如,如上文参考任务E530的各种实施方案所描述)的装置FE530,以及用于对帧进行编码(例如,如上文参考任务E540的各种实施方案所描述)的装置FE540。图81A展示设备MF900的实施方案MF910的框图,所述实施方案MF910包括一个或一个以上额外装置,例如用于计算帧的音调脉冲峰值的数目(例如,如上文参考任务E550的各种实施方案所描述)的装置FE550,和/或用于计算帧的SNR(例如,如上文参考任务E560的各种实施方案所描述)的装置FE560。图81B展示设备MF900的实施方案MF920的框图,所述实施方案MF920包括用于指示语音信号的第二帧为有声(例如,如上文参考任务E570的各种实施方案所描述)的装置FE570,以及用于对第二帧进行编码(例如,如上文参考任务E580的各种实施方案所描述)的装置FE580。
图82A展示用于根据一般配置对语音信号帧进行编码的设备A900的框图。设备A900包括经配置以计算帧的峰值能量(例如,如上文参考任务E510所描述)的峰值能量计算器710,以及经配置以计算帧的平均能量(例如,如上文参考任务E520所描述)的平均能量计算器720。设备A900包括可选择地经配置以根据噪声激励译码方案(例如,NELP译码方案)对帧进行编码的第一帧编码器740。编码器740可实施为如本文中所描述的无声帧编码器UE10或非周期性帧编码器E80的例项。设备A900还包括可选择地经配置以根据无差别音调原型译码方案对帧进行编码的第二帧编码器750。编码器750经配置以产生经编码的帧,所述经编码的帧包括帧的音调脉冲的时域形状、帧的音调脉冲的位置和帧的所估计的音调周期的表示。编码器750可实施为如本文中所描述的帧编码器100、设备A400或设备A650的例项且/或可实施成包括计算器710和/或720。设备A900还包括经配置以可选择地致使帧编码器740和750中的一者对帧进行编码的译码方案选择器730,其中所述选择基于所计算的峰值能量与所计算的平均能量之间的关系(例如,如上文参考任务E530的各种实施方案所描述)。译码方案选择器730可实施为如本文中所描述的译码方案选择器C200或C300的例项且可包括如本文中所描述的帧重新分类器RC10的例项。
语音编码器AE10可实施成包括设备A900。举例来说,语音编码器AE20、AE30或AE40的译码方案选择器C200可实施成包括如本文中所描述的译码方案选择器730的例项。
图82B展示设备A900的实施方案A910的框图。在此状况下,译码方案选择器730经配置以基于峰值能量与平均能量之间的关系且还基于一个或一个以上其它参数值选择译码方案(例如,如本文中参考如在方法M910中实施的任务E530所描述)。设备A910包括计算额外参数的值的一个或一个以上元件。举例来说,设备A910可包括经配置以计算帧中的音调峰值的数目(例如,如上文参考任务E550或设备A300所描述)的音调脉冲峰值计数器760。另外或作为替代,设备A910可包括经配置以计算帧的SNR(例如,如上文参考任务E560所描述)的SNR计算器770。译码方案选择器730可实施成包括计数器760和/或SNR计算器770。
为了便利起见,现将上文参考设备A900所论述的语音信号帧称作“第一帧”,且将语音信号中在所述第一帧之后的帧称作“第二帧”。译码方案选择器730可经配置以对第二帧执行帧分类操作(例如,如本文中参考如在方法M920中实施的任务E570所描述)。举例来说,译码方案选择器730可经配置以响应于针对第一帧选择噪声激励译码方案且确定第二帧为有声的而致使第二帧编码器750对第二帧进行编码(即,根据无差别音调原型译码方案)。
图83A展示设备A900的实施方案A920的框图,所述实施方案A920包括经配置以对帧执行有差别编码操作(例如,如本文中参考任务E200所描述)的第三帧编码器780。换句话说,编码器780经配置以产生经编码的帧,所述经编码的帧包括(A)当前帧的音调脉冲形状与先前帧的音调脉冲形状之间的差别和(B)当前帧的音调周期与先前帧的音调周期之间的差别的表示。设备A920可经实施以使得编码器780对语音信号中紧接在第二帧之后的第三帧执行有差别编码操作。
图83B展示根据一般配置对语音信号帧进行编码的方法M950的流程图,所述方法M950包括任务E610、E620、E630和E640。任务E610估计帧的音调周期。任务E610可实施为如本文中所描述的任务E130、L200、E370或E410的例项。任务E620计算第一值与第二值之间的关系的值,其中所述第一值基于所估计的音调周期且所述第二值基于帧的另一参数。基于所计算的值,任务E630选择噪声激励译码方案(例如,如本文中所描述的NELP方案)或无差别音调原型译码方案(例如,如本文中参考任务E100所描述)。任务E640根据由任务E630选择的译码方案对帧进行编码。如果任务E630选择无差别音调原型译码方案,那么任务E640包括产生经编码的帧,所述经编码的帧包括帧的音调脉冲的时域形状、帧的音调脉冲的位置和帧的所估计的音调周期的表示。举例来说,任务E640可实施成包括如本文中所描述的任务E100的例项。
图84A展示方法M950的实施方案M960的流程图。方法M960包括计算帧的其它参数的一个或一个以上任务。方法M960可包括计算帧的终端音调脉冲的位置的任务E650。任务E650可实施为如本文中所描述的任务E120、L100、E310或E460的例项。对于终端音调脉冲为帧的最终音调脉冲的状况来说,任务E620可经配置以确认终端音调脉冲与帧的最后样本之间的距离不大于所估计的音调周期。如果任务E650计算相对于最后样本的脉冲位置,那么可通过比较脉冲位置与所估计的音调周期的值来执行此确认。举例来说,如果从此脉冲位置减去所估计的音调周期留下至少等于零的结果,那么确认所述条件。对于终端音调脉冲为帧的初始音调脉冲的状况来说,任务E620可经配置以确认终端音调脉冲与帧的第一样本之间的距离不大于所估计的音调周期。在这些状况中的任一者中,任务E630可经配置以在确认失败的情况下(例如,如本文中参考任务T750所描述)选择噪声激励译码方案。
除终端音调脉冲位置计算任务E650外,方法M960还可包括定位帧的多个其它音调脉冲的任务E670。在此状况下,任务E650可经配置以基于所估计的音调周期和所计算的音调脉冲位置计算多个音调脉冲位置,且任务E620可经配置以评估所述经定位的音调脉冲的位置与所计算的音调脉冲位置一致的程度。举例来说,任务E630可经配置以在任务E620确定(A)经定位的音调脉冲的位置与(B)对应的所计算的音调脉冲位置之间的差中的任一者大于阈值(例如,8个样本)的情况下(例如,如上文参考任务T740所描述)选择噪声激励译码方案。
另外或作为替代,对于上述实例中的任一者,方法M960可包括计算最大化帧的残余(例如,LPC残余)的自相关值的滞后值的任务E660。此滞后值(或“音调延迟”)的计算描述于上文所参考的3GPP2文献C.S0014-C的章节4.6.3(第4-44到4-49页)中,所述章节在此以引用的方式并入作为此计算的实例。在此状况下,任务E620可经配置以确认所估计的音调周期不大于所计算的滞后值的指定比例(例如,160%)。任务E630可经配置以在确认失败的情况下选择噪声激励译码方案。在方法M960的相关实施方案中,任务E630可经配置以在确认失败且用于当前帧的一个或一个以上NACF值还足够高的情况下(例如,如上文参考任务T730所描述)选择噪声激励译码方案。
另外或作为替代,对于上述实例中的任一者,任务E620可经配置以将基于所估计的音调周期的值与语音信号的先前帧(例如,当前帧之前的最后帧)的音调周期进行比较。在此状况下,任务E630可经配置以在所估计的音调周期远小于先前帧的音调周期(例如,约其二分之一、三分之一或四分之一)的情况下(例如,如上文参考任务T710所描述)选择噪声激励译码方案。另外或作为替代,任务E630可经配置以在先前音调周期较大(例如,100个以上样本)且所估计的音调周期小于先前音调周期的二分之一的情况下(例如,如上文参考任务T720所描述)选择噪声激励译码方案。
图84B展示方法M950的实施方案M970的流程图,所述实施方案M970包括任务E680和E690。任务E680确定语音信号的下一帧(“第二帧”)为有声的(例如,为高度周期性的)。(在此状况下,将在任务E640中编码的帧称作“第一帧”。)举例来说,任务E680可经配置以对第二帧执行如本文中所描述的EVRC分类的型式。如果任务E630针对第一帧选择噪声激励译码方案,那么任务E690根据无差别音调原型译码方案对第二帧进行编码。任务E690可实施为如本文中所描述的任务E100的例项。
方法M970还可实施成包括对紧接在第二帧之后的第三帧执行有差别编码操作的任务。此任务可包括产生经编码的帧,所述经编码的帧包括(A)第三帧的音调脉冲形状与第二帧的音调脉冲形状之间的差别和(B)第三帧的音调周期与第二帧的音调周期之间的差别的表示。此任务可实施为如本文中所描述的任务E200的例项。
图85A展示用于对语音信号帧进行编码的设备MF950的框图。设备MF950包括用于估计帧的音调周期(例如,如上文参考任务E610的各种实施方案所描述)的装置FE610、用于计算(A)基于所估计的音调周期的第一值与(B)基于帧的另一参数的第二值之间的关系的值(例如,如上文参考任务E620的各种实施方案所描述)的装置FE620、用于基于所计算的值选择译码方案(例如,如上文参考任务E630的各种实施方案所描述)的装置FE630,以及用于根据选定的译码方案对帧进行编码(例如,如上文参考任务E640的各种实施方案所描述)的装置FE640。
图85B展示设备MF950的实施方案MF960的框图,所述实施方案MF960包括一个或一个以上额外装置,例如用于计算帧的终端音调脉冲的位置(例如,如上文参考任务E650的各种实施方案所描述)的装置FE650、用于计算最大化帧的残余的自相关值的滞后值(例如,如上文参考任务E660的各种实施方案所描述)的装置FE660和/或用于定位帧的多个其它音调脉冲(例如,如上文参考任务E670的各种实施方案所描述)的装置FE670。图86A展示设备MF950的实施方案MF970的框图,所述实施方案MF970包括用于指示语音信号的第二帧为有声(例如,如上文参考任务E680的各种实施方案所描述)的装置FE680和用于对第二帧进行编码(例如,如上文参考任务E690的各种实施方案所描述)的装置FE690。
图86B展示用于根据一般配置对语音信号帧进行编码的设备A950的框图。设备A950包括经配置以估计帧的音调周期的音调周期估计器810。估计器810可实施为如本文中所描述的估计器130、190、A320或540的例项。设备A950还包括经配置以计算(A)基于所估计的音调周期的第一值与(B)基于帧的另一参数的第二值之间的关系的值的计算器820。设备M950包括可选择地经配置以根据噪声激励译码方案(例如,NELP译码方案)对帧进行编码的第一帧编码器840。编码器840可实施为如本文中所描述的无声帧编码器UE10或非周期性帧编码器E80的例项。设备A950还包括可选择地经配置以根据无差别音调原型译码方案对帧进行编码的第二帧编码器850。编码器850经配置以产生经编码的帧,所述经编码的帧包括帧的音调脉冲的时域形状、帧的音调脉冲的位置和帧的所估计的音调周期的表示。编码器850可实施为如本文中所描述的帧编码器100、设备A400或设备A650的例项且/或可实施成包括估计器810和/或计算器820。设备A950还包括经配置以基于所计算的值可选择地致使帧编码器840和850中的一者对帧进行编码(例如,如上文参考任务E630的各种实施方案所描述)的译码方案选择器830。译码方案选择器830可实施为如本文中所描述的译码方案选择器C200或C300的例项且可包括如本文中所描述的帧重新分类器RC10的例项。
语音编码器AE10可实施成包括设备A950。举例来说,语音编码器AE20、AE30或AE40的译码方案选择器C200可实施成包括如本文中所描述的译码方案选择器830的例项。
图87A展示设备A950的实施方案A960的框图。设备A960包括计算帧的其它参数的一个或一个以上元件。设备A960可包括经配置以计算帧的终端音调脉冲的位置的音调脉冲位置计算器860。音调脉冲位置计算器860可实施为如本文中所描述的计算器120、160或590或者峰值检测器150的例项。对于终端音调脉冲为帧的最终音调脉冲的状况来说,计算器820可经配置以确认终端音调脉冲与帧的最后样本之间的距离不大于所估计的音调周期。如果音调脉冲位置计算器860计算相对于最后样本的脉冲位置,那么计算器820可通过比较脉冲位置与所估计的音调周期的值来执行此确认。举例来说,如果从此脉冲位置减去所估计的音调周期留下至少等于零的结果,那么确认所述条件。对于终端音调脉冲为帧的初始音调脉冲的状况来说,计算器820可经配置以确认终端音调脉冲与帧的第一样本之间的距离不大于所估计的音调周期。在这些状况中的任一者中,译码方案选择器830可经配置以在确认失败的情况下(例如,如本文中参考任务T750所描述)选择噪声激励译码方案。
除终端音调脉冲位置计算器860外,设备A960还可包括经配置以定位帧的多个其它音调脉冲的音调脉冲定位器880。在此状况下,设备A960可包括经配置以基于所估计的音调周期和所计算的音调脉冲位置计算多个音调脉冲位置的第二音调脉冲位置计算器885,且计算器820可经配置以评估所述经定位的音调脉冲的位置与所计算的音调脉冲位置一致的程度。举例来说,译码方案选择器830可经配置以在计算器820确定(A)经定位的音调脉冲的位置与(B)对应的所计算的音调脉冲位置之间的差中的任一者大于阈值(例如,8个样本)的情况下(例如,如上文参考任务T740所描述)选择噪声激励译码方案。
另外或作为替代,对于上述实例中的任一者,设备A960可包括经配置以计算最大化帧的残余的自相关值的滞后值(例如,如上文参考任务E660所描述)的滞后值计算器870。在此状况下,计算器820可经配置以确认所估计的音调周期不大于所计算的滞后值的指定比例(例如,160%)。译码方案选择器830可经配置以在确认失败的情况下选择噪声激励译码方案。在设备A960的相关实施方案中,译码方案选择器830可经配置以在确认失败且用于当前帧的一个或一个以上NACF值还足够高的情况下(例如,如上文参考任务T730所描述)选择噪声激励译码方案。
另外或作为替代,对于上述实例中的任一者,计算器820可经配置以将基于所估计的音调周期的值与语音信号的先前帧(例如,当前帧之前的最后帧)的音调周期进行比较。在此状况下,译码方案选择器830可经配置以在所估计的音调周期远小于先前帧的音调周期(例如,约其二分之一、三分之一或四分之一)的情况下(例如,如上文参考任务T710所描述)选择噪声激励译码方案。另外或作为替代,译码方案选择器830可经配置以在先前音调周期较大(例如,100个以上样本)且所估计的音调周期小于先前音调周期的二分之一的情况下(例如,如上文参考任务T720所描述)选择噪声激励译码方案。
为了便利起见,现将上文参考设备A950所论述的语音信号帧称作“第一帧”,且将语音信号中在所述第一帧之后的帧称作“第二帧”。译码方案选择器830可经配置以对第二帧执行帧分类操作(例如,如本文中参考如在方法M960中实施的任务E680所描述)。举例来说,译码方案选择器830可经配置以响应于针对第一帧选择噪声激励译码方案且确定第二帧为有声的而致使第二帧编码器850对第二帧进行编码(即,根据无差别音调原型译码方案)。
图87B展示设备A950的实施方案A970的框图,所述实施方案A970包括经配置以对帧执行有差别编码操作(例如,如本文中参考任务E200所描述)的第三帧编码器890。换句话说,编码器890经配置以产生经编码的帧,所述经编码的帧包括(A)当前帧的音调脉冲形状与先前帧的音调脉冲形状之间的差别和(B)当前帧的音调周期与先前帧的音调周期之间的差别的表示。设备A970可经实施以使得编码器890对语音信号中紧接在第二帧之后的第三帧执行有差别编码操作。
在如本文中所描述的方法(例如,方法M100、M200、M300、M400、M500、M550、M560、M600、M650、M700、M800、M900或M950,或另一例程或代码列表)的实施方案的典型应用中,逻辑元件(例如,逻辑门)阵列经配置以执行所述方法的各种任务中的一者、一者以上或甚至全部。所述任务中的一者或一者以上(可能全部)还可实施为代码(例如,一个或一个以上指令集),体现于可由包括逻辑元件(例如,处理器、微处理器、微控制器或其它有限状态机)阵列的机器(例如,计算机)读取和/或执行的计算机程序产品(例如,比如磁盘、快闪存储器或其它非易失性存储卡、半导体存储器芯片等一个或一个以上数据存储媒体)中。此类方法的实施方案的任务还可由一个以上此类阵列或机器来执行。在这些或其它实施方案中,可在用于无线通信的装置(例如,移动用户终端或具有此通信能力的其它装置)内执行所述任务。此类装置可经配置以与电路交换式和/或包交换式网络通信(例如,使用例如VoIP(因特网协议话音)等一个或一个以上协议)。举例来说,此类装置可包括经配置以发射包括经编码的帧(例如,包)的信号和/或接收此类信号的RF电路。此类装置还可经配置以在RF发射之前对经编码的帧或包执行一个或一个以上其它操作,例如,交错、穿刺、卷积译码、错误校正译码和/或应用一个或一个以上网络协议层和/或在RF接收之后执行此类操作的补充。
本文中所描述的设备(例如,设备A100、A200、A300、A400、A500、A560、A600、A650、A700、A800、A900、语音编码器AE20、语音解码器AD20,或其元件)的实施方案的各种元件可实施为驻留(例如)于同一芯片上或芯片组中的两个或两个以上芯片间的电子和/或光学装置,但也预期无此限制的其它布置。此类设备的一个或一个以上元件可完全或部分地实施为经布置以在逻辑元件(例如,晶体管、门)的一个或一个以上固定的或可编程阵列(例如,微处理器、嵌入式处理器、IP核心、数字信号处理器、FPGA(现场可编程门阵列)、ASSP(专用标准产品)和ASIC(专用集成电路))上执行的一个或一个以上指令集。
此类设备的实施方案的一个或一个以上元件有可能用以执行任务或执行不直接与所述设备的操作有关的其它指令集,例如与所述设备被嵌入的装置或系统的另一操作有关的任务。本文中所描述的设备的实施方案的一个或一个以上元件还有可能具有共同结构(例如,用以在不同时间执行对应于不同元件的代码的部分的处理器、经执行以在不同时间执行对应于不同元件的任务的指令集,或在不同时间执行不同元件的操作的电子和/或光学装置的布置)。
提供所描述的配置的上述陈述以使得所属领域的任何技术人员能够制造或使用本文中所揭示的方法和其它结构。本文中所展示并描述的流程图和其它结构仅为实例,且这些结构的其它变型也在本发明的范围内。对于这些配置的各种修改是可能的,且本文中所提出的一般原理同样可适用于其它配置。
本文中所描述的配置中的每一者可部分地或完全地实施为硬连线电路,实施为制造于专用集成电路中的电路配置,或实施为载入到非易失性存储装置中的固件程序或者从数据存储媒体载入或载入到数据存储媒体中的软件程序(作为机器可读代码),此类代码为可由例如微处理器或其它数字信号处理单元等逻辑元件的阵列执行的指令。数据存储媒体可为存储元件的阵列,例如半导体存储器(其可包括(不限于)动态或静态RAM(随机存取存储器)、ROM(只读存储器)和/或快闪RAM),或铁电、磁阻、双向开关半导体、聚合物或相变存储器;或者例如磁盘或光盘等盘式媒体。术语“软件”应理解为包括源代码、汇编语言代码、机器代码、二进制代码、固件、宏代码、微码、可由逻辑元件阵列执行的指令的任何一个或一个以上集合或序列,以及此类实例的任何组合。
本文中所揭示的方法中的每一者还可确实地体现(例如,在如上文所列的一个或一个以上数据存储媒体中)为可由包括逻辑元件(例如,处理器、微处理器、微控制器或其它有限状态机)阵列的机器读取和/或执行的一个或一个以上指令集。因此,本发明不希望限于上文所展示的配置,而是应被赋予与本文中(包括形成原始揭示内容的一部分的所申请的所附权利要求书中)以任何方式揭示的原理和新颖特征一致的最宽范围。
Claims (20)
1.一种对语音信号帧进行编码的方法,所述方法包含:
计算所述帧的线性预测译码LPC残余的峰值能量;
计算所述LPC残余的平均能量;
基于所述所计算的峰值能量与所述所计算的平均能量之间的关系,从(A)噪声激励译码方案和(B)非差分音调原型译码方案的集合中选择一个译码方案;以及
根据所述选定的译码方案对所述帧进行编码,
其中根据所述非差分音调原型译码方案对所述帧进行编码包括产生经编码的帧,所述经编码的帧包括所述帧的音调脉冲的时域形状、所述帧的音调脉冲的位置和所述帧的所估计的音调周期的表示。
2.根据权利要求1所述的方法,其中所述噪声激励译码方案为噪声激励线性预测(NELP)译码方案。
3.根据权利要求1所述的方法,其中所述方法包括计算所述帧中的音调脉冲峰值的数目,且
其中所述选择基于所述帧中的音调脉冲峰值的所述所计算的数目。
4.根据权利要求3所述的方法,其中所述方法包括将所述帧中的音调峰值的所述所计算的数目与阈值进行比较,且
其中所述选择基于所述比较的结果。
5.根据权利要求1所述的方法,其中所述选择基于所述帧的至少一部分的信噪比。
6.根据权利要求5所述的方法,其中所述选择基于所述帧的低频带部分的信噪比。
7.根据权利要求1所述的方法,其中所述方法包含:
确定所述语音信号的第二帧为浊音的,所述第二帧在所述语音信号中紧接在所述帧之后;以及
对于其中所述选择选择所述噪声激励译码方案的状况来说,且响应于所述确定,根据非差分译码模式对所述第二帧进行编码。
8.根据权利要求7所述的方法,其中所述方法包括对所述语音信号的第三帧执行差分编码操作,所述第三帧在所述语音信号中紧接在所述第二帧之后,且
其中所述对所述第三帧执行差分编码操作包括产生经编码的帧,所述经编码的帧包括(A)所述第三帧的音调脉冲形状与所述第二帧的音调脉冲形状之间的差别和(B)所述第三帧的音调周期与所述第二帧的音调周期之间的差别的表示。
9.一种用于对语音信号帧进行编码的设备,所述设备包含:
用于计算所述帧的线性预测译码LPC残余的峰值能量的装置;
用于计算所述LPC残余的平均能量的装置;
用于基于所述所计算的峰值能量与所述所计算的平均能量之间的关系从(A)噪声激励译码方案和(B)非差分音调原型译码方案的集合中选择一个译码方案的装置;以及
用于根据所述选定的译码方案对所述帧进行编码的装置,
其中根据所述非差分音调原型译码方案对所述帧进行编码包括产生经编码的帧,所述经编码的帧包括所述帧的音调脉冲的时域形状、所述帧的音调脉冲的位置和所述帧的所估计的音调周期的表示。
10.根据权利要求9所述的设备,其中所述噪声激励译码方案为噪声激励线性预测(NELP)译码方案。
11.根据权利要求9所述的设备,其中所述设备包括用于计算所述帧中的音调脉冲峰值的数目的装置,且
其中所述用于选择的装置经配置以基于所述帧中的音调脉冲峰值的所述所计算的数目从(A)噪声激励译码方案和(B)非差分音调原型译码方案的所述集合中选择所述一个译码方案。
12.根据权利要求9所述的设备,其中所述用于选择的装置经配置以基于所述帧的低频带部分的信噪比从(A)噪声激励译码方案和(B)非差分音调原型译码方案的所述集合中选择所述一个译码方案。
13.根据权利要求9所述的设备,其中所述设备包含:
用于指示所述语音信号的第二帧为浊音的装置,所述第二帧在所述语音信号中紧接在所述帧之后;以及
用于响应于(A)所述用于选择的装置选择所述噪声激励译码方案和(B)所述用于指示的装置指示所述第二帧为浊音的而根据非差分译码模式对所述第二帧进行编码的装置。
14.根据权利要求13所述的设备,其中所述设备包括用于对所述语音信号的第三帧执行差分编码操作的装置,所述第三帧在所述语音信号中紧接在所述第二帧之后,且其中所述用于对所述第三帧执行差分编码操作的装置包括产生经编码的帧,所述经编码的帧包括(A)所述第三帧的音调脉冲形状与所述第二帧的音调脉冲形状之间的差别和(B)所述第三帧的音调周期与所述第二帧的音调周期之间的差别的表示。
15.一种用于对语音信号帧进行编码的设备,所述设备包含:
峰值能量计算器,其经配置以计算所述帧的线性预测译码LPC残余的峰值能量;
平均能量计算器,其经配置以计算所述LPC残余的平均能量;
第一帧编码器,其可选择地经配置以根据噪声激励译码方案对所述帧进行编码;
第二帧编码器,其可选择地经配置以根据非差分音调原型译码方案对所述帧进行编码;以及
译码方案选择器,其经配置以基于所述所计算的峰值能量与所述所计算的平均能量之间的关系可选择地致使所述第一帧编码器和所述第二帧编码器中的一者对所述帧进行编码,
其中所述第二帧编码器经配置以产生经编码的帧,所述经编码的帧包括所述帧的音调脉冲的时域形状、所述帧的音调脉冲的位置和所述帧的所估计的音调周期的表示。
16.根据权利要求15所述的设备,其中所述噪声激励译码方案为噪声激励线性预测(NELP)译码方案。
17.根据权利要求15所述的设备,其中所述设备包括经配置以计算所述帧中的音调脉冲峰值的数目的音调脉冲峰值计数器,且
其中所述译码方案选择器经配置以基于所述帧中的音调脉冲峰值的所述所计算的数目选择所述第一帧编码器和所述第二帧编码器中的所述一者。
18.根据权利要求15所述的设备,其中所述译码方案选择器经配置以基于所述帧的低频带部分的信噪比选择所述第一帧编码器和所述第二帧编码器中的所述一者。
19.根据权利要求15所述的设备,其中所述译码方案选择器经配置以确定所述语音信号的第二帧为浊音的,所述第二帧在所述语音信号中紧接在所述帧之后,且
其中所述译码方案选择器经配置以响应于(A)可选择地致使所述第一帧编码器对所述帧进行编码和(B)所述第二帧为浊音的所述确定而致使所述第二帧编码器对所述第二帧进行编码。
20.根据权利要求19所述的设备,其中所述设备包括经配置以对所述语音信号的第三帧执行差分编码操作的第三帧编码器,所述第三帧在所述语音信号中紧接在所述第二帧之后,且
其中所述第三帧编码器经配置以产生经编码的帧,所述经编码的帧包括(A)所述第三帧的音调脉冲形状与所述第二帧的音调脉冲形状之间的差别和(B)所述第三帧的音调周期与所述第二帧的音调周期之间的差别的表示。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201210323529.8A CN102881292B (zh) | 2008-10-30 | 2009-10-29 | 用于低位速率应用的译码方案选择 |
Applications Claiming Priority (5)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US12/261,750 US8768690B2 (en) | 2008-06-20 | 2008-10-30 | Coding scheme selection for low-bit-rate applications |
US12/261,750 | 2008-10-30 | ||
US12/261,518 | 2008-10-30 | ||
US12/261,518 US20090319263A1 (en) | 2008-06-20 | 2008-10-30 | Coding of transitional speech frames for low-bit-rate applications |
PCT/US2009/062559 WO2010059374A1 (en) | 2008-10-30 | 2009-10-29 | Coding scheme selection for low-bit-rate applications |
Related Child Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201210323529.8A Division CN102881292B (zh) | 2008-10-30 | 2009-10-29 | 用于低位速率应用的译码方案选择 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN102203855A CN102203855A (zh) | 2011-09-28 |
CN102203855B true CN102203855B (zh) | 2013-02-20 |
Family
ID=41470988
Family Applications (2)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN2009801434768A Active CN102203855B (zh) | 2008-10-30 | 2009-10-29 | 用于低位速率应用的译码方案选择 |
CN201210323529.8A Active CN102881292B (zh) | 2008-10-30 | 2009-10-29 | 用于低位速率应用的译码方案选择 |
Family Applications After (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201210323529.8A Active CN102881292B (zh) | 2008-10-30 | 2009-10-29 | 用于低位速率应用的译码方案选择 |
Country Status (7)
Country | Link |
---|---|
US (1) | US8768690B2 (zh) |
EP (1) | EP2362965B1 (zh) |
JP (1) | JP5248681B2 (zh) |
KR (2) | KR101369535B1 (zh) |
CN (2) | CN102203855B (zh) |
TW (1) | TW201032219A (zh) |
WO (1) | WO2010059374A1 (zh) |
Families Citing this family (30)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR101565919B1 (ko) * | 2006-11-17 | 2015-11-05 | 삼성전자주식회사 | 고주파수 신호 부호화 및 복호화 방법 및 장치 |
US20090319263A1 (en) * | 2008-06-20 | 2009-12-24 | Qualcomm Incorporated | Coding of transitional speech frames for low-bit-rate applications |
US20090319261A1 (en) * | 2008-06-20 | 2009-12-24 | Qualcomm Incorporated | Coding of transitional speech frames for low-bit-rate applications |
CN101599272B (zh) * | 2008-12-30 | 2011-06-08 | 华为技术有限公司 | 基音搜索方法及装置 |
CN101604525B (zh) * | 2008-12-31 | 2011-04-06 | 华为技术有限公司 | 基音增益获取方法、装置及编码器、解码器 |
KR101622950B1 (ko) * | 2009-01-28 | 2016-05-23 | 삼성전자주식회사 | 오디오 신호의 부호화 및 복호화 방법 및 그 장치 |
US8990094B2 (en) * | 2010-09-13 | 2015-03-24 | Qualcomm Incorporated | Coding and decoding a transient frame |
US9767822B2 (en) * | 2011-02-07 | 2017-09-19 | Qualcomm Incorporated | Devices for encoding and decoding a watermarked signal |
MY159444A (en) | 2011-02-14 | 2017-01-13 | Fraunhofer-Gesellschaft Zur Forderung Der Angewandten Forschung E V | Encoding and decoding of pulse positions of tracks of an audio signal |
RU2630390C2 (ru) | 2011-02-14 | 2017-09-07 | Фраунхофер-Гезелльшафт Цур Фердерунг Дер Ангевандтен Форшунг Е.Ф. | Устройство и способ для маскирования ошибок при стандартизированном кодировании речи и аудио с низкой задержкой (usac) |
AU2012217153B2 (en) | 2011-02-14 | 2015-07-16 | Fraunhofer-Gesellschaft Zur Foerderung Der Angewandten Forschung E.V. | Apparatus and method for encoding and decoding an audio signal using an aligned look-ahead portion |
PL3471092T3 (pl) | 2011-02-14 | 2020-12-28 | Fraunhofer-Gesellschaft zur Förderung der angewandten Forschung e.V. | Dekodowanie pozycji impulsów ścieżek sygnału audio |
CN103477387B (zh) | 2011-02-14 | 2015-11-25 | 弗兰霍菲尔运输应用研究公司 | 使用频谱域噪声整形的基于线性预测的编码方案 |
AR085217A1 (es) | 2011-02-14 | 2013-09-18 | Fraunhofer Ges Forschung | Aparato y metodo para codificar una porcion de una señal de audio utilizando deteccion de un transiente y resultado de calidad |
CN103503061B (zh) | 2011-02-14 | 2016-02-17 | 弗劳恩霍夫应用研究促进协会 | 在一频谱域中用以处理已解码音频信号的装置及方法 |
MX2013009303A (es) | 2011-02-14 | 2013-09-13 | Fraunhofer Ges Forschung | Codec de audio utilizando sintesis de ruido durante fases inactivas. |
WO2012110478A1 (en) | 2011-02-14 | 2012-08-23 | Fraunhofer-Gesellschaft zur Förderung der angewandten Forschung e.V. | Information signal representation using lapped transform |
CN104025191A (zh) * | 2011-10-18 | 2014-09-03 | 爱立信(中国)通信有限公司 | 用于自适应多速率编解码器的改进方法和设备 |
TWI451746B (zh) * | 2011-11-04 | 2014-09-01 | Quanta Comp Inc | 視訊會議系統及視訊會議方法 |
US9015039B2 (en) * | 2011-12-21 | 2015-04-21 | Huawei Technologies Co., Ltd. | Adaptive encoding pitch lag for voiced speech |
US9111531B2 (en) * | 2012-01-13 | 2015-08-18 | Qualcomm Incorporated | Multiple coding mode signal classification |
US20140343934A1 (en) * | 2013-05-15 | 2014-11-20 | Tencent Technology (Shenzhen) Company Limited | Method, Apparatus, and Speech Synthesis System for Classifying Unvoiced and Voiced Sound |
RU2665253C2 (ru) | 2013-06-21 | 2018-08-28 | Фраунхофер-Гезелльшафт Цур Фердерунг Дер Ангевандтен Форшунг Е.Ф. | Устройство и способ для улучшенного маскирования адаптивной таблицы кодирования при acelp-образном маскировании с использованием улучшенной оценки запаздывания основного тона |
SG11201510506RA (en) * | 2013-06-21 | 2016-01-28 | Fraunhofer Ges Forschung | Apparatus and method for improved concealment of the adaptive codebook in acelp-like concealment employing improved pulse resynchronization |
US9959886B2 (en) * | 2013-12-06 | 2018-05-01 | Malaspina Labs (Barbados), Inc. | Spectral comb voice activity detection |
CN104916292B (zh) * | 2014-03-12 | 2017-05-24 | 华为技术有限公司 | 检测音频信号的方法和装置 |
US10847170B2 (en) | 2015-06-18 | 2020-11-24 | Qualcomm Incorporated | Device and method for generating a high-band signal from non-linearly processed sub-ranges |
US10812558B1 (en) * | 2016-06-27 | 2020-10-20 | Amazon Technologies, Inc. | Controller to synchronize encoding of streaming content |
EP3857541B1 (en) * | 2018-09-30 | 2023-07-19 | Microsoft Technology Licensing, LLC | Speech waveform generation |
TWI723545B (zh) * | 2019-09-17 | 2021-04-01 | 宏碁股份有限公司 | 語音處理方法及其裝置 |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP1132892A1 (en) * | 1999-08-23 | 2001-09-12 | Matsushita Electric Industrial Co., Ltd. | Voice encoder and voice encoding method |
CN101171626A (zh) * | 2005-03-11 | 2008-04-30 | 高通股份有限公司 | 通过修改残余对声码器内的帧进行时间扭曲 |
Family Cites Families (61)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
NL8400552A (nl) | 1984-02-22 | 1985-09-16 | Philips Nv | Systeem voor het analyseren van menselijke spraak. |
JPH0197294A (ja) | 1987-10-06 | 1989-04-14 | Piran Mirton | 木材パルプ等の精製機 |
JPH02123400A (ja) | 1988-11-02 | 1990-05-10 | Nec Corp | 高能率音声符号化器 |
US5307441A (en) | 1989-11-29 | 1994-04-26 | Comsat Corporation | Wear-toll quality 4.8 kbps speech codec |
US5127053A (en) * | 1990-12-24 | 1992-06-30 | General Electric Company | Low-complexity method for improving the performance of autocorrelation-based pitch detectors |
US5187745A (en) * | 1991-06-27 | 1993-02-16 | Motorola, Inc. | Efficient codebook search for CELP vocoders |
US5233660A (en) | 1991-09-10 | 1993-08-03 | At&T Bell Laboratories | Method and apparatus for low-delay celp speech coding and decoding |
US5765127A (en) * | 1992-03-18 | 1998-06-09 | Sony Corp | High efficiency encoding method |
US5884253A (en) | 1992-04-09 | 1999-03-16 | Lucent Technologies, Inc. | Prototype waveform speech coding with interpolation of pitch, pitch-period waveforms, and synthesis filter |
JP3537008B2 (ja) | 1995-07-17 | 2004-06-14 | 株式会社日立国際電気 | 音声符号化通信方式とその送受信装置 |
US5704003A (en) | 1995-09-19 | 1997-12-30 | Lucent Technologies Inc. | RCELP coder |
JPH09185397A (ja) | 1995-12-28 | 1997-07-15 | Olympus Optical Co Ltd | 音声情報記録装置 |
TW419645B (en) | 1996-05-24 | 2001-01-21 | Koninkl Philips Electronics Nv | A method for coding Human speech and an apparatus for reproducing human speech so coded |
JP4134961B2 (ja) | 1996-11-20 | 2008-08-20 | ヤマハ株式会社 | 音信号分析装置及び方法 |
US6073092A (en) | 1997-06-26 | 2000-06-06 | Telogy Networks, Inc. | Method for speech coding based on a code excited linear prediction (CELP) model |
WO1999010719A1 (en) | 1997-08-29 | 1999-03-04 | The Regents Of The University Of California | Method and apparatus for hybrid coding of speech at 4kbps |
JP3579276B2 (ja) | 1997-12-24 | 2004-10-20 | 株式会社東芝 | 音声符号化/復号化方法 |
US5963897A (en) | 1998-02-27 | 1999-10-05 | Lernout & Hauspie Speech Products N.V. | Apparatus and method for hybrid excited linear prediction speech encoding |
CA2336360C (en) | 1998-06-30 | 2006-08-01 | Nec Corporation | Speech coder |
US6240386B1 (en) * | 1998-08-24 | 2001-05-29 | Conexant Systems, Inc. | Speech codec employing noise classification for noise compensation |
US6480822B2 (en) * | 1998-08-24 | 2002-11-12 | Conexant Systems, Inc. | Low complexity random codebook structure |
US7272556B1 (en) | 1998-09-23 | 2007-09-18 | Lucent Technologies Inc. | Scalable and embedded codec for speech and audio signals |
US6754630B2 (en) | 1998-11-13 | 2004-06-22 | Qualcomm, Inc. | Synthesis of speech from pitch prototype waveforms by time-synchronous waveform interpolation |
US6691084B2 (en) | 1998-12-21 | 2004-02-10 | Qualcomm Incorporated | Multiple mode variable rate speech coding |
US6311154B1 (en) | 1998-12-30 | 2001-10-30 | Nokia Mobile Phones Limited | Adaptive windows for analysis-by-synthesis CELP-type speech coding |
JP4008607B2 (ja) | 1999-01-22 | 2007-11-14 | 株式会社東芝 | 音声符号化/復号化方法 |
US6324505B1 (en) | 1999-07-19 | 2001-11-27 | Qualcomm Incorporated | Amplitude quantization scheme for low-bit-rate speech coders |
US6633841B1 (en) | 1999-07-29 | 2003-10-14 | Mindspeed Technologies, Inc. | Voice activity detection speech coding to accommodate music signals |
US7039581B1 (en) * | 1999-09-22 | 2006-05-02 | Texas Instruments Incorporated | Hybrid speed coding and system |
US6581032B1 (en) | 1999-09-22 | 2003-06-17 | Conexant Systems, Inc. | Bitstream protocol for transmission of encoded voice signals |
CN1187735C (zh) * | 2000-01-11 | 2005-02-02 | 松下电器产业株式会社 | 多模式话音编码装置和解码装置 |
DE60128677T2 (de) | 2000-04-24 | 2008-03-06 | Qualcomm, Inc., San Diego | Verfahren und vorrichtung zur prädiktiven quantisierung von stimmhaften sprachsignalen |
US6584438B1 (en) | 2000-04-24 | 2003-06-24 | Qualcomm Incorporated | Frame erasure compensation method in a variable rate speech coder |
US7363219B2 (en) | 2000-09-22 | 2008-04-22 | Texas Instruments Incorporated | Hybrid speech coding and system |
US7472059B2 (en) | 2000-12-08 | 2008-12-30 | Qualcomm Incorporated | Method and apparatus for robust speech classification |
JP2002198870A (ja) | 2000-12-27 | 2002-07-12 | Mitsubishi Electric Corp | エコー処理装置 |
US6480821B2 (en) | 2001-01-31 | 2002-11-12 | Motorola, Inc. | Methods and apparatus for reducing noise associated with an electrical speech signal |
JP2003015699A (ja) | 2001-06-27 | 2003-01-17 | Matsushita Electric Ind Co Ltd | 固定音源符号帳並びにそれを用いた音声符号化装置及び音声復号化装置 |
KR100347188B1 (en) | 2001-08-08 | 2002-08-03 | Amusetec | Method and apparatus for judging pitch according to frequency analysis |
CA2365203A1 (en) | 2001-12-14 | 2003-06-14 | Voiceage Corporation | A signal modification method for efficient coding of speech signals |
US7236927B2 (en) | 2002-02-06 | 2007-06-26 | Broadcom Corporation | Pitch extraction methods and systems for speech coding using interpolation techniques |
US20040002856A1 (en) | 2002-03-08 | 2004-01-01 | Udaya Bhaskar | Multi-rate frequency domain interpolative speech CODEC system |
AU2002307884A1 (en) | 2002-04-22 | 2003-11-03 | Nokia Corporation | Method and device for obtaining parameters for parametric speech coding of frames |
CA2388439A1 (en) | 2002-05-31 | 2003-11-30 | Voiceage Corporation | A method and device for efficient frame erasure concealment in linear predictive based speech codecs |
JP2004109803A (ja) | 2002-09-20 | 2004-04-08 | Hitachi Kokusai Electric Inc | 音声符号化装置及び方法 |
AU2003278013A1 (en) | 2002-10-11 | 2004-05-04 | Voiceage Corporation | Methods and devices for source controlled variable bit-rate wideband speech coding |
US7155386B2 (en) | 2003-03-15 | 2006-12-26 | Mindspeed Technologies, Inc. | Adaptive correlation window for open-loop pitch |
US7433815B2 (en) | 2003-09-10 | 2008-10-07 | Dilithium Networks Pty Ltd. | Method and apparatus for voice transcoding between variable rate coders |
US8355907B2 (en) | 2005-03-11 | 2013-01-15 | Qualcomm Incorporated | Method and apparatus for phase matching frames in vocoders |
US8155965B2 (en) | 2005-03-11 | 2012-04-10 | Qualcomm Incorporated | Time warping frames inside the vocoder by modifying the residual |
JP4599558B2 (ja) | 2005-04-22 | 2010-12-15 | 国立大学法人九州工業大学 | ピッチ周期等化装置及びピッチ周期等化方法、並びに音声符号化装置、音声復号装置及び音声符号化方法 |
US7177804B2 (en) | 2005-05-31 | 2007-02-13 | Microsoft Corporation | Sub-band voice codec with multi-stage codebooks and redundant coding |
US20070174047A1 (en) | 2005-10-18 | 2007-07-26 | Anderson Kyle D | Method and apparatus for resynchronizing packetized audio streams |
EP2040251B1 (en) | 2006-07-12 | 2019-10-09 | III Holdings 12, LLC | Audio decoding device and audio encoding device |
US8135047B2 (en) | 2006-07-31 | 2012-03-13 | Qualcomm Incorporated | Systems and methods for including an identifier with a packet associated with a speech signal |
US8260609B2 (en) | 2006-07-31 | 2012-09-04 | Qualcomm Incorporated | Systems, methods, and apparatus for wideband encoding and decoding of inactive frames |
US8239190B2 (en) | 2006-08-22 | 2012-08-07 | Qualcomm Incorporated | Time-warping frames of wideband vocoder |
CA2666546C (en) | 2006-10-24 | 2016-01-19 | Voiceage Corporation | Method and device for coding transition frames in speech signals |
WO2008072736A1 (ja) | 2006-12-15 | 2008-06-19 | Panasonic Corporation | 適応音源ベクトル量子化装置および適応音源ベクトル量子化方法 |
US20090319263A1 (en) | 2008-06-20 | 2009-12-24 | Qualcomm Incorporated | Coding of transitional speech frames for low-bit-rate applications |
US20090319261A1 (en) | 2008-06-20 | 2009-12-24 | Qualcomm Incorporated | Coding of transitional speech frames for low-bit-rate applications |
-
2008
- 2008-10-30 US US12/261,750 patent/US8768690B2/en not_active Expired - Fee Related
-
2009
- 2009-10-29 JP JP2011534763A patent/JP5248681B2/ja active Active
- 2009-10-29 WO PCT/US2009/062559 patent/WO2010059374A1/en active Application Filing
- 2009-10-29 EP EP20090744884 patent/EP2362965B1/en active Active
- 2009-10-29 CN CN2009801434768A patent/CN102203855B/zh active Active
- 2009-10-29 KR KR1020117012391A patent/KR101369535B1/ko active IP Right Grant
- 2009-10-29 KR KR1020137028807A patent/KR101378609B1/ko active IP Right Grant
- 2009-10-29 CN CN201210323529.8A patent/CN102881292B/zh active Active
- 2009-10-30 TW TW98137040A patent/TW201032219A/zh unknown
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP1132892A1 (en) * | 1999-08-23 | 2001-09-12 | Matsushita Electric Industrial Co., Ltd. | Voice encoder and voice encoding method |
CN101171626A (zh) * | 2005-03-11 | 2008-04-30 | 高通股份有限公司 | 通过修改残余对声码器内的帧进行时间扭曲 |
Non-Patent Citations (1)
Title |
---|
Venkatesh Krishnan et al.EVRC-WIDEBAND: THE NEW 3GPP2 WIDEBAND VOCODER STANDARD.《Acoustics, Speech and Signal Processing, 2007. ICASSP 2007. IEEE》.2007,第2卷 * |
Also Published As
Publication number | Publication date |
---|---|
EP2362965A1 (en) | 2011-09-07 |
CN102881292A (zh) | 2013-01-16 |
KR20110090991A (ko) | 2011-08-10 |
KR101378609B1 (ko) | 2014-03-27 |
WO2010059374A1 (en) | 2010-05-27 |
US20090319262A1 (en) | 2009-12-24 |
CN102881292B (zh) | 2015-11-18 |
TW201032219A (en) | 2010-09-01 |
US8768690B2 (en) | 2014-07-01 |
JP2012507752A (ja) | 2012-03-29 |
KR20130126750A (ko) | 2013-11-20 |
EP2362965B1 (en) | 2013-03-20 |
JP5248681B2 (ja) | 2013-07-31 |
KR101369535B1 (ko) | 2014-03-04 |
CN102203855A (zh) | 2011-09-28 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN102203855B (zh) | 用于低位速率应用的译码方案选择 | |
CN102197423A (zh) | 用于低位速率应用的过渡语音帧的译码 | |
CN102067212A (zh) | 用于低位速率应用的对过渡语音帧的译码 | |
EP1958187B1 (en) | Method and apparatus for detection of tonal components of audio signals | |
EP2176860B1 (en) | Processing of frames of an audio signal | |
KR101019936B1 (ko) | 음성 파형의 정렬을 위한 시스템, 방법, 및 장치 | |
WO2000038179A2 (en) | Variable rate speech coding | |
CN1355915A (zh) | 过滤语言帧的多脉冲内插编码 | |
Kroon et al. | A low-complexity toll-quality variable bit rate coder for CDMA cellular systems | |
Katugampala et al. | Integration of harmonic and analysis by synthesis coders | |
LeBlanc et al. | Personal Systems Laboratory Texas Instruments Incorporated |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
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 |