CN102577132B - 用于阶乘脉冲编码器的算术编码 - Google Patents
用于阶乘脉冲编码器的算术编码 Download PDFInfo
- Publication number
- CN102577132B CN102577132B CN201080042599.5A CN201080042599A CN102577132B CN 102577132 B CN102577132 B CN 102577132B CN 201080042599 A CN201080042599 A CN 201080042599A CN 102577132 B CN102577132 B CN 102577132B
- Authority
- CN
- China
- Prior art keywords
- subdivision
- information
- code
- pulse
- digitally coded
- 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
- 238000005259 measurement Methods 0.000 claims abstract description 13
- 238000000034 method Methods 0.000 claims description 71
- 230000008569 process Effects 0.000 claims description 31
- 230000007423 decrease Effects 0.000 claims description 2
- 238000012913 prioritisation Methods 0.000 claims 2
- 238000004891 communication Methods 0.000 description 23
- 230000006870 function Effects 0.000 description 15
- 238000001228 spectrum Methods 0.000 description 13
- 230000008901 benefit Effects 0.000 description 9
- 238000012360 testing method Methods 0.000 description 9
- 230000000875 corresponding effect Effects 0.000 description 8
- 238000010586 diagram Methods 0.000 description 7
- 238000013461 design Methods 0.000 description 4
- 230000009471 action Effects 0.000 description 3
- 230000008859 change Effects 0.000 description 3
- 238000001914 filtration Methods 0.000 description 3
- 238000004422 calculation algorithm Methods 0.000 description 2
- 230000000694 effects Effects 0.000 description 2
- 238000005516 engineering process Methods 0.000 description 2
- 238000011156 evaluation Methods 0.000 description 2
- 239000000284 extract Substances 0.000 description 2
- 238000011002 quantification Methods 0.000 description 2
- 230000009467 reduction Effects 0.000 description 2
- 238000005070 sampling Methods 0.000 description 2
- 230000003595 spectral effect Effects 0.000 description 2
- RYGMFSIKBFXOCR-UHFFFAOYSA-N Copper Chemical compound [Cu] RYGMFSIKBFXOCR-UHFFFAOYSA-N 0.000 description 1
- 230000003321 amplification Effects 0.000 description 1
- 229910002056 binary alloy Inorganic materials 0.000 description 1
- 230000033228 biological regulation Effects 0.000 description 1
- 230000005540 biological transmission Effects 0.000 description 1
- 238000004364 calculation method Methods 0.000 description 1
- 238000006243 chemical reaction Methods 0.000 description 1
- 239000010949 copper Substances 0.000 description 1
- 229910052802 copper Inorganic materials 0.000 description 1
- 230000002596 correlated effect Effects 0.000 description 1
- 238000000354 decomposition reaction Methods 0.000 description 1
- 230000003247 decreasing effect Effects 0.000 description 1
- 238000009795 derivation Methods 0.000 description 1
- 238000002474 experimental method Methods 0.000 description 1
- 230000005484 gravity Effects 0.000 description 1
- 230000006872 improvement Effects 0.000 description 1
- 238000002955 isolation Methods 0.000 description 1
- 238000013507 mapping Methods 0.000 description 1
- 238000003199 nucleic acid amplification method Methods 0.000 description 1
- 239000013307 optical fiber Substances 0.000 description 1
- 230000008447 perception Effects 0.000 description 1
- 238000012545 processing Methods 0.000 description 1
- 230000008707 rearrangement Effects 0.000 description 1
- 230000000284 resting effect Effects 0.000 description 1
- 238000004088 simulation Methods 0.000 description 1
Classifications
-
- H—ELECTRICITY
- H03—ELECTRONIC CIRCUITRY
- H03M—CODING; DECODING; CODE CONVERSION IN GENERAL
- H03M7/00—Conversion of a code where information is represented by a given sequence or number of digits to a code where the same, similar or subset of information is represented by a different sequence or number of digits
- H03M7/30—Compression; Expansion; Suppression of unnecessary data, e.g. redundancy reduction
- H03M7/40—Conversion to or from variable length codes, e.g. Shannon-Fano code, Huffman code, Morse code
- H03M7/4006—Conversion to or from arithmetic code
-
- 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
-
- H—ELECTRICITY
- H03—ELECTRONIC CIRCUITRY
- H03M—CODING; DECODING; CODE CONVERSION IN GENERAL
- H03M7/00—Conversion of a code where information is represented by a given sequence or number of digits to a code where the same, similar or subset of information is represented by a different sequence or number of digits
- H03M7/30—Compression; Expansion; Suppression of unnecessary data, e.g. redundancy reduction
-
- H—ELECTRICITY
- H03—ELECTRONIC CIRCUITRY
- H03M—CODING; DECODING; CODE CONVERSION IN GENERAL
- H03M7/00—Conversion of a code where information is represented by a given sequence or number of digits to a code where the same, similar or subset of information is represented by a different sequence or number of digits
- H03M7/30—Compression; Expansion; Suppression of unnecessary data, e.g. redundancy reduction
- H03M7/3082—Vector coding
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical 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
一种编码器/解码器架构(200,300,700),其使用算术编码器(220)对阶乘脉冲编码器(212)的输出的MSB部分进行编码,算术编码器(220)对例如MDCT的第一级源编码器(210)的输出进行编码。信号的部分(例如,帧)的子部分(例如,频带)基于与信号能量相关的测量(例如,信号能量本身),以递增顺序被适当地分类。在覆盖对阶乘脉冲编码进行算术码编的***(100)中这样做,导致位被重新分配给具有较高信号能量含量的频带,最终产生更高信号质量和更高位利用效率。
Description
技术领域
本发明整体涉及高效率的数字编码和解码。
背景技术
最近二十年来,微处理器速度增加多个数量级并且数字信号处理器(DSP)变得无所不在。从模拟通信到数字通信的变换变得更加灵活和有吸引力。数字通信提供能够有效地利用带宽的主要优点,并且允许使用错误校正技术使用。从而,通过使用数字技术,可以通过给定分配的频谱空间发送更多信息并且更可靠地发送信息。数字通信可以使用无线电链路(无线)或物理网络媒体(例如,光纤、铜质网络)。
数字通信可以用于不同类型的通信,诸如,例如音频、视频或遥测技术。数字通信***包括发送设备和接收设备。在能够进行双向通信的***中,每个设备都具有发送和接收电路。在数字发送或接收设备中,存在多阶段处理,通过其,数据在通过输入端(例如,麦克风、相机、传感器)而被输入的阶段和在被用于调制载波并且被传输的阶段之间被传送。在(1)被输入并且被数字化之后,(2)可以应用一些初始噪声滤波,之后进行(3)源编码和(4)最终信道编码。将在随后页中描述的本发明可以认为落入源编码阶段中。
源编码的主要目标在于减小比特率,同时最大可能地保持感知质量。不同标准被开发用于不同类型的媒体。例如,JPEG标准应用至静止图像,同时IS-127标准应用至音频。对于实用的让步,通常使用对应于DSP寄存器长度的矢量长度或多个DSP寄存器长度(例如,128位)的偶数倍来设计源编码器。现在对于每个应用,都存在对所分配信道带宽的一些限制。基于该限制,源编码器/解码器的设计者将考虑正被编码的媒体的每个部分的所有自由度来决定可能代码的特定数量。例如,在音频编码的情况下,可能存在已建立的特定帧尺寸(例如,160个采样长)、在每个音频帧中所允许的音频脉冲的特定数量、以及将被分配给脉冲的总幅度量子的特定数量。由设计者作出的选择旨在最大化感知质量,同时保持在所分配的带宽内。因为所有事物都是离散的并且被量化,所以可以列举特有(unique)帧的总数量。用于每帧的特有可能性的总数量与所分配的带宽紧密相关,这是因为其必须可以在音频帧的时间间隔期间通过信道发送足够信息,以识别在该帧期间最对应于该音频的一个特有帧。特有帧的总数量越大,就要求更多信息以唯一地识别一个特定帧。现在,可能发生的是,特有帧的总数量(n)不是2的幂(即,n≠2k,其中,k是整数)。例如,假设n<2k,在这种情况下,如果使用k位整数表示每帧,则应该一直存在绝不被发送的接近2k的较高值整数的一些范围。这表示***是低效率的,这是因为已经分配了k位,但是k位未被完全利用。
美国专利No.7,230,550披露了一种通过减小需要表示一组多位码字的整***尺寸的方式、将一组多位码字***为最高有效位(MSB)部分和最低有效位(LSB)部分,以及组合MSB部分和LSB部分,从而解决上述低效率的方法。不幸的是,如果如在高带宽、高保真度***中所要求的,大数量码字将以此方式被处理,550专利的方法会要求高准确度乘法操作被执行。这是计算昂贵的,从而是不利的。
虽然以上示例涉及音频并且讨论到帧,更一般地,不同类型的媒体(例如,图像、视频、遥测&音频)的特征在于(整体或部分)n个可能代码之一,其中,n是(基于带宽限制被可能地选择)的整数但不是2的幂,例如,n≠2k,其中,k是整数。类似地,一般在这样的情况下也出现低效率。
附图说明
附图示出多个实施例,并且根据本发明解释多种原理和优点,其中,贯穿附图地,类似参考数字指示相同或功能类似的要素,并且附图与以下详细说明一起被结合到并且形成说明书的一部分。
图1是根据本发明的实施例的通信***的框图;
图2是在图1中所示的通信***中使用的设备的发射机的框图;
图3是在图1中所示的通信***中使用的设备的接收机的框图;
图4是用于对通过先前编码器生成的代码(例如,FPC代码)的最高有效位部分(MSB)进行编码的算术编码器的流程图;
图5是用于对表示由另一个编码器生成的代码(例如,FPC代码)的MSB的算术代码进行解码的算术解码器的流程图;
图6是用于确定表示当通过有限精确度算法进行算术编码时要求的额外位的数量的算术编码器编码效率项的处理的流程图;以及
图7是与阶乘脉冲编码组合地使用算术编码的音频编码方法的流程图。
本领域技术人员将想到,图中的要素被示出用于简单和清楚的目的,并且不必须按比例绘制。例如,图中的一些要素的尺寸可以相对于其他要素被放大,以帮助改善本发明的实施例的理解。
具体实施方式
在描述根据本发明的详细实施例之前,将观察到,实施例主要在于关于编码器和解码器的方法步骤和装置组件的组合。从而,装置组件和方法步骤已经通过图中的传统符号在合适处被表示,仅示出关于理解本发明的实施例的那些特定详情,以不使对于具有在此的说明的益处的本领域普通技术人员而言显而易见的细节模糊本披露。
在本文档中,诸如第一和第二、顶部和底部等的关系术语可以仅用于区分一个实体或动作与另一个实体或动作,而不必须要求或暗示这样实体或动作之间的任何实际这样的关系或顺序。术语“包括)”或其任何其他版本旨在覆盖非排他性包括,使得包括要素的列表的处理、方法、物件或装置不仅仅包括那些要素,并且可以包括未明确列出或这样的处理、方法、物件或装置固有的其他要素。在没有更多约束的情况下,之前为“包括...一个”的要素不排除在包括要素的处理、方法、物件或装置中存在另外的相同要素。
将理解,在此描述的本发明的实施例可以由一个或多个传统处理器,和唯一存储的程序指令来构成,该唯一存储的程序指令特定非处理器电路来控制一个或多个处理器来实现在此描述的编码器和解码器的一些、大多数或所有功能。非处理器电路可以包括但不限于无线电接收机、无线电发射机、信号驱动器、时钟电路、电源电路、以及用户输入设备。同样地,这些功能可以解释为执行编码和解码的方法的步骤。可替换地,一些或所有功能可以通过不存储程序指令的状态机、或在一个或多个专用集成电路(ASIC)中实现,其中,每个功能或特定功能的一些组合被实现为定制逻辑。当然,可以使用两种方式的组合。从而,在此描述了用于这些功能的方法或装置。而且,可以预期的是,虽然存在例如可用时间、当前技术和经济成本的考虑可能带来的大量努力以及很多设计选择,但是当由在此描述的概念和原理引导时,本领域普通技术人员能够容易地通过最少实验生成这样的软件指令和程序以及IC。
图1是根据本发明的实施例的通信***100的框图。通信***100包括通过通信网络或对等信道106可通信地耦合的第一通信设备102和第N个通信设备104。通信设备102、104中的至少一个包括发射机,并且通信设备102和104中的至少一个包括接收机。特定实施例提供双向通信,在该情况下,通信设备102、104包括发射机和接收机。
图2是在图1中所示的通信***中使用的设备102、104的发射机200的框图。发射机包括输入端202,其可以根据正被发送的信息的类型采用不同形式。在音频的情况下,输入端202适当地采用麦克风的形式;在视频的情况下,输入端202适当地采用图像传感器的形式;以及在遥测的情况下,输入可以采用传感器的形式。
输入端202连接至信号调节器204。信号调节可以例如包括模拟域滤波和/或放大。
该信号调节器204连接至模数转换器(A/D)206,其数字化从信号调节器204接收的信号。
A/D 206耦合至数字滤波器208,其用于在数字域中执行附加滤波。
数字滤波器耦合至第一级源编码器210。第一级源编码器210可以例如包括代数码激励线性预测(ACELP)编码器(其是一种类型的音频编码器)、改进型离散余弦变换(MDCT)编码器(其可以应用至多种不同类型的信号)、或可以用作预编码器或预处理阶段的任何类型的信号编码器。现在,第一级源编码器将进入的数据正常地分割为离散块(诸如,规定持续时间的音频帧(对应于特定数量的采样)、或图像的小块)并且每次对这些块中的一个进行编码。(注意,这不排除关于先前帧或块的差分编码。)这里,在***中,每个事物都被量化和离散化,使得存在用于每个离散块的有限数量的不同可能信号矢量。可以基于这样的实际考虑,将离散化和量化的分辨率设计为用于实现***的数字信号处理器(DSP)的寄存器的长度。第一级源编码器210的离散化和量化以及其他方面还适当地基于感知考虑,或者一般地说基于所发送的信号质量要求。在发射机200的远端,即,到信道的输出228,存在另一个约束,即,还必须被适应的最大信道带宽。实现信号质量考虑和可用带宽之间的很好平衡通常会导致得出源编码器210、212的设计,其中,可能信号矢量的数量可能碰巧不是2的整数幂(即,n≠2k,其中,n是可能信号矢量的数量并且k是任何整数)。在该通常情况下,如果发送k位码字以识别用于数据的每个离散块的n个可能信号矢量之一,则***中是明显低效率的。在信息论中对于本领域技术人员来说明显的该低效率将产生,这是因为由于n<2k,所以k位整数(码字)的特定值决不被发送,但是虽然如此,所有k位仍然都要求被发送。在这种情况下,n个信号矢量的一个的k位码字表示被认为具有“非整数”长度。
再次参考图2,将看到,第一级源编码器210耦合至阶乘脉冲编码器(FPC)212。FPC是可以产生k位码字以表示n位信号矢量的一种类型的编码器。在Weimin Peng等人的美国专利No.6,236,960中描述了早期阶乘脉冲编码器,其与本发明共同被转让。基础FPC通过建立所有可能信号矢量的排序,并且生成指向排序中的特定信号矢量的整数码字而进行运作。特定信号矢量的特征在于,非零位置、幅度和符号的特定唯一组合。从而,代替发送信号矢量,整数码字被发送。名为“Apparatus and Method for Low Complexity Combinatorial Codingof Signals”的美国专利7,461,106提供改进的FPC,其使用在960专利中描述的组合功能的近似(approximation),以减小编码和解码的计算成本。由于非整数长度码字导致的上述低效率在FPC 212的输出处持续。如当前描述的,低效率通过发射机的连续阶段的提供而被解决。
阶乘脉冲编码器212耦合至MSB/LSB解析器214。MSB/LSB解析器214将从FPC 212接收的每个多位代码划分为最高有效位部分(MSB)和最低有效位部分(LSB)。***码字在这里是用于解决上述低效率的第一阶段。LSB部分可以采取所有可能值,从而这些位可以被更充分地利用。MSB可能不被充分利用,所以通过***开MSB和LSB,而在MSB中隔离低效率。根据本发明的可选实施例,代替FPC编码,使用另一种类型的组合编码和解码。当使用其他类型的组合编码和解码时,可以获得类似益处。
根据本发明的可选实施例,从FPC接收的码字不是所有都具有相同长度(例如,k位那么长)。在这种情况下,根据一个选择,被分组为MSB部分的位的数量是固定的,并且被分组为LSB的位的数量被允许改变。码字的长度可以改变的一个应用是音频通信***,其中,第一级源编码器210分离地对独立音频频带进行编码,并且分配不同数量的用于每个的位。这是合理的,因为不同音频带基于它们覆盖的频率范围和/或它们包含的频谱能量,对感知音频质量有不同影响。
再次参考图2,可以看出,MSB/LSB解析器214耦合至多MSB缓冲器216和多LSB缓冲器218。由于LSB部分被充分利用,这些可以被简单地连接在一起。例如,在音频应用中,可以将在一个音频帧周期期间从一组频带中的所有中推导的LSB部分连接在一起。多LSB缓冲器218耦合至将多个LSB部分连接在一起的连接器(concatenator)222。
多MSB缓冲器216耦合至算术编码器220。在概念上,可以使用算术编码器将符号序列唯一地映射到范围0到1的特定子范围(可能性区域)。使用第一符号将(0,1]范围划分为等于不同符号值(例如,对于二进制为2)的数量的多个子范围。子范围的尺寸可以与相关符号值的可能性成比例(例如,零的机会为25%,并且1的机会为75%)。基于符号的身份(值)选择一个子范围。每个连续符号都用于进一步再分使用其前缀(在其前面的符号的子序列)识别的子范围。然后,落入每个子范围(例如,11,以表示3/4)的分数的二进制表示用作代码,以表示映射至子范围的符号序列。在名为“Arithmetic Encoding ForCELP Encoders”(档案号CML07096)的共同待决专利申请序列号:12/247,440中教导一种类型的算术编码器。在该情况下,音频数据被减小为二进制序列,即,每个符号是0或1的序列。本发明中使用的算术编码器220更加复杂,因为符号是整数值并且可以在从0至Gi MAX-第i个MSB部分的最大值的范围内。在这种情况下,除了每个符号被使用以将先前范围(或子范围)划分为两个子范围之外,每个符号被使用以将先前范围(或子范围)划分为Gi MAX个子范围。算术编码器的流程图在图4中示出并且在以下描述。算术编码器220的输出是表示从多MSB缓冲器216接收的MSB部分的序列的代码(“算术代码”)。
再次参考图2,可以看出,算术编码器220和连接器22耦合至分组装配器224。分组装配器224耦合至信道编码器226,其进而耦合至到信道的输出228。诸如频谱带能量的其他信息也可以提供给分组装配器。
图3是在图1中所示的通信***中使用的设备102、104的接收机300的框图。由发射机300发送的分组在信道302的输入处被接收,其耦合至信道解码器304,其进而耦合至解析器306。分组解析器306耦合至n-LSB寄存器312和算术代码寄存器308。分组解析器306提取连接的LSB,并且将它们递送至n-LSB寄存器312。分组解析器306还提取算术代码并且将其递送至算术解码器310。算术解码器310耦合至n-MSB寄存器314。算术解码器310对编码进行逆转,并且将MSB部分的序列输出至n-MSB寄存器314。算术解码器310的流程图如图5中所示并且在以下描述。
n-LSB寄存器312和n-MSB寄存器314耦合至多路复用器316。多路复用器316耦合至FPC寄存器。多路复用器316重新关联相应的MSB和LSB,以重新组成完整的FPC码字,其被传送至阶乘脉冲代码寄存器318。FPC寄存器318进而耦合至阶乘脉冲解码器320。阶乘脉冲解码器320重新构成第一级源编码器210的编码输出,并且将其递送至第一级源解码器322,其重新构成原始信息(例如,音频、图像数据)。第一级源解码器322耦合至数模转换器(D/A)324,其进而耦合至输出326(例如,显示器、音频扬声器)。
图4是用于对由先前编码器(例如,阶乘脉冲编码器)输出的代码的MSB部分进行编码的算术编码器220的流程图。在框402中,索引i、索引j、变量x、变量y、以及变量rl、变量n和变量n-tilda被初始化。识别MSB部分的序列中的MSB部分的变量i被初始化为0,以指向序列中的第一MSB部分。指向将由算术编码器310产生的码字中的连续位的变量j被初始化为-2(不使用前两个代码位)。表示算术代码空间范围中的位置的变量x被初始化为0。作为表示子范围的宽度的重定比例(re-scalable)变量的变量y被初始化为2w。概念上,代码空间可以被认为是范围(0,1],但是实际上代码空间被表示为0-2w。W还有效地是对应于由算术编码器310使用的算术的精确度的精确度参数。虽然W在图4-6中所示的流程图中是固定的,但是可替换地,可以对于每个第i个符号独立地设置W。RI运行长度变量被初始化为0。n被初始化为Gi MAX,i被设置为其初始值0。Gi MAX是第i个MSB部分的最大值。MSB部分根据第一级源编码器210的设计而具有不同最大值。例如,为对不同频带编码分配的不同位可能导致Gi MAX的不同值。n-tilda被初始化为Gi,第i个MSB的实际值。
在框402之后,判决框404是测试将被编码的所有MSB部分是否已被处理的循环终止标准。如果结果是否定的(意味着更多MSB部分将被处理),则流程继续至框406。框406中的第一步骤是计算下一个子范围尺寸。下一个子范围尺寸是由Gi(第i个MSB部分)和Gi MAX(第i个MSB部分的最大值)的值(在这里分别由n-tilda和n表示)确定的先前子范围尺寸的分数(fraction)。用于计算子范围的尺寸的公式是:
在先前公式被估计之后,其被递增,并且n和n-tilda分别被设置为Gi MAX和Gi。
接下来,在框408中,由变量x表示的代码空间中的位置被增加与n-tilda和n的新值的比成比例的先前子范围尺寸的分数的舍入值。换句话说,Gi越接近Gi MAX,代码空间中的新位置就越高。而且,在框408中,由变量y表示的子范围尺寸现在被设置为在框406计算的新值,变量z被设置为该新值。
判决框410测试变量y的值是否小于2W。如果是,则流程分支到框412。注意,如果判决框404的结果是肯定的,则流程图也分支到框412。
在框412中,表示子范围尺寸的变量y由因数2(其在二进制算术中可以通过左位移完成)重定比例(rescaled)。而且,在框412中,所发射的值变量e被设置为等于代码空间位置x除以2w的地板函数。接下来,在框412中,对应于y的重定比例,代码空间中的位置的值被重置为x mod 2w的值的两倍。
接下来,判决框414测试所发射的值变量是否等于1。如果是,则流程继续至框416,其中,运行长度变量rl被递增并且此后流程分支返回判决框410。当判决框410的结果为否时,流程分支返回判决框404。
当判决框414的结果为否时,流程分支到判决框418。判决框418测试所发射的变量值是否大于1。如果是,则流程继续到框420。在框420中,下一个位变量nb递增1,运行位变量rb被设置为等于0并且所发射的变量值e减小2。如果另一方面,判决框418的结果为否,则流程分支到框422,其中,运行位变量rb零被设置为等于1。在框420或422之后,流程达到框424。在框424中,指向连续代码位的变量j递增1,第j个代码位Vj被设置为等于下一个位变量nb,并且nb变量被设置为等于所发射的变量e。
接下来,判决框426测试运行长度变量rl是否大于0。如果是,则流程执行框428,其中,变量j递增,第j个代码位Vj被设置为等于运行位变量rb,并且运行长度变量递减。在框428的每次执行之后,流程循环回框426。当框426的结果为否,则流程退出循环并且达到判决框430。
判决框430测试是否i=M,即,在正被编码的MSB部分的序列中是否存在任何剩余MSB部分。如果更多MSB部分仍然要被处理,则流程循环回判决框410,并且如上所述地继续执行。当在框430中确定不存在将被处理的更多MSB部分时,流程分支到判决框432。判决框432测试变量j是否等于指示算术代码的长度的L。如果不是,则流程执行434,其中,第j个代码位Vj被设置为等于1并且j递增1。从框434,流程循环回判决框432。当框432的结果为肯定时,算术代码完成并且流程终止。
图5是用于对由另一个编码器(例如,阶乘脉冲编码器)产生的代码的MSB部分解码的算术解码器310的流程图。在框502中,提及正被解码的连续符号的索引i被初始化为0(指向第一个符号);指向连续代码位的整数j被初始化为0(指向第一个代码位);指定算术代码空间中的位置的变量x被初始化为0(x将基于代码位值而被建立);指定代码空间中的间隔宽度的变量y被初始化为1并且变量n被设置为等于Gi max。框504是判决框,其结果取决于y是否小于2W。W是由解码器310使用的固定精确度。最初,判决框504的结果为否,使得流程分支到判决框506,其测试变量j是否小于固定长度参数L。L表示算术代码的长度。最初,判决框的结果为肯定(j<L),使得流程分支到框508。在框508中,变量X乘以2(左移一位)并且加上代码位的值。(注意,最初X被简单地设置为代码位的值,这是因为X被初始化为0)。当在处理所有代码位之后,框506的结果变为否时,流程分支到框510,其中,x被简单地乘以2(不加上代码位)。在框508或框510之后,流程分支到框512,其中,y乘以2。在框512之后,流程循环回504,以再次测试y是否小于2W。当在处理所有代码位之后,而且在510中可能左移x并且在512中进一步左移y时,在框504中确定y超过2W,流程分支到框514。在框514中,变量n-tilda(用于编码符号的临时变量)被设置为等于(2xn+n-1)/2y的地板函数。在框516中,临时存储代码空间中的宽度的变量z根据以上给定用于z的等式设置。
而且,在框516中,Gi,第i个码字被设置为等于n-tilda;索引i被递增1并且变量n被设置为等于第i个Gi max值。在框518中,变量x被设置为减小round(y*n-tilda/n)的值——基本去除可归于先前代码位的代码空间中的“高度”(位置)的部分。而且,在框518中,表示代码空间中的间隔的变量y被重置为z,其表示由先前代码位选择的代码空间中的间隔。判决框520测试i是否还等于M,即,是否所有符号都已经被解码。如果不是,则流程返回至框504。如果另一方面,所有符号都已被恢复,则流程终止。
回想关于以上编码器的说明,其规定了算术码字为L位长。在理论上,为了表示M个数量的MSB,在Gi max以下的范围内的Gi应该满足L被设置成使得2L超过Gi max值的序列的乘积。实际上,当使用有限精确度算法(例如,使用诸如32位的宽度的处理器寄存器)执行算术编码时,对额外代码位的需要增加。用于额外代码位的数量的算术编码的松散边界(过高估计)(LBAC)由以下等式给定。
注意,由以上给出的额外位的数量可以实际上求值为小于1,在这种情况下,要求仅一个额外位。还注意,以上等式可以被递增地求值,即,用于小于M个Gi max值的部分序列。
用于算术编码的紧密边界(更准确)(TBAC)可以通过必须对可以由假设符号序列中的每个符号位置选择的代码空间的最小子范围进行递归地选择的处理来确定。最小子范围的尺寸与用于每个第i个符号位置的Gi max相关。图6示出用于确定TBAC的处理的流程图。在框602中,指向连续最大MSB部分值Gi max的变量i被初始化为0;代码空间子范围宽度变量y被初始化为2W,其中,W是精确度参数;对y的重定比例(左移)的数量进行计数的变量k被初始化为0;与在log2域中的Gi max值的乘积相关的变量s被初始化为0;以及用于存储Gi max值的临时变量n被初始化为第0个Gi max值G0 max。
判决框604测试最后一个(第M个)Gi max值是否已被处理。对于小于MSB部分值的全部序列可以执行TBAC流程,在该情况下,框604中的M小于MSB部分值的总数。如果i还不等于M,则流程进行至框606,其中,表示代码空间子范围宽度的临时变量z被设置为等于根据其值而可以分配给第i个符号Gi的所有子范围宽度中的最小子范围宽度。用于如在流程图中的z的表示,被给定为:
实际上,可以示出z与n(Gi max)反向相关并且等于:
而且,在框606中,s增加log2(n);i增加1并且n被设置为Gi max的新值。在框608中,y被设置为等于z。接下来,判决框610测试y是否小于2W。如果是,则流程循环通过框612,其使y乘以2(左移y)并且使k增加1。当在框610中确定y不小于2W时,流程循环回判决框604。当在框604中确定i=M时,流程进行至框614,并且额外要求的代码位的数量η被设置为等于k+w-s-log2(y)。
图7是有效音频编码器的流程图,其组合算术编码来使用阶乘脉冲编码以对根据与频谱能量相关的测量而分类的频率带的序列进行编码。该方法允许具有非整数长度的FPC码字使用算术编码被有效地编码,同时提供用于将从初始分配节省的位重新分配给其他频带的重分配。虽然对图7中的音频带作出的参考,但是应该注意,该处理可以等效地应用至对其他类型信息进行编码。在其他应用中,代替频谱能量,可以使用另一个形式的信号能量。
框702指示对于连续音频帧重复以下所示的处理。虽然在图7中未明确地示出,但是处理可以被应用,以对从连续音频帧提取的信息区别地编码。
在框704中,调用独立处理(未示出),以执行位到频带的序列的初始分配。(这里假设信号已被变换至频域,并且频域系数已被分离为多个频带。)可以使用用于将位分配给频带的已知处理。在X.Wei,M.Shaw,M.Varley的,″Optimum Bit Allocation and Decomposition forHigh Quality Audio Coding,″icassp,vol.1,pp.315,1997IEEEInternational Conference on Acoustics,Speech,and Signal Processing(ICASSP′97)-Volume 1,1997中描述了一种这样的已知方法。分配给频带的位数可以是频带中的能量的函数。在其他类型的信息(例如,图像、视频、遥测)的情况下,部分(类似于音频帧)会被再分为子部分(例如,频带、或其他类型的划分)。
在框706中,频带根据与频谱能量相关的测量被重排序(分类)。测量可以是频谱能量本身。可替换地,通过使用于每个频带的频谱能量乘以与该频带相关的预编程权重,可以得出加权频谱能量。在重排序频带方面存在一些优点,使得具有较低频谱能量的频带位于排序的开始的附近。这样的排序的结果在于,位倾向于被重新分配给具有较高能量含量的频带,从而导致这样频带的表示的较高保真度。
框708标记循环的顶部,所述循环为每个第j个频带(根据新排序而依序获取)而重复。在框710中,计算可以被编码来表示第j个频带中的频谱的单位幅度脉冲量子的数量。这通过使用假设脉冲量子的数量被设置为整数值m时,列举所有可能脉冲配置的等式来计算。在阶乘脉冲编码***中,可能脉冲配置的数量N等于最高代码值。在与本发明被共同转让并且教导阶乘脉冲编码方法的美国专利No.6,236,960的等式(15)中给出一种这样的等式。其明确写出的960专利的等式(15)为:
其中,n是第j个频带中的频率窗(bin)的数量;
m是脉冲量子的数量;
i是求和索引;
来自更先进、更少计算量的加强版本的阶乘脉冲编码的模拟等式由Udar Mittal,James P.Ashley和Edgardo M.Cruz-Zeno的“LowComplexity Factorial Pulse Coding Of MDCT Coefficients UsingApproximation Of Combinatorial Functions”,ICASSP,2007论文中的等式(21)给出。使用这些或类似等式中的任何一个,它们不需要根据N而被反向以获得m,相反地它们可以使用计算的值的查找表或使用诸如对分方法的根寻找方法来求解。这些等式是不连续的,所以在求解它们时,在该上下文中,寻找如下m值,其产生作为由等式产生的N的最大值的N的值,其小于用于正被讨论的第j个频带的位分配。log2(N)的值是用于初始位分配的位的合理数量。从而,在用于给定频带的位分配中,通常存在一些超出数量的位。解决方案处理的后者方面参考流程图的框712。
如果基于频带中的能量的测量,位被分配给频带,则对应于为频带分配的位数的脉冲量子的数量m还与频带中的能量相关。这是可以根据基于脉冲量子的数量m的度量而重排序频带,以代替基于频带能量而重排序频带的情况。一种选择是基于m本身重排序频带。频带可以以m的递增顺序被重排序。这样做意味着位倾向于被重分配给具有较高能量(更多信息内容)的频带。另一种选择是基于度量log2(N(n,m+1))-log2(N(n,m))进行重排序,其中,N和m在先前等式中被限定。该度量量化关于脉冲量子m增加1时分数位(fractional bit)如何增加。如果使用该后一种度量,则频带可以基于度量按照递减顺序被重排序。该重新排序的结果为,通常大数量(不必须是整个数量)的位从具有m的小值(低能量)的频带重新分配到具有m的大值(高能量)的频带,其中,其在增加m的允许值方面,基本上比其被用在将其从中获取的频带中具有更大影响。
在框714中,选择在框712中发现的最高代码值N的最高有效位(MSB)部分(表示为Gj max)。(注意,频带索引已经从i改变为j,以避免与先前等式中的求和索引混淆。)(根据本发明的特定实施例,用于所有频带的MSB部分的长度都固定为位的预定数量)。如果是这样,则在完整位长度N小于或等于预定位数的情况下,完整值N被看作用于特定频带的MSB。)
在框716中,子处理被调用,以确定达到该频带的MSB的算术编码是否要求超过初始分配的附加位。在此谈到的子处理估计上述LBAC或TBAC,并且在后者情况下,参考图6描述。判决框718测试是否要求附加位。如果由算术编码效率确定的额外位的数量超过在使用阶乘脉冲编码列举公式之一以建立脉冲量子的数量m之后剩余的额外位的数量,则要求附加位。如果在框718中确定要求附加位,则流程分支到框720,其将m重置为较小值。例如,m可以减小固定量,或者基于涉及m和所要求的额外位的数量的表达式而减小。在m被减小之后,在框722中,最高代码值N被重新计算并且MSB部分Gj max被选择。在框722之后,流程循环回框716,以重新计算算术编码效率,并且重新检查用于算术编码达到第j个频带的MSB所需的位的总数是否落入分配内。当判决框718的结果为否时,意味着不要求附加位,并且不要求调整脉冲量子的数量,流程分支到框724,其中,从原始分配剩余的过多(剩余)位被分配给其他频带。将过多位分配给其他频带的方式可以改变。一种方式是在剩余频带之间均匀地划分位。另一种方式是使分配偏斜,使得包含更多频谱能量的更接近排序的末端的频带相对接收更多位。
在框726中,计算阶乘脉冲编码码字以表示频带。这可以根据前述No.6,236,960专利或前述论文Udar Mittal,James P.Ashley,andEdgardo M.Cruz-Zeno的,“Low Complexity Factorial Pulse Coding OfMDCT Coefficients Using Approximation Of Combinatorial Functions”,ICASSP,2007的教导作出。在框728中,选择码字的MSB,并且在框730中,调用算术编码器子处理,以开始(或在第一执行之后执行框730的情况下继续)生成用于表示MSB的算术编码。可以使用参考图4描述的算术编码器。从而,当每个新MSB(Gi)值由图7中所示的处理生成时,图4中所示的处理被递增地执行。在框732中,FPC码字的最低有效位被输出到连接器。
判决框734测试更多频带是否仍然将被处理。如果是,则在框736中,处理递增至排序中的连续频带,并且流程循环回框710,以开始处理下一个频带。当在框734中确定所有频带都已被处理时,流程分支到框738,其中,频带的频谱能量和/或其他信息被输出到分组装配器。
以下示例示出在进行和不进行频带的重排序的情况下在频带之间的位重新分配。首先假设频带不被重排序,并且第j个和第j+1个频带分别被分配24.0和20.5个位。而且,我们假设对于第j个和第j+1个频带,频率带宽(位置数)固定为n=20。对于第j个频带,可以确定在停留在初始位分配24.0之下的同时可以使用的脉冲量子的最大数量m是6,并且用于对第j个频带中的6个脉冲量子进行编码所需的位数是log2(N(20,6))=22.48位。在该示例中,m=6是在位预算为24.0位下保持log2(N(n,m))的最大整数;加1的脉冲量子m=7将要求log2(N(20,7))=25.02位。现在,通过将24.0-22.48=1.52位的位剩余移动到第j+1个频带,我们使用于第j+1个频带的位预算增加到20.5+1.52=22.02位。在计算用于第j+1个频带的脉冲量子的数量m时,我们发现,我们可以使用log2(N(20,5))=19.72位,来对m=5个脉冲编码。
在这里,我们可以容易地进行两种观察。首先,将1.52位从第j个频带重新分配到第j+1个频带不具有积极效果。即,增加的位不允许第j+1个频带中的脉冲量子的数量增加。第二,假设第j+1个频带是频带的序列中的最后一个频带,则位剩余(22.02-19.72=2.30位)可能被浪费。
根据本发明的实施例,现在考虑,存在基于频带能量的一些函数对频带重排序的示例。如果我们假设第j个和第j+1个频带是频带的序列中的最后频带,并且基于频带能量的单调增加函数,进行分类,并且我们假设更多频带被分配给具有更大能量的频带,则我们可以假设这些频带将包含最大数量的位。例如,假设被分配给这些频带的位分别是60.5和64.0个位。如在先前示例中,我们假设频带宽度固定为n=20。对于第j个频带,可以确定脉冲量子的最大数量m可以被确定为m=33,并且用于对33个脉冲量子进行编码的所需位数是log2(N(20,33))=59.80位。通过将60.5-59.80=0.70位的位剩余重新分配给第j+1个频带,我们使用于频带的位预算增加至64.0+0.70=64.70位。在计算用于第j+1个频带的脉冲量子的数量m时,我们发现我们可以使用log2(N(20,39))=64.18位对m=39个脉冲进行编码。在这种情况下,与先前情况相反,添加到第二频带的位允许m增加,从而有助于信号质量的增加。
一般来说的情况是,在当位数增加时,用于对附加脉冲量子进行编码所需的位数减少。从而,当合并基于能量的一些函数的重新分配时,剩余位的重新分配变为较小的问题,而且因为较高能量频带中的每脉冲量子的较低成本,用于对所有频带编码之后的被浪费位的可能性变低。
在上述实施例中,用于在重排序的序列中首先处理的频带的实际分配倾向于少于在框704中执行的初始分配,并且位被重新分配给重排序中位于后面的频带。而且,根据上述框710-712,脉冲量子的数量m被设置为最大值,使得用于对m个脉冲量子编码的位数log2(N)小于初始分配。根据可选实施例,频带的重排序顺序可以被颠倒,使得具有较高能量或具有较高脉冲量子数,或具有度量log2(N(m+1))-log2(N(m))的较小值的频带排第一。在这样的实施例中,不是寻找m的值使得相应N是初始位分配之下的最大合理数量,而是可以寻找m的值,使得log2(N)的相应值大于初始位分配(例如,大于初始位分配的最小值log2(N(m)))。对于这样的实施例,log2(N)的该值可以是位的合理数量。在这样的实施例中,不是进一步按照排序将过剩位分配给频带,而是可以从按照排序进一步往下的频带获得位,以组成log2(N(m))的值和初始位分配之间的差值(剩余)。在特定实施例中执行的重排序基于优先级,但是可以按照增加的优先级或减小的优先级的顺序。
频带的频谱能量和/或其他信息(例如,频带权重)被发送至接收机,使得接收机的解码器可以重新构建排序和由编码器执行的位分配,使得解码器能够适当地解译其接收的编码信息。接收机还按顺序执行框702-704,以获得Gj max的值。通过信道接收的Gj max的值与Gj的值然后由接收机使用,以按顺序执行以上参考图5描述的算术解码,从而重新获得FPC码字的MSB,其然后与从发射机接收的LSB重新完整为一个连接序列。然后,FPC码字被解码,以重新构建频带频谱能量分配。
在以上说明中,已经描述了本发明的特定实施例。然而,本领域技术人员将想到,在不脱离所附权利要求中阐述的本发明的范围的情况下,可以作出多种修改和改变。例如,阶乘脉冲编码被引用为可以从本发明受益的编码方法的示例,然而,多个其他组合编码方案也可以受益。
从而,说明书和附图被认为是示意性的而不是限制性的,并且所有这样的修改都旨在包括在本发明的范围内。可能导致任何益处、优点、或解决方案发生或使其变得更加显著的益处、优点、问题的解决方案和任何要素不被解释为任何或所有权利要求的关键的、要求的或基本特征或要素。本发明仅通过包括在本申请的未决期间做出的任何修改的所附权利要求和所发布的那些权利要求的等价物来限定。
Claims (19)
1.一种对信息进行数字编码的方法,包括:
把要被编码的数字信息块划分为多个子部分;
确定用于所述多个子部分的基于优先级的排序,并且根据所述基于优先级的排序按顺序处理所述多个子部分;
对于所述多个子部分的至少一个子集的每个第K个子部分:确定用于表示所述第K个子部分的初始位分配;
确定不等于所述初始位分配并且实际上能够用于在第一编码方案中表示所述第K个子部分的位的第一合理数量,其中所述第一编码方案是组合编码方案;
通过确定所述初始位分配和所述位的第一合理数量之间的差值来确定剩余位的数量;
按照顺序在所述基于优先级的排序的所述第K个子部分和除了所述第K个子部分之外的子部分中重新分配位,将所述第K个子部分的所述初始位分配调节成所述位的第一合理数量;以及
至少使用所述第一编码方案对所述第K个子部分进行编码,以产生第K个第一类型代码,
其中,所述位的第一合理数量小于用于所述第K个子部分的所述位的初始分配,并且重新分配包括将所述剩余位的数量重新分配给所述排序中超出所述第K个子部分的其他子部分,或者
其中,所述位的第一合理数量大于用于所述第K个子部分的所述位的初始分配,并且重新分配包括:将最初分配给除了所述第K个子部分之外的子部分的一个或多个位添加至所述第K个子部分。
2.根据权利要求1所述的对信息进行数字编码的方法,其中,所述初始位分配基于与所述第K个子部分的信息内容相关的测量而被建立。
3.根据权利要求2所述的对信息进行数字编码的方法,其中,与信息内容相关的所述测量至少部分地基于信号能量。
4.根据权利要求1所述的对信息进行数字编码的方法,其中,确定用于所述子部分的所述基于优先级的排序包括:至少部分地基于所述子部分中的能量的测量,确定所述基于优先级的排序。
5.根据权利要求1所述的对信息进行数字编码的方法,其中,所述优先级排序基于量化将被编码的信息的量的所述第一编码方案的整数参数。
6.根据权利要求5所述的对信息进行数字编码的方法,其中,所述整数参数是用于对所述多个子部分中的每个子部分进行编码的脉冲幅度量子的数量m。
7.根据权利要求6所述的对信息进行数字编码的方法,其中,所述优先级排序基于度量log2(N(n,m+1))-log2(N(n,m)),该度量log2(N(n,m+1))-log2(N(n,m))用于量化m增加1时如何增加分数位尺寸,其中,N(n,m)还对应于所述组合编码方案中的可能脉冲组合的数量,其中,n表示位置的数量,m表示脉冲量子的数量,以及N表示可能脉冲配置的数量。
8.根据权利要求7所述的对信息进行数字编码的方法,其中,所述组合编码包括阶乘脉冲编码。
9.根据权利要求1所述的对信息进行数字编码的方法,其中,按照从最低优先级到最高优先级的顺序处理所述子部分。
10.根据权利要求1所述的对信息进行数字编码的方法,其中,按照从最高优先级到最低优先级的顺序处理所述子部分。
11.根据权利要求1所述的对信息进行数字编码的方法,其中:
确定剩余位的数量包括:至少部分地基于第二编码方案的编码效率来确定剩余位的数量;以及
所述方法进一步包括:使用所述第二编码方案对所述第K个第一类型代码的至少一部分进行编码,以产生第二类型代码。
12.根据权利要求11所述的对信息进行数字编码的方法,其中,所述第K个第一类型代码的所述至少一部分包括所述第K个第一类型代码的最高有效位部分。
13.根据权利要求12所述的对信息进行数字编码的方法,其中,所述第二编码方案包括算术编码。
14.根据权利要求1所述的对信息进行数字编码的方法,其中,确定所述位的第一合理数量包括:确定基于对应于具有m个脉冲量子的不同可能脉冲配置的数量N的脉冲配置而总计的脉冲量子的最大值,其中,所述不同可能脉冲配置的数量N能够通过不大于所述初始位分配来表示。
15.一种对信息进行数字编码的方法,包括:
将信息块划分为多个子部分;
执行位到所述多个子部分的第K个子部分的初始分配;
计算用于编码所述第K个子部分的算术编码效率;
至少部分地基于所述算术编码效率来调节位到所述第K个子部分的所述初始分配,以获得用于所述第K个子部分的调节的位分配;以及
使用用于所述第K个子部分的所述调节的位分配,对所述第K个子部分进行编码。
16.一种对信息进行数字编码的方法,包括:
将信息块划分为多个子部分;
执行位到所述多个子部分的第K个子部分的初始分配;
对于每个第K个子部分:
确定在使用小于用于所述第K个子部分的位分配时能够使用阶乘脉冲编码而被编码的脉冲幅度量子的最大数量m;
确定对应于脉冲的所述最大数量的位的数量;
确定使用算术编码对先前子部分和所述第K个子部分的阶乘脉冲编码代码的至少一部分进行编码所需的额外位的数量,并且;
将所述额外位的数量加至对应于脉冲的所述最大数量的所述位的数量,并且比较得到的总数与用于所述第K个子部分的所述位的初始分配;
当所述得到的总数超过所述初始分配时:
递减脉冲的所述最大数量并且重新确定对应于脉冲的所述最大数量的位的数量;
当所述得到的总数小于所述初始分配时:
使用阶乘脉冲编码对所述第K个子部分进行编码,以获得第K个阶乘脉冲代码;
使用算术编码对所述第K个阶乘脉冲代码的至少一部分进行编码;以及
将阶乘脉冲编码和算术编码之后剩余的位重新分配给剩余子部分。
17.根据权利要求16所述的方法,进一步包括:
对所述子部分重排序,并且根据所述重排序按顺序对所述子部分进行编码。
18.根据权利要求17所述的方法,其中,所述重排序基于关于所述子部分的信息内容的测量。
19.根据权利要求18所述的方法,其中,关于所述子部分的信息内容的所述测量基于信号能量。
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US12/607,439 US8207875B2 (en) | 2009-10-28 | 2009-10-28 | Encoder that optimizes bit allocation for information sub-parts |
US12/607,439 | 2009-10-28 | ||
PCT/US2010/053016 WO2011056397A1 (en) | 2009-10-28 | 2010-10-18 | Arithmetic encoding for factorial pulse coder |
Publications (2)
Publication Number | Publication Date |
---|---|
CN102577132A CN102577132A (zh) | 2012-07-11 |
CN102577132B true CN102577132B (zh) | 2015-07-29 |
Family
ID=43530620
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201080042599.5A Active CN102577132B (zh) | 2009-10-28 | 2010-10-18 | 用于阶乘脉冲编码器的算术编码 |
Country Status (6)
Country | Link |
---|---|
US (3) | US8207875B2 (zh) |
EP (1) | EP2462697A1 (zh) |
KR (1) | KR101353216B1 (zh) |
CN (1) | CN102577132B (zh) |
BR (1) | BR112012010248A2 (zh) |
WO (1) | WO2011056397A1 (zh) |
Families Citing this family (22)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8149144B2 (en) * | 2009-12-31 | 2012-04-03 | Motorola Mobility, Inc. | Hybrid arithmetic-combinatorial encoder |
US8280729B2 (en) * | 2010-01-22 | 2012-10-02 | Research In Motion Limited | System and method for encoding and decoding pulse indices |
WO2012102149A1 (ja) | 2011-01-25 | 2012-08-02 | 日本電信電話株式会社 | 符号化方法、符号化装置、周期性特徴量決定方法、周期性特徴量決定装置、プログラム、記録媒体 |
US8731081B2 (en) * | 2011-12-07 | 2014-05-20 | Motorola Mobility Llc | Apparatus and method for combinatorial coding of signals |
RU2505921C2 (ru) * | 2012-02-02 | 2014-01-27 | Корпорация "САМСУНГ ЭЛЕКТРОНИКС Ко., Лтд." | Способ и устройство кодирования и декодирования аудиосигналов (варианты) |
CN106941004B (zh) | 2012-07-13 | 2021-05-18 | 华为技术有限公司 | 音频信号的比特分配的方法和装置 |
CN103778918B (zh) | 2012-10-26 | 2016-09-07 | 华为技术有限公司 | 音频信号的比特分配的方法和装置 |
CN104934034B (zh) * | 2014-03-19 | 2016-11-16 | 华为技术有限公司 | 用于信号处理的方法和装置 |
US9336788B2 (en) * | 2014-08-15 | 2016-05-10 | Google Technology Holdings LLC | Method for coding pulse vectors using statistical properties |
US9620136B2 (en) * | 2014-08-15 | 2017-04-11 | Google Technology Holdings LLC | Method for coding pulse vectors using statistical properties |
US9990931B2 (en) | 2014-08-15 | 2018-06-05 | Google Technology Holdings LLC | Method for coding pulse vectors using statistical properties |
US9672838B2 (en) | 2014-08-15 | 2017-06-06 | Google Technology Holdings LLC | Method for coding pulse vectors using statistical properties |
EP3483886A1 (en) | 2017-11-10 | 2019-05-15 | Fraunhofer-Gesellschaft zur Förderung der angewandten Forschung e.V. | Selecting pitch lag |
EP3483878A1 (en) | 2017-11-10 | 2019-05-15 | Fraunhofer-Gesellschaft zur Förderung der angewandten Forschung e.V. | Audio decoder supporting a set of different loss concealment tools |
EP3483882A1 (en) | 2017-11-10 | 2019-05-15 | Fraunhofer-Gesellschaft zur Förderung der angewandten Forschung e.V. | Controlling bandwidth in encoders and/or decoders |
WO2019091576A1 (en) * | 2017-11-10 | 2019-05-16 | Fraunhofer-Gesellschaft zur Förderung der angewandten Forschung e.V. | Audio encoders, audio decoders, methods and computer programs adapting an encoding and decoding of least significant bits |
EP3483879A1 (en) | 2017-11-10 | 2019-05-15 | Fraunhofer-Gesellschaft zur Förderung der angewandten Forschung e.V. | Analysis/synthesis windowing function for modulated lapped transformation |
WO2019091573A1 (en) | 2017-11-10 | 2019-05-16 | Fraunhofer-Gesellschaft zur Förderung der angewandten Forschung e.V. | Apparatus and method for encoding and decoding an audio signal using downsampling or interpolation of scale parameters |
EP3483883A1 (en) | 2017-11-10 | 2019-05-15 | Fraunhofer-Gesellschaft zur Förderung der angewandten Forschung e.V. | Audio coding and decoding with selective postfiltering |
EP3483880A1 (en) | 2017-11-10 | 2019-05-15 | Fraunhofer-Gesellschaft zur Förderung der angewandten Forschung e.V. | Temporal noise shaping |
EP3483884A1 (en) | 2017-11-10 | 2019-05-15 | Fraunhofer-Gesellschaft zur Förderung der angewandten Forschung e.V. | Signal filtering |
US11522662B2 (en) * | 2020-04-30 | 2022-12-06 | Lenovo (Singapore) Pte. Ltd. | Method and user equipment for generating a channel state information feedback report including jointly encoded parameters from multiple layers |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1262816A (zh) * | 1998-03-23 | 2000-08-09 | 皇家菲利浦电子有限公司 | 对信息信号的算术编码与解码 |
CN1744475A (zh) * | 2004-08-20 | 2006-03-08 | 美国博通公司 | 通过冗余和迭代处理进行信号处理的方法和*** |
Family Cites Families (20)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP3277677B2 (ja) * | 1994-04-01 | 2002-04-22 | ソニー株式会社 | 信号符号化方法及び装置、信号記録媒体、信号伝送方法、並びに信号復号化方法及び装置 |
US5602961A (en) | 1994-05-31 | 1997-02-11 | Alaris, Inc. | Method and apparatus for speech compression using multi-mode code excited linear predictive coding |
US5692102A (en) | 1995-10-26 | 1997-11-25 | Motorola, Inc. | Method device and system for an efficient noise injection process for low bitrate audio compression |
WO1999063522A1 (de) * | 1998-05-29 | 1999-12-09 | Siemens Aktiengesellschaft | Verfahren und anordnung zur sprachcodierung |
JP4242970B2 (ja) * | 1998-07-09 | 2009-03-25 | 富士通株式会社 | データ圧縮方法及びデータ圧縮装置 |
US6445686B1 (en) | 1998-09-03 | 2002-09-03 | Lucent Technologies Inc. | Method and apparatus for improving the quality of speech signals transmitted over wireless communication facilities |
US6236960B1 (en) * | 1999-08-06 | 2001-05-22 | Motorola, Inc. | Factorial packing method and apparatus for information coding |
WO2001061994A1 (en) | 2000-02-18 | 2001-08-23 | Intelligent Pixels, Inc. | Very low-power parallel video processor pixel circuit |
JP2001318693A (ja) | 2000-05-08 | 2001-11-16 | Mitsubishi Electric Corp | 伝送装置および伝送方法 |
US6688806B2 (en) | 2001-08-21 | 2004-02-10 | Huan-Chang Kuan | Jump-proof manhole-handhole |
US6662154B2 (en) | 2001-12-12 | 2003-12-09 | Motorola, Inc. | Method and system for information signal coding using combinatorial and huffman codes |
US6700513B2 (en) * | 2002-05-14 | 2004-03-02 | Microsoft Corporation | Method and system for compressing and decompressing multiple independent blocks |
US20040141572A1 (en) | 2003-01-21 | 2004-07-22 | Johnson Phillip Marc | Multi-pass inband bit and channel decoding for a multi-rate receiver |
US7706481B2 (en) | 2004-08-20 | 2010-04-27 | Broadcom Corporation | Method and system for improving reception in wired and wireless receivers through redundancy and iterative processing |
US7830921B2 (en) * | 2005-07-11 | 2010-11-09 | Lg Electronics Inc. | Apparatus and method of encoding and decoding audio signal |
US7230550B1 (en) | 2006-05-16 | 2007-06-12 | Motorola, Inc. | Low-complexity bit-robust method and system for combining codewords to form a single codeword |
WO2008026145A2 (en) * | 2006-08-30 | 2008-03-06 | Koninklijke Philips Electronics N.V. | Device and method for coding a data signal and device and method for decoding a data signal |
US7461106B2 (en) * | 2006-09-12 | 2008-12-02 | Motorola, Inc. | Apparatus and method for low complexity combinatorial coding of signals |
US20100088090A1 (en) | 2008-10-08 | 2010-04-08 | Motorola, Inc. | Arithmetic encoding for celp speech encoders |
US7978101B2 (en) | 2009-10-28 | 2011-07-12 | Motorola Mobility, Inc. | Encoder and decoder using arithmetic stage to compress code space that is not fully utilized |
-
2009
- 2009-10-28 US US12/607,439 patent/US8207875B2/en active Active
-
2010
- 2010-10-18 CN CN201080042599.5A patent/CN102577132B/zh active Active
- 2010-10-18 BR BR112012010248A patent/BR112012010248A2/pt not_active IP Right Cessation
- 2010-10-18 EP EP10776455A patent/EP2462697A1/en not_active Withdrawn
- 2010-10-18 KR KR1020127010946A patent/KR101353216B1/ko active IP Right Grant
- 2010-10-18 WO PCT/US2010/053016 patent/WO2011056397A1/en active Application Filing
-
2012
- 2012-05-25 US US13/481,608 patent/US8890723B2/en active Active
-
2014
- 2014-11-14 US US14/541,794 patent/US9484951B2/en active Active
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1262816A (zh) * | 1998-03-23 | 2000-08-09 | 皇家菲利浦电子有限公司 | 对信息信号的算术编码与解码 |
CN1744475A (zh) * | 2004-08-20 | 2006-03-08 | 美国博通公司 | 通过冗余和迭代处理进行信号处理的方法和*** |
Non-Patent Citations (1)
Title |
---|
Coding unconstrained fcb excitation using combination and huffman codes;MITTAL U ER AL.;《Speech Coding,2002,IEEE Work Shop Proceedings》;20021006;第129-131页 * |
Also Published As
Publication number | Publication date |
---|---|
WO2011056397A1 (en) | 2011-05-12 |
US20110096830A1 (en) | 2011-04-28 |
KR20120069752A (ko) | 2012-06-28 |
EP2462697A1 (en) | 2012-06-13 |
US20120235840A1 (en) | 2012-09-20 |
US8207875B2 (en) | 2012-06-26 |
BR112012010248A2 (pt) | 2016-03-29 |
US20150109152A1 (en) | 2015-04-23 |
KR101353216B1 (ko) | 2014-01-17 |
US9484951B2 (en) | 2016-11-01 |
CN102577132A (zh) | 2012-07-11 |
US8890723B2 (en) | 2014-11-18 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN102577132B (zh) | 用于阶乘脉冲编码器的算术编码 | |
US7978101B2 (en) | Encoder and decoder using arithmetic stage to compress code space that is not fully utilized | |
CN101199121B (zh) | 编码输入信号方法和编码器/译码器 | |
CN101223582B (zh) | 一种音频编码方法、音频解码方法及音频编码器 | |
CN101223570B (zh) | 获得用于数字媒体的高效编码的频带的频率分段 | |
EP2267698B1 (en) | Entropy coding by adapting coding between level and run-length/level modes. | |
CN1954642B (zh) | 多信道合成器及产生多信道输出信号方法 | |
KR101226566B1 (ko) | 심볼을 인코딩하기 위한 방법, 심볼을 디코딩하기 위한 방법, 송신기로부터 수신기로 심볼을 전송하기 위한 방법, 인코더, 디코더 및 송신기로부터 수신기로 심볼을 전송하기 위한 시스템 | |
US20020049586A1 (en) | Audio encoder, audio decoder, and broadcasting system | |
CN101223573A (zh) | 在自适应编码和解码中选择性地使用多个熵模型 | |
US7644001B2 (en) | Differentially coding an audio signal | |
CN103650037A (zh) | 采样率可分级的无损音频编码 | |
WO2015059154A1 (en) | Audio encoder and decoder | |
WO2002091588A1 (fr) | Procede et dispositif de codage/ modulation differentielle par impulsions et codage adaptatifs en sous-bandes, systeme de transmission sans fil, procede et dispositif de decodage/ modulation differentielle par impulsions et codage adaptatifs en sous-bandes et systeme de reception sans fil | |
CN100370828C (zh) | 用于将参数值映像到码字索引的自适应方法和*** | |
USRE38593E1 (en) | Adaptive transform coding system, adaptive transform decoding system and adaptive transform coding/decoding system | |
CN101562015A (zh) | 音频处理方法及装置 | |
JPH10276095A (ja) | 符号化器及び復号化器 | |
CN102801427B (zh) | 源信号变速率格矢量量化的编解码方法和*** | |
JP2638208B2 (ja) | 適応変換符号化復号化の方法及び装置 |
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 | ||
C41 | Transfer of patent application or patent right or utility model | ||
C56 | Change in the name or address of the patentee | ||
CP01 | Change in the name or title of a patent holder |
Address after: Illinois State Patentee after: MOTOROLA MOBILITY LLC Address before: Illinois State Patentee before: MOTOROLA MOBILITY, Inc. |
|
TR01 | Transfer of patent right |
Effective date of registration: 20160401 Address after: California, USA Patentee after: Google Technology Holdings LLC Address before: Illinois State Patentee before: MOTOROLA MOBILITY LLC |