CN101165778A - 音频信号的双变换编码 - Google Patents
音频信号的双变换编码 Download PDFInfo
- Publication number
- CN101165778A CN101165778A CNA2007101671272A CN200710167127A CN101165778A CN 101165778 A CN101165778 A CN 101165778A CN A2007101671272 A CNA2007101671272 A CN A2007101671272A CN 200710167127 A CN200710167127 A CN 200710167127A CN 101165778 A CN101165778 A CN 101165778A
- Authority
- CN
- China
- Prior art keywords
- coefficient
- subframe
- frame
- frequency
- conversion coefficient
- 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
Links
- 230000005236 sound signal Effects 0.000 title claims abstract description 43
- 238000013139 quantization Methods 0.000 claims abstract description 122
- 238000000034 method Methods 0.000 claims abstract description 108
- 238000006243 chemical reaction Methods 0.000 claims description 135
- 238000005070 sampling Methods 0.000 claims description 28
- 238000011002 quantification Methods 0.000 claims description 24
- 238000009527 percussion Methods 0.000 claims description 21
- 230000009466 transformation Effects 0.000 claims description 19
- 230000003044 adaptive effect Effects 0.000 claims description 11
- 238000009826 distribution Methods 0.000 claims description 7
- 238000010606 normalization Methods 0.000 claims description 7
- 230000015572 biosynthetic process Effects 0.000 claims description 6
- 238000003491 array Methods 0.000 claims description 5
- 230000008569 process Effects 0.000 description 22
- 239000011159 matrix material Substances 0.000 description 19
- 238000001228 spectrum Methods 0.000 description 14
- 238000012545 processing Methods 0.000 description 12
- 230000005540 biological transmission Effects 0.000 description 6
- 230000008859 change Effects 0.000 description 6
- 238000005516 engineering process Methods 0.000 description 6
- 230000007704 transition Effects 0.000 description 5
- 230000008901 benefit Effects 0.000 description 4
- 230000000903 blocking effect Effects 0.000 description 4
- 238000010586 diagram Methods 0.000 description 4
- 230000006870 function Effects 0.000 description 4
- 230000002650 habitual effect Effects 0.000 description 3
- 229940074869 marquis Drugs 0.000 description 3
- VBUNOIXRZNJNAD-UHFFFAOYSA-N ponazuril Chemical compound CC1=CC(N2C(N(C)C(=O)NC2=O)=O)=CC=C1OC1=CC=C(S(=O)(=O)C(F)(F)F)C=C1 VBUNOIXRZNJNAD-UHFFFAOYSA-N 0.000 description 3
- 230000003595 spectral effect Effects 0.000 description 3
- 230000008878 coupling Effects 0.000 description 2
- 238000010168 coupling process Methods 0.000 description 2
- 238000005859 coupling reaction Methods 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 230000001105 regulatory effect Effects 0.000 description 2
- 238000010845 search algorithm Methods 0.000 description 2
- 238000012546 transfer Methods 0.000 description 2
- 229910000746 Structural steel Inorganic materials 0.000 description 1
- 238000013459 approach Methods 0.000 description 1
- 238000004891 communication Methods 0.000 description 1
- 238000013461 design Methods 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 230000008030 elimination Effects 0.000 description 1
- 238000003379 elimination reaction Methods 0.000 description 1
- 239000012530 fluid Substances 0.000 description 1
- 230000006872 improvement Effects 0.000 description 1
- 238000011068 loading method Methods 0.000 description 1
- 230000005055 memory storage Effects 0.000 description 1
- 238000009828 non-uniform distribution Methods 0.000 description 1
- 230000009467 reduction Effects 0.000 description 1
- 230000004044 response Effects 0.000 description 1
- 230000000630 rising effect Effects 0.000 description 1
- 238000000926 separation method Methods 0.000 description 1
- 238000004088 simulation Methods 0.000 description 1
- 230000002123 temporal effect Effects 0.000 description 1
- LENZDBCJOHFCAS-UHFFFAOYSA-N tris Chemical compound OCC(N)(CO)CO LENZDBCJOHFCAS-UHFFFAOYSA-N 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/02—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 spectral analysis, e.g. transform vocoders or subband vocoders
- G10L19/0212—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 spectral analysis, e.g. transform vocoders or subband vocoders using orthogonal transformation
-
- 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/02—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 spectral analysis, e.g. transform vocoders or subband vocoders
- G10L19/022—Blocking, i.e. grouping of samples in time; Choice of analysis windows; Overlap factoring
Landscapes
- Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- Spectroscopy & Molecular Physics (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)
- Compression, Expansion, Code Conversion, And Decoders (AREA)
Abstract
披露了对音频进行编码和解码的方法、装置、和系统。对音频信号使用至少两个变换,每个变换具有不同的变换周期,以便在低频和高频得到更好的分辨率。选择和组合变换系数,使得数据率能够与单一变换相同。可以用快速点阵向量量化器对变换系数编码。量化器具有高速量化器和低速量化器。高速量化器包括截断点阵的方案。低速量化器具有基于表的搜索方法。低速量化器也可以包括基于表的索引方案。高速量化器进一步包括用于变换系数的量化索引的霍夫曼编码技术,以提高量化/编码效率。
Description
相关申请的交叉参考
本发明涉及同日申请的,标题为“快速点阵向量量化(Fast LatticeVector Quantization)”的,序列号为11/580,682(律师代理号199-0524US)的共同未决和共同拥有美国专利申请。所述申请的内容结合在此作为参考。
技术领域
本发明涉及对音频信号编码和解码,更具体地讲,涉及使用至少两次变换、编码和解码具有高达大约22kHz音频带宽的音频信号。
背景技术
在建立声音信号或从声音信号重放声音的许多系统中使用音频信号处理。随着数字信号处理器(DSP)的发展,许多信号处理功能是通过数字化进行的。为此,从声波建立音频信号,转换成数字数据,为希望的效果进行处理,转换回模拟信号,并作为声波再现。
模拟音频信号一般是通过话筒从声波(声音)产生的。以特定频率对模拟音频信号的振幅取样,并将振幅转换成代表振幅的数字。典型的取样频率是大约8kHz(即,每秒取样8000次),16kHz至196kHz,或这些频率之间的某个频率。根据数字化声音的质量,可以用8比特至128比特之间的某个比特数字化声音的每个取样。为了保持高质量的声音,可能要使用许多比特。例如,在最高端,为了以196kHz取样率和每个取样128比特表现一秒钟的声音,可以占用128比特×192kHz=24兆比特=3MB。为了表现3分钟(180秒)的歌曲,要用540MB。在低端,在典型的电话会议中,以8kHz对声音进行取样,且以每个取样8比特进行数字化,仍然要使用8kHz×8比特=64千比特/秒=8kB/秒。为了使数字化声音数据更容易使用、存储和传送,一般要对它们进行编码,以减小它们的大小而不降低它们的质量。当要再现它们的时侯,对它们进行解码以恢复原始的数字化数据。
已经提出了各种不同的方式对音频信号进行编码和解码,以减小它们的数字格式的大小。对信号进行编码和解码信号的处理器或处理模块通常被称为编解码器。一些是无损的,即,解码信号与原始信号严格地相同。一些是有损的,即,解码信号与原始信号有轻微的差别。有损编解码器通常可以取得比无损编解码器更大的压缩率。有损编解码器利用某些人类听觉的特征,抛弃某些人类不易察觉的声音。对于大多数人,只有在大约20Hz至大约20kHz之间的音频范围内的声音才是可察觉的。在这个频率范围之外的声音大多数人是不能听到的。因此,当为人类听众再现声音时,产生这个范围之外的声音并不能改善听到的声音质量。在用于人类听众的大多数音频系统中,不再现这个范围之外的声音。在典型的公共电话系统中,在两个电话机之间仅通信大约300Hz至大约3000Hz之内的频率。这减少了数据传输。
一种用于编码/解码音乐的流行方法是MP3编解码器中使用的方法。典型的音乐CD可以存储大约40分钟的音乐。当用MP3编码器以相当的声音质量为相同的音乐编码时,这种CD可以存储10-16倍以上的音乐。
结合在这里作为参考的、标题为“64kbit/s内7kHz音频编码”的ITU-T(国际电信同盟电信标准化部)建议G.722(1988)描述了一种64kbit/s内7kHz音频编码的方法。ISDN线路具有以64kbit/s传输数据的能力。这种方法实际上将通过使用ISDN线路的电话网络的音频的带宽从3kHz提高到7kHz。改善了听到的音频质量。尽管这种方法使得能够通过现有的电话网获得高质量的音频,但是,它一般需要来自电话公司的ISDN服务,这种服务比一般的窄带电话服务更贵。
一种建议在电信中使用的更新的方法是,结合在这里作为参考的,标题为“用于低帧损系统中免提操作的24和32kbit/s编码(Coding at 24and 32kbit/s for hands-free operation in system with low frameloss)”的ITU-T建议G.722.1(1999)。这个建议说明了一种数字宽带编码器算法,这种算法提供了50Hz至70kHz的音频带宽,操作在大大低于G.722的24kbit/s或32kbit/s的比特率。以这种数据率,具有使用惯用模拟电话线路的惯用调制解调器的电话可以发送宽带音频信号。因此,只要两端的电话机能够执行G.722.1中所述的编码/解码,大多数现有电话网都可以支持宽带对话。
发明内容
希望能有全频声音通过电话,从而使得就声音质量而言,电话对话几乎与面对面对话一样。希望有一种能够改善声音质量,或减小数据负担,或既能改善声音质量又能减小数据负担的方法。
本发明披露了提高了音频编解码器的效率,即,提高了声音质量和减小了传输信道或存储介质中的数据负担的系统、方法、和装置。本发明的一个实施例对输入音频信号使用了至少两个MLT(调制重迭变换(Modulated Lapped Transform))。一个低频MLT使用大约20ms的帧,和一个高频MLT使用四个各为大约5ms的帧。低频MLT可以与G.722.1中说明的MLT相同,而高频MLT在高频下提供了更高的分辨率。与单变换相比,双变换产生了更好的高频的瞬变再现。
可以将MLT系数分组成子帧,然后组成不同长度的组。子帧的每个振幅包络可以由数标量量化器来量化,MLT系数可以用多维点阵向量来量化。根据本发明的各个实施例的快速点阵向量量化器提供了高于标量量化器的量化效率和精度,而且没有点阵向量量化通常所具有的问题。本发明的各个实施例进一步通过使用一个用于高速量化和一个用于低速量化的两个不同的量化方案,改善了量化和编码。
本发明的各个实施例通过动态地确定是否使用霍夫曼编码技术为振幅包络和系数索引编码而进一步改进了量化编码。对于四个组中的每一组,只有在能够减少编码组内的所有系数索引所需的总比特数的时侯,才使用霍夫曼编码技术。否则,不使用霍夫曼编码技术以减少不必要的计算成本。
根据本发明的各个实施例,提供了一种编码音频信号的方法。该方法包括将音频信号的时域取样的帧变换成频域,形成变换系数的长帧。该方法进一步包括将音频信号的时域取样的帧的n个部分变换到频域,形成变换系数的n个短帧。时域取样的帧具有第一长度(L),时域取样的帧的每个部分具有第二长度(S),其中L=n×S,并且n是整数。该方法进一步包括对变换系数的长帧的变换系数集和变换系数的n个短帧的变换系数集分组,以形成变换系数的组合集。该方法进一步包括量化变换系数的组合集,形成用于变换系数的量化组合集的量化索引。该方法进一步包括对变换系数的量化组合集的量化索引进行编码。
根据本发明的各个实施例,提供了一种对编码比特流进行解码的方法。该方法包括对编码比特流的一部分进行解码,以形成多个变换系数组的量化索引。该方法进一步包括对多组变换系数的量化索引去量化。该方法进一步包括将变换系数分离成长帧系数集和n个短帧系数集。该方法进一步包括将长帧系数集从频域转换到时域,形成长时域信号。该方法进一步包括将n个短帧系数集从频域转换到时域,形成一系列的n个短时域信号。长时域信号具有第一长度(L),每个短时域信号具有第二长度(S),其中L=n×S,并且n是整数。该方法进一步包括组合长时域信号和n个短时域信号的序列,以形成音频信号。
还提供一种其上记录有程序的计算机可读介质,该程序可以由机器执行,以执行这里所述的任何方法。
根据本发明的各个实施例,提供了一种包括编码器和解码器的22kHz编解码器。编码器包括第一变换模块,用于将音频信号的时域取样的帧变换到频域,以形成变换系数的长帧;和第二变换模块,用于将音频信号的时域取样的帧的n个部分变换到频域,以形成变换系数的n个短帧。时域取样的帧具有第一长度(L),时域取样的帧的每个部分具有第二长度(S),其中L=n×S,并且n是整数。该编码器进一步包括组合器模块,用于组合变换系数的长帧的变换系数集,和变换系数的n个短帧的变换系数集,以形成变换系数的组合集。该编码器进一步包括量化器模块,用于量化变换系数的组合集,以形成变换系数的量化组合集的量化索引。该编码器进一步包括编码模块,用于对变换系数的量化组合集的量化索引编码。
解码器包括解码模块,用于对编码比特流的一个部分进行解码,形成多组变换系数的量化索引。该解码器进一步包括去量化模块,用于对多组变换系数的量化索引去量化。该解码器进一步包括分离器,用于将变换系数分离成长帧系数集和n个短帧系数集。解码器进一步包括第一逆变换模块,用于将长帧系数集从频域转换到时域,以形成长时域信号。该解码器进一步包括第二逆变换模块,用于将n个短帧系数集从频域转换到时域,以形成一系列的n个短时域信号。该解码器进一步包括求和模块,用于组合长时域信号和一系列n个短时域信号。
根据本发明的各个实施例,提供了一种会议终端(endpoint)。终端包括如上所述的22kHz编解码器。该终端进一步包括音频I/O接口,至少一个话筒,和至少一个扬声器。在一些实施例中,该终端也可以包括视频I/O接口,至少一个摄像机,和至少一个显示装置。
附图说明
通过结合附图阅读以下对优选实施例的详细说明,可以更好地理解本发明,其中:
图1示出了根据本发明一个实施例的示例双变换方案;
图2A示出了根据本发明一个实施例的示例系数分组方案;
图2B示出了根据本发明另一个实施例的示例系数分组方案;
图3A示出了根据本发明一个实施例的示例编码比特流;
图3B示出了根据本发明一个实施例的标记比特的示例结构;
图3C示出了根据本发明一个实施例的变换系数的示例结构;
图3D示出了根据本发明另一个实施例的变换系数的示例结构;
图4示出了根据本发明一个实施例的编码处理过程的示例处理流程图;
图5示出了根据本发明一个实施例的解码处理过程的示例处理流程图;
图6示出了根据本发明一个实施例的编码器的示例方框图;
图7示出了根据本发明一个实施例的解码器的示例方框图;
图8示出了根据本发明一个实施例的会议系统的示例方框图。
具体实施方式
本发明的各个实施例利用革新的编码器和解码器扩大和改善了音频信号处理的性能。广义地讲,编码处理包括变换处理、量化处理、和编码处理。本发明的各个实施例在三个处理中全部做出了改进。
在大多数现有技术的音频信号处理中,音频信号帧具有固定的长度。帧长度越短,延迟越短。对于高频,较短的帧长度也提供了较好的时间分辨率和更好的性能。但是,短帧提供了较差的频率分辨率。与此相反,帧长度越长,延迟越长。但是,在低频,较长的帧提供较好的频率分辨率和更好的性能,以分辨音调谐波。在一种折衷方案中,帧长度一般在20ms的范围内,这也是G.722.1建议中采用的帧长度。但是,折衷方案只是一种妥协。对整个音频频谱使用单一固定音频帧长度并不适合。
根据本发明的各个实施例,使用了至少两个不同的音频取样帧长度。一个具有较长的帧长度,并且设计用于更好地表现低频频谱;另一个具有较短的帧长度,用于高频信号,和在高频提供更好的分辨率。两种信号帧的组合提高了声音质量。这可以将频谱响应扩大到整个人类音频频谱,例如,大约20Hz至大约22kHz。
根据本发明的一个实施例,比特分配可以是自适应和动态的,而不是使用极少种类内的预定比特分配。在变换系数量化的过程中,可使用动态比特分配。因此,能够最好地使用可用比特。
使用至少两个变换,要量化和编码的变换系数远比使用一个单一变换时的多。在本发明的一个实施例中,可以使用快速点阵向量量化法来代替简单的标量量化法。向量量化一般比简单的标量量化法的效率高。更具体地讲,点阵向量量化(LVQ)比惯用的已知LBG(Linde,Buzo,and Gray)向量量化的优越之处在于,由于LVQ码本的规则结构,LVQ具有相对简单的量化处理过程,并且能够节省所需的存储器。但是,由于几种限制,点阵向量量化尚未在实时语音和音频-编码中广泛地应用,这几种限制包括:在如何截断给定速率的点阵以建立与输入源的概率密度函数(PDF)匹配的LVQ码本,如何快速地将LVQ码本的码向量(点阵点)翻译成它们的索引,和如何量化位于截断点阵外面的源向量(“局外者(outlier)”)方面存在的困难。
根据本发明的快速LVQ(FLVQ)避免了上述限制。FLVQ包括高速量化器(HRQ)和低速量化器(LRQ)。在量化变换系数中,量化器不是定标点阵码本而是定标系数,以便使用一种快速搜索算法,然后在解码器再换算重构的系数。通过将局外者放回到用作LVQ码本的截断点阵内,这种定标系数的方法也可以解决“局外者”问题。诸如人类话音或音频音乐之类的输入源的PDF是从各种不同声源的大的集合中产生的。一旦消除了LVQ的限制,在本发明的实施例中,FLVQ的使用提供了比现有技术标量量化更高的量化效率。
在本发明的另一个实施例中,通过动态霍夫曼编码可以进一步提高量化和编码效率。众所周知,作为一种熵编码方法的霍夫曼编码法在源非均匀分布时最为有用。变换系数一般是非均匀分布的;因此,使用霍夫曼编码法可以提高编码效率。在本发明的这个实施例中,在霍夫曼编码法减少比特需求时,可以将霍夫曼编码法用于编码振幅包络和变换系数的量化索引。在确定是否使用霍夫曼编码法时,将使用霍夫曼编码法的比特的总数与可用于范数或变换系数的量化的比特数比较。只有存在节省时,才可以使用霍夫曼编码法。这种方式,使用了最佳编码方法。
双变换
在一个实施例中,使用了两种大小的帧,一个被称为长帧,另一个被称为短帧。为了简明,本发明称之为双变换,尽管应当知道可以使用两种以上的帧大小。
参考图1,对音频信号102进行取样和数字化。在这个特定的例子中,以48kHz的频率对音频信号取样。但是,也可以使用其他取样频率。在这个例子中,长帧L 104具有大约20ms的帧长度。对于每个长帧L 104,具有多个短帧S1 106,S2 107,S3 108,和S4 109。在这个例子中,每个短帧106,107,108和109具有大约5ms的帧长度;因此,每个长帧104具有大约960个取样(48kHz×0.02s=960),而每个短帧(106,107,108,109)具有大约240个取样(48kHz×0.005s=240)。尽管在本例中示出了四个短帧106,107,108和109,但是也可以有更少或更多数量的短帧;例如,短帧的数量可以是2,3,4,5,等等。
将这些帧104,106,107,108和109从时域变换到频域。例如,可以如同ITU-T建议G.722.1中所述的那样,可以利用MLT(调制重迭变换)对它们进行变换。为了简明,本发明称之为MLT变换,尽管也可以使用其他类型的变换,例如,FFT(快速傅里叶变换)和DCT(离散余弦变换),等等。
该变换产生图2A中所示的MLT系数集212,222,224,226,和228。每个短帧MLT系数集222,224,226,和228具有大约240个系数,并且每个系数与相邻的系数具有大约100Hz的间隔。对于长帧212,大约有960个MLT系数,或每25Hz一个系数。可以组合这些系数以形成1920个MLT系数的单一集。这个系数集可以捕获声音的低频特性和高频特性。由于22kHz的编码带宽,可以忽略大约22kHz以上频率的MLT变换系数。
长变换十分适合于捕获较低的频率。短变换很适于捕获较高的频率。因此,并不是所有系数都携带再现被变换的声音信号的相同的值。在一个实施例中,可以忽略一些系数。每个短帧MLT系数集具有大约240个系数。每个系数与它的相邻系数间隔大约100Hz。在一个实施例中,可以忽略低于大约6800Hz和高于大约22,000Hz的系数。因此,每个短帧可以保留152个系数,并且四个短帧的系数的总数是608个。对于长帧,在一个实施例,由于长帧被用来表现较低频率的信号,所以可以保留低于大约7kHz频率的系数,并且可以将高于大约7kHz频率的、来自长变换的系数舍弃。因此,较低的频率可以有280个系数。因此,在一个实施例中,对于高达22kHz左右的音频频谱,总系数可以是888(608+280)个。
在量化和编码之前,可以将系数分组成子帧(sub-frame)并组成组。在这个实施例中“子帧(sub-frame)”可以与G.722.1方法中的“区域(region)”相同。将一个子帧作为一个单元,计算振幅包络,赋予可变比特分配,和进行进一步的量化和编码。一个组包括许多具有一个频谱范围内的相同长度的子帧。一个组内的子帧可以具有相同的特性,并且可以用相同的方式量化或编码。但是,对于不同组中的子帧,量化和编码的方法可能是不同的。与现有技术方法中的区域不同,子帧可以具有不同的大小,组也可以是不同大小的,从而,在可以减少量化和编码的过程中,不同的子帧和组可以更接近地表示频谱和比特需求。
在当前的实施例中,从0Hz到22kHz的整个音频频谱可以划分为四个组。第一组覆盖从大约0Hz到大约4kHz的频率。第一组具有10个子帧,每个子帧具有16个MLT系数。第一组中的总系数是160个系数,所有这些系数都来自于长帧变换。第二组包括从大约4kHz到大约7kHz的频谱。第二组具有5个子帧,每个子帧具有24个系数,所以第二组具有总共120个系数。这些系数来自于长帧变换。第三组覆盖从大约7kHz(或在一些实施例中,大约6.8kHz)到大约14kHz的频谱。在它们的边界上,长帧变换和短帧变换可以交迭,以使过渡更为平顺。第三组具有9个子帧,每个子帧具有32个系数,所以第三组总共具有288个系数。这些系数来自于四个短帧变换。第四组覆盖从大约14kHz到大约22kHz的频谱。这个组具有10个子帧,每个子帧具有32个系数,所示总共有320个系数。总之,在本实施例中,有888个系数要量化和编码。
在边界频率附近的250Hz的频率区域上,可以利用一个三角窗口在长MLT和短MLT系数之间进行重叠相加(OLA)。对于长MLT,用下坡斜率乘从6775Hz开始的10个系数。对于短MLT,用上坡斜率乘从6800Hz开始的2个系数。
在根据上述方案将系数分组到子帧并组成组时,可以根据频率按从低频到高频的顺序排列这些系数。例如,可以将用于相同频率的系数分组到一起:来自L的系数后面跟随着来自S1、S2、S3、和S4的系数,然后又是来自L的更高频率的系数,并重复上述排列。也允许和接受其他排列或顺序。例如,可以将来自相同变换的系数分组到一起,即,首先排列所有来自L变换的系数,然后是来自S1变换,S2、S3、和S4变换的系数。
已经发现这里的排列或顺序可能影响后面的量化或编码。在一个实施例中,以下的排列似乎在后面要说明的量化和编码方案中一般能够给出好的结果。来自长帧变换的系数根据频率从低到高地排列到第一和第二组。来自四个短变换的系数一般不根据它们的频率排列,但是并不是严格地根据频率顺序排列。首先,选择8个来自第一短帧变换的系数,并根据频率顺序排列。然后,选择来自第二短帧变换的相同频率的8个系数。同样地,选择来自第三短帧变换的相同频率的系数。接下来,选择来自第四短帧变换的系数。此后,我们返回到第一短帧变换S1,选择下8个系数,并且重复上述过程,直到选择了来自短帧变换的全部系数。
使用上述双变换和分组,得到4个组和34个子帧,每个子帧具有16、24或32个系数。与仅能够变换低频或高频,或不能得到精细的分辨率的现有技术方法的单一变换不同,本发明的各个实施例在音频频谱的低频和高频都能够提供好的分辨率。计算负担仅稍大于单一的短帧变换(例如,5ms帧长度,48kHz取样速率),在22kHz将频谱范围扩大到全音频频谱。这些系数代表全音频频谱。可以用各种量化和编码方法对这些系数进行量化和编码,例如,使用G.722.1中所述的方法。如果使用G.722.1方法,首先对每个子帧的振幅包络进行计算、标量量化、和霍夫曼编码。振幅包络也用于分配用于根据子帧分配的类别编码每个子帧内的系数索引的比特。然后,根据这些系数索引的类别量化它们。
上述方案可用于语音和一般音乐。根据另一个实施例,打击乐器类型的信号可能出现在音频信号中。根据诸如高达大约10kHz的频率区域上的长MLT系数的平均梯度斜度,最大长MLT系数的位置,和长MLT系数的零交叉率(ZCR)之类的特性,可以检测到打击乐器类型信号。打击乐器类型信号的例子包括,但不限于,响板和三角铁等产生的声音。如果检测到这种打击乐器类型信号,如图2B中所示的那样,可以将较长的帧变换系数的边界频率调节到大约800Hz(不是7kHz)。这种调节有利地减小了前回声现象。因此,在这个实施例中,长帧变换系数232可以包括大约0Hz到大约800Hz范围内的频率,而短帧变换系数242、244、246、和248可以包括大约600Hz到大约22kHz范围中的频率。频率的叠加有助于提供平滑的过渡。
可以在边界频率附近的250Hz的频率区域上利用三角窗口在长MLT和短MLT系数之间执行OLA。对于长MLT,用下坡斜率乘在575Hz开始的10个系数。对于短MLT,用上坡斜率乘在600Hz开始的2个系数。
将以25Hz间隔为中心的较低的400个长MLT系数划分为20个组,每个组有20个系数。如下计算每个组中的频谱能量:
其中x是长MLT系数,i是组号,和THREQ是安静(quiet)阈值,按照经验,可以选择安静阈值为THREQ=7000。
当前帧与前一个帧之间的组能量比率的自然对数REi如下计算:
其中n是帧数。
上升沿的平均梯度斜度Rampup如下计算:
下降沿的平均梯度斜度Rampdown如下计算:
如果满足以下条件:(1)Ramp>THRERAMP,其中THRERAMP是斜度的预定阈值,并等于1.5;(2)第一长MLT系数,x0,是长MLT系数的最大值;和(3)零交叉率,ZCR,小于预定阈值,THREZCR=0.1,那么检测到打击乐器类型信号。
如果检测到打击乐器类型信号,那么当前帧和后面两个帧的边界频率被调节到大约800Hz。如果在下一个帧n+1或n+2中,条件Rampdown>1是真,那么编码器用调节的边界频率工作8个帧。否则,编码器在帧n+3返回到7kHz的边界频率。
在打击乐器类型信号模式中,当边界频率是大约800Hz时,将双MLT系数划分成具有不同长度的38个子帧。有代表低于800Hz频率的32个长MLT系数,它们被分离成两个16个系数的子帧。短MLT系数被划分成各种不同的组:第一组具有12个16系数子帧,并代表600Hz到5.4kHz的频率;第二组具有12个24系数子帧,并代表5.4kHz到12.6kHz的频率;第三组具有12个32系数子帧并代表12.6kHz到22.2kHz的频率。每个子帧包括相同短MLT的系数。
振幅包络
对子帧的振幅包络进行量化和分析,以确定是否要使用霍夫曼编码。可以将固定比特分配赋予每个振幅包络作为默认值和基准。如果使用霍夫曼编码技术能够比固定比特节省一些比特,则可以使用霍夫曼编码技术。为振幅包络设置霍夫曼标记,使得解码器能够知道是否使用霍夫曼编码。节省的比特数被存储在供剩余编码使用的比特中。否则,不使用霍夫曼编码,清除标记,和使用默认固定比特。
例如,在一个实施例中,给每个包络被分配5比特。用于包络的总默认比特是34×5=170比特。假设传输率是64kbit/s,那么每帧的比特数是64kbit/s×20ms=1280比特。在本例中,保留六个标记比特。因此,可用于编码系数索引的比特是1280-6-170=1104比特。
对于每个子帧,将振幅包络,也称为范数(norm),定义为子帧中MLT系数的RMS(均方根)值,和如下计算:
其中r是子帧的索引,M(r)是子帧的大小,可以是16、24或32,mlt(r,n)是第r个子帧的第n个MLT系数。在当前的例子中,
当1≤r≤10时,M(r)是16,所有这些子帧都在第一组中,0-4kHz;
当11≤r≤15时,M(r)是24,所有这些子帧都在第二组中,4kHz-7kHz;
当16≤r≤24时,M(r)是32,所有这些子帧都在第三组中,6.8kHz-14kHz;
当25≤r≤34时,M(r)是32,所有这些子帧都在第四组中,14kHz-22kHz;
rms(r)值用对数量化器计算和标量量化。下面的表1示出了对数量化器的码本。
表1
范数量化的40-级码本
索引 | 代码 | 索引 | 代码 | 索引 | 代码 | 索引 | 代码 |
0 | 217.0 | 10 | 212.0 | 20 | 27.0 | 30 | 22.0 |
1 | 216.5 | 11 | 211.5 | 21 | 26.5 | 31 | 21.5 |
2 | 216.0 | 12 | 211.0 | 22 | 26.0 | 32 | 21.0 |
3 | 215.5 | 13 | 210.5 | 23 | 25.5 | 33 | 20.5 |
4 | 215.0 | 14 | 210.0 | 24 | 25.0 | 34 | 20.0 |
5 | 214.5 | 15 | 29.5 | 25 | 24.5 | 35 | 2-0.5 |
6 | 214.0 | 16 | 29.0 | 26 | 24.0 | 36 | 2-1.0 |
7 | 213.5 | 17 | 28.5 | 27 | 23.5 | 37 | 2-1.5 |
8 | 213.0 | 18 | 28.0 | 28 | 23.0 | 38 | 2-2.0 |
9 | 212.5 | 19 | 27.5 | 29 | 22.5 | 39 | 2-2.5 |
第一子帧的振幅包络,rms(1),用5比特量化,并且将它的量化索引被直接发送到解码器。因此,仅有前32个码字被用于量化rms(1)。剩下的33个振幅包络用全部40个码字量化,并如下差分编码得到的索引。
差分索引=index(i+1)-index(i) 公式6
其中i=0,1,2,...。差分索引被约束到[-15,16]的范围。首先调节负的差分索引,然后调节正的差分索引。最后,对调节的差分索引使用霍夫曼编码。接下来,将用于霍夫曼编码的总比特与用于直接编码(即,不用霍夫曼编码)的比特数比较。如果总比特少于不用霍夫曼编码的,那么可以将霍夫曼代码在信道上发送。否则,量化索引的差分码将被发送到解码器。因此,用于编码的比特总是最少的。如果使用霍夫曼代码,那么设置霍夫曼标记,并将节省的比特返回到可用比特。例如,如果霍夫曼编码的总比特是160比特,那么节省170-160=10比特。可用比特成为10+1104=1114比特。
自适应比特分配方案
可以将一种基于变换系数的组的能量的自适应比特分配方案用于在子帧之间分配帧中的可用比特。在一个实施例中,可以使用一种改进的比特分配方案。与G.722.1中使用这方案不同,系数索引的自适应比特分配不是通过类别固定,而是通过在量化振幅包络的同时的分配处理过程来固定。可以是如下的比特分配。
设Remainder代表可用比特的总数,r(n)代表分配给第n子帧的比特数。在上述例子中,在对振幅包络使用霍夫曼编码时,Remainder=1114:
步骤0,将比特分配初始化到零,即,:r(n)=0,其中n=1,2,3,...N,其中N是子帧的总数。在上述例子中,N是34。
步骤1,找到子帧中具有最大RMS的子帧的索引n。
步骤2,将M(n)比特分配给第n子帧,即,r(n)=r(n)+M(n)。(在这里,M(n)是第n子帧中系数的数量)。
步骤3,用2除rms(n),并且Remainder=Remainder-M(n)。
步骤4,如果Remainder≥16,那么重复步骤1至3。否则停止。
在这样的比特分配之后,除了少数剩余比特之外的所有比特被分配到子帧。有一些子帧可能没有任何比特分配给它们,因为这些子帧的RMS值太小,即,从频谱的该部分没有对音频信号的可察觉的贡献。频谱的该部分可以忽略。
快速点阵向量量化
尽管可以使用现有技术的量化和编码方法来实现上述实施例以将处理过的音频信号扩大到全音频频谱,但是它们没能将全部潜力带给广大听众。使用现有技术的方法,比特率需求可能很高,这使得更难发送处理过的全谱频音频信号。可以使用根据本发明一个实施例的新的快速点阵向量量化(FLVQ)方案,这个方案提高了编码效率和减少了比特需求。FLVQ可以用于任何音频信号的量化和编码。
将MLT系数分别划分到16、24、和32个系数的子帧中。计算每个子帧的RMS,或,范数,即,子帧中系数的均方根值,并用量化的范数对系数进行归一化。用快速LVQ以8-维向量量化每个子帧中的归一化系数。快速点阵向量量化器包括高速量化器(HRQ)和低速量化器(LRQ)。高速量化器被设计用来以高于1比特/系数的速度量化系数,低速量化器用于以1比特/系数的速度量化。
点阵向量量化器最好是用于均匀分布源。点阵是点在N维欧几里得空间中的规则排列。在这种情况下,源(即,MLT系数)是非均匀的,因此,将熵编码-霍夫曼编码-应用于高速量化的索引,以改善HRQ的性能。
高速量化
高速量化可以基于用于点阵D8的Voronoi码,并且设计用来以2至6比特/系数的速度量化规格化MLT。这个子量化器的码本可以从点阵D8的有限区域构造,并且不存储在存储器中。码向量可以通过简单的代数方法产生。
点阵D8定义如下:
其中Z8是整数坐标的所有点组成的点阵。可以看到,D8是一个整数点阵,并且是由具有带有偶数和的整数坐标的点y=(y1,y2,y3,y4,y5,y6,y7,y8)组成的。例如,向量y=(-1,-1,0,2,1,-3,2,4)具有4的偶数和,因此y是D8的一个点阵点。
Conway和Sloane开发了用于某些已知点阵的快速量化算法,这些算法可以用于D8。但是,他们的算法假设了一个不能在实时音频编码中用作码本的无限点阵。也就是说,对于一个给定速度,他们的算法不能用于量化位于截断点阵区域外面的输入向量。
在一个实施例中,分别以2、3、4、和5比特/系数的速度量化归一化的MLT系数。在另一个实施例中,例如,在检测到打击乐器类型信号时,最大量化速度可以是6比特/系数。为了使给定速度下失真最小,可以截断并定标点阵D8。实际上,是定标系数而不是点阵码本,以便使用Conway等描述的快速搜索算法,并且,随后在解码器重新定标重构的系数。此外,可以开发一种量化“局外者”的快速方法。
对于给定速度R比特/维(1<R<7),可以如下量化每个8维系数向量x=(x1,x2,x3,x4,x5,x6,x7,x8):
1)将一个小偏移量α=2-6应用到向量x的每个分量,以避开截断Voronoi区域的边界上的任何点阵点,即x1=x-α,其中α=(2-6,2-6,2-6,2-6,2-6,2-6,2-6,2-6)。
2)用定标因数α定标向量x1:x2=αx1。对于给定的速度R,按经验选择最佳定标因数,并在下面的表2中示出。
表2
用于高速量化器的定标因数
R | α |
2 | 2/3 |
3 | 4/3 |
4 | 8/3 |
5 | 16/3 |
6 | 32/3 |
3)寻找最靠近定标向量x2的D8的点阵点v。这可以利用Conway和Sloane中所述的搜索算法进行。
4)假设v是以给定速度R截断的Voronoi区域中的码向量,并计算v的索引向量k=(k1,k2,k3,k4,k5,k6,k7,k8),其中o≤ki≤2R和i=1,2,...8。索引k由公式8给出:
k=(vG-1)modulo r r=2R 公式8
其中G是D8的生成器矩阵,并且定义如下:
和
5)利用Conway等描述的算法,从索引向量k计算码向量y,然后与v比较。如果y和v严格相同,那么k是对x2的最好码向量的索引,并在这里停止。否则,输入向量x2是一个局外者,并可以通过以下步骤量化。
6)用2除以向量x2:x2=x2/2。
7)寻找最靠近x2的D8的点阵点u,然后计算u的索引向量j。
8)从索引向量j寻找码向量y,然后将y与u比较。如果y与u不同,那么重复步骤6)至8)。否则,计算w=x2/16。由于MLT系数的归一化,执行少量的重复就可以在截断点阵中找到一个对局外者的码向量。
9)计算x2=x2+w。
10)找到最靠近x2的D8的点阵点u,然后计算u的索引向量j。
11)从索引向量j发现码向量y,然后将y与u比较。如果y和u严格相同,那么k=j并重复步骤9)至11)。否则,k是对x2的最好码向量,并停止。
高速量化器的解码过程可以如下进行:
1)根据给定的速度R,从索引向量k寻找码向量y。
2)用前面表2中给出的定标因数α给码向量y重新定标:y1=y/α。
3)将量化处理的步骤1)中使用的同样的偏移a加到重新定标的码向量y1:y2=y1+a,然后停止。
低速量化
可以提供基于所谓的旋转Gosset点阵RE8的低速量化器以1比特/系数的速度量化归一化的MLT系数。
在低速量化器中,码本是由落在r=1的球面上的RE8的全部240个点,和不属于点阵RE8的16个附加点构成的。附加点是通过排列两个向量的分量(-2,0,0,0,0,0,0,0)和(2,0,0,0,0,0,0,0)得到的,并用于量化靠近原点的输入向量。为了开发快速索引算法,用一种特殊次序排列码本的码向量,并在下面的表3中示出。
对于每个8维系数向量x=(x1,x2,x3,x4,x5,x6,x7,x8),可以如下执行量化:
1)将偏移a=2-6应用到向量x的每个分量:x1=x-a,其中a=(2-6,2-6,2-6,2-6,2-6,2-6,2-6,2-6)。
2)用定标因数α定标向量x1:x2=αx1。将最佳定标因数经验地选择为α=1.25。
3)通过用递降顺序给x2的分量重新排序获得新的向量x3。
4)在表4中找到就均方根误差(MSE)而言的x3的最匹配的向量l。下面表4中给出的向量被称为码向量的引导部分(leader),并且码本中的任何码向量都可以通过它的引导部分的排列产生。
5)通过以原始顺序给l的分量重新排序,得到最好码向量y。
6)在下面的表5中找到l的标记向量,然后通过以原始顺序给标记向量的分量重新排列,得到向量z。标记向量定义如下:如果引导部分是由-2,2和0组成的,那么用1指示-2和2,并且用0指示0;如果引导部分是由-1和1组成的,那么用1指示-1,并用0指示1。
7)在下面的表6中寻找有关引导部分l索引偏移K。
8)如果引导部分l是(2,0,0,0,0,0,0,-2)和码向量y具有索引低于分量-2的索引的分量2,那么将偏移K调节为:K=K+28。
9)计算向量点积i=zpT,其中p=(1,2,4,8,16,32,64,128)。
10)在表7中从i找到有关码向量y的索引增量j。
11)计算码向量y的索引k:k=K+j,然后停止。
在低速量化器的解码过程中可以采用以下步骤:
1)在表3中从接收的索引k找到码向量y。
2)通过定标因数α=1.5给码向量y重新定标:y1=y/α。
3)将解码过程的步骤1)使用的相同的偏移a加到重新定标的码向量y1:y2=y1+a,然后停止。
表3
低速量化器(LRQ)的码本
索引 | 码字 | 索引 | 码字 | 索引 | 码字 | 索引 | 码字 |
0 | -2 0 0 0 0 0 0 0 | 64 | 0 0 0-2 0 0 2 0 | 128 | -1-1 1 1 1 1 1 1 | 192 | 1 1 1-1 1-1-1-1 |
1 | 0-2 0 0 0 0 0 0 | 65 | 0 0 0-2 0 0 0 2 | 129 | -1 1-1 1 1 1 1 1 | 193 | 1 1 1-1-1 1-1-1 |
2 | 0 0-2 0 0 00 0 | 66 | 0 0 0 0-2 2 0 0 | 130 | -1 1 1-1 1 1 1 1 | 194 | 1 1 1-1-1-1 1-1 |
3 | 0 0 0-2 0 0 0 0 | 67 | 0 0 0 0-2 0 2 0 | 131 | -1 1 1 1-1 1 1 1 | 195 | 1 1 1-1-1-1-1 1 |
4 | 0 0 0 0-2 0 0 0 | 68 | 0 0 0 0-2 0 0 2 | 132 | -1 1 1 1 1-1 1 1 | 196 | 1 1-1 1 1-1-1-1 |
5 | 0 0 0 0 0-2 0 0 | 69 | 0 0 0 0 0-2 2 0 | 133 | -1 1 1 1 1 1-1 1 | 197 | 1 1-1 1-1 1-1-1 |
6 | 0 0 0 0 0 0-2 0 | 70 | 0 0 0 0 0-2 0 2 | 134 | -1 1 1 1 1 1 1-1 | 198 | 1 1-1 1-1-1 1-1 |
7 | 0 0 0 0 0 0 0-2 | 71 | 0 0 0 0 0 0-2 2 | 135 | 1-1-1 1 1 1 1 1 | 199 | 1 1-1 1-1-1-1 1 |
8 | 2 0 0 0 0 0 0 0 | 72 | 2-2 0 0 0 0 0 0 | 136 | 1-1 1-1 1 1 1 1 | 200 | 1 1-1-1 1 1-1-1 |
9 | 0 2 0 0 0 0 0 0 | 73 | 2 0-2 0 0 0 0 0 | 137 | 1-1 1 1-1 1 1 1 | 201 | 1 1-1-1 1-1 1-1 |
10 | 0 0 2 0 0 0 0 0 | 74 | 2 0 0-2 0 0 0 0 | 138 | 1-1 1 1 1-1 1 1 | 202 | 1 1-1-1 1-1-1 1 |
11 | 0 0 0 2 0 0 0 0 | 75 | 2 0 0 0-2 0 0 0 | 139 | 1-1 1 1 1 1-1 1 | 203 | 1 1-1-1-1-1 1 1 |
12 | 0 0 0 0 2 0 0 0 | 76 | 2 0 0 0 0-2 0 0 | 140 | 1-1 1 1 1 1 1-1 | 204 | 1 1-1-1-1 1-1 1 |
13 | 0 0 0 0 0 2 0 0 | 77 | 2 0 0 0 0 0-2 0 | 141 | 1 1 1-1 1 1 1 1 | 205 | 1 1-1-1-1 1 1-1 |
14 | 0 0 0 0 0 0 2 0 | 78 | 2 0 0 0 0 0 0-2 | 142 | 1 1-1 1-1 1 1 1 | 206 | 1-1 1 1 1-1-1-1 |
15 | 0 0 0 0 0 0 0 2 | 79 | 0 2-2 0 0 0 0 0 | 143 | 1 1-1 1 1-1 1 1 | 207 | 1-1 1 1-1 1-1-1 |
16 | -2-2 0 0 0 0 0 0 | 80 | 0 2 0-2 0 0 0 0 | 144 | 1 1-1 1 1 1-1 1 | 208 | 1-1 1 1-1-1 1-1 |
17 | -2 0-2 0 0 0 0 0 | 81 | 0 2 0 0-2 0 0 0 | 145 | 1 1-1 1 1 1 1-1 | 209 | 1-1 1 1-1-1-1 1 |
18 | -2 0 0-2 0 0 0 0 | 82 | 0 2 0 0 0-2 0 0 | 146 | 1 1 1-1-1 1 1 1 | 210 | 1-1 1-1 1 1-1-1 |
19 | -2 0 0 0-2 0 0 0 | 83 | 0 2 0 0 0 0-2 0 | 147 | 1 1 1-1 1-1 1 1 | 211 | 1-1 1-1 1-1 1-1 |
20 | -2 0 0 0 0-2 0 0 | 84 | 0 2 0 0 0 0 0-2 | 148 | 1 1 1-1 1 1-1 1 | 212 | 1-1 1-1 1-1-1 1 |
21 | -2 0 0 0 0 0-2 0 | 85 | 0 0 2-2 0 0 0 0 | 149 | 1 1 1-1 1 1 1-1 | 213 | 1-1 1-1-1-1 1 1 |
22 | -2 0 0 0 0 0 0-2 | 86 | 0 0 2 0-2 0 0 0 | 150 | 1 1 1 1-1-1 1 1 | 214 | 1-1 1-1-1 1-1 1 |
23 | 0-2-2 0 0 0 0 0 | 87 | 0 0 2 0 0-2 0 0 | 151 | 1 1 1 1-1 1-1 1 | 215 | 1-1 1-1-1 1 1-1 |
24 | 0-2 0-2 0 0 0 0 | 88 | 0 0 2 0 0 0-2 0 | 152 | 1 1 1 1-1 1 1-1 | 216 | 1-1-1-1-1 1 1 1 |
25 | 0-2 0 0-2 0 0 0 | 89 | 0 0 2 0 0 0 0-2 | 153 | 1 1 1 1 1-1-1 1 | 217 | 1-1-1-1 1-1 1 1 |
26 | 0-2 0 0 0-2 0 0 | 90 | 0 0 0 2-2 0 0 0 | 154 | 1 1 1 1 1-1 1-1 | 218 | 1-1-1-1 1 1-1 1 |
27 | 0-2 0 0 0 0-2 0 | 91 | 0 0 0 2 0-2 0 0 | 155 | 1 1 1 1 1 1-1-1 | 219 | 1-1-1-1 1 1 1-1 |
28 | 0-2 0 0 0 0 0-2 | 92 | 0 0 0 2 0 0-2 0 | 156 | -1-1-1-1 1 1 1 1 | 220 | 1-1-1 1 1 1-1-1 |
29 | 0 0-2-2 0 0 0 0 | 93 | 0 0 0 2 0 0 0-2 | 157 | -1-1-1 1-1 1 1 1 | 221 | 1-1-1 1 1-1 1-1 |
30 | 0 0-2 0-2 0 0 0 | 94 | 0 0 0 0 2-2 0 0 | 158 | -1-1-1 1 1-1 1 1 | 222 | 1-1-1 1 1-1-1 1 |
31 | 0 0-2 0 0-2 0 0 | 95 | 0 0 0 0 2 0-2 0 | 159 | -1-1-1 1 1 1-1 1 | 223 | 1-1-1 1-1-1 1 1 |
32 | 0 0-2 0 0 0-2 0 | 96 | 0 0 0 0 2 0 0-2 | 160 | -1-1-1 1 1 1 1-1 | 224 | 1-1-1 1-1 1-11 |
33 | 0 0-2 0 0 0 0-2 | 97 | 0 0 0 0 0 2-2 0 | 161 | -1-1 1-1-1 1 1 1 | 225 | 1-1-1 1-1 1 1-1 |
34 | 0 0 0-2-2 0 0 0 | 98 | 0 0 0 0 0 2 0-2 | 162 | -1-1 1-1 1-1 1 1 | 226 | 1 1-1-1-1-1-1-1 |
35 | 00 0-2 0-2 0 0 | 99 | 0 0 0 0 0 0 2-2 | 163 | -1-1 1-1 1 1-1 1 | 227 | 1-1 1-1-1-1-1-1 |
36 | 0 0 0-2 0 0-2 0 | 100 | 2 2 0 0 0 0 0 0 | 164 | -1-1 1-1 1 1 1-1 | 228 | 1-1-1 1-1-1-1-1 |
37 | 0 0 0-2 0 0 0-2 | 101 | 2 0 2 0 0 0 0 0 | 165 | -1-1 1 1-1-1 1 1 | 229 | 1-1-1-1 1-1-1-1 |
38 | 0 0 0 0-2-2 0 0 | 102 | 2 0 0 2 0 0 0 0 | 166 | -1-1 1 1-1 1-1 1 | 230 | 1-1-1-1-1 1-1-1 |
39 | 0 0 0 0-2 0-2 0 | 103 | 2 0 0 0 2 0 0 0 | 167 | -1-1 1 1-1 1 1-1 | 231 | 1-1-1-1-1-1 1-1 |
40 | 0 0 0 0-2 0 0-2 | 104 | 2 0 0 0 0 2 0 0 | 168 | -1-1 1 1 1 1-1-1 | 232 | 1-1-1-1-1-1-1 1 |
41 | 0 0 0 0 0-2-2 0 | 105 | 2 0 0 0 0 0 2 0 | 169 | -1-1 1 1 1-1 1-1 | 233 | -1 1 1-1-1-1-1-1 |
42 | 0 0 0 0 0-2 0-2 | 106 | 2 0 0 0 0 0 0 2 | 170 | -1-1 1 1 1-1-1 1 | 234 | -1 1-1 1-1-1-1-1 |
43 | 0 0 0 0 0 0-2-2 | 107 | 0 2 2 0 0 0 0 0 | 171 | -1 1-1-1-1 1 1 1 | 235 | -1 1-1-1 1-1-1-1 |
44 | -2 2 0 0 0 0 0 0 | 108 | 0 2 0 2 0 0 0 0 | 172 | -1 1-1-1 1-1 1 1 | 236 | -1 1-1-1-1 1-1-1 |
45 | -2 0 2 0 0 0 0 0 | 109 | 0 2 0 0 2 0 0 0 | 173 | -1 1-1-1 1 1-1 1 | 237 | -1 1-1-1-1-1 1-1 |
46 | -2 0 0 2 0 0 0 0 | 110 | 0 2 0 0 0 2 0 0 | 174 | -1 1-1-1 1 1 1-1 | 238 | -1 1-1-1-1-1-1 1 |
47 | -2 0 0 0 2 0 0 0 | 111 | 0 2 0 0 0 0 2 0 | 175 | -1 1-1 1-1-1 1 1 | 239 | -1-1 1 1-1-1-1-1 |
48 | -2 0 0 0 0 2 0 0 | 112 | 0 2 0 0 0 0 0 2 | 176 | -1 1-1 1-1 1-1 1 | 240 | -1-1 1-1 1-1-1-1 |
49 | -2 0 0 0 0 0 2 0 | 113 | 0 0 2 2 0 0 0 0 | 177 | -1 1-1 1-1 1 1-1 | 241 | -1-1 1-1-1 1-1-1 |
50 | -2 0 0 0 0 0 0 2 | 114 | 0 0 2 0 2 0 0 0 | 178 | -1 1-1 1 1 1-1-1 | 242 | -1-1 1-1-1-1 1-1 |
51 | 0-2 2 0 0 0 0 0 | 115 | 0 0 2 0 0 2 0 0 | 179 | -1 1-1 1 1-1 1-1 | 243 | -1-1 1-1-1-1-1 1 |
52 | 0-2 0 2 0 0 0 0 | 116 | 0 0 2 0 0 0 2 0 | 180 | -1 1-1 1 1-1-1 1 | 244 | -1-1-1 1 1-1-1-1 |
53 | 0-2 0 0 2 0 0 0 | 117 | 0 0 2 0 0 0 0 2 | 181 | -1 1 1 1 1-1-1-1 | 245 | -1-1-1 1-1 1-1-1 |
54 | 0-2 0 0 0 2 0 0 | 118 | 0 0 0 2 2 0 0 0 | 182 | -1 1 1 1-1 1-1-1 | 246 | -1-1-1 1-1-1 1-1 |
55 | 0-2 0 0 0 0 2 0 | 119 | 0 0 0 2 0 2 0 0 | 183 | -1 1 1 1-1-1 1-1 | 247 | -1-1-1 1-1-1-1 1 |
56 | 0-2 0 0 0 0 0 2 | 120 | 0 0 0 2 0 0 2 0 | 184 | -1 1 1 1-1-1-1 1 | 248 | -1-1-1-1 1 1-1-1 |
57 | 0 0-2 2 0 0 0 0 | 121 | 0 0 0 2 0 0 0 2 | 185 | -1 1 1-1-1-1 1 1 | 249 | -1-1-1-1 1-1 1-1 |
58 | 0 0-2 0 2 0 0 0 | 122 | 0 0 0 0 2 2 0 0 | 186 | -1 1 1-1-1 1-1 1 | 250 | -1-1-1-1 1-1-1 1 |
59 | 0 0-2 0 0 2 0 0 | 123 | 0 0 0 0 2 0 2 0 | 187 | -1 1 1-1-1 1 1-1 | 251 | -1-1-1-1-1 1 1-1 |
60 | 0 0-2 0 0 0 2 0 | 124 | 0 0 0 0 2 0 0 2 | 188 | -1 1 1-1 1 1-1-1 | 252 | -1-1-1-1-1 1-1 1 |
61 | 0 0-2 0 0 0 0 2 | 125 | 0 0 0 0 0 2 2 0 | 189 | -1 1 1-1 1-1 1-1 | 253 | -1-1-1-1-1-1 1 1 |
62 | 0 0 0-2 2 0 0 0 | 126 | 0 0 0 0 0 2 0 2 | 190 | -1 1 1-1 1-1-1 1 | 254 | -1-1-1-1-1-1-1-1 |
63 | 0 0 0-2 0 2 0 0 | 127 | 0 0 0 0 0 0 2 2 | 191 | 1 1 1 1-1-1-1-1 | 255 | 1 1 1 1 1 11 1 |
表4
LRQ的码向量的引导部分
索引 | 引导部分 |
0 | 0 0 0 0 0 0 0-2 |
1 | 2 0 0 0 0 0 0 0 |
2 | 0 0 0 0 0 0-2-2 |
3 | 2 0 0 0 0 0 0-2 |
4 | 2 2 0 0 0 0 0 0 |
5 | 1 1 1 1 1 1-1-1 |
6 | 1 1 1 1-1-1-1-1 |
7 | 1 1-1-1-1-1-1-1 |
8 | -1-1-1-1-1-1-1-1 |
9 | 1 1 1 1 1 1 1 1 |
表5
LRQ的引导部分的标记向量
索引 | 标记向量 |
0 | 0 0 0 0 0 0 0 1 |
1 | 1 0 0 0 0 0 0 0 |
2 | 0 0 0 0 0 0 1 1 |
3 | 1 0 0 0 0 0 0 1 |
4 | 1 1 0 0 0 0 0 0 |
5 | 0 0 0 0 0 0 1 1 |
6 | 0 0 0 0 1 1 1 1 |
7 | 0 0 1 1 1 1 1 1 |
8 | 1 1 1 1 1 1 1 1 |
9 | 0 0 0 0 0 0 0 0 |
表6
用于索引LRQ的码向量的有关引导部分的索引偏移
索引 | 索引偏移 |
0 | 0 |
1 | 8 |
2 | 16 |
3 | 44 |
4 | 100 |
5 | 128 |
6 | 128 |
7 | 128 |
8 | 128 |
9 | 128 |
表7
有关LRQ的码向量的索引增量
索引 | 增量 | 索引 | 增量 | 索引 | 增量 | 索引 | 增量 |
0 | 127 | 64 | 6 | 128 | 7 | 192 | 27 |
1 | 0 | 65 | 5 | 129 | 6 | 193 | 0 |
2 | 1 | 66 | 11 | 130 | 12 | 194 | 0 |
3 | 0 | 67 | 0 | 131 | 0 | 195 | 40 |
4 | 2 | 68 | 16 | 132 | 17 | 196 | 0 |
5 | 1 | 69 | 0 | 133 | 0 | 197 | 50 |
6 | 7 | 70 | 0 | 134 | 0 | 198 | 92 |
7 | 0 | 71 | 31 | 135 | 32 | 199 | 0 |
8 | 3 | 72 | 20 | 136 | 21 | 200 | 0 |
9 | 2 | 73 | 0 | 137 | 0 | 201 | 60 |
10 | 8 | 74 | 0 | 138 | 0 | 202 | 82 |
11 | 0 | 75 | 35 | 139 | 36 | 203 | 0 |
12 | 13 | 76 | 0 | 140 | 0 | 204 | 72 |
13 | 0 | 77 | 45 | 141 | 46 | 205 | 0 |
14 | 0 | 78 | 90 | 142 | 91 | 206 | 0 |
15 | 28 | 79 | 0 | 143 | 0 | 207 | 120 |
16 | 4 | 80 | 23 | 144 | 24 | 208 | 0 |
17 | 3 | 81 | 0 | 145 | 0 | 209 | 54 |
18 | 9 | 82 | 0 | 146 | 0 | 210 | 79 |
19 | 0 | 83 | 38 | 147 | 39 | 211 | 0 |
20 | 14 | 84 | 0 | 148 | 0 | 212 | 69 |
21 | 0 | 85 | 48 | 149 | 49 | 213 | 0 |
22 | 0 | 86 | 96 | 150 | 97 | 214 | 0 |
23 | 29 | 87 | 0 | 151 | 0 | 215 | 117 |
24 | 18 | 88 | 0 | 152 | 0 | 216 | 65 |
25 | 0 | 89 | 58 | 153 | 59 | 217 | 0 |
26 | 0 | 90 | 86 | 154 | 87 | 218 | 0 |
27 | 33 | 91 | 0 | 155 | 0 | 219 | 113 |
28 | 0 | 92 | 76 | 156 | 77 | 220 | 0 |
29 | 43 | 93 | 0 | 157 | 0 | 221 | 108 |
30 | 88 | 94 | 0 | 158 | 0 | 222 | 102 |
31 | 0 | 95 | 124 | 159 | 123 | 223 | 0 |
32 | 5 | 96 | 25 | 160 | 26 | 224 | 0 |
33 | 4 | 97 | 0 | 161 | 0 | 225 | 53 |
34 | 10 | 98 | 0 | 162 | 0 | 226 | 78 |
35 | 0 | 99 | 42 | 163 | 41 | 227 | 0 |
36 | 15 | 100 | 0 | 164 | 0 | 228 | 68 |
37 | 0 | 101 | 52 | 165 | 51 | 229 | 0 |
38 | 0 | 102 | 94 | 166 | 93 | 230 | 0 |
39 | 30 | 103 | 0 | 167 | 0 | 231 | 116 |
40 | 19 | 104 | 0 | 168 | 0 | 232 | 64 |
41 | 0 | 105 | 62 | 169 | 61 | 233 | 0 |
42 | 0 | 106 | 84 | 170 | 83 | 234 | 0 |
43 | 34 | 107 | 0 | 171 | 0 | 235 | 112 |
44 | 0 | 108 | 74 | 172 | 73 | 236 | 0 |
45 | 44 | 109 | 0 | 173 | 0 | 237 | 107 |
46 | 89 | 110 | 0 | 174 | 0 | 238 | 101 |
47 | 0 | 111 | 122 | 175 | 121 | 239 | 0 |
48 | 22 | 112 | 0 | 176 | 0 | 240 | 63 |
49 | 0 | 113 | 56 | 177 | 55 | 241 | 0 |
50 | 0 | 114 | 81 | 178 | 80 | 242 | 0 |
51 | 37 | 115 | 0 | 179 | 0 | 243 | 111 |
52 | 0 | 116 | 71 | 180 | 70 | 244 | 0 |
53 | 47 | 117 | 0 | 181 | 0 | 245 | 106 |
54 | 95 | 118 | 0 | 182 | 0 | 246 | 100 |
55 | 0 | 119 | 119 | 183 | 118 | 247 | 0 |
56 | 0 | 120 | 67 | 184 | 66 | 248 | 0 |
57 | 57 | 121 | 0 | 185 | 0 | 249 | 105 |
58 | 85 | 122 | 0 | 186 | 0 | 250 | 99 |
59 | 0 | 123 | 115 | 187 | 114 | 251 | 0 |
60 | 75 | 124 | 0 | 188 | 0 | 252 | 98 |
61 | 0 | 125 | 110 | 189 | 109 | 253 | 0 |
62 | 0 | 126 | 104 | 190 | 103 | 254 | 0 |
63 | 125 | 127 | 0 | 191 | 0 | 255 | 126 |
量化索引的霍夫曼编码
MLT系数不是均匀分布的。已经观察到8维系数向量具有在原点周围的高度集中的概率。因此,点阵向量量化器的码本对于非均匀源不是最佳的。
为了改进上述高速量化器的特性,可以使用霍夫曼编码器对量化的索引编码。由于低速(<2比特/取样)编码,大多数对应于14-22kHz频带的“超额(extra)”子帧不被高速量化器量化。因此,霍夫曼编码不用于超额子帧。
对于给定速度R比特/维(1<R<6),通过高速量化器量化8维系数向量x,并且在0≤ki<2R,i=1,2,...8得到最佳码向量的索引向量k=(k1,k2,k3,k4,k5,k6,k7,k8)。然后,根据表8-11对k的分量进行霍夫曼编码。
通过使用霍夫曼编码,用可变数量比特为量化索引进行了编码。对于给定速度R,较多的频率索引需要低于R的比特,和较少的频率索引可能需要大于R的比特。因此,在霍夫曼编码之后码长被改变,并且在一个帧中使用了三个标记比特来指示是否将霍夫曼编码应用到头三个子帧组中的每一个。标记比特作为辅助信息发送到解码器。对于一个子帧组,只有在使用霍夫曼编码需要的比特数不大于可用于这个组的比特的总数的时侯,才对量化索引进行霍夫曼编码。在这种情况下,将霍夫曼编码标记设置到1。
但是,对于打击乐器类型信号,不再对量化索引使用霍夫曼编码。量化索引被直接发送到解码器。
在解码器,检查霍夫曼编码标记。如果设置了一个子帧组的霍夫曼编码标记,那么对这个组的编码数据进行霍夫曼解码,以获得量化索引。否则,将编码数据直接用作量化索引。
表8
具有2比特/维的速度的HRQ的量化索引的霍夫曼代码
索引 | 霍夫曼代码 | 码值 | 比特数 |
0 | 0 | 0 | 1 |
1 | 110 | 6 | 3 |
2 | 111 | 7 | 3 |
3 | 10 | 2 | 2 |
表9
具有3比特/维的速度的HRQ的量化索引的霍夫曼代码
索引 | 霍夫曼代码 | 码值 | 比特数 |
0 | 00 | 0 | 2 |
1 | 01 | 1 | 2 |
2 | 1001 | 9 | 4 |
3 | 10000 | 16 | 5 |
4 | 10001 | 17 | 5 |
5 | 1010 | 10 | 4 |
6 | 1011 | 11 | 4 |
7 | 11 | 3 | 2 |
表10
具有4比特/维的HRQ的量化索引的霍夫曼代码
索引 | 霍夫曼代码 | 码值 | 比特数 |
0 | 00 | 0 | 2 |
1 | 110 | 6 | 3 |
2 | 0110 | 6 | 4 |
3 | 0111 | 7 | 4 |
4 | 10100 | 20 | 5 |
5 | 10101 | 21 | 5 |
6 | 10110 | 22 | 5 |
7 | 101110 | 46 | 6 |
8 | 101111 | 47 | 6 |
9 | 10000 | 16 | 5 |
10 | 10001 | 17 | 5 |
11 | 10010 | 18 | 5 |
12 | 10011 | 19 | 5 |
13 | 0100 | 4 | 4 |
14 | 0101 | 5 | 4 |
15 | 111 | 7 | 3 |
表11
具有5比特/维速度的HRQ的量化索引的霍夫曼代码
索引 | 霍夫曼代码 | 码值 | 比特数 |
0 | 00 | 0 | 2 |
1 | 010 | 2 | 3 |
2 | 1000 | 8 | 4 |
3 | 10100 | 20 | 5 |
4 | 10101 | 21 | 5 |
5 | 110000 | 48 | 6 |
6 | 110001 | 49 | 6 |
7 | 110010 | 50 | 6 |
8 | 110011 | 51 | 6 |
9 | 1110000 | 112 | 7 |
10 | 1110001 | 113 | 7 |
11 | 1110010 | 114 | 7 |
12 | 1110011 | 115 | 7 |
13 | 1110100 | 116 | 7 |
14 | 1110101 | 117 | 7 |
15 | 1110110 | 118 | 7 |
16 | 1110111 | 119 | 7 |
17 | 1111000 | 120 | 7 |
18 | 1111001 | 121 | 7 |
19 | 1111010 | 122 | 7 |
20 | 1111011 | 123 | 7 |
21 | 1111100 | 124 | 7 |
22 | 1111101 | 125 | 7 |
23 | 111111 | 63 | 6 |
24 | 110100 | 52 | 6 |
25 | 110101 | 53 | 6 |
26 | 110110 | 54 | 6 |
27 | 110111 | 55 | 6 |
28 | 10110 | 22 | 5 |
29 | 10111 | 23 | 5 |
30 | 1001 | 9 | 4 |
31 | 011 | 3 | 3 |
通过编码器产生的比特流
图3A示出了根据本发明实施例的编码比特流的例子。在一个实施例中,一个帧中的比特总数是640,960和1280比特,分别对应于32kbps,48kbps,和64kbps的比特率。在信道上发送的比特流可以包括3个部分:标记比特,范数代码比特,和MLT系数的代码比特。标记比特可以首先发送,接下来是范数代码比特,最后是用于MLT系数的代码比特。
标记部分302包含多个用于各种不同目的的标记比特。在本例中,标记比特可以包括用于指示当前帧的模式和发送到解码器的模式标记。例如,模式标记可以用于指示打击乐器类型信号模式。作为另一个例子,模式标记可以用于指示语音和一般音乐。标记也可以包括用于指示有多少以32kbps编码的子帧并且作为辅助信息发送到解码器的标记。下一部分具有固定的长度。在本例中,它具有四个比特。四个比特用于指示是否将霍夫曼编码用于范数,组1系数索引,组2系数索引,和组3系数索引。组4一般不使用霍夫曼编码,因为组4一般只有很少的比特,并且霍夫曼编码一般不减少比特需求。
比特流可以进一步包括所有子帧的范数代码比特304。如果没有使用霍夫曼编码,那么长度是固定的。在这个例子中,固定长度是170比特(34范数×5比特每范数)。如果使用了霍夫曼编码,那么长度是由霍夫曼编码确定的。
比特流可以进一步包括用于组1-4的编码系数索引306。分配给每个组或每个系数的比特的数量是可以变化的。它们是根据每个子帧的范数通过比特分配确定的。组1-3的索引也可能依赖是否使用了霍夫曼编码。组4的索引一般不使用霍夫曼编码。但是,分配给组4的比特的数量仍然是可能改变的,因为其他部分的比特数可以改变。当其他组由于霍夫曼编码而使用较少的比特时,那些省下的比特可以用于组4。
图3B示出了根据本发明一个实施例的标记比特302的示例结构。在本例中,标记比特302可以包括指示当前帧的模式并且发送到解码器的标记M 308。在打击乐器类型信号模式中,只有模式标记308可以发送,其他标记不需要发送。在语音和一般音乐模式中,所有的标记都可以发送。标记比特302可以进一步包括用于指示有多少子帧要以低速(例如,32kbps)编码的标记L 310。标记比特302可以进一步包括指示范数是否被霍夫曼编码的标记N 312。标记比特302可以进一步包括指示每个MLT系数的组(在本例中,组1到组3)是否被霍夫曼编码的标记G1到G3。
图3C示出了根据本发明一个实施例的用系数代码比特306量化的(和可能霍夫曼编码的)变换系数的组合集的示例结构。在本例中,边界频率是大约7kHz。长帧变换系数320代表高达大约7kHz的频率。短帧变换系数322代表从大约6.8kHz到大约22kHz的频率。长帧变换和短帧变换可以在它们的边界上重叠,以使过渡更平滑。
图3D示出了根据本发明另一个实施例的以系数代码比特306量化的(可能霍夫曼编码的)变换系数的组合集的另一个示例结构。在本例中,边界频率是大约800Hz。长帧变换系数324代表高达大约800Hz的频率。短帧变换系数326代表从大约600Hz到大约22kHz的频率。长帧变换和短帧变换可以在它们的边界重叠,以使过渡更为平滑。
编码器处理过程
现在参考图4,图4示出了根据本发明一个实施例的整个编码处理的示例处理流程图。编码处理过程在步骤400开始。在步骤410,可以对音频信号使用两个MLT变换,以便使音频取样及时地转换成变换系数的帧。长帧变换系数用于低频的信号(例如,大约20Hz到大约7kHz),而短帧变换系数用于高频信号(例如,大约6.8kHz到大约22kHz)。
可以将MLT系数划分成具有34个子帧的4个组。在步骤420,计算每个子帧的范数,并且用固定的比特数量化。然后,每个子帧通过它的量化的范数规格化,并且得到规格化的变换系数。可以对所有量化范数尝试霍夫曼编码。如果使用的比特数少于分配给范数量化的总比特数,那么可使用霍夫曼编码。设置霍夫曼标记(标记N),并将超额比特存储在比特剩余中。如果使用的比特数不低于分配给范数量化的总比特数,那么不使用霍夫曼编码,并且清除霍夫曼标记。比特剩余是总比特数减去6个标记比特和范数用去的比特。
在步骤430,可以使用自适应比特分配方案,以在子帧之间分配帧中可用的比特。首先,将每个子帧中所有比特设置到零(总共有34个子帧),并且将比特剩余设置到总可用比特。接下来,找到子帧的最大范数,并且给子帧中每个系数分配1比特,总共是M比特;那么,假设它的范数=范数/2,比特剩余=比特剩余-M。对于具有16个系数的子帧,M=16,对于具有24或32个系数的子帧,M分别是24或32。如果比特剩余小于16,那么停止分配;否则重复最后步骤。当进行了比特分配时,比特剩余少于16。一些子帧的每个系数分配了几个比特;其他的可能具有零比特。
在决定步骤440中,如果每系数的比特大于1,那么可以通过点阵D8进行量化,步骤450中的高速量化;否则,在步骤460中通过利用点阵RE8的低速量化进行量化。现在已经知道分配给每个组的比特。
在步骤470,可以对每个子帧的量化的系数有选择地尝试进行霍夫曼编码。将前三个组的每个组所需的比特总数相加。如果霍夫曼编码的比特少于分配的比特,那么可以对该组使用霍夫曼编码,并且设置该组的霍夫曼代码标记;并且将节省的比特分配到剩余比特。如果霍夫曼编码比特不少于固定的分配比特,那么不使用霍夫曼编码,并清除霍夫曼代码标记。
根据上述的比特分配方案,将剩余比特分配到下一个组。分配所有比特,并且在步骤480结束该处理过程。形成比特流并且可以发送。
可以对结合图4说明的示例编码器处理进行各种修改。根据本发明的一些实施例,包括高速量化和低速量化的快速点阵向量量化是任选的;例如,可以将双变换与诸如标量量化、点阵向量量化之类的任何类型的量化技术结合使用。根据本发明的其他实施例,可以有两个以上的变换。此外,并如上所述,可以使用任何类型的变换,例如:MLT、FFT、DCT、等等。
解码器处理过程
解码器基本上以与编码器相反的顺序处理编码比特流。总比特是已知的并且是完全一致的。在解码器,可以检查数据完整性和解码协议,以保证将适当的解码器用于比特流。一旦解码器验证用根据上述示例的编码器对比特流进行了编码,那么它对比特流进行解码,如图5中所示并说明如下:
在接收到输入到解码器的编码比特流时,处理流程在步骤500开始。在步骤510,检查标记比特。例如,确定前三个组的范数或系数索引是否受到霍夫曼编码。
如果设置了霍夫曼代码标记,那么在步骤520对范数的量化索引进行霍夫曼解码。在对所有范数进行解码之后,知道了范数使用的总比特。也知道了作为剩余比特的用于编码系数索引的比特数。
如果没有设置霍夫曼代码标记,则在步骤530使用固定速度。知道了范数使用的比特数。知道了系数索引的比特总数。
在步骤530中,通过去量化量化索引得到量化范数。从量化范数,可以执行自适应比特分配540,与图4中方框430的操作相同,以确定哪个子帧具有多少比特。如果为一个组设置了霍夫曼标记,那么接收的数据是霍夫曼代码,并且必须对该组内每个子帧进行解码。如果没有设置霍夫曼标记,那么接收的数据是系数的量化索引。
在步骤560中,从量化范数和量化索引,可以重构MLT系数。对于没有分配任何比特的子帧,它们的MLT系数可以填充零,或用随机数产生。可以恢复一个长变换的低频系数和四个短变换的高频系数。长变换中的高频可以用零填充;同样,四个短变换的低频可以填充零。沿高频和低频的边界,可以使用某种形式的平滑过渡。例如,一种最简单的平滑函数是边界附近少数几个系数上的渐变斜率。
一旦重构了长变换和四个短变换的所有系数,它们可以被逆变换到数字音频取样。在步骤570,对长变换和四个短变换执行从频域到时域的逆变换。例如,可以使用双IMLT来重构MLT系数。现在有两个数字音频信号,每个覆盖相同的20ms时帧。
在步骤580,将两个时域信号组合,以形成一个单一的音频信号。可以将信号转换成模拟信号并作为声音再现。
可以通过硬件、软件、固件、或任何上述的组合执行本发明的各个实施例的方法。例如,该方法可以通过编码器或解码器或其他处理器在诸如电话会议系统或视频会议系统之类的音频系统中执行这些方法。此外,本发明的各个实施例的方法可以应用到流动音频,例如,经过互联网。图6示出了根据本发明的各个实施例的编码器。图7示出了根据本发明的各个实施例的解码器。在一些实施例中,编码器和解码器可以是分离的,或在其他实施例中它们可以组合成一个编解码器。
在图6的编码器中,可以将数字取样的输入音频信号馈送到至少两个变换模块610和620中,以使音频取样及时转换成变换系数的帧。尽管也可以使用其他类型的变换模块,为了便于叙述,将变换模块610和620称为MLT模块。
在一个实施例中,每20ms,可以将最近的1920个音频取样馈送到变换模块610,和每5ms,将最近的480个音频取样馈送到变换模块620。长帧变换模块610可以产生大约960个系数的集,而短帧变换模块620可以产生各大约为240个系数的四个集。长帧变换系数可以用于低频信号,而短帧变换系数可以用于高频信号。例如,在一个实施例中,长帧变化系数代表大约20Hz至大约7kHz之间的频率,而短帧变换系数代表大约6.8kHz至大约22kHz之间的频率。
在另一个实施例中,可以任选地提供模块630,以指示打击乐器类型信号的存在。如果检测到打击乐器类型信号,那么可以将指示打击乐器类型模式的模式标记发送到多路复用器695以传输。如果检测到打击乐器类型信号,那么可以将边界频率调节到大约800Hz。在这种情况下,双变换系数是代表高达800Hz的频率的长变换系数和代表600Hz以上频率的短变换系数的组合。在其他实施例中,边界频率可以是7kHz,或大约800Hz和大约7kHz之间的任何频率。
长帧变换系数和短帧变换系数是通过组合器模块640组合的。组合的系数被应用到范数量化模块650,范数量化模块650计算和量化每个子帧的范数。将编码模块670应用于范数的量化索引。编码模块可以任选地执行霍夫曼编码。得到的范数代码比特被馈送到多路复用器695。也可以将霍夫曼代码标记馈送到多路复用器695,以指示范数是否被霍夫曼编码。
将来自范数量化模块650的量化范数和来自组合器模块640的组合MLT系数馈送到规格化MLT系数的规格化模块660。也可以将量化范数馈入到在子帧之间的帧中分配可用比特的自适应比特分配模块675。随着比特分配的完成,接下来,可以通过点阵向量量化模块680一帧接一帧地量化归一化的MLT系数。如果每系数的比特大于1,那么可以通过高速量化器进行量化,否则,可以通过低速量化器进行量化。如果没有检测到打击乐器类型信号,那么可以将最大量化速度设定到5比特每系数。
可以将霍夫曼编码模块685任选地应用到MLT系数的量化索引。但是,对于打击乐器类型信号,不将霍夫曼编码模块685应用于MLT系数的量化索引。得到的霍夫曼代码比特从霍夫曼编码模块685馈送到比较和数据选择模块690。比较和数据选择模块690比较从量化模块680输出的量化索引和从霍夫曼编码模块685输出的霍夫曼代码。对于前三个子帧组的每个组,如果霍夫曼编码的比特少于分配比特,那么可以为该组选择霍夫曼编码的比特,并且设置该组的霍夫曼代码标记;和把节省的比特分配给剩余比特。如果霍夫曼编码的比特不小于固定的分配比特,那么为该组选择量化索引,并清除该组的霍夫曼代码标记。将选择的MLT代码比特与任何霍夫曼代码标记一起馈送到多路复用器695。形成比特流并且能够被发送。
图7的解码器可以操作以从编码比特流重构音频信号。将编码比特流提供到去多路复用器710,去多路复用器710将数据去多路复用为范数代码比特、MLT代码比特、和各种标记,例如,模式标记、用于以32kbit/s编码的子帧数量的标记、范数的霍夫曼代码标记、和每个MLT系数的组的霍夫曼代码标记、等等。尽管可以使用其他类型的变换模块,为了便于参考,在本例中使用了标示MLT代码比特和MLT系数。
范数代码比特被馈送到解码模块720,解码模块720对子帧范数的量化索引进行解码。如果霍夫曼代码标记(标记N)指出使用了霍夫曼编码对范数进行编码,那么可以使用霍夫曼解码。然后,去量化模块725对子帧范数进行去量化。可以使用自适应比特分配模块730在子帧之间分配帧中的可用比特。
将MLT代码比特从去多路复用器710馈送到解码模块735,解码模块735给MLT系数的量化索引解码。如果任何霍夫曼代码标记指出使用了霍夫曼编码对任何MLT系数组进行了编码,那么可以使用霍夫曼解码。如果没有霍夫曼代码标记指示使用了霍夫曼编码法对任何MLT系数组编码,那么量化索引通过到去量化模块740。因此,将解码的MLT代码比特或MLT系数的量化索引馈入到去量化模块740,去量化模块740对MLT系数进行去量化。
重构模块745可以从量化的范数和量化索引重构MLT系数。分离器模块750将MLT系数分离成MLT系数的一个长帧,和四个短帧MLT系数集。将长帧逆变换模块760应用于长帧MLT系数集,并且将短帧逆变换模块770应用于四个短帧MLT系数集。逆变换模块760和770可以包括逆调制重迭变换(IMLT)模块。将得到的时域信号相加,导致可以从数字转换到模拟并且作为声音再现的输出音频信号。
可以在各个领域中找到本发明各个实施例的有效应用,例如:音频会议,视频会议,和流媒体,包括流音乐或语音。现在参考图8,图8示出了根据本发明一个实施例的示例会议系统的方框图。该系统包括可以操作以经过网络850与一个或更多远端终端840通信的本地终端810。通信可以包括音频、视频、和数据的交换。熟悉本领域的人员应当知道,视频能力是可选的,并且终端810可以是没有视频能力的音频会议装置。例如,终端810可以包括喇叭扩音器,或其他音频会议装置。同样,每个远端终端840可以包括音频会议装置或视频会议装置。
本地终端810包括音频编解码器812,和音频I/O接口814。音频编解码器812可以包括诸如图6的编码器之类的编码器。音频编解码器可以进一步包括诸如图7的解码器之类的解码器。音频I/O接口814可以执行模-数和数-模转换,以及与处理从一个或更多话筒816接收的或发送到一个或更多扬声器818的音频信息结合的其他信号处理任务。一个或更多话筒816可以包括带有智能话筒混合和动态降噪功能的选通话筒。在一些实施例中,一个或更多话筒816可以与终端810集成为一体,或它们可以是从终端810分离的,或是组合的。同样,一个或更多扬声器818可以与终端810集成为一体,或与终端810分离,或组合。如果它们是与终端810分离的,那么话筒816和扬声器818可以经过有线连接或无线连接发送和接收信息。
本地终端810可以捕获通过一个或更多话筒816产生的音频信息(一般代表本地会议参与者的语音或声音)。本地终端810数字化和处理捕获的音频信息。将音频编码和经过网络接口820发送到一个或更多远端终端840。
终端810可以从远端会议终端840接收音频信息(一般代表远端会议参与者的语音和声音)。接收的音频信息是通过网络接口820接收的。将接收的音频信息解码、处理、转换成模拟信号,并经过一个或更多扬声器818作为音频再现。
在一些实施例中,终端可以任选地包括视频能力。在这样的实施例中,终端810可以包括视频编解码器822,视频I/O接口824,一个或更多视频摄像机826,和一个或更多显示装置828。一个或更多的摄像机826可以与终端810一体,或与终端810分离,或组合。同样,一个或更多显示装置828可以与终端810一体,或与终端810分离,或组合。
在具有视频能力的实施例中,终端810可以捕获一个或更多摄像机826产生的视频信息(一般代表本地会议参与者的图像)。终端810处理捕获的视频信息,并将处理的信息经过网络接口820发送到一个或更多远端终端840。视频输入/输出接口转换和处理从一个或更多摄像机826接收的视频信息,并发送到一个或更多视频监视器828。视频编解码器824编码和解码视频信息。
终端810可以接收来自远端终端840的视频信息(一般代表远端会议参与者的图像)。终端810处理接收的视频信息,并将处理的视频信息导向一个或更多显示装置828。终端810也可以从其他周围装置接收输入,或直接输出到其他周围装置,例如,视频磁带播放机/录像机,文件摄像机,或LCD投影机,等等。
终端810的各个组件可以通过至少一条总线830相互连接,以便相互通信。终端810的组件也可以包括中央处理单元(CPU)832。CPU 832解释和执行可以从存储器834装载的程序指令。可以包括易失性RAM、非易失性ROM、和/或诸如磁盘驱动器或CD-ROM之类的存储装置的存储器834存储可执行程序、数据文件、和其他信息。
在终端810中可以具有附加的组件和部件。例如,终端810可以包括回波消除或降低以允许全双工操作的模块。
一个或更多远端终端840可以包括与前面参考本地终端810说明的类似的组件。网络850可以包括PSTN(公共交换电话网),或基于IP的网络。
尽管图示和说明了本发明的示例实施例,应当知道可以进行各种不同的改变而不脱离本发明的精神和范围。已经借助参考示例实施例说明了本发明。熟悉本领域的人员应当知道,可以对这些示例实施例进行各种修改,而不脱离本发明的精神和范围。此外,尽管已经在其特定环境下和特定应用下的具体实现的情况下说明了本发明,但是本领域技术人员应当知道,本发明的用途不限于此,而是本发明可以有利地应用到任何数量的环境和实现因此上述说明和附图只是为了说明的目的而没有限制的意思。
Claims (38)
1.一种对音频信号进行编码的方法,所述方法包括:
将音频信号的时域取样的帧变换到频域,形成变换系数的长帧;
将音频信号的时域取样的帧的n个部分变换到频域,形成变换系数的n个短帧;
其中时域取样的帧具有第一长度(L);
其中时域取样的帧的每个部分具有第二长度(S);
其中L=n×S;和
其中n是整数;
分组成变换系数的长帧的变换系数集,和变换系数的n个短帧的变换系数集,以形成变换系数的组合集;
量化变换系数的组合集,以形成变换系数的量化组合集的量化索引集;和
对变换系数的量化组合集的量化索引进行编码。
2.根据权利要求1所述的方法,其中变换行动包括应用调制重迭变换(MLT)。
3.根据权利要求1所述的方法,其中取样行动是以大约48kHz的频率进行的。
4.根据权利要求1所述的方法,其中变换系数的组合集包括在第一频带宽度的长帧的变换系数,和在第二频带宽度的n个短帧的变换系数。
5.根据权利要求4所述的方法,其中第一频带宽度和第二频带宽度重叠。
6.根据权利要求4所述的方法,其中第一频带宽度具有在大约800Hz至大约7kHz范围的上限。
7.根据权利要求4所述的方法,
其中第一频带宽度包括高达大约7kHz的音频频率;和
其中第二频带宽度包括在大约6.8kHz至大约22kHz范围的音频频率。
8.根据权利要求1所述的方法,进一步包括:
检测音频信号是否包括打击乐器类型信号。
9.根据权利要求8所述的方法,其中检测行动包括:
确定直到大约10kHz的频带宽度上的长变换系数的平均梯度斜率是否超过预定的斜率阈值;
确定变换系数的长帧的第一变换系数是否是变换系数的最大长帧;和
确定变换系数的长帧的变换系数零交叉率是否小于预定的速率阈值。
10.根据权利要求8所述的方法,
其中系数的组合集包括在第一频带宽度的长帧的变换系数和在第二频带宽度的n个短帧的变换系数;
其中,如果检测到打击乐器类型信号,第一频带宽度则包括直到大约800Hz的音频频率;和
其中,如果检测到打击乐器类型信号,第二频带宽度则包括在大约600Hz至大约22kHz范围内的音频频率。
11.根据权利要求1所述的方法,其中编码行动包括霍夫曼编码。
12.根据权利要求1所述的方法,进一步包括:
将系数的组合集分组成多个组,其中每个组包括多个子帧,和其中每个子帧包含特定数量的系数;
根据子帧的均方根确定每个子帧的范数;
量化每个子帧的均方根;
通过用子帧的量化均方根划分子帧内每个系数来归一化每个子帧的系数;
量化每个子帧的系数;
为每个子帧组保持霍夫曼编码标记;
为编码每个组保持固定的比特数;
为每个组计算使用霍夫曼编码所需的比特数;
如果使用霍夫曼编码所需的比特数少于该组的固定比特数,则设置霍夫曼标记和使用霍夫曼编码;和
如果使用霍夫曼编码所需的比特数不少于该分组的固定比特数,则清除霍夫曼标记和使用固定的比特数编码。
13.根据权利要求1所述的方法,进一步包括:
将系数的组合集分组成多个组,其中每个组包含多个子帧,和其中每个子帧包含特定数量的系数;
根据子帧的均方根确定每个子帧的范数;
量化每个子帧的均方根,以形成每个范数的量化索引;和
如果用于霍夫曼编码的总比特数小于为范数量化分配的总比特数,则对每个范数的量化索引进行霍夫曼编码。
14.根据权利要求1所述的方法,进一步包括:
将系数的组合集分组成多个组,其中每个组包含多个子帧,和其中每个子帧包含特定数量的系数;
根据子帧的均方根确定每个子帧的范数;
量化每个子帧的均方根;和
根据子帧的量化均方根动态地将可用比特分配到每个子帧。
15.一种其上记录有程序的计算机可读介质,所述程序可以由机器执行以执行权利要求1中所述的方法。
16.一种对代表音频信号的编码比特流进行解码的方法,所述方法包括:
对编码比特流的一个部分进行解码,以形成变换系数的多个组的量化索引;
对多组变换系数的量化索引去量化;
将变换系数分成一个长帧系数集和n个短帧系数集;
将长帧系数集从频域转换到时域,以形成长时域信号;
将短帧系数的n个集从频域转换到时域,以形成一系列n个短时域信号;
其中长时域信号具有第一长度(L);
其中每个短时域信号具有第二长度(S);
其中L=n×S;和
其中n是整数;和
组合长时域信号和一系列n个短时域信号,以形成音频信号。
17.根据权利要求16所述的方法,
其中长帧系数在第一频带宽度内;和
其中短帧系数在第二频带宽度内。
18.根据权利要求17所述的方法,其中第一频带宽度具有在大约800Hz至大约7kHz范围中的上限。
19.根据权利要求17所述的方法,
其中第一频带宽度包括直到大约7kHz的音频频率;和
其中第二频带宽度包括大约6.8kHz至大约22kHz范围中的音频频率。
20.根据权利要求17所述的方法,
其中第一频带宽度包括直到大约800Hz的音频频率;和
其中第二频带宽度包括在大约600Hz至大约22kHz范围中的音频频率。
21.根据权利要求16所述的方法,进一步包括:
对编码比特流的第二部分解码,以形成每个子帧的范数的量化索引;和
对每个子帧的量化索引去量化。
22.根据权利要求21所述的方法,进一步包括:
根据子帧的量化范数动态地将可用比特分配给每个子帧。
23.根据权利要求21所述的方法,进一步包括:
如果编码比特流包含使用了霍夫曼编码法对范数编码的指示符,确定分配给范数的比特数;和
对范数进行霍夫曼解码。
24.根据权利要求16所述的方法,进一步包括:
如果编码比特流包含使用了霍夫曼编码法对特定的子帧组进行编码的指示符,确定分配给所述特定的子帧组的比特数;和
对系数的所述特定的子帧组进行霍夫曼解码。
25.一种其上记录有程序的计算机可读介质,由机器执行所述程序以执行权利要求16中所述的方法。
26.一种22kHz的音频编解码器,包括:
编码器,包括:
第一变换模块,用于将音频信号的时域取样的帧变换到频域,形成变换系数的长帧;
第二变换模块,用于将音频信号的时域取样的帧的n个部分变换到频域,形成变换系数的n个短帧;
其中时域取样的帧具有第一长度(L);
其中时域取样的帧的每个部分具有第二长度(S);
其中L=n×S;和
n是整数;
组合器模块,用于组合变换系数的长帧的变换系数集和变换系数的n个短帧的变换系数集,形成变换系数的组合集;
量化器模块,用于量化变换系数的组合集,以形成变换系数的量化组合集的量化索引集;和
编码模块,用于对变换系数的量化组合集的量化索引进行编码;和
解码器,包括:
解码模块,用于对编码比特流的一部分进行解码,形成多个变换系数组的量化索引;
去量化模块,用于对所述多个变换系数组的量化索引进行去量化;
分离器模块,用于将变换系数分离成一个长帧系数集和n个短帧系数集;
第一逆变换模块,用于将长帧系数集从频域转换到时域,形成长时域信号;
第二逆变换模块,用于将n个短帧系数集从频域转换到时域,形成一系列n个短时域信号;和
求和模块,用于组合所述长时域信号和所述一系列n个短时域信号。
27.根据权利要求26所述的编解码器,其中变换系数的组合集包括在第一频带宽度的长帧的变换系数,和在第二频带宽度的n个短帧的变换系数。
28.根据权利要求27所述的编解码器,其中第一频带宽度具有在大约800Hz至大约7kHz范围中的上限。
29.根据权利要求27所述的编解码器,
其中第一频带宽度包括直到大约7kHz的音频频率;和
其中第二频带宽度包括在大约6.8kHz至大约22kHz范围中的音频频率。
30.根据权利要求27所述的编解码器,
其中第一频带宽度包括直到大约800Hz的音频频率;和
其中第二频带宽度包括在大约600Hz至大约22kHz范围中的音频频率。
31.根据权利要求26所述的编解码器,进一步包括:
用于根据变换系数的长帧的一个或更多特征,检测音频信号是否包括打击乐器类型信号的模块。
32.根据权利要求26所述的编解码器,
其中第一变换模块包括第一调制重迭变换(MLT)模块;和
其中第二变换模块包括第二MLT模块。
33.根据权利要求26所述的编解码器,其中所述编码器进一步包括:
范数量化器模块,用于量化每个子帧的振幅包络;
范数编码模块,用于对子帧的振幅包络的量化索引进行编码;和
自适应比特分配模块,用于将可用比特分配给变换系数的子帧。
34.根据权利要求26所述的编解码器,其中所述解码器进一步包括:
范数解码模块,用于对编码比特流的第二部分进行解码,形成每个子帧的每个振幅包络的量化索引;
去量化模块,用于对子帧的振幅包络的量化索引进行去量化;和
自适应比特分配模块,用于将可用比特分配给变换系数的子帧。
35.一种终端,包括:
音频输入/输出接口;
可通信地耦合到所述音频输入/输出接口的话筒;
可通信地耦合到所述音频输入/输出接口的扬声器;和
可通信地耦合到所述音频输入/输出接口的22kHz的音频编解码器;
其中所述22kHz的音频编解码器包括:
编码器,包括:
第一变换模块,用于将音频信号的时域取样的帧变换到频域,形成一个变换系数的长帧;
第二变换模块,用于将音频信号的时域取样的帧的n个部分变换到频域,形成变换系数的n个短帧;
其中时域取样的帧具有第一长度(L);
其中时域取样的帧的每个部分具有第二长度(S);
其中L=n×S;和
其中n是整数;
组合器模块,用于组合变换系数的长帧的变换系数集,和变换系数的n个短帧的变换系数集,形成变换系数的组合集;
量化器模块,用于量化变换系数的组合集以形成变换系数的量化组合集的量化索引集;和
编码模块,用于对变换系数的量化组合集的量化索引进行编码;和
解码器,包括:
解码模块,用于对编码比特流的一部分进行解码,形成多个变换系数组的量化索引;
去量化模块,用于对多个变换系数组的量化索引进行去量化;
分离器模块,用于将变换系数分离成一个长帧系数集和n个短帧系数集;
第一逆变换模块,用于将长帧系数集从频域转换到时域,形成一个长时域信号;
第二逆变换模块,用于将n个短帧系数集从频域转换到时域,形成一系列n个短时域信号的;和
求和模块,用于组合长时域信号和一系列n个短时域信号。
36.根据权利要求35所述的终端,进一步包括:
可通信地耦合到音频输入/输出接口的总线;
可通信地耦合到总线的视频输入/输出接口;
可通信地耦合到视频输入/输出接口的摄像机;和
可通信地耦合到视频输入/输出接口的显示装置。
37.根据权利要求35所述的终端,其中所述编码器进一步包括:
范数量化器模块,用于量化每个子帧的振幅包络;
范数编码模块,用于对子帧的振幅包络的量化索引进行编码;和
自适应比特分配模块,用于将可用比特分配到变换系数的子帧。
38.根据权利要求35所述的终端,其中所述解码器进一步包括:
范数解码模块,用于对编码比特流的第二部分进行解码,形成每个子帧的每个振幅包络的量化索引;
去量化模块,用于对子帧的振幅包络的量化索引进行去量化;和
自适应比特分配模块,用于将可用比特分配到变换系数的子帧。
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US11/550,629 | 2006-10-18 | ||
US11/550,629 US7953595B2 (en) | 2006-10-18 | 2006-10-18 | Dual-transform coding of audio signals |
Publications (2)
Publication Number | Publication Date |
---|---|
CN101165778A true CN101165778A (zh) | 2008-04-23 |
CN101165778B CN101165778B (zh) | 2011-10-19 |
Family
ID=38830404
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN2007101671272A Active CN101165778B (zh) | 2006-10-18 | 2007-10-18 | 音频信号的双变换编码方法和装置 |
Country Status (6)
Country | Link |
---|---|
US (1) | US7953595B2 (zh) |
EP (1) | EP1914724B1 (zh) |
JP (1) | JP4742087B2 (zh) |
CN (1) | CN101165778B (zh) |
HK (1) | HK1111801A1 (zh) |
TW (1) | TWI347589B (zh) |
Cited By (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2011063594A1 (zh) * | 2009-11-27 | 2011-06-03 | 中兴通讯股份有限公司 | 格型矢量量化音频编解码方法和系统 |
CN103415884A (zh) * | 2011-04-20 | 2013-11-27 | 松下电器产业株式会社 | 用于执行霍夫曼编码的装置和方法 |
CN105957533A (zh) * | 2016-04-22 | 2016-09-21 | 杭州微纳科技股份有限公司 | 语音压缩方法、语音解压方法及音频编码器、音频解码器 |
CN106663437A (zh) * | 2014-05-01 | 2017-05-10 | 日本电信电话株式会社 | 编码装置、解码装置、编码方法、解码方法、编码程序、解码程序、记录介质 |
CN106803425A (zh) * | 2011-06-01 | 2017-06-06 | 三星电子株式会社 | 音频编码方法和设备、音频解码方法和设备 |
CN108269586A (zh) * | 2013-04-05 | 2018-07-10 | 杜比实验室特许公司 | 使用高级频谱延拓降低量化噪声的压扩装置和方法 |
CN114171034A (zh) * | 2021-12-02 | 2022-03-11 | 深圳市高速达科技有限公司 | 一种高清机顶盒语音数据编解码系统及方法 |
Families Citing this family (23)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2008072524A1 (ja) * | 2006-12-13 | 2008-06-19 | Panasonic Corporation | オーディオ信号符号化方法及び復号化方法 |
CN100583649C (zh) * | 2007-07-23 | 2010-01-20 | 华为技术有限公司 | 矢量编/解码方法、装置及流媒体播放器 |
US8386271B2 (en) * | 2008-03-25 | 2013-02-26 | Microsoft Corporation | Lossless and near lossless scalable audio codec |
CN102132494B (zh) * | 2008-04-16 | 2013-10-02 | 华为技术有限公司 | 通信方法和通信装置 |
WO2010000305A1 (en) * | 2008-06-30 | 2010-01-07 | Nokia Corporation | An apparatus |
RU2542668C2 (ru) * | 2009-01-28 | 2015-02-20 | Фраунхофер-Гезелльшафт цур Фёрдерунг дер ангевандтен Форшунг Е.Ф. | Звуковое кодирующее устройство, звуковой декодер, кодированная звуковая информация, способы кодирования и декодирования звукового сигнала и компьютерная программа |
KR101309671B1 (ko) * | 2009-10-21 | 2013-09-23 | 돌비 인터네셔널 에이비 | 결합된 트랜스포저 필터 뱅크에서의 오버샘플링 |
US8386266B2 (en) | 2010-07-01 | 2013-02-26 | Polycom, Inc. | Full-band scalable audio codec |
UA100353C2 (uk) * | 2009-12-07 | 2012-12-10 | Долбі Лабораторіс Лайсензін Корпорейшн | Декодування цифрових потоків кодованого багатоканального аудіосигналу з використанням адаптивного гібридного перетворення |
US8428959B2 (en) * | 2010-01-29 | 2013-04-23 | Polycom, Inc. | Audio packet loss concealment by transform interpolation |
CN102158692B (zh) * | 2010-02-11 | 2013-02-13 | 华为技术有限公司 | 编码方法、解码方法、编码器和解码器 |
CN102741831B (zh) | 2010-11-12 | 2015-10-07 | 宝利通公司 | 多点环境中的可伸缩音频 |
TWI476761B (zh) | 2011-04-08 | 2015-03-11 | Dolby Lab Licensing Corp | 用以產生可由實施不同解碼協定之解碼器所解碼的統一位元流之音頻編碼方法及系統 |
TWI576829B (zh) * | 2011-05-13 | 2017-04-01 | 三星電子股份有限公司 | 位元配置裝置 |
WO2013058634A2 (ko) | 2011-10-21 | 2013-04-25 | 삼성전자 주식회사 | 에너지 무손실 부호화방법 및 장치, 오디오 부호화방법 및 장치, 에너지 무손실 복호화방법 및 장치, 및 오디오 복호화방법 및 장치 |
PL2951820T3 (pl) | 2013-01-29 | 2017-06-30 | Fraunhofer-Gesellschaft zur Förderung der angewandten Forschung e.V. | Urządzenie i sposób wyboru jednego spośród pierwszego algorytmu kodowania i drugiego algorytmu kodowania |
RU2631988C2 (ru) | 2013-01-29 | 2017-09-29 | Фраунхофер-Гезелльшафт Цур Фердерунг Дер Ангевандтен Форшунг Е.Ф. | Заполнение шумом при аудиокодировании с перцепционным преобразованием |
EP4290510A3 (en) | 2013-05-24 | 2024-02-14 | Dolby International AB | Audio encoder |
EP2830058A1 (en) * | 2013-07-22 | 2015-01-28 | Fraunhofer-Gesellschaft zur Förderung der angewandten Forschung e.V. | Frequency-domain audio coding supporting transform length switching |
US11540009B2 (en) | 2016-01-06 | 2022-12-27 | Tvision Insights, Inc. | Systems and methods for assessing viewer engagement |
EP4080794A1 (en) * | 2016-01-06 | 2022-10-26 | TVision Insights, Inc. | Systems and methods for assessing viewer engagement |
WO2018195391A1 (en) | 2017-04-20 | 2018-10-25 | Tvision Insights, Inc. | Methods and apparatus for multi-television measurements |
CN111402907B (zh) * | 2020-03-13 | 2023-04-18 | 大连理工大学 | 一种基于g.722.1的多描述语音编码方法 |
Family Cites Families (42)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPS62194296A (ja) * | 1986-02-21 | 1987-08-26 | 株式会社日立製作所 | 音声符号化方式 |
US4755421A (en) | 1987-08-07 | 1988-07-05 | James River Corporation Of Virginia | Hydroentangled disintegratable fabric |
JPH04249300A (ja) * | 1991-02-05 | 1992-09-04 | Kokusai Electric Co Ltd | 音声符復号化方法及びその装置 |
US5317672A (en) * | 1991-03-05 | 1994-05-31 | Picturetel Corporation | Variable bit rate speech encoder |
KR940004609B1 (ko) | 1991-09-04 | 1994-05-25 | 삼성전자 주식회사 | 마스크 리드 온리 메모리 |
US5664057A (en) * | 1993-07-07 | 1997-09-02 | Picturetel Corporation | Fixed bit rate speech encoder/decoder |
US5675590A (en) * | 1994-11-23 | 1997-10-07 | At&T Wireless Services, Inc. | Cyclic trellis coded modulation |
JP3152109B2 (ja) * | 1995-05-30 | 2001-04-03 | 日本ビクター株式会社 | オーディオ信号の圧縮伸張方法 |
JP3552811B2 (ja) * | 1995-09-29 | 2004-08-11 | 三菱電機株式会社 | ディジタル映像信号符号化装置および復号化装置 |
KR19980022377A (ko) | 1996-09-21 | 1998-07-06 | 김광호 | 적응형 격자 양자화기법에 의한 비디오신호 부호화 및 또는 복호화방법 |
JP3707154B2 (ja) * | 1996-09-24 | 2005-10-19 | ソニー株式会社 | 音声符号化方法及び装置 |
US5924064A (en) | 1996-10-07 | 1999-07-13 | Picturetel Corporation | Variable length coding using a plurality of region bit allocation patterns |
JPH10124092A (ja) | 1996-10-23 | 1998-05-15 | Sony Corp | 音声符号化方法及び装置、並びに可聴信号符号化方法及び装置 |
US5886276A (en) * | 1997-01-16 | 1999-03-23 | The Board Of Trustees Of The Leland Stanford Junior University | System and method for multiresolution scalable audio signal encoding |
JP3064947B2 (ja) * | 1997-03-26 | 2000-07-12 | 日本電気株式会社 | 音声・楽音符号化及び復号化装置 |
US5859788A (en) * | 1997-08-15 | 1999-01-12 | The Aerospace Corporation | Modulated lapped transform method |
US6199037B1 (en) * | 1997-12-04 | 2001-03-06 | Digital Voice Systems, Inc. | Joint quantization of speech subframe voicing metrics and fundamental frequencies |
WO1999050828A1 (en) * | 1998-03-30 | 1999-10-07 | Voxware, Inc. | Low-complexity, low-delay, scalable and embedded speech and audio coding with adaptive frame loss concealment |
CN100361405C (zh) * | 1998-05-27 | 2008-01-09 | 微软公司 | 利用可升级的音频编码器和解码器处理输入信号的方法 |
US6242936B1 (en) * | 1998-08-11 | 2001-06-05 | Texas Instruments Incorporated | Circuit for driving conductive line and testing conductive line for current leakage |
JP2000134105A (ja) * | 1998-10-29 | 2000-05-12 | Matsushita Electric Ind Co Ltd | オーディオ変換符号化に用いられるブロックサイズを決定し適応させる方法 |
US6300888B1 (en) | 1998-12-14 | 2001-10-09 | Microsoft Corporation | Entrophy code mode switching for frequency-domain audio coding |
US7315815B1 (en) * | 1999-09-22 | 2008-01-01 | Microsoft Corporation | LPC-harmonic vocoder with superframe structure |
US7039581B1 (en) * | 1999-09-22 | 2006-05-02 | Texas Instruments Incorporated | Hybrid speed coding and system |
US6377916B1 (en) * | 1999-11-29 | 2002-04-23 | Digital Voice Systems, Inc. | Multiband harmonic transform coder |
JP2002094992A (ja) | 2000-09-19 | 2002-03-29 | Sony Corp | 符号化データ長検出装置とその方法および画像符号化装置 |
JP2002196792A (ja) * | 2000-12-25 | 2002-07-12 | Matsushita Electric Ind Co Ltd | 音声符号化方式、音声符号化方法およびそれを用いる音声符号化装置、記録媒体、ならびに音楽配信システム |
US6734920B2 (en) * | 2001-04-23 | 2004-05-11 | Koninklijke Philips Electronics N.V. | System and method for reducing error propagation in a decision feedback equalizer of ATSC VSB receiver |
US6606044B2 (en) * | 2002-01-02 | 2003-08-12 | Motorola, Inc. | Method and apparatus for generating a pulse width modulated signal |
CA2388358A1 (en) | 2002-05-31 | 2003-11-30 | Voiceage Corporation | A method and device for multi-rate lattice vector quantization |
US8090577B2 (en) * | 2002-08-08 | 2012-01-03 | Qualcomm Incorported | Bandwidth-adaptive quantization |
US7460990B2 (en) | 2004-01-23 | 2008-12-02 | Microsoft Corporation | Efficient coding of digital media spectral data using wide-sense perceptual similarity |
JP4579930B2 (ja) | 2004-01-30 | 2010-11-10 | フランス・テレコム | 次元ベクトルおよび可変解像度量子化 |
FR2866166B1 (fr) * | 2004-02-06 | 2006-06-16 | Anagram Technologies Sa | Modulateur en treillis vectoriel |
CA2457988A1 (en) | 2004-02-18 | 2005-08-18 | Voiceage Corporation | Methods and devices for audio compression based on acelp/tcx coding and multi-rate lattice vector quantization |
ES2291877T3 (es) | 2004-05-17 | 2008-03-01 | Nokia Corporation | Codificacion de audio con diferentes modelos de codificacion. |
ATE457512T1 (de) | 2004-05-17 | 2010-02-15 | Nokia Corp | Audiocodierung mit verschiedenen codierungsrahmenlängen |
JP4533386B2 (ja) * | 2004-07-22 | 2010-09-01 | 富士通株式会社 | オーディオ符号化装置及びオーディオ符号化方法 |
WO2006054583A1 (ja) * | 2004-11-18 | 2006-05-26 | Canon Kabushiki Kaisha | オーディオ信号符号化装置および方法 |
JP4639073B2 (ja) | 2004-11-18 | 2011-02-23 | キヤノン株式会社 | オーディオ信号符号化装置および方法 |
US7460150B1 (en) * | 2005-03-14 | 2008-12-02 | Avaya Inc. | Using gaze detection to determine an area of interest within a scene |
US7627481B1 (en) * | 2005-04-19 | 2009-12-01 | Apple Inc. | Adapting masking thresholds for encoding a low frequency transient signal in audio data |
-
2006
- 2006-10-18 US US11/550,629 patent/US7953595B2/en not_active Expired - Fee Related
-
2007
- 2007-08-29 TW TW096132103A patent/TWI347589B/zh active
- 2007-09-28 EP EP07019185A patent/EP1914724B1/en active Active
- 2007-10-16 JP JP2007269116A patent/JP4742087B2/ja not_active Expired - Fee Related
- 2007-10-18 CN CN2007101671272A patent/CN101165778B/zh active Active
-
2008
- 2008-06-03 HK HK08106189.0A patent/HK1111801A1/xx not_active IP Right Cessation
Cited By (12)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2011063594A1 (zh) * | 2009-11-27 | 2011-06-03 | 中兴通讯股份有限公司 | 格型矢量量化音频编解码方法和系统 |
US9015052B2 (en) | 2009-11-27 | 2015-04-21 | Zte Corporation | Audio-encoding/decoding method and system of lattice-type vector quantizing |
CN103415884A (zh) * | 2011-04-20 | 2013-11-27 | 松下电器产业株式会社 | 用于执行霍夫曼编码的装置和方法 |
CN106803425A (zh) * | 2011-06-01 | 2017-06-06 | 三星电子株式会社 | 音频编码方法和设备、音频解码方法和设备 |
CN106803425B (zh) * | 2011-06-01 | 2021-01-12 | 三星电子株式会社 | 音频编码方法和设备、音频解码方法和设备 |
CN108269586A (zh) * | 2013-04-05 | 2018-07-10 | 杜比实验室特许公司 | 使用高级频谱延拓降低量化噪声的压扩装置和方法 |
US11423923B2 (en) | 2013-04-05 | 2022-08-23 | Dolby Laboratories Licensing Corporation | Companding system and method to reduce quantization noise using advanced spectral extension |
CN106663437A (zh) * | 2014-05-01 | 2017-05-10 | 日本电信电话株式会社 | 编码装置、解码装置、编码方法、解码方法、编码程序、解码程序、记录介质 |
CN105957533A (zh) * | 2016-04-22 | 2016-09-21 | 杭州微纳科技股份有限公司 | 语音压缩方法、语音解压方法及音频编码器、音频解码器 |
CN105957533B (zh) * | 2016-04-22 | 2020-11-10 | 杭州微纳科技股份有限公司 | 语音压缩方法、语音解压方法及音频编码器、音频解码器 |
CN114171034A (zh) * | 2021-12-02 | 2022-03-11 | 深圳市高速达科技有限公司 | 一种高清机顶盒语音数据编解码系统及方法 |
CN114171034B (zh) * | 2021-12-02 | 2024-05-14 | 深圳市高速达科技有限公司 | 一种高清机顶盒语音数据编解码系统及方法 |
Also Published As
Publication number | Publication date |
---|---|
EP1914724A3 (en) | 2011-12-07 |
EP1914724A2 (en) | 2008-04-23 |
EP1914724B1 (en) | 2012-12-05 |
US20080097749A1 (en) | 2008-04-24 |
TW200828268A (en) | 2008-07-01 |
US7953595B2 (en) | 2011-05-31 |
JP4742087B2 (ja) | 2011-08-10 |
TWI347589B (en) | 2011-08-21 |
JP2008102520A (ja) | 2008-05-01 |
HK1111801A1 (en) | 2008-08-15 |
CN101165778B (zh) | 2011-10-19 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN101165778B (zh) | 音频信号的双变换编码方法和装置 | |
CN101165777B (zh) | 快速点阵向量量化的方法 | |
JP5788833B2 (ja) | オーディオ信号の符号化方法、オーディオ信号の復号化方法及び記録媒体 | |
KR100571824B1 (ko) | 부가정보 삽입된 mpeg-4 오디오 bsac부호화/복호화 방법 및 장치 | |
US9037454B2 (en) | Efficient coding of overcomplete representations of audio using the modulated complex lapped transform (MCLT) | |
US20040068399A1 (en) | Method and apparatus for transmitting an audio stream having additional payload in a hidden sub-channel | |
JPH11186911A (ja) | ビット率の調節可能なオーディオ符号化/復号化方法及びその装置及びその方法を記録した記録媒体 | |
CN102332267A (zh) | 全频带可扩缩音频编解码器 | |
CN102741831A (zh) | 多点环境中的可伸缩音频 | |
Xue et al. | Robust speech steganography using differential SVD | |
US7983346B2 (en) | Method of and apparatus for encoding/decoding digital signal using linear quantization by sections | |
JP3923783B2 (ja) | 符号化装置及び復号化装置 | |
US6647063B1 (en) | Information encoding method and apparatus, information decoding method and apparatus and recording medium | |
Ding | Wideband audio over narrowband low-resolution media | |
JP3297238B2 (ja) | 適応的符号化システム及びビット割当方法 | |
Strahl et al. | An adaptive tree-based progressive audio compression scheme | |
JP2820096B2 (ja) | 符号化方式および復号方式 | |
Ding | Backward compatible wideband voice over narrowband low-resolution media | |
Sung et al. | An audio compression system using modified transform coding and dynamic bit allocation | |
Liu | The perceptual impact of different quantization schemes in G. 719 | |
Bachu et al. | A Comparison of LBG and ADPCM Speech Compression Techniques | |
Ziółko et al. | Transcription as a speech compression method in transmultiplexer system | |
JPH10233691A (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 | ||
TR01 | Transfer of patent right | ||
TR01 | Transfer of patent right |
Effective date of registration: 20231016 Address after: Texas, USA Patentee after: Huihe Development Co.,Ltd. Address before: California, USA Patentee before: Polycom, Inc. |