CN102299760A - 脉冲编解码方法及脉冲编解码器 - Google Patents

脉冲编解码方法及脉冲编解码器 Download PDF

Info

Publication number
CN102299760A
CN102299760A CN2010102134515A CN201010213451A CN102299760A CN 102299760 A CN102299760 A CN 102299760A CN 2010102134515 A CN2010102134515 A CN 2010102134515A CN 201010213451 A CN201010213451 A CN 201010213451A CN 102299760 A CN102299760 A CN 102299760A
Authority
CN
China
Prior art keywords
index
track
pulse
pulse position
code
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.)
Granted
Application number
CN2010102134515A
Other languages
English (en)
Other versions
CN102299760B (zh
Inventor
马付伟
张德军
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Huawei Technologies Co Ltd
Original Assignee
Huawei Technologies Co Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Priority to CN201010213451.5A priority Critical patent/CN102299760B/zh
Application filed by Huawei Technologies Co Ltd filed Critical Huawei Technologies Co Ltd
Priority to CN201410118069.4A priority patent/CN103886862B/zh
Priority to KR1020137002001A priority patent/KR101384574B1/ko
Priority to AU2011269502A priority patent/AU2011269502B2/en
Priority to PT117975680T priority patent/PT2587480T/pt
Priority to JP2013515680A priority patent/JP5785255B2/ja
Priority to EP11797568.0A priority patent/EP2587480B1/en
Priority to ES11797568T priority patent/ES2764832T3/es
Priority to PCT/CN2011/074999 priority patent/WO2011160537A1/zh
Publication of CN102299760A publication Critical patent/CN102299760A/zh
Priority to US13/725,301 priority patent/US9020814B2/en
Priority to US14/150,498 priority patent/US8959018B2/en
Application granted granted Critical
Publication of CN102299760B publication Critical patent/CN102299760B/zh
Priority to US14/547,860 priority patent/US9508348B2/en
Priority to JP2015145274A priority patent/JP6042949B2/ja
Priority to US15/338,098 priority patent/US9858938B2/en
Priority to JP2016220044A priority patent/JP6301431B2/ja
Priority to US15/853,690 priority patent/US10446164B2/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
    • G10L19/00Speech 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/04Speech 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/08Determination or coding of the excitation function; Determination or coding of the long-term prediction parameters
    • G10L19/10Determination or coding of the excitation function; Determination or coding of the long-term prediction parameters the excitation function being a multipulse excitation
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
    • G10L19/00Speech 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/04Speech 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/08Determination or coding of the excitation function; Determination or coding of the long-term prediction parameters
    • G10L19/10Determination or coding of the excitation function; Determination or coding of the long-term prediction parameters the excitation function being a multipulse excitation
    • G10L19/107Sparse pulse excitation, e.g. by using algebraic codebook
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
    • G10L19/00Speech 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
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
    • G10L19/00Speech 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/002Dynamic bit allocation
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
    • G10L19/00Speech 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/04Speech 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/16Vocoder architecture
    • G10L19/18Vocoders using multiple modes
    • G10L19/24Variable rate codecs, e.g. for generating different qualities using a scalable representation such as hierarchical encoding or layered encoding
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
    • G10L19/00Speech 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/008Multichannel audio signal coding or decoding using interchannel correlation to reduce redundancy, e.g. joint-stereo, intensity-coding or matrixing
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
    • G10L19/00Speech 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/04Speech 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/08Determination or coding of the excitation function; Determination or coding of the long-term prediction parameters
    • G10L19/12Determination 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

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Computational Linguistics (AREA)
  • Signal Processing (AREA)
  • Health & Medical Sciences (AREA)
  • Audiology, Speech & Language Pathology (AREA)
  • Human Computer Interaction (AREA)
  • Acoustics & Sound (AREA)
  • Multimedia (AREA)
  • Mathematical Physics (AREA)
  • Algebra (AREA)
  • General Physics & Mathematics (AREA)
  • Mathematical Analysis (AREA)
  • Mathematical Optimization (AREA)
  • Pure & Applied Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Quality & Reliability (AREA)
  • Compression, Expansion, Code Conversion, And Decoders (AREA)
  • Signal Processing For Digital Recording And Reproducing (AREA)
  • Compression Or Coding Systems Of Tv Signals (AREA)

Abstract

本发明实施例公开了脉冲编解码方法及脉冲编解码器。本发明实施例通过将两个以上的轨道联合进行编码,使得在单个轨道编码的情况下空闲的码书空间能够在联合编码时合并,成为可以被节省的编码比特,此外,对各个轨道上需要进行编码的脉冲按照位置进行合并,分别对有脉冲位置的数目、有脉冲位置在轨道上的分布和各个有脉冲位置上的脉冲数目进行编码,避免了对同一位置的多个脉冲进行分别编码,使得编码比特更加节省。

Description

脉冲编解码方法及脉冲编解码器
技术领域
本发明涉及脉冲编解码方法及脉冲编解码器。
背景技术
在矢量编码技术中,常常使用代数码书对自适应滤波后的残差信号进行量化编码。当经过搜索获得轨道上最佳代数码书脉冲的位置和符号信息后,通过编码计算得到相应的索引值,使得解码端能够根据该索引值重建脉冲序列。在保证无损重建的前提下,尽量减少编码索引值所需要的比特,是代数码书脉冲编码方法研究与发展的主要目标之一。
下面以语音编码中一种较优的编码方法——宽带自适应多码率(AMR WB+:Adaptive Multi-Rate Wideband)编码方法为例,说明现有代数码书脉冲所采用的一种具体编码方法。根据编码码率的不同,在每个轨道上可以编码1~N个脉冲,假定每个轨道有M=2m个位置,AMR WB+中每个轨道上编码1~6个脉冲的过程分别描述如下:
①每个轨道编码1个脉冲
由于每个轨道有2m个位置,因此,每个轨道上脉冲的位置索引需要用m个比特进行编码,脉冲的符号索引需要用1比特编码。编码1个带符号脉冲的索引值为:
I1p(m)=p+s×2m
其中p∈[0,2m-1]为脉冲的位置索引;s为脉冲的符号索引,当脉冲符号为正时,s设置为0,当脉冲符号为负时,s设置为1;I1p∈[0,2m+1-1]。
每个轨道编码1个脉冲所需的比特数为:m+1。
②每个轨道编码2个脉冲
根据①的结果,每个轨道编码1个脉冲需要m+1个比特,对另一个脉冲的位置索引进行编码需要m个比特,由于对脉冲顺序没有特别要求,可通过排列脉冲位置索引获得的大小关系来表示另一个脉冲的符号。编码2个脉冲的索引值为:
I2p(m)=p1+I1p0×2m=p1+p0×2m+s×22m
其中p0、p1∈[0,2m-1]分别为2个脉冲的位置索引;s为p0脉冲的符号索引;p1脉冲符号的具体表示规则为:p0<p1表示2个脉冲符号相同,p0>p1表示2个脉冲符号相反;I2p∈[0,22m+1-1]。
每个轨道编码2个脉冲所需的比特数为:2m+1。
③每个轨道编码3个脉冲
将每个轨道分为两个部分:Section A和Section B,每个部分各包含2m-1个位置。某个部分中至少包含2个脉冲,根据②的结果,编码该部分需要2×(m-1)+1=2m-1个比特;另一个脉冲则在整个轨道上搜索,根据①的结果,需要m+1个比特;此外,还需要用1个比特来指示包含2个脉冲的部分。编码3个脉冲的索引值为:
I3p(m)=I2p(m-1)+k×22m-1+I1p(m)×22m
其中k为Section的索引;I3p∈[0,23m+1-1]。
每个轨道编码3个脉冲所需的比特数为:3m+1。
④每个轨道编码4个脉冲
将每个轨道分为两个部分:Section A和Section B,每个部分各包含2m-1个位置。各部分中包含脉冲个数的组合情况如下表所示:
  类别   SectionA中脉冲数  Section B中脉冲数   需要比特数
  0   0  4   4m-3
  1   1  3   4m-2
  2   2  2   4m-2
  3   3  1   4m-2
  4   4  0   4m-3
上表中,各个类别对应的需要比特数的依据为:对于类别0和类别4,在有4个脉冲的部分中采用类似③的方法,只是进行整体搜索的脉冲数目为2个,相当于I2p(m-2)+k×22m-3+I2p(m-1)×22m-2;对于类别1,相当于I1p(m-1)+I3p(m-1)×2m;对于类别2,相当于I2p(m-1)+I2p(m-1)×22m-1;对于类别3,相当于I3p(m-1)+I1p(m-1)×23m-2
将类别0和类别4看作一种可能的情况,类别1~3各作为一种情况,则总共有4种情况,因此需要用2个比特来表示对应的情况,则类别1~3都需要4m-2+2=4m个比特;此外,对于包含类别0和类别4的情况,还需要用1个比特来区分,因此类别0和类别4需要4m-3+2+1=4m个比特。
每个轨道编码4个脉冲所需的比特数为:4m。
⑤、每个轨道编码5个脉冲
将每个轨道分为两个部分:Section A和Section B,每个部分各包含2m-1个位置。某个部分中至少包含3个脉冲,根据③的结果,编码该部分需要3×(m-1)+1=3m-2个比特;剩下两个脉冲则在整个轨道上搜索,根据②的结果,需要2m+1个比特;此外,还需要用1个比特来指示包含3个脉冲的部分。编码5个脉冲的索引值为:
I5p(m)=I3p(m-1)+k×23m-2+I1p(m)×23m-1
每个轨道编码5个脉冲所需的比特数为:5m。
⑥每个轨道编码6个脉冲
将每个轨道分为两个部分:Section A和Section B,每个部分各包含2m-1个位置。各部分中包含脉冲个数的组合情况如下表所示:
  类别  Section A中脉冲数   Section B中脉冲数   需要比特数
  0  0   6   6m-5
  1  1   5   6m-5
  2  2   4   6m-5
  3  3   3   6m-4
  4  4   2   6m-5
  5  5   1   6m-5
  6  6   0   6m-5
上表中,各个类别对应的需要比特数的依据可仿照④推算,不再赘述。
分别将类别0和6、类别1和5、类别2和4各看作一种可能的情况,类别3单独作为一种情况,则总共有4种情况,因此需要用2个比特来表示对应的情况,则类别3需要6m-4+2=6m-2个比特;对于那些包含合并类别的情况,还需要用1个比特来区分,因此除类别3外的其他类别需要6m-5+2+1=6m-2个比特。
每个轨道编码6个脉冲所需的比特数为:6m-2。
在提出本发明的过程中,发明人发现,AMR_WB+提供的代数脉冲编码方法,采用类似递归的编码逻辑,将编码脉冲数量较多的情况拆分为若干个编码脉冲数量较少的情况来处理,计算复杂度较大,同时,随着轨道上编码脉冲数目的增加,编码索引的冗余度将逐渐累加,容易造成编码比特的浪费。
发明内容
本发明实施例提供能够节省编码比特的脉冲编码方法。
一种脉冲编码方法,包括:获取T个轨道上需要编码的脉冲,T是大于等于2的整数;分别对各个轨道上需要编码的脉冲按照位置进行统计,获得各个轨道上有脉冲位置的数目Nt、有脉冲位置在轨道上的分布和各个有脉冲位置上的脉冲数目,其中下标t表示第t个轨道,t∈[0,T-1];按照各个轨道上有脉冲位置的数目{N0,N1,...,NT-1}确定第一索引I1,所述第一索引对应于其所代表的有脉冲位置的数目下,各个轨道上有脉冲位置全部可能的分布情况;分别按照各个轨道上有脉冲位置的分布确定各个轨道的第二索引I2t,所述第二索引从所述第一索引对应的全部可能的分布情况中,指示相应轨道上与当前有脉冲位置的分布对应的分布情况;分别按照各个轨道上各个有脉冲位置上的脉冲数目确定各个轨道的第三索引I3t;生成编码索引Ind,所述编码索引包括第一索引和各个轨道的第二、三索引的信息。
另一种脉冲编码方法,包括:获取T个轨道上需要编码的脉冲,T是大于等于2的整数;分别对各个轨道上需要编码的脉冲按照位置进行统计,获得各个轨道上有脉冲位置的数目Nt、有脉冲位置在轨道上的分布和各个有脉冲位置上的脉冲数目,其中下标t表示第t个轨道,t∈[0,T-1];分别按照各个轨道上有脉冲位置的数目确定各个轨道的第一索引I1t,所述第一索引对应于其所代表的有脉冲位置的数目下,该轨道上有脉冲位置全部可能的分布情况;分别按照各个轨道上有脉冲位置的分布确定各个轨道的第二索引I2t,所述第二索引从所述第一索引对应的全部可能的分布情况中,指示该轨道上与当前有脉冲位置的分布对应的分布情况;分别按照各个轨道上各个有脉冲位置上的脉冲数目确定各个轨道的第三索引I3t;生成编码索引Ind,所述编码索引包括各个轨道的第一、二、三索引的信息。
本发明实施例还提供与之相应的脉冲解码方法以及相应的脉冲编码器和解码器。
本发明实施例中,通过将两个以上的轨道联合进行编码,使得在单个轨道编码的情况下空闲的码书空间能够在联合编码时合并,成为可以被节省的编码比特,此外,对各个轨道上需要进行编码的脉冲按照位置进行合并,分别对有脉冲位置的数目、有脉冲位置在轨道上的分布和各个有脉冲位置上的脉冲数目进行编码,避免了对同一位置的多个脉冲进行分别编码,使得编码比特更加节省。
附图说明
图1是本发明实施例一编码方法流程示意图;
图2是本发明实施例一中脉冲位置映射示意图;
图3是本发明实施例二编码方法流程示意图;
图4是本发明实施例三编码方法流程示意图;
图5是本发明实施例四中轨道脉冲叠加示意图;
图6是本发明实施例四中脉冲分布的轨道索引示意图;
图7是本发明实施例五解码方法流程示意图;
图8是本发明实施例六解码方法流程示意图;
图9是本发明实施例七解码方法流程示意图;
图10是本发明实施例八编码器逻辑结构示意图;
图11是本发明实施例九解码器逻辑结构示意图。
具体实施方式
本发明实施例提供脉冲编码方法,通过将两个以上的轨道联合进行编码来节省的编码比特。本发明实施例还提供相应的脉冲解码方法以及脉冲编解码器。以下分别进行详细说明。
在语音编码器中,经过码书搜索得到每个轨道上所有脉冲的位置和符号(若涉及)信息,这些信息需要被完整的传递到解码端,使得在解码端能够唯一的恢复所有脉冲的位置和符号(若涉及)信息,同时为了尽量的降低比特率,期望使用尽量少的比特来传递这些信息。
通过理论分析可知,同一轨道上所有脉冲位置和符号(若涉及)的排列组合数即为码本空间的最小值,对应的编码比特数即为理论下限值。轨道上的位置总数以及脉冲总数是一定的,对于轨道上的位置总数以及脉冲总数的不同取值情况而言,所有脉冲位置和符号的排列组合数并不总是2的整数次幂,因此编码比特数的理论下限值并不总是整数,此时,单轨道编码的实际编码比特数至少为理论下限值的整数部分加1,这使得不可避免的出现部分码本空间的空闲。例如,表1给出了在位置总数为16的轨道上,需要编码的脉冲总数
Figure BSA00000164790200061
1-6的情况下,编码比特数的理论下限值与实际下限值以及空闲空间的情况。
表1
Figure BSA00000164790200062
从表1可以看出,大多数情况下,实际下限值仍会带来码本空间的较大浪费,因此本发明提出,对两个以上的轨道进行联合编码,这样在单轨道编码中空闲的码本空间就可以合并,一旦合并的空闲空间足够,即可降低1个实际编码比特。显然,对于同样类型(轨道上的位置总数和脉冲总数均相同)的轨道,只要将K个轨道联合编码即可节省1个编码比特,K≥1/(1-kk),其中kk为单轨道编码的理论下限值的小数部分。举例而言,kk小于0.5的轨道,例如,表1中脉冲总数为3、4、5的轨道,2个一起联合编码即可节省1个编码比特,表1中脉冲总数为6的轨道,3个一起联合编码即可节省1个编码比特。当然,不同类型的轨道联合编码也可以达到同样的效果,只要2个轨道的kk累加之和小于1,或者3个轨道的kk累加之和小于2即可节省一个比特,显然若3个轨道的kk累加之和小于1更可节省2个比特,以此类推。表2给出了同类型2轨道联合编码与单轨道编码的比较情况(考虑脉冲有符号),轨道上的位置总数为16,需要编码的脉冲总数
Figure BSA00000164790200071
3-5。
表2
Figure BSA00000164790200072
表3给出了不同类型2-3轨道联合编码与单轨道编码的比较情况(考虑脉冲有符号),轨道上的位置总数为16,需要编码的脉冲总数
Figure BSA00000164790200073
为3-5。
表3
Figure BSA00000164790200074
以上给出了多轨道联合编码节省比特数的理论分析,为达到该理论效果,需要使编码索引尽可能有效的使用码本空间,下面分别以具体实施例给出实现多轨道联合编码的实际比特下限值的编码方法。
实施例一、一种脉冲编码方法,如图1所示,包括:
A1、获取T个轨道上需要编码的脉冲,T是大于等于2的整数。
T个轨道中每个轨道上需要编码的脉冲总数通常根据码率来确定,需要编码的脉冲数目越多,显然编码索引需要的比特数也越多,码率越高,本文中,以pulse_numt表示第t个轨道上需要编码的脉冲总数,假设
Figure BSA00000164790200082
联合编码的各个轨道上的脉冲总数可以相同也可以不同。
A2、分别对各个轨道上需要编码的脉冲按照位置进行统计,获得各个轨道上有脉冲位置的数目Nt、有脉冲位置在轨道上的分布和各个有脉冲位置上的脉冲数目。
本文中:
以pos_numt表示第t个轨道上有脉冲位置的数目,由于个脉冲在轨道上的分布可能出现位置重叠,假设pos_numt=Nt,显然有Nt
Figure BSA00000164790200084
以脉冲位置矢量Pt(Nt)={pt(0),pt(1),…,pt(Nt-1)}表示第t个轨道上有脉冲位置在轨道上的分布;其中,pt(n)表示有脉冲位置在第t个轨道上的位置序号,n∈[0,Nt-1],pt(n)∈[0,Mt-1],Mt在本文中表示第t个轨道上的位置总数,一般Mt可以为8,16等等,联合编码的各个轨道上的位置总数可以相同也可以不同。
以脉冲数目矢量SUt(Nt)={sut(0),sut(1),…,sut(Nt-1)}表示第t个轨道上的各个有脉冲位置上的脉冲数目;其中,sut(n)表示pt(n)位置的脉冲数目,显然有
Figure BSA00000164790200085
此外,需要编码的脉冲还可能带有符号,即具有正或负的特性,此时在对轨道上需要编码的脉冲按照位置进行统计时,还需要获得各个有脉冲位置的脉冲符号信息,本文中:
以脉冲符号矢量St(Nt)={st(0),st(1),…,st(Nt-1)}表示第t个轨道上的各个有脉冲位置的脉冲符号信息;其中,st(n)表示pt(n)位置的脉冲符号,称为pt(n)位置的符号索引,基于st(n)所代表的脉冲符号具有或正或负的二值性,一般可采用如下简单的编码方式:用st(n)=0表示正脉冲,st(n)=1表示负脉冲。当然,对于需要编码的脉冲来说,脉冲符号并不是必须具备的特征,按照实际需要,脉冲可以仅有位置和数量特性,此时无需统计脉冲符号信息。
显然,Pt(Nt)、SUt(Nt)、St(Nt)中的值具有一一对应的关系。
在统计获得轨道联合编码需要的各项参数Nt、Pt(Nt)、SUt(Nt)、St(Nt)后,就需要将各项参数编码为索引,建立参数与索引之间的对应关系,使得解码方能够根据索引恢复出对应的参数。对应关系可以采用两种表示方式,一是用代数方式表示的计算关系,这种情况下,编码方对参数进行正向计算获得索引,解码方则对索引进行反向计算获得参数;一是用映射方式表示的查询关系,这种情况下,编解码双方需要存储关联参数与索引的映射表。两种对应关系可根据参数的具体特点进行选择,一般而言,在数据量大的情况下,尽量设计出以计算关系表示的对应关系能够节省编解码双方的存储量,是更为有利的。下面分别对各项参数的编码进行说明。
A3、按照各个轨道上有脉冲位置的数目{N0,N1,…,NT-1}确定第一索引I1,第一索引I1对应于其所代表的有脉冲位置的数目下,各个轨道上有脉冲位置全部可能的分布情况。
{N0,N1,…,NT-1}组合的可能情况总数为
Figure BSA00000164790200091
由于Nt取值不大,通常联合编码的轨道总数T也不会很大,使得{N0,N1,…,NT-1}组合的可能情况总数不是很大,因此{N0,N1,…,NT-1}组合与第一索引I1的对应采用计算关系或查询关系都是可行的。
在建立{N0,N1,…,NT-1}组合与I1的对应关系时,一般可令他们与I1具有一一对应的关系,即一个第一索引与一个{N0,N1,…,NT-1}组合对应。pos_Numt的数值Nt决定了Pt(Nt)全部可能情况的总数Wt(Nt),
Figure BSA00000164790200092
“C”表示求组合数;因此一个I1对应于
Figure BSA00000164790200093
Wt(Nt)个可能的Pt(Nt)组合{P0(N0),P1(N1),…,PT-1(NT-1)}。
当然,若某个轨道的某些Nt值对应较少的Pt(Nt)情况数,可以将这些Nt组合起来对应同一个I1,即至少有一个I1与两个以上的{N0,N1,…,NT-1}组合对应,此时需要通过额外的附加索引Ift对这些对应同一个I1的{N0,N1,…,NT-1}组合进行区分,也就是用附加索引Ift进一步确定与I1对应的Nt值不唯一的轨道当前的Nt值。
可以将不同的I1视为轨道联合编码的分类索引,它根据各个轨道的脉冲位置数组合将整个联合编码的码本空间划分为若干个部分。下面举例说明联合编码的组合分类情况。表4为3脉冲2轨道联合编码的一种组合分类方案,共有3×3种Nt值组合,每种组合对应一个分类(I1),假定轨道上的位置总数Mt均为16。
表4
分类   轨道0Nt   轨道1Nt Pt(Nt)组合数
  1   3   3   560×560
  2   3   2   560×120
  3   2   3   120×560
  4   2   2   120×120
  5   3   1   560×16
  6   1   3   16×560
  7   2   1   120×16
  8   1   2   16×120
  9   1   1   16×120
表5为4脉冲2轨道联合编码的一种组合分类方案,共有4×4种Nt值组合,同样是每种组合对应一个分类(I1),假定轨道上的位置总数Mt均为16。
表5
分类   轨道0Nt   轨道1Nt Pt(Nt)组合数
  1   4   4   1820×1820
  2   4   3   1820×560
  3   3   4   560×1820
  4   3   3   560×560
  5   4   2   1820×120
  6   2   4   120×1820
  7   3   2   560×120
  8   2   3   120×560
  9   4   1   1820×16
  10   1   4   16×1820
  11   2   2   120×120
  12   3   1   560×16
  13   1   3   16×560
  14   2   1   120×16
  15   1   2   16×120
  16   1   1   16×16
表6为5脉冲2轨道联合编码的一种组合分类方案,与前面两例不同的是,将Nt=1、2、3的情形组合在一起进行分类,共有3×3种分类(I1),某些分类对应多个Nt值组合,假定轨道上的位置总数Mt均为16。
表6
分类   轨道0Nt   轨道1Nt Pt(Nt)组合数
  1   5   5   4368×4368
  2   5   4   4368×1820
  3   4   5   1820×4368
  4   4   4   1820×1820
  5   5   1、2、3   4368×(16+120+560)
  6   1、2、3   5   (16+120+560)×4368
  7   4   1、2、3   1820×(16+120+560)
  8   1、2、3   4   (16+120+560)×1820
  9   1、2、3   1、2、3   (16+120+560)×(16+120+560)
由表6可以看出,通过将Nt值(通常是对应位置组合数较少的Nt值)组合在一起进行分类,可以有效减少总的联合编码分类数量(例如表6中的分类数为9个,远少于一一对应情况下的分类数25),当然,相应的需要在出现非唯一Nt值的分类情形中使用额外的附加索引Ift来确定当前Nt值,即在I1划分出的空间中,进一步划分出由附加索引Ift标识的子空间。
A4、分别按照各个轨道上有脉冲位置的分布Pt(Nt)确定各个轨道的第二索引I2t,第二索引I2t从第一索引I1对应的全部可能的分布情况中,指示相应轨道上与当前有脉冲位置的分布对应的分布情况。
Pt(Nt)的总可能数为
Figure BSA00000164790200121
数据量较大,因此与第二索引I2t的对应比较适合采用计算关系,当然采用查询关系也是可行的。显然Wt(Nt)即是I2t全部可能的取值数目,若I2t的值从0开始计数,则有I2t∈[0,Wt(Nt)-1]。
当然,在需要使用附加索引Ift的情况下,决定I2t范围的Nt值由第一索引I1与附加索引Ift联合确定。
为便于通过代数计算来确定Pt(Nt)与I2t的对应关系,下面给出一种第二索引I2t的计算公式:
I 2 t = C M t N t - C M t - p t ( 0 ) N t + Σ n = 1 N t - 1 [ C M t - p t ( n - 1 ) - 1 N t - n - C M t - p t ( n ) N t - n ] ;
其中,pt(n)表示第n个有脉冲位置在轨道上的位置序号,n∈[0,Nt-1],pt(0)∈[0,Mt-Nt],pt(n)∈[pt(n-1)+1,Mt-Nt+n],pt(0)<pt(1)<…<pt(Nt-1),或者pt(0)>pt(1)>…>pt(Nt-1)。
采用上述方法能够以计算关系获得各个轨道的第二索引I2t,由于I2t在编码索引中所占数据量较大,采用计算方法能够尽量减少编解码双方的存储量。同时,由于I2t连续编码且与Pt(Nt)严格一一对应,因此能够最大限度的利用编码比特,避免浪费。关于该计算方法的原理以及具体推导和描述请参阅公开号为CN101295506的中国专利申请(公开日为2008年10月29日),尤其可参见该申请文件说明书第13页第18行至第15页第9行(实施例二,附图14、15),相应的解码计算方法可参见该申请文件说明书第16页第23行至第17页第12行(实施例四)。
A5、分别按照各个轨道上各个有脉冲位置上的脉冲数目SUt(Nt)确定各个轨道的第三索引I3t
SUt(Nt)虽然是与Pt(Nt)同维度的矢量,但受限于
Figure BSA00000164790200131
Figure BSA00000164790200133
的数值通常不大,一般为1~6,因此SUt(Nt)的总可能数不大,与第三索引I3t的对应采用计算关系或查询关系都是可行的。需要说明的是,在某些极端情况下,例如Nt=1或
Figure BSA00000164790200134
此时SUt(Nt)只有一种可能情况,无须由具体的I3t进行指示,可将I3t视为不影响最终编码索引生成的任意值。
为便于通过代数计算来确定SUt(Nt)与I3t的对应关系,下面给出一种第三索引I3t的计算方法:
对于第t个轨道,将在Nt个有脉冲位置上有
Figure BSA00000164790200135
个脉冲的情况,映射为在Nt个位置上有
Figure BSA00000164790200136
-Nt个脉冲的情况,其中
Figure BSA00000164790200137
表示第t个轨道上需要编码的脉冲总数。例如,图2所示的4种6脉冲4位置
Figure BSA00000164790200138
的情形,其SUt(Nt)均为{1,2,1,2},将每个位置上的脉冲数减1(因为每个位置都至少有1个脉冲)得到{0,1,0,1},即将SUt(Nt)的信息映射为2脉冲4位置的编码情形。
按照设定的顺序,对
Figure BSA00000164790200139
-Nt个脉冲在Nt个位置上全部可能的分布情况进行排列,以排列的序号作为指示有脉冲位置上的脉冲数目的第三索引I3t
体现上述计算方法的一种计算公式为:
Figure BSA000001647902001310
其中,
Figure BSA000001647902001311
Figure BSA000001647902001312
q(h)表示第h+1个脉冲的位置序号,h∈[0,
Figure BSA000001647902001313
q(h)∈[0,Nt-1],q(0)≤q(1)≤…≤
Figure BSA000001647902001314
或者q(0)≥q(1)≥…
Figure BSA000001647902001315
∑表示求和。
关于该计算方法的原理以及具体推导和描述请参阅公开号为CN101388210的中国专利中请(公开日为2009年3月18日),尤其可参见该申请文件说明书第8页第23行至第10页第7行(实施例二,附图6),相应的解码计算方法可参见该申请文件说明书第21页第10行至第21页第27行(实施例六)。
A6、生成T个轨道的总的编码索引Ind,编码索引Ind包括第一索引I1和各个轨道的第二、三索引I2t、I3t的信息。
I1、I2t、I3t以及附加索引Ift(若涉及)和符号索引Ist(若涉及)可以用任何能够被解码方识别的方式放置到编码索引中,例如,最简单的,可分别单独存放在固定的字段中。考虑到在各个轨道需要编码的脉冲总数pulse_numt一定的前提下,I1指示的各个pos_numt的数值Nt决定了I2t和I3t的变化范围,即,决定了I2t和I3t需要的编码比特数(在涉及的情况下,也决定了Ist需要的编码比特数),因此可采用如下方式来构造编码索引:
①以第一索引I1为起始值,叠加其他索引的信息;I1的一个取值对应于编码索引的一个独立的取值范围;这样,解码方就可以根据编码索引的取值范围直接确定pos_numt的数值组合{N0,N1,…,NT-1},当然,在有附加索引的情况下,根据I1只能确定与第一索引对应的Nt值不唯一的轨道的Nt值组合,例如表6中的组合“1、2、3”;不管是确定的Nt值还是Nt值组合,其所需编码空间都是确定的,因此可以将I1划定的取值范围(通常对应于一定的字段长度)再分成T个部分分别给T个轨道的I2t、I3t和Ift(若涉及)使用。
②I2t、I3t可以用任何能够被解码方识别的方式进行放置,例如,最简单的,可分别单独存放。由于I2t、I3t一般不能表示为2的整数次方,为尽量节省编码比特,可将第t个轨道I2t、I3t组合为如下形式放置到从I1划定的取值范围中所分配的部分中:
Index ( t ) = I 2 t + I 3 t × W t ( N t ) = I 2 t + I 3 t × C M t N t
I2t、I3t均从0开始编码,I2t∈[0,Wt(Nt)-1],I3t∈[0,Class(Nt)-1],Class(Nt)为SUt(Nt)的总可能数。显然,这种方式相当于将从I1中分配的取值范围分成Class(Nt)个长度为Wt(Nt)的部分,每个部分对应SUt(Nt)的一种分布情况。
当然,在需要使用Ift的情况下,从I1中分配给该轨道的取值范围需要先由Ift划分给不同的Nt使用,再在划分给各个Nt的空间中放置I2t、I3t,此时,
Index ( t ) = If t + I 2 t + I 3 t × C M t N t
③当然,在所编码的脉冲为带符号脉冲的情况下,各个Index(t)中还需要包括各个脉冲符号索引st(n)的信息,例如,可以将第t个轨道的符号索引Ist作为长度为Nt的字段放置在从I1中分配给该轨道的取值范围中的固定位置上,例如末尾,此时,
Figure BSA00000164790200151
(对于与第一索引对应的Nt值值唯一的轨道),或者,
Figure BSA00000164790200152
(对于与第一索引对应的Nt值不唯一的轨道),
其中, Is t = s t ( 0 ) × 2 N t - 1 + s t ( 1 ) × 2 N t - 2 + . . . + s t ( N t - 1 )
综上,T个轨道的总的编码索引Ind的一种构造方式可表示为:
Ind = I 1 + Index ( T - 1 ) + I max ( T - 1 ) × [ . . . × { Index ( 2 ) + I max ( 2 ) × [ Index ( 1 ) + I max ( 1 )
× Index ( 0 ) ] } . . . }
= I 1 + Index ( 0 ) × Π t = 1 T - 1 I max ( t ) + Index ( 1 ) × Σ t = 2 T - 1 I max ( t ) + . . . + Index ( T - 1 ) ,
其中Imax(t)表示Index(t)的上限值,“∏”表示求积。解码时可采用对Imax(t)取余的方式逐个将Index(t)分离出来,例如,将(Ind-I1)对Imax(T-1)取余获得Index(T-1),从(Ind-I1)中减去Index(T-1)再除以Imax(T-1)后继续对Imax(T-2)取余获得Index(T-2),以此类推,直至获得Index(0)。
容易理解的是,上述例举的编码索引构造方式仅为本实施例的一种可选方式,本领域技术人员可以利用构成编码索引的基本信息,容易的得出其他编码索引结构的构造方式,例如进行索引位置的互换或重新组合等,具体可以是先组合不同轨道的I2t,再组合I3t和Ist等,编码索引的具体构造方式不构成对本发明实施例的限定。
实施例二、一种脉冲编码方法,本实施例是将联合编码的各个轨道分别计算出各自索引后,再组合成编码索引,如图3所示,包括步骤:
B1、获取T个轨道上需要编码的脉冲,T是大于等于2的整数。
B2、分别对各个轨道上需要编码的脉冲按照位置进行统计,获得各个轨道上有脉冲位置的数目Nt、有脉冲位置在轨道上的分布和各个有脉冲位置上的脉冲数目。
步骤B1、B2可参照实施例一的步骤A1、A2执行。
B3、分别按照各个轨道上有脉冲位置的数目确定各个轨道的第一索引I1t,第一索引I1t对应于其所代表的有脉冲位置的数目下,该轨道上有脉冲位置全部可能的分布情况。
B4、分别按照各个轨道上有脉冲位置的分布确定各个轨道的第二索引I2t,第二索引I2t从第一索引I1t对应的全部可能的分布情况中,指示该轨道上与当前有脉冲位置的分布对应的分布情况。
B5、分别按照各个轨道上各个有脉冲位置上的脉冲数目确定各个轨道的第三索引I3t
步骤B3-B5可参照实施例一的步骤A1、A2执行,分别获得各个轨道的索引的过程具体请参阅公开号为CN101295506的中国专利申请(公开日为2008年10月29日),尤其可参见该中请文件说明书第6页第13行至第15页第9行(实施例一、实施例二),相应的解码计算方法可参见该申请文件说明书第15页第11行至第17页第12行(实施例三、实施例四)。
B6、生成T个轨道的总的编码索引Ind,编码索引Ind包括各个轨道的第一、二、三索引I1t、I2t、I3t的信息。
I1t、I2t、I3t和符号索引Ist(若涉及)可以用任何能够被解码方识别的方式放置到编码索引中,例如,最简单的,可分别单独存放在固定的字段中。当然也可以进行组合,例如分别将各个轨道的索引组合在一起后再叠加,即采用如下方式来构造编码索引:
Ind = Index ( 0 ) × Π t = 1 T - 1 I max ( t ) + Index ( 1 ) × Π t = 2 T - 1 I max ( t ) + . . . + Index ( T - 1 )
其中Imax(t)表示Index(t)的上限值,
Figure BSA00000164790200162
(不考虑脉冲符号的情形),或者,
(考虑脉冲符号的情形)。
容易理解的是,上述例举的编码索引构造方式仅为本实施例的一种可选方式,本领域技术人员可以利用构成编码索引的基本信息,容易的得出其他编码索引结构的构造方式,例如在各个轨道内进行索引位置的互换或重新组合等,编码索引的具体构造方式不构成对本发明实施例的限定。
实施例三、一种脉冲编码方法,本实施例是在实施例一或二的基础上,提出的进一步节省编码比特的方法。
本实施例脉冲编码方法的编码索引Ind生成过程可参照实施例一或二方法执行,在生成编码索引Ind的之后执行如下操作,如图4所示,包括:
C1、比较编码索引Ind和调整门限值THR,其中,
THR≤2Bmax-Imax(T),
Imax(T)表示Ind的上限值,Bmax表示用来对编码索引进行编码的比特数量的上限值,若Ind小于THR,则转到步骤C2,否则转到步骤C3。
C2、采用第一数量的编码比特对Ind进行编码。
C3、采用第二数量的编码比特对加上偏移值THR0的Ind进行编码,THR≤THR0≤2Bmax-Imax(T),所称的第一数量少于第二数量,而第二数量则小于等于Bmax,第一数量和第二数量均为正整数。
例如,对于2个4脉冲轨道联合编码的情形(每个轨道的位置总数假设为16),Ind的总可能数Imax(T)=44032×44032(考虑脉冲有符号),需要31个编码比特,其空闲码本空间为231-44032×44032=208666624,可以设置THR=THR0=208666624,当Ind小于208666624时,使用第一数量(30个)的编码比特对Ind进行编码,当Ind大于208666624时,使用第二数量(31个)的编码比特对Ind+208666624进行编码,显然,有9.7%的几率在31个比特的基础上再节省一个比特。当然,调整门限值THR可以设置的比208666624更小,以节省更多的比特,但相应出现可节省比特的情况的概率会大幅度的下降,可平衡考虑。
关于该节省比特的方法的原理以及具体推导和描述请参阅申请号为CN200910150637.8的中国专利中请(申请日为2009年6月19日)。
进一步的,为提高可节省比特的情况出现的概率,可采用如下优选方式来设置编码索引Ind中第一索引I1与{N0,N1,…,NT-1}组合的对应关系:统计{N0,N1,…,NT-1}组合的出现概率,使出现概率越高的组合对应的第一索引越小,以尽量减小出现概率高的组合的编码索引值。
实施例四、一种脉冲编码方法,本实施例从与实施例一和二不同的角度提出一种新的轨道联合编码方法。
在实施例一和二中不管是对轨道有脉冲位置的情况进行联合分类(实施例一)还是分别对每个轨道设置第一索引(实施例二),均需要对每个轨道的脉冲位置分布进行分别处理,本实施例则采用一种新的思路,即,将联合编码的各个轨道重叠为1个轨道,叠加其脉冲分布信息。例如,如图5所示,将2个3脉冲轨道叠加成1个6脉冲轨道(假设各个轨道的位置数为16),然后,
①按照单轨道脉冲分布的情形,计算叠加后的轨道的分布索引,例如可采用实施例二中所描述的I1t、I2t、I3t以及Ist组合的方式。
②按照脉冲所属轨道的情形编制轨道索引,例如,如图6所示,图5叠加得到的3位置6脉冲对应不同的轨道分布情形,可以用不同的轨道索引分别来表示相应的情形,图6中“o”表示轨道0上的脉冲,“×”表示轨道I上的脉冲。
③将脉冲叠加得到的单轨道的分布索引与表示脉冲所属轨道的轨道索引组合在一起获得最终的编码索引。
本实施例联合编码方法同样可以象实施例一和二一样节省编码比特,并且,也可以与实施例三结合使用,以达到进一步节省编码比特的目的。
实施例五、一种脉冲解码方法,本实施例提供的解码方法对按照实施例一编码方法获得的编码索引进行解码,解码过程为编码过程的反过程,如图7所示,包括:
D1、获取编码索引Ind,从编码索引Ind中提取出第一索引I1,按照第一索引I1确定T个轨道的各个轨道上有脉冲位置的数目{N0,N1,…,NT-1}。
从Ind中提取各个索引的信息,可按照与编码时将各个索引组合成Ind相反的过程来进行。例如,若各个索引单独存放的固定的字段中,则直接分别提取即可。
若Ind采用实施例一中提供的以I1作为起始值叠加其他索引的结构,则可先提取出I1,按照与I1对应的{N0,N1,…,NT-1}组合将各个轨道的Index(t)从Ind中分离出来。在这种情况下,由于一个I1对应Ind的一个独立取值范围,因此,解码方可从设定的若干个独立的取值范围中,判断Ind所属的取值范围,按照该所属的取值范围对应的起始值确定第一索引I1。
当然,在存在与第一索引I1对应的Nt值不唯一的轨道的情况下,对于该轨道,I1确定的是其Nt组合,实际Nt值由进一步提取的附加索引Ift来确定,此时分离出的Index(t)中包含Ift的信息。
D2、从编码索引Ind中提取出各个轨道的第二索引I2t和第三索引I3t
与I1类似,I2t、I3t的提取也按照与组合进Index
Figure BSA00000164790200191
相反的过程进行,在独立放置时可被直接提取。若I2t、I3t采用实施例一中组合后进行叠加的编码方式,则此步骤是从Index(t)中分离I2t、I3t、Ift(若涉及)和Ist(若涉及),根据组合的过程进行逆运算即可。
例如,在不涉及Ift和Ist的情况下,I2t=Index(t)%Wt(Nt),I3t=Int[Index(t)/Wt(Nt)],其中%表示取余数,Int表示取整。在涉及Ift的情况下,与确定I1类似,可先根据Index(t)所属的取值范围对应的起始值确定附加索引Ift,在分离出Ift后根据确定的Nt值进一步提取I2t、I3t和Ist(若涉及)。
D3、分别对于各个轨道,按照第二索引I2t确定,在第一索引I1和Ift(若涉及)对应的有脉冲位置的数目下,有脉冲位置在轨道上的分布。
解码I2t采用与编码I2t相反的过程,若I2t在编码时采用计算关系获得,则在解码时利用同样的计算关系进行逆运算即可;若I2t在编码时采用查询关系获得,则在解码时查询相同的对应关系即可。
D4、分别对于各个轨道,按照第三索引I3t确定各个有脉冲位置上的脉冲数目。
D5、分别对于各个轨道,按照有脉冲位置在轨道上的分布Pt(Nt)和各个有脉冲位置上的脉冲数目SUt(Nt),重建轨道上的脉冲序列。
对于带符号脉冲的情形,在重建各个轨道上的脉冲序列时,还按照各个符号索引st(n)携带的脉冲符号信息,恢复各个有脉冲位置的脉冲符号的正或负的特性。
实施例六、一种脉冲解码方法,本实施例提供的解码方法对按照实施例二编码方法获得的编码索引进行解码,解码过程为编码过程的反过程,如图8所示,包括:
E1、获取编码索引Ind,从编码索引Ind中提取出各个轨道的第一索引I1t,分别对于各个轨道,按照第一索引I1t确定有脉冲位置的数目Nt
由于在各个轨道上脉冲总数
Figure BSA00000164790200201
确定的情况下(由于不同码率下,编码索引的总比特数不同,因此解码方可直接根据编码索引的长度(比特数),确定出各个轨道上脉冲总数
Figure BSA00000164790200202
),Index(t)的上限值Imax(t)确定,因此可以直接从Ind中分离出各个轨道的Index(t),进而根据Index(t)的取值范围确定出I1t和相应的Nt
E2、从编码索引Ind中提取出各个轨道的第二索引I2t和第三索引I3t。即,从Index(t)中分离出I2t和I3t,可参照实施例五的步骤D2执行。若涉及脉冲符号,还可进一步分离出Ist
E3、分别对于各个轨道,按照第二索引I2t确定,在第一索引I1t对应的有脉冲位置的数目下,有脉冲位置在轨道上的分布。
E4、分别对于各个轨道,按照第三索引I3t确定各个有脉冲位置上的脉冲数目。
E5、分别对于各个轨道,按照有脉冲位置在轨道上的分布Pt(Nt)和各个有脉冲位置上的脉冲数目SUt(Nt),重建轨道上的脉冲序列。
步骤E3-E5可参照实施例五的步骤D3-D5执行。
实施例七、一种脉冲解码方法,本实施例提供的解码方法与实施例三编码方法对应,对实施例三变长编码的码流进行解码,以获得编码索引,过程如图9所示,包括:
F1、从编码码流中提取第一数量的编码比特。
F2、若第一数量的编码比特解码后的值小于调整门限值THR,则转到步骤F3,否则转到步骤F4。
F3、以第一数量的编码比特解码后的值作为编码索引Ind。
F4、否则,增加提取的编码比特的数量至第二数量,以第二数量的编码比特解码后的值减去偏移值THR0作为编码索引Ind。
按照本实施例解码方法从编码码流中获得编码索引Ind后,即可按照实施例五或六的解码方法继续对编码索引Ind进行解码。
实施例八、一种脉冲编码器10,本实施例提供的编码器可用于执行实施例一编码方法,如图10所示,包括:
脉冲统计单元101,用于获取T个轨道上需要编码的脉冲,T是大于等于2的整数,分别对各个轨道上需要编码的脉冲按照位置进行统计,获得各个轨道上有脉冲位置的数目Nt、有脉冲位置在轨道上的分布和各个有脉冲位置上的脉冲数目,其中下标t表示第t个轨道,t∈[0,T-1];
索引计算单元102,包括:
第一索引单元1021,用于按照各个轨道上有脉冲位置的数目{N0,N1,…,NT-1}输出第一索引I1,I1对应于其所代表的有脉冲位置的数目下,各个轨道上有脉冲位置全部可能的分布情况;
第二索引单元1022,用于分别按照各个轨道上有脉冲位置的分布输出各个轨道的第二索引I2t,I2t从I1对应的全部可能的分布情况中,指示相应轨道上与当前有脉冲位置的分布对应的分布情况;
第三索引单元1023,用于分别按照各个轨道上各个有脉冲位置上的脉冲数目输出各个轨道的第三索引I3t
索引组合单元103,用于组合第一索引I1和各个轨道的第二、三索引I2t、I3t的信息生成编码索引Ind。
在至少有一个第一索引与两个以上的{N0,N1,…,NT-1}组合对应的情况下,索引计算单元102还可进一步包括附加索引单元1024(图10中以虚线框示出),用于对于存在与第一索引对应的Nt值不唯一的轨道,确定与该轨道上当前有脉冲位置的数目对应的附加索引Ift,附加索引Ift对应于其所代表的有脉冲位置的数目下,该轨道上有脉冲位置全部可能的分布情况。此时,索引组合单元103还将附加索引Ift的信息组合到编码索引Ind中。
此外,在采用实施例三方法对编码索引进行变长编码的情况下,本实施例脉冲编码器10还可进一步包括编码比特调整单元104(图10中以虚线框示出),用于在索引组合单元103生成编码索引后,比较编码索引Ind和调整门限值THR,其中,
THR≤2Bmax-Imax(T),
Imax(T)表示Ind的上限值,Bmax表示用来对编码索引进行编码的比特数量的上限值,
若Ind小于THR,采用第一数量的编码比特对Ind进行编码,否则采用第二数量的编码比特对加上偏移值THR0的Ind进行编码,THR≤THR0≤2Bmax-Imax(T),所使用的第一数量少于第二数量,第二数量小于等于Bmax,第一数量和第二数量均为正整数。
实施例九、一种脉冲解码器20,本实施例提供的解码器可用于执行实施例五解码方法,如图11所示,包括:
第一提取单元201,用于获取编码索引Ind,从编码索引中提取出第一索引I1,按照第一索引确定T个轨道的各个轨道上有脉冲位置的数目{N0,N1,…,NT-1};
第二提取单元202,用于从编码索引Ind中提取出各个轨道的第二索引I2t和第三索引I3t
第一解码单元203,用于分别对于各个轨道,按照第二索引I2t确定,在第一索引对应的有脉冲位置的数目下,有脉冲位置在轨道上的分布;
第二解码单元204,用于分别对于各个轨道,按照第三索引I3t确定各个有脉冲位置上的脉冲数目;
脉冲重建单元205,用于分别对于各个轨道,按照有脉冲位置在轨道上的分布和各个有脉冲位置上的脉冲数目,重建轨道上的脉冲序列。
在至少有一个第一索引与两个以上的{N0,N1,…,NT-1}组合对应的情况下,本实施例解码器还可以进一步包括:
附加提取单元206(图11中以虚线框示出),用于对于存在与第一索引对应的Nt值不唯一的轨道,提取与该轨道上当前有脉冲位置的数目对应的附加索引Ift,附加索引Ift对应于其所代表的有脉冲位置的数目下,该轨道上有脉冲位置全部可能的分布情况。此时,第二提取单元202是根据附加提取单元206提取的附加索引Ift确定的相应轨道上当前有脉冲位置的数目,提取出该轨道的第二索引I2t和第三索引I3t
此外,在采用实施例七方法对变长编码的码流进行解码的情况下,本实施例脉冲解码器20还可进一步包括解码比特调整单元207(图11中以虚线框示出),用于从编码码流中提取第一数量的编码比特,若第一数量的编码比特解码后的值小于调整门限值THR,以第一数量的编码比特解码后的值作为编码索引Ind输出,否则,增加提取的编码比特的数量至第二数量,再以第二数量的编码比特解码后的值减去偏移值THR0作为编码索引Ind输出。
本领域普通技术人员可以理解,上述实施例中各种方法的全部或部分步骤可以通过程序来指令相关硬件完成,该程序可以存储于一计算机可读存储介质中,存储介质可以包括:只读存储器、随机存储器、磁盘或光盘等。
以上对本发明实施例所提供的脉冲编解码方法及脉冲编解码器进行了详细介绍,本文中应用了具体实施例对本发明的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本发明的方法及其核心思想;同时,对于本领域的一般技术人员,依据本发明的思想,在具体实施方式及应用范围上均会有改变之处,综上所述,本说明书内容不应理解为对本发明的限制。

Claims (21)

1.一种脉冲编码方法,其特征在于,包括:
获取T个轨道上需要编码的脉冲,T是大于等于2的整数;
分别对各个轨道上需要编码的脉冲按照位置进行统计,获得各个轨道上有脉冲位置的数目Nt、有脉冲位置在轨道上的分布和各个有脉冲位置上的脉冲数目,其中下标t表示第t个轨道,t∈[0,T-1];
按照各个轨道上有脉冲位置的数目{N0,N1,…,NT-1}确定第一索引I1,所述第一索引对应于其所代表的有脉冲位置的数目下,各个轨道上有脉冲位置全部可能的分布情况;
分别按照各个轨道上有脉冲位置的分布确定各个轨道的第二索引I2t,所述第二索引从所述第一索引对应的全部可能的分布情况中,指示相应轨道上与当前有脉冲位置的分布对应的分布情况;
分别按照各个轨道上各个有脉冲位置上的脉冲数目确定各个轨道的第三索引I3t
生成编码索引Ind,所述编码索引包括第一索引和各个轨道的第二、三索引的信息。
2.根据权利要求1所述的方法,其特征在于:
所述分别对各个轨道上需要编码的脉冲按照位置进行统计时,还按照各个轨道上各个有脉冲位置的脉冲符号的正或负的特性,获得各个轨道的各个有脉冲位置的脉冲符号信息;
所述编码索引还包括各个轨道的与各个有脉冲位置对应的符号索引的信息,所述符号索引指示与该索引对应的有脉冲位置的脉冲符号信息。
3.根据权利要求1或2所述的方法,其特征在于:
一个第一索引与一个{N0,N1,…,NT-1}组合对应,或者,
至少有一个第一索引与两个以上的{N0,N1,…,NT-1}组合对应,对于存在与第一索引对应的Nt值不唯一的轨道,除了确定该轨道的第二、三索引,还确定与该轨道上当前有脉冲位置的数目对应的附加索引,所述附加索引对应于其所代表的有脉冲位置的数目下,该轨道上有脉冲位置全部可能的分布情况,所述编码索引中还包括所述附加索引的信息。
4.根据权利要求3所述的方法,其特征在于,所述编码索引Ind采用如下方式生成:
Ind = I 1 + Index ( 0 ) × Π t = 1 T - 1 I max ( t ) + Index ( 1 ) × Π t = 2 T - 1 I max ( t ) + . . . + Index ( T - 1 ) , 其中Imax(t)表示Index(t)的上限值,“∏”表示求积,Index(t)采用如下方式生成:
在不包含符号索引的情况下,对于与第一索引对应的Nt值唯一的轨道,
Figure FSA00000164790100022
其中“C”表示求组合数,Mt表示第t个轨道上的位置总数,
在不包含符号索引的情况下,对于与第一索引对应的Nt值不唯一的轨道,
Figure FSA00000164790100023
其中Ift表示第t个轨道与当前Nt值对应的附加索引,
在包含符号索引的情况下,对于与第一索引对应的Nt值唯一的轨道,
Figure FSA00000164790100024
其中Ist表示第t个轨道的符号索引,共有Nt个比特,每个比特的取值指示与该比特对应的有脉冲位置的脉冲符号信息,
在包含符号索引的情况下,对于与第一索引对应的Nt值不唯一的轨道,
Index ( t ) = If t + ( I 2 t + I 3 t × C M t N t ) × 2 N t + Is t .
5.根据权利要求1-4任意一项所述的方法,其特征在于,在所述生成编码索引的步骤之后还包括:
比较所述编码索引Ind和调整门限值THR,其中,
THR≤2Bmax-Imax(T),
Imax(T)表示Ind的上限值,Bmax表示用来对编码索引进行编码的比特数量的上限值,
若Ind小于THR,采用第一数量的编码比特对Ind进行编码,否则采用第二数量的编码比特对加上偏移值THR0的Ind进行编码,THR≤THR0≤2Bmax-Imax(T),所述第一数量少于所述第二数量,所述第二数量小于等于Bmax,所述第一数量和所述第二数量均为正整数。
6.根据权利要求5所述的方法,其特征在于,第一索引与{N0,N1,…,NT-1}组合的对应关系采用如下方式确定:统计{N0,N1,…,NT-1}组合的出现概率,使出现概率越高的组合对应的第一索引越小。
7.根据权利要求1-4任意一项所述的方法,其特征在于,所述分别按照各个轨道上各个有脉冲位置上的脉冲数目确定各个轨道的第三索引I3t的步骤包括:
对于第t个轨道,将在Nt个有脉冲位置上有
Figure FSA00000164790100031
个脉冲的情况,映射为在Nt个位置上有
Figure FSA00000164790100032
-Nt个脉冲的情况,其中
Figure FSA00000164790100033
表示第t个轨道上需要编码的脉冲总数,
按照设定的顺序,对-Nt个脉冲在Nt个位置上全部可能的分布情况进行排列,以排列的序号作为指示有脉冲位置上的脉冲数目的第三索引I3t
8.根据权利要求7所述的方法,其特征在于,各个轨道的第三索引I3t的计算公式为:
Figure FSA00000164790100035
其中,
Figure FSA00000164790100036
Figure FSA00000164790100037
q(h)表示第h+1个脉冲的位置序号,h∈[0,
Figure FSA00000164790100038
q(h)∈[0,Nt-1],q(0)≤q(1)≤…≤
Figure FSA00000164790100039
或者q(0)≥q(1)≥…∑表示求和。
9.根据权利要求1-4任意一项所述的方法,其特征在于,各个轨道的第二索引I2t的计算公式为:
I 2 t = C M t N t - C M t - p ( 0 ) N t + Σ n = 1 N t - 1 [ C M t - p ( n - 1 ) - 1 N t - n - C M t - p ( n ) N t - n ] ;
其中,pt(n)表示第n个有脉冲位置在轨道上的位置序号,n∈[0,Nt-1],pt(0)∈[0,Mt-Nt],pt(n)∈[pt(n-1)+1,Mt-Nt+n],pt(0)<pt(1)<…<pt(Nt-1),或者pt(0)>pt(1)>…>pt(Nt-1)。
10.一种脉冲编码方法,其特征在于,包括:
获取T个轨道上需要编码的脉冲,T是大于等于2的整数;
分别对各个轨道上需要编码的脉冲按照位置进行统计,获得各个轨道上有脉冲位置的数目Nt、有脉冲位置在轨道上的分布和各个有脉冲位置上的脉冲数目,其中下标t表示第t个轨道,t∈[0,T-1];
分别按照各个轨道上有脉冲位置的数目确定各个轨道的第一索引I1t,所述第一索引对应于其所代表的有脉冲位置的数目下,该轨道上有脉冲位置全部可能的分布情况;
分别按照各个轨道上有脉冲位置的分布确定各个轨道的第二索引I2t,所述第二索引从所述第一索引对应的全部可能的分布情况中,指示该轨道上与当前有脉冲位置的分布对应的分布情况;
分别按照各个轨道上各个有脉冲位置上的脉冲数目确定各个轨道的第三索引I3t
生成编码索引Ind,所述编码索引包括各个轨道的第一、二、三索引的信息。
11.一种脉冲解码方法,其特征在于,包括:
获取编码索引Ind,从所述编码索引中提取出第一索引,按照第一索引确定T个轨道的各个轨道上有脉冲位置的数目{N0,N1,…,NT-1},其中Nt的下标t表示第t个轨道,t∈[0,T-1],T是大于等于2的整数;
从所述编码索引中提取出各个轨道的第二索引I2t和第三索引I3t
分别对于各个轨道,按照第二索引确定,在所述第一索引对应的有脉冲位置的数目下,有脉冲位置在轨道上的分布;
分别对于各个轨道,按照第三索引确定各个有脉冲位置上的脉冲数目;
分别对于各个轨道,按照有脉冲位置在轨道上的分布和各个有脉冲位置上的脉冲数目,重建轨道上的脉冲序列。
12.根据权利要求11所述的方法,其特征在于,所述从编码索引中提取出第一索引采用:从设定的若干个独立的取值范围中,判断所述编码索引所属的取值范围,按照该所属的取值范围对应的起始值确定所述第一索引。
13.根据权利要求11所述的方法,其特征在于:
一个第一索引与一个{N0,N1,…,NT-1}组合对应,或者,
至少有一个第一索引与两个以上的{N0,N1,…,NT-1}组合对应,对于存在与第一索引对应的Nt值不唯一的轨道,除了提取该轨道的第二、三索引,还提取与该轨道上当前有脉冲位置的数目对应的附加索引,所述附加索引对应于其所代表的有脉冲位置的数目下,该轨道上有脉冲位置全部可能的分布情况。
14.根据权利要求11-13任意一项所述的方法,其特征在于,所述获取编码索引Ind的步骤包括:
从编码码流中提取第一数量的编码比特;
若所述第一数量的编码比特解码后的值小于调整门限值THR,以所述第一数量的编码比特解码后的值作为编码索引Ind;
否则,增加提取的编码比特的数量至第二数量,以所述第二数量的编码比特解码后的值减去偏移值THR0作为编码索引Ind。
15.一种脉冲解码方法,其特征在于,包括:
获取编码索引Ind,从所述编码索引中提取出各个轨道的第一索引I1t,分别对于各个轨道,按照第一索引确定有脉冲位置的数目Nt,其中下标t表示第t个轨道,t∈[0,T-1],T是大于等于2的整数;
从所述编码索引中提取出各个轨道的第二索引I2t和第三索引I3t
分别对于各个轨道,按照第二索引确定,在所述第一索引对应的有脉冲位置的数目下,有脉冲位置在轨道上的分布;
分别对于各个轨道,按照第三索引确定各个有脉冲位置上的脉冲数目;
分别对于各个轨道,按照有脉冲位置在轨道上的分布和各个有脉冲位置上的脉冲数目,重建轨道上的脉冲序列。
16.一种脉冲编码器,其特征在于,包括:
脉冲统计单元,用于获取T个轨道上需要编码的脉冲,T是大于等于2的整数,分别对各个轨道上需要编码的脉冲按照位置进行统计,获得各个轨道上有脉冲位置的数目Nt、有脉冲位置在轨道上的分布和各个有脉冲位置上的脉冲数目,其中下标t表示第t个轨道,t∈[0,T-1];
索引计算单元,所述索引计算单元包括:第一索引单元,用于按照各个轨道上有脉冲位置的数目{N0,N1,…,NT-1}输出第一索引I1,所述第一索引对应于其所代表的有脉冲位置的数目下,各个轨道上有脉冲位置全部可能的分布情况;第二索引单元,用于分别按照各个轨道上有脉冲位置的分布输出各个轨道的第二索引I2t,所述第二索引从所述第一索引对应的全部可能的分布情况中,指示相应轨道上与当前有脉冲位置的分布对应的分布情况;第三索引单元,用于分别按照各个轨道上各个有脉冲位置上的脉冲数目输出各个轨道的第三索引I3t
索引组合单元,用于组合所述第一索引和各个轨道的第二、三索引的信息生成编码索引Ind。
17.根据权利要求16所述的编码器,其特征在于:至少有一个第一索引与两个以上的{N0,N1,…,NT-1}组合对应,
所述索引计算单元还包括附加索引单元,用于对于存在与第一索引对应的Nt值不唯一的轨道,确定与该轨道上当前有脉冲位置的数目对应的附加索引,所述附加索引对应于其所代表的有脉冲位置的数目下,该轨道上有脉冲位置全部可能的分布情况;
所述索引组合单元还将所述附加索引的信息组合到所述编码索引中。
18.根据权利要求16或17所述的编码器,其特征在于,还包括:编码比特调整单元,用于在所述索引组合单元生成编码索引后,比较所述编码索引Ind和调整门限值THR,其中,
THR≤2Bmax-Imax(T),
Imax(T)表示Ind的上限值,Bmax表示用来对编码索引进行编码的比特数量的上限值,
若Ind小于THR,采用第一数量的编码比特对Ind进行编码,否则采用第二数量的编码比特对加上偏移值THR0的Ind进行编码,THR≤THR0≤2Bmax-Imax(T),所述第一数量少于所述第二数量,所述第二数量小于等于Bmax,所述第一数量和所述第二数量均为正整数。
19.一种脉冲解码器,其特征在于,包括:
第一提取单元,用于获取编码索引Ind,从所述编码索引中提取出第一索引,按照第一索引确定T个轨道的各个轨道上有脉冲位置的数目{N0,N1,…,NT-1},其中Nt的下标t表示第t个轨道,t∈[0,T-1],T是大于等于2的整数;
第二提取单元,用于从所述编码索引中提取出各个轨道的第二索引I2t和第三索引I3t
第一解码单元,用于分别对于各个轨道,按照第二索引确定,在所述第一索引对应的有脉冲位置的数目下,有脉冲位置在轨道上的分布;
第二解码单元,用于分别对于各个轨道,按照第三索引确定各个有脉冲位置上的脉冲数目;
脉冲重建单元,用于分别对于各个轨道,按照有脉冲位置在轨道上的分布和各个有脉冲位置上的脉冲数目,重建轨道上的脉冲序列。
20.根据权利要求19所述的解码器,其特征在于,至少有一个第一索引与两个以上的{N0,N1,…,NT-1}组合对应,所述解码器还包括:
附加提取单元,用于对于存在与第一索引对应的Nt值不唯一的轨道,提取与该轨道上当前有脉冲位置的数目对应的附加索引,所述附加索引对应于其所代表的有脉冲位置的数目下,该轨道上有脉冲位置全部可能的分布情况;
所述第二提取单元是根据所述附加提取单元提取的附加索引确定的相应轨道上当前有脉冲位置的数目,提取出该轨道的第二索引I2t和第三索引I3t
21.根据权利要求19或20所述的解码器,其特征在于,还包括:解码比特调整单元,用于从编码码流中提取第一数量的编码比特,若所述第一数量的编码比特解码后的值小于调整门限值THR,以所述第一数量的编码比特解码后的值作为编码索引Ind输出,否则,增加提取的编码比特的数量至第二数量,以所述第二数量的编码比特解码后的值减去偏移值THR0作为编码索引Ind输出。
CN201010213451.5A 2010-06-24 2010-06-24 脉冲编解码方法及脉冲编解码器 Active CN102299760B (zh)

Priority Applications (16)

Application Number Priority Date Filing Date Title
CN201410118069.4A CN103886862B (zh) 2010-06-24 2010-06-24 脉冲编解码方法及脉冲编解码器
CN201010213451.5A CN102299760B (zh) 2010-06-24 2010-06-24 脉冲编解码方法及脉冲编解码器
AU2011269502A AU2011269502B2 (en) 2010-06-24 2011-05-31 Pulse encoding and decoding method and pulse codec
PT117975680T PT2587480T (pt) 2010-06-24 2011-05-31 Método de codificação e descodificação de impulsos e codec de impulsos
JP2013515680A JP5785255B2 (ja) 2010-06-24 2011-05-31 パルス符号化方法、パルス符号化装置、パルス復号化方法及びパルス復号化装置
EP11797568.0A EP2587480B1 (en) 2010-06-24 2011-05-31 Pulse encoding and decoding method and pulse codec
ES11797568T ES2764832T3 (es) 2010-06-24 2011-05-31 Método de codificación y decodificación de pulso y códec de pulso
PCT/CN2011/074999 WO2011160537A1 (zh) 2010-06-24 2011-05-31 脉冲编解码方法及脉冲编解码器
KR1020137002001A KR101384574B1 (ko) 2010-06-24 2011-05-31 펄스 인코딩 및 디코딩 방법 및 펄스 코덱
US13/725,301 US9020814B2 (en) 2010-06-24 2012-12-21 Pulse encoding and decoding method and pulse codec
US14/150,498 US8959018B2 (en) 2010-06-24 2014-01-08 Pulse encoding and decoding method and pulse codec
US14/547,860 US9508348B2 (en) 2010-06-24 2014-11-19 Pulse encoding and decoding method and pulse codec
JP2015145274A JP6042949B2 (ja) 2010-06-24 2015-07-22 パルス符号化及び復号化方法並びにパルスコーデック
US15/338,098 US9858938B2 (en) 2010-06-24 2016-10-28 Pulse encoding and decoding method and pulse codec
JP2016220044A JP6301431B2 (ja) 2010-06-24 2016-11-10 パルス符号化及び復号化方法並びにパルスコーデック
US15/853,690 US10446164B2 (en) 2010-06-24 2017-12-22 Pulse encoding and decoding method and pulse codec

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201010213451.5A CN102299760B (zh) 2010-06-24 2010-06-24 脉冲编解码方法及脉冲编解码器

Related Child Applications (1)

Application Number Title Priority Date Filing Date
CN201410118069.4A Division CN103886862B (zh) 2010-06-24 2010-06-24 脉冲编解码方法及脉冲编解码器

Publications (2)

Publication Number Publication Date
CN102299760A true CN102299760A (zh) 2011-12-28
CN102299760B CN102299760B (zh) 2014-03-12

Family

ID=45359953

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201010213451.5A Active CN102299760B (zh) 2010-06-24 2010-06-24 脉冲编解码方法及脉冲编解码器

Country Status (9)

Country Link
US (5) US9020814B2 (zh)
EP (1) EP2587480B1 (zh)
JP (3) JP5785255B2 (zh)
KR (1) KR101384574B1 (zh)
CN (1) CN102299760B (zh)
AU (1) AU2011269502B2 (zh)
ES (1) ES2764832T3 (zh)
PT (1) PT2587480T (zh)
WO (1) WO2011160537A1 (zh)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103886862A (zh) * 2010-06-24 2014-06-25 华为技术有限公司 脉冲编解码方法及脉冲编解码器
CN105007094A (zh) * 2015-07-16 2015-10-28 北京中宸泓昌科技有限公司 一种指数对扩频编码解码方法
CN106664099A (zh) * 2014-08-15 2017-05-10 谷歌技术控股有限责任公司 使用统计特性编码脉冲矢量的方法

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102623012B (zh) 2011-01-26 2014-08-20 华为技术有限公司 矢量联合编解码方法及编解码器
JP5981909B2 (ja) * 2011-06-15 2016-08-31 パナソニック インテレクチュアル プロパティ コーポレーション オブ アメリカPanasonic Intellectual Property Corporation of America パルス位置探索装置、符号帳探索装置、及びこれらの方法
US9620136B2 (en) 2014-08-15 2017-04-11 Google Technology Holdings LLC Method for coding pulse vectors using statistical properties

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20020111799A1 (en) * 2000-10-12 2002-08-15 Bernard Alexis P. Algebraic codebook system and method
CN101295506A (zh) * 2007-04-29 2008-10-29 华为技术有限公司 编解码方法及编解码器
CN101483043A (zh) * 2008-01-07 2009-07-15 中兴通讯股份有限公司 基于分类和排列组合的码本索引编码方法

Family Cites Families (33)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4631521A (en) * 1984-12-31 1986-12-23 Wang Laboratories, Inc. Method and apparatus for differential run-length coding
US5754976A (en) 1990-02-23 1998-05-19 Universite De Sherbrooke Algebraic codebook with signal-selected pulse amplitude/position combinations for fast coding of speech
JP3350385B2 (ja) 1997-01-24 2002-11-25 京セラ株式会社 符号生成方法および符号化方法
JP2943983B1 (ja) 1998-04-13 1999-08-30 日本電信電話株式会社 音響信号の符号化方法、復号方法、そのプログラム記録媒体、およびこれに用いる符号帳
JP4008607B2 (ja) 1999-01-22 2007-11-14 株式会社東芝 音声符号化/復号化方法
US6236960B1 (en) 1999-08-06 2001-05-22 Motorola, Inc. Factorial packing method and apparatus for information coding
US7363219B2 (en) 2000-09-22 2008-04-22 Texas Instruments Incorporated Hybrid speech coding and system
CA2327041A1 (en) 2000-11-22 2002-05-22 Voiceage Corporation A method for indexing pulse positions and signs in algebraic codebooks for efficient coding of wideband signals
JP2002330075A (ja) * 2001-05-07 2002-11-15 Matsushita Electric Ind Co Ltd サブバンドadpcm符号化方法、復号方法、サブバンドadpcm符号化装置、復号装置およびワイヤレスマイクロホン送信システム、受信システム
US6662154B2 (en) 2001-12-12 2003-12-09 Motorola, Inc. Method and system for information signal coding using combinatorial and huffman codes
JP2004120623A (ja) 2002-09-27 2004-04-15 Ntt Docomo Inc 符号化装置、符号化方法、復号装置及び復号方法
WO2004034379A2 (en) * 2002-10-11 2004-04-22 Nokia Corporation Methods and devices for source controlled variable bit-rate wideband speech coding
KR100463419B1 (ko) * 2002-11-11 2004-12-23 한국전자통신연구원 적은 복잡도를 가진 고정 코드북 검색방법 및 장치
JP3887598B2 (ja) * 2002-11-14 2007-02-28 松下電器産業株式会社 確率的符号帳の音源の符号化方法及び復号化方法
JP2005062453A (ja) 2003-08-12 2005-03-10 Nippon Telegr & Teleph Corp <Ntt> 秘話送信装置、秘話受信装置、秘話プログラム
FR2867648A1 (fr) 2003-12-10 2005-09-16 France Telecom Transcodage entre indices de dictionnaires multi-impulsionnels utilises en codage en compression de signaux numeriques
KR100656788B1 (ko) 2004-11-26 2006-12-12 한국전자통신연구원 비트율 신축성을 갖는 코드벡터 생성 방법 및 그를 이용한 광대역 보코더
CN100412948C (zh) 2005-01-27 2008-08-20 广达电脑股份有限公司 语音编码器中搜寻语音讯号的编码向量的搜寻系统及方法
WO2006085586A1 (ja) * 2005-02-10 2006-08-17 Matsushita Electric Industrial Co., Ltd. 音声符号化におけるパルス割当方法
ATE513290T1 (de) * 2005-03-09 2011-07-15 Ericsson Telefon Ab L M Wenig komplexe codeerregte linearprädiktions- codierung
US20070124381A1 (en) 2005-11-22 2007-05-31 Zurko Mary E Method and system for providing electronic pickup meetings
LV13528B (en) 2006-09-25 2007-03-20 Ervins Blumbergs Method and apparatus for continuous producing of metallic tifanium and titanium-bases alloys
CN101388210B (zh) 2007-09-15 2012-03-07 华为技术有限公司 编解码方法及编解码器
ES2529292T3 (es) * 2007-04-29 2015-02-18 Huawei Technologies Co., Ltd. Método de codificación y de decodificación
CN100530357C (zh) * 2007-07-11 2009-08-19 华为技术有限公司 固定码书搜索方法及搜索器
US8566106B2 (en) * 2007-09-11 2013-10-22 Voiceage Corporation Method and device for fast algebraic codebook search in speech and audio coding
US20110026581A1 (en) * 2007-10-16 2011-02-03 Nokia Corporation Scalable Coding with Partial Eror Protection
US8527265B2 (en) * 2007-10-22 2013-09-03 Qualcomm Incorporated Low-complexity encoding/decoding of quantized MDCT spectrum in scalable speech and audio codecs
US8515767B2 (en) * 2007-11-04 2013-08-20 Qualcomm Incorporated Technique for encoding/decoding of codebook indices for quantized MDCT spectrum in scalable speech and audio codecs
CN100578619C (zh) 2007-11-05 2010-01-06 华为技术有限公司 编码方法和编码器
WO2009116280A1 (ja) * 2008-03-19 2009-09-24 パナソニック株式会社 ステレオ信号符号化装置、ステレオ信号復号装置およびこれらの方法
CN101931414B (zh) 2009-06-19 2013-04-24 华为技术有限公司 脉冲编码方法及装置、脉冲解码方法及装置
US8280729B2 (en) * 2010-01-22 2012-10-02 Research In Motion Limited System and method for encoding and decoding pulse indices

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20020111799A1 (en) * 2000-10-12 2002-08-15 Bernard Alexis P. Algebraic codebook system and method
CN101295506A (zh) * 2007-04-29 2008-10-29 华为技术有限公司 编解码方法及编解码器
CN101483043A (zh) * 2008-01-07 2009-07-15 中兴通讯股份有限公司 基于分类和排列组合的码本索引编码方法

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103886862A (zh) * 2010-06-24 2014-06-25 华为技术有限公司 脉冲编解码方法及脉冲编解码器
CN106664099A (zh) * 2014-08-15 2017-05-10 谷歌技术控股有限责任公司 使用统计特性编码脉冲矢量的方法
CN105007094A (zh) * 2015-07-16 2015-10-28 北京中宸泓昌科技有限公司 一种指数对扩频编码解码方法
CN105007094B (zh) * 2015-07-16 2017-05-31 北京中宸泓昌科技有限公司 一种指数对扩频编码解码方法

Also Published As

Publication number Publication date
AU2011269502B2 (en) 2015-01-15
US9858938B2 (en) 2018-01-02
US8959018B2 (en) 2015-02-17
KR20130023373A (ko) 2013-03-07
AU2011269502A1 (en) 2013-02-07
ES2764832T3 (es) 2020-06-04
EP2587480A4 (en) 2013-12-25
WO2011160537A1 (zh) 2011-12-29
US20170053657A1 (en) 2017-02-23
US9508348B2 (en) 2016-11-29
PT2587480T (pt) 2019-11-20
JP6042949B2 (ja) 2016-12-14
JP6301431B2 (ja) 2018-03-28
JP5785255B2 (ja) 2015-09-24
US20130124199A1 (en) 2013-05-16
EP2587480A1 (en) 2013-05-01
US20180190304A1 (en) 2018-07-05
US10446164B2 (en) 2019-10-15
US9020814B2 (en) 2015-04-28
JP2017068273A (ja) 2017-04-06
KR101384574B1 (ko) 2014-04-11
CN102299760B (zh) 2014-03-12
US20150081284A1 (en) 2015-03-19
US20140122066A1 (en) 2014-05-01
JP2015215630A (ja) 2015-12-03
JP2013533505A (ja) 2013-08-22
EP2587480B1 (en) 2019-10-16

Similar Documents

Publication Publication Date Title
CN102299760B (zh) 脉冲编解码方法及脉冲编解码器
CN101388210B (zh) 编解码方法及编解码器
CN101295506B (zh) 脉冲编解码方法及脉冲编解码器
CN101483043A (zh) 基于分类和排列组合的码本索引编码方法
US10089995B2 (en) Vector joint encoding/decoding method and vector joint encoder/decoder
CN102521067A (zh) 优化部分条带写性能的raid-6编码和重构方法
CN103746774A (zh) 一种高效数据读取的容错编码方法
CN101431335B (zh) 用于调制编码和解码的方法、装置和系统
CN103886862A (zh) 脉冲编解码方法及脉冲编解码器
CN101931414B (zh) 脉冲编码方法及装置、脉冲解码方法及装置
CN104268034A (zh) 一种数据备份方法及装置和数据恢复方法及装置
CN102903378A (zh) 用于变长码率的二维游程长度受限约束编解码装置及方法
CN103517022A (zh) 一种图像数据压缩和解压缩方法、装置
CN101673547B (zh) 编码方法、解码方法及其装置

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant