CN114694664A - 一种音频编码、解码方法、装置、设备及存储介质 - Google Patents

一种音频编码、解码方法、装置、设备及存储介质 Download PDF

Info

Publication number
CN114694664A
CN114694664A CN202110550167.5A CN202110550167A CN114694664A CN 114694664 A CN114694664 A CN 114694664A CN 202110550167 A CN202110550167 A CN 202110550167A CN 114694664 A CN114694664 A CN 114694664A
Authority
CN
China
Prior art keywords
scale factor
factor band
audio frame
current audio
coding mode
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.)
Pending
Application number
CN202110550167.5A
Other languages
English (en)
Inventor
闫建新
王磊
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Digital Rise Technology Co Ltd
Original Assignee
Digital Rise Technology Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Digital Rise Technology Co Ltd filed Critical Digital Rise Technology Co Ltd
Publication of CN114694664A publication Critical patent/CN114694664A/zh
Pending legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS OR SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING; SPEECH OR AUDIO CODING OR DECODING
    • G10L19/00Speech or audio signals analysis-synthesis techniques for redundancy reduction, e.g. in vocoders; Coding or decoding of speech or audio signals, using source filter models or psychoacoustic analysis
    • G10L19/04Speech or audio signals analysis-synthesis techniques for redundancy reduction, e.g. in vocoders; Coding or decoding of speech or audio signals, using source filter models or psychoacoustic analysis using predictive techniques
    • G10L19/16Vocoder architecture
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS OR SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING; SPEECH OR AUDIO CODING OR DECODING
    • G10L19/00Speech or audio signals analysis-synthesis techniques for redundancy reduction, e.g. in vocoders; Coding or decoding of speech or audio signals, using source filter models or psychoacoustic analysis
    • G10L19/02Speech 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/032Quantisation or dequantisation of spectral components

Abstract

本发明实施例提供了一种音频编码、解码方法、装置、设备及存储介质,方法包括:针对待编码的当前音频帧中的每个比例因子带,比较利用差分熵编码方式和熵编码方式对该比例因子带进行编码的码率,将利用码率更小的编码方式得到的数据确定为比例因子带的编码数据。可见,第一方面,本方案中采用差分熵编码方式,差分熵编码方式是对差分谱系数进行编码,其相比于对直接对量化后的谱系数进行编码,提高了编码效率;第二方面,本方案中通过对比差分熵编码方式和熵编码方式的码率,每个比例因子带都选择码率更小的编码方式,进一步提高了编码效率。

Description

一种音频编码、解码方法、装置、设备及存储介质
技术领域
本发明涉及音频技术领域,特别是涉及一种音频编码、解码方法、装置、设备及存储介质。
背景技术
音频编码可以减少音频数据的冗余,方便音频数据的传输及存储。一些相关的音频编码方案中,通常需要对音频的谱系数进行量化,对量化后的谱系数进行编码。
但是这种方案中,如果量化后的谱系数的数值较大,则对该系数直接进行编码的效率较低。
发明内容
本发明实施例的目的在于提供一种音频编码、解码方法、装置、设备及存储介质,以提高编码效率。
为达到上述目的,本发明实施例提供了一种音频编码方法,包括:
划分待编码的当前音频帧中的每个比例因子带;
针对所述当前音频帧中的每个比例因子带,分别利用差分熵编码方式和熵编码方式对该比例因子带进行编码,并确定利用差分熵编码方式对该比例因子带进行编码的第一码率、以及利用熵编码方式对该比例因子带进行编码的第二码率;如果所述第一码率小于所述第二码率,则将利用差分熵编码方式对该比例因子带编码得到的数据确定为该比例因子带的编码数据;如果所述第一码率不小于所述第二码率,则将利用熵编码方式对该比例因子带编码得到的数据确定为该比例因子带的编码数据。
可选的,所述划分待编码的当前音频帧中的每个比例因子带,包括:
按照预设划分方式,划分待编码的当前音频帧中的每个比例因子带,所述预设划分方式为:比例因子带的频率越高,则其包括的谱线数量越多。
可选的,所述针对所述当前音频帧中的每个比例因子带,分别利用差分熵编码方式和熵编码方式对该比例因子带进行编码之前,还包括:
判断所述当前音频帧及其上一音频帧的类型是否均为缓变信号;
如果否,则利用熵编码方式对每个比例因子带进行编码;
如果是,则执行所述针对所述当前音频帧中的每个比例因子带,分别利用差分熵编码方式和熵编码方式对该比例因子带进行编码的步骤。
可选的,所述针对所述当前音频帧中的每个比例因子带,分别利用差分熵编码方式和熵编码方式对该比例因子带进行编码,并确定利用差分熵编码方式对该比例因子带进行编码的第一码率、以及利用熵编码方式对该比例因子带进行编码的第二码率;如果所述第一码率小于所述第二码率,则将利用差分熵编码方式对该比例因子带编码得到的数据确定为该比例因子带的编码数据;如果所述第一码率不小于所述第二码率,则将利用熵编码方式对该比例因子带编码得到的数据确定为该比例因子带的编码数据,包括:
若对当前音频帧执行第一编码模式,则针对所述当前音频帧中的每个比例因子带,分别利用时域差分熵编码方式和熵编码方式对该比例因子带进行编码,并确定利用时域差分熵编码方式对该比例因子带进行编码的第一时域码率、以及利用熵编码方式对该比例因子带进行编码的第二码率;如果所述第一时域码率小于所述第二码率,则将利用时域差分熵编码方式对该比例因子带编码得到的数据确定为该比例因子带的编码数据;如果所述第一时域码率不小于所述第二码率,则将利用熵编码方式对该比例因子带编码得到的数据确定为该比例因子带的编码数据;
若对当前音频帧执行第二编码模式,则针对所述当前音频帧中的每个比例因子带,分别利用频域差分熵编码方式和熵编码方式对该比例因子带进行编码,并确定利用频域差分熵编码方式对该比例因子带进行编码的第一频域码率、以及利用熵编码方式对该比例因子带进行编码的第二码率;如果所述第一频域码率小于所述第二码率,则将利用频域差分熵编码方式对该比例因子带编码得到的数据确定为该比例因子带的编码数据;如果所述第一频域码率不小于所述第二码率,则将利用熵编码方式对该比例因子带编码得到的数据确定为该比例因子带的编码数据;
所述方法还包括:
确定对当前音频帧执行第一编码模式的第三码率、以及对当前音频帧执行第二编码模式的第四码率;
如果所述第三码率小于所述第四码率,则将对当前音频帧执行第一编码模式得到的数据确定为当前音频帧的编码数据;如果所述第三码率不小于所述第四码率,则将对当前音频帧执行第二编码模式得到的数据确定为当前音频帧的编码数据。
可选的,利用频域差分熵编码方式对该比例因子带进行编码,包括:
将当前音频帧的前一帧的量化后的谱系数的绝对值减去当前音频帧的量化后的谱系数的绝对值,得到当前音频帧的时域差分谱系数;
对所述当前音频帧的时域差分谱系数进行熵编码;
利用频域差分熵编码方式对该比例因子带进行编码,包括:
将当前音频帧量化后的谱系数的绝对值减去当前音频帧的前一帧的量化后的谱系数的绝对值,得到当前音频帧频域差分谱系数;
对所述当前音频帧的频域差分谱系数进行熵编码。
可选的,所述将利用差分熵编码方式对该比例因子带编码得到的数据确定为该比例因子带的编码数据之后,还包括:
在该比例因子带的编码数据中添加第一标记,所述第一标记表示:该比例因子带的编码方式为差分熵编码方式;
所述将利用熵编码方式对该比例因子带编码得到的数据确定为该比例因子带的编码数据之后,还包括:
在该比例因子带的编码数据中添加第二标记,所述第二标记表示:该比例因子带的编码方式为熵编码方式。
为达到上述目的,本发明实施例还提供了一种音频解码方法,包括:
针对待解码的当前音频帧中的每个比例因子带,判断该比例因子带对应的编码方式是差分熵编码方式还是熵编码方式;所述待解码的当前音频帧采用上述音频编码方法编码而成;
如果是差分熵编码方式,则利用差分熵编码方式对应的解码方式对该比例因子带进行解码;
如果是熵编码方式,则利用熵编码方式对应的解码方式对该比例因子带进行解码。
可选的,所述如果是差分熵编码方式,则利用差分熵编码方式对应的解码方式对该比例因子带进行解码,包括:
如果是时域差分熵编码方式,则利用时域差分熵编码方式对应的解码方式对该比例因子带进行解码;
如果是频域差分熵编码方式,则利用频域差分熵编码方式对应的解码方式对该比例因子带进行解码。
为达到上述目的,本发明实施例还提供了一种音频编码装置,包括:
划分模块,用于划分待编码的当前音频帧中的每个比例因子带;
第一编码模块,用于针对所述当前音频帧中的每个比例因子带,利用差分熵编码方式对该比例因子带进行编码;
第二编码模块,用于针对所述当前音频帧中的每个比例因子带,利用熵编码方式对该比例因子带进行编码;
第一确定模块,用于确定利用差分熵编码方式对该比例因子带进行编码的第一码率;
第二确定模块,用于利用熵编码方式对该比例因子带进行编码的第二码率;
第一判断模块,用于判断所述第一码率是否小于所述第二码率,如果小于,触发第三确定模块,如果不小于,触发第四确定模块;
第三确定模块,用于将利用差分熵编码方式对该比例因子带编码得到的数据确定为该比例因子带的编码数据;
第四确定模块,用于将将利用熵编码方式对该比例因子带编码得到的数据确定为该比例因子带的编码数据。
可选的,所述划分模块,具体用于:
按照预设划分方式,划分待编码的当前音频帧中的每个比例因子带,所述预设划分方式为:比例因子带的频率越高,则其包括的谱线数量越多。
可选的,所述装置还包括:
第二判断模块,用于判断所述当前音频帧及其上一音频帧的类型是否均为缓变信号;如果否,则触发第三编码模块,如果是,则解发所述第一编码模块和所述第二编码模块;
第三编码模块,用于利用熵编码方式对每个比例因子带进行编码。
可选的,所述第一编码模块,具体用于:在对当前音频帧执行第一编码模式的情况下,针对所述当前音频帧中的每个比例因子带,利用时域差分熵编码方式对该比例因子带进行编码;在对当前音频帧执行第二编码模式的情况下,则针对所述当前音频帧中的每个比例因子带,利用频域差分熵编码方式对该比例因子带进行编码;
所述第一确定模块,具体用于:在对当前音频帧执行第一编码模式的情况下,确定利用时域差分熵编码方式对该比例因子带进行编码的第一时域码率;在对当前音频帧执行第二编码模式的情况下,确定利用频域差分熵编码方式对该比例因子带进行编码的第一频域码率;
所述第一判断模块,具体用于:在对当前音频帧执行第一编码模式的情况下,判断所述第一时域码率是否小于所述第二码率;在对当前音频帧执行第二编码模式的情况下,所述第一频域码率是否小于所述第二码率;
所述第三确定模块,具体用于:在对当前音频帧执行第一编码模式的情况下,将利用差分熵编码方式对该比例因子带编码得到的数据确定为该比例因子带的编码数据;在对当前音频帧执行第二编码模式的情况下,将利用频域差分熵编码方式对该比例因子带编码得到的数据确定为该比例因子带的编码数据;
所述装置还包括:
第五确定模块,用于确定对当前音频帧执行第一编码模式的第三码率、以及对当前音频帧执行第二编码模式的第四码率;
第三判断模块,用于判断所述第三码率是否小于所述第四码率,如果小于,执行第六确定模块,如果不小于,执行第七确定模块;
第六确定模块,用于将对当前音频帧执行第一编码模式得到的数据确定为当前音频帧的编码数据;
第七确定模块,用于将对当前音频帧执行第二编码模式得到的数据确定为当前音频帧的编码数据。
可选的,所述第一编码模块,具体用于:
在对当前音频帧执行第一编码模式的情况下,针对所述当前音频帧中的每个比例因子带,将当前音频帧的前一帧的量化后的谱系数的绝对值减去当前音频帧的量化后的谱系数的绝对值,得到当前音频帧的时域差分谱系数;对所述当前音频帧的时域差分谱系数进行熵编码;
在对当前音频帧执行第二编码模式的情况下,针对所述当前音频帧中的每个比例因子带,将当前音频帧量化后的谱系数的绝对值减去当前音频帧的前一帧的量化后的谱系数的绝对值,得到当前音频帧频域差分谱系数;对所述当前音频帧的频域差分谱系数进行熵编码。
可选的,所述装置还包括:
标记模块,用于在所述第三确定模块将利用差分熵编码方式对该比例因子带编码得到的数据确定为该比例因子带的编码数据之后,在该比例因子带的编码数据中添加第一标记,所述第一标记表示:该比例因子带的编码方式为差分熵编码方式;
在所述第四确定模块将利用熵编码方式对该比例因子带编码得到的数据确定为该比例因子带的编码数据之后,在该比例因子带的编码数据中添加第二标记,所述第二标记表示:该比例因子带的编码方式为熵编码方式。
为达到上述目的,本发明实施例还提供了一种音频解码装置,包括:
第四判断模块,用于针对待解码的当前音频帧中的每个比例因子带,判断该比例因子带对应的编码方式是差分熵编码方式还是熵编码方式;所述待解码的当前音频帧采用上述音频编码装置编码而成;如果是差分熵编码方式,则触发第一解码模块,如果是熵编码方式,则触发第二解码模块;
第一解码模块,用于利用差分熵编码方式对应的解码方式对该比例因子带进行解码;
第二解码模块,用于利用熵编码方式对应的解码方式对该比例因子带进行解码。
可选的,所述第一解码模块,具体用于:
在判断解码方式为时域差分熵编码方式的情况下,利用时域差分熵编码方式对应的解码方式对该比例因子带进行解码;
在判断解码方式为频域差分熵编码方式的情况下,利用频域差分熵编码方式对应的解码方式对该比例因子带进行解码。
为达到上述目的,本发明实施例还提供了一种电子设备,包括处理器和存储器;
存储器,用于存放计算机程序;
处理器,用于执行存储器上所存放的程序时,实现上述任意一种音频编码方法或音频解码方法。
为达到上述目的,本发明实施例还提供了一种计算机可读存储介质,所述计算机可读存储介质内存储有计算机程序,所述计算机程序被处理器执行时实现上述任意一种音频编码方法或音频解码方法。
应用本发明所示实施例,针对待编码的当前音频帧中的每个比例因子带,比较利用差分熵编码方式和熵编码方式对该比例因子带进行编码的码率,将利用码率更小的编码方式得到的数据确定为比例因子带的编码数据。可见,第一方面,本方案中采用差分熵编码方式,差分熵编码方式是对差分谱系数进行编码,其相比于对直接对量化后的谱系数进行编码,提高了编码效率;第二方面,本方案中通过对比差分熵编码方式和熵编码方式的码率,每个比例因子带都选择码率更小的编码方式,进一步提高了编码效率。
当然,实施本发明的任一产品或方法并不一定需要同时达到以上所述的所有优点。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为本发明实施例提供的音频编码方法的第一种流程示意图;
图2为本发明一种示例性实施例中相邻4帧前512个量化后谱系数的绝对值;
图3为图2中相邻4帧从第144根谱线到第271根谱线量化后谱系数的绝对值;
图4是图2中第2帧量化后谱系数的绝对值与第2帧和第1帧的量化后谱系数差的绝对值对比图;
图5是图2中第3帧量化后谱系数的绝对值与第3帧和第2帧的量化后谱系数差的绝对值对比图;
图6是图2中第4帧量化后谱系数的绝对值与第4帧和第3帧的量化后谱系数差的绝对值对比图;
图7为本发明实施例提供的音频编码方法的第二种流程示意图;
图8为本发明实施例提供的一种音频解码方法的流程示意图;
图9为本发明实施例提供的一种音频编码装置的结构示意图;
图10为本发明实施例提供的一种音频解码装置的结构示意图;
图11为本发明实施例提供的一种电子设备的结构示意图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员基于本申请所获得的所有其他实施例,都属于本发明保护的范围。
为了达到上述目的,本发明实施例提供了一种音频编码、解码方法、装置、设备及存储介质,该方法及装置可以应用于各种电子设备,电子设备的具体类型不做限定。下面首先对该音频编码方法进行详细介绍。以下方法实施例中的各个步骤按照合乎逻辑的顺序执行即可,步骤标号或者对各步骤进行介绍的先后顺序,并不对各步骤的执行顺序构成限定。
图1为本发明实施例提供的音频编码方法的第一种流程示意图,包括:
S101:划分待编码的当前音频帧中的每个比例因子带。
本发明的一种示例性实施例中,S101可以包括:按照预设划分方式,划分待编码的当前音频帧中的每个比例因子带,所述预设划分方式为:比例因子带的频率越高,则其包括的谱线数量越多。
本示例性实施例中,在低频时,可以将较少谱线组成1个比例因子带;高频时,将较多的谱线组成一个比例因子带。例如,该预设划分方式可以如表1所示,表1中的索引由小到大频率越来越高,带宽表示其包括的谱线数量:
表1
Figure BDA0003075137890000091
Figure BDA0003075137890000101
表1中,在低频时每个比例因子带由4根谱线组成,在高频时每个比例因子带由8根、16根一直到256根谱线组成。表1仅为一种示例性实施例,并不对比例因子带的划分方式构成限定。划分比例因子带有多种方式,这里不再一一列举。
S102:针对当前音频帧中的每个比例因子带,分别利用差分熵编码方式和熵编码方式对该比例因子带进行编码。
熵编码是指,编码过程中按熵原理不丢失任何信息的编码。举例来说,熵编码方式可以包括香农(Shannon)编码、哈夫曼(Huffman)编码和算术编码(arithmetic coding)、DRA(Digital Rise Audio,数字音频编码)、AAC(Advanced Audio Coding,高级音频编码)或MP3(Moving Picture Experts Group Audio Layer III,动态影像专家压缩标准音频层面3)编码等等,不再一一列举。
本发明实施例中的“熵编码方式”可以理解为直接对量化后的谱系数进行编码的方式。
举例来说,可以采用如下算式1对谱系数进行量化:
Figure BDA0003075137890000102
其中:X(k)为量化前的谱系数;
Figure BDA0003075137890000103
为量化后的谱系数的整数表示;△为量化步长;δ为优化量化而选择的一个0.4至0.5之间的小数,k表示谱线的序号。
根据量化后的谱系数
Figure BDA0003075137890000104
值的范围,可以每1根谱线、或者2根谱线或者4根谱线组成一个码字进行Huffman编码或其他熵编码方式。
本发明实施例中的“差分熵编码方式”可以理解为对量化后的谱系数进行差分后再编码的方式。
S103:确定利用差分熵编码方式对该比例因子带进行编码的第一码率、以及利用熵编码方式对该比例因子带进行编码的第二码率。
码率也称比特率,可以表示经过编码后的音频数据每秒钟需要用多少个比特。
S104:判断第一码率是否小于第二码率,如果小于,执行S105,如果不小于,执行S106。
S105:将利用差分熵编码方式对该比例因子带编码得到的数据确定为该比例因子带的编码数据。
S106:将利用熵编码方式对该比例因子带编码得到的数据确定为该比例因子带的编码数据。
这里所说的“确定为该比例因子带的编码数据”可以这样理解:通过不同的编码方式得到了多份编码数据,但仅将其中一份作为实际的编码数据(也就是确定为该比例因子带的编码数据),后续的存储、传输等均使用这一份实际的编码数据,其余的编码数据可以丢弃或者其他处理,不作为实际的编码数据。
图2示例性地示出了相邻4帧前512个量化后的谱系数的绝对值,图3示例性地示出了相邻4帧从第144根谱线到第271根谱线量化后的谱系数的绝对值,由图2和图3可知,前后帧量化后的谱系数具有相关性。
图4示例性地示出了第2帧量化后的谱系数的绝对值与第2帧和第1帧的量化后的谱系数差的绝对值对比情况,图5示例性地示出了第3帧量化后的谱系数的绝对值与第3帧和第2帧的量化后的谱系数差的绝对值对比情况,图6示例性地示出了第4帧量化后的谱系数的绝对值与第4帧和第3帧的量化后的谱系数差的绝对值对比情况,由图4~图6可知,对于较大的量化后的谱系数来说,其差值的动态范围比原值的动态范围小,因此使用差值进行熵编码,编码效率会有较大提高。但由图4~图6还可以看到,一些谱线做了差分后,动态范围变大了,码率也会增大,因此,本发明实施例中,对比差分熵编码方式和熵编码方式的码率,每个比例因子带都选择码率更小的编码方式,这样可以降低这种情况的干扰,进一步提高编码效率。
本发明的一种示例性实施例中,S102之前,可以先判断所述当前音频帧及其上一音频帧的类型是否均为缓变信号;如果否,则利用熵编码方式对每个比例因子带进行编码;如果是,则执行S102。
缓变信号可以理解为变化缓慢的信号,通常缓变信号的导数的绝对值较小,其信号波形没有剧烈的起伏,其适合进行差分熵编码方式,本示例性实施例中对于非缓变信号中的每个比例因子带不再采用差分熵编码方式,可见,本示例性实施例考虑了不同音频信号的特性,方案的通用性更佳。
本发明的一种示例性实施例中,可以设定两种编码模式,这两种编码模式是针对音频帧而言的(针对一个音频帧中全部的比例因子带),对同一个音频帧来说,分别执行这两种编码模式对其进行编码,后续再比较这两种编码模式的码率,选择码率更小的一种编码模式对应的编码数据,作为该音频帧的编码数据。为了区分描述,将这两种编码模式分别称为第一编码模式和第二编码模式。第一编码模式中,对于每个比例因子带来说,在时域差分熵编码方式和熵编码方式中选择码率较低的一种编码方式,而第二编码模式中,对于每个比例因子带来说,在频域差分熵编码方式和熵编码方式中选择码率较低的一种编码方式。
本实施例中,S102-S106包括:若对当前音频帧执行第一编码模式,则针对所述当前音频帧中的每个比例因子带,分别利用时域差分熵编码方式和熵编码方式对该比例因子带进行编码,并确定利用时域差分熵编码方式对该比例因子带进行编码的第一时域码率、以及利用熵编码方式对该比例因子带进行编码的第二码率;如果所述第一时域码率小于所述第二码率,则将利用时域差分熵编码方式对该比例因子带编码得到的数据确定为该比例因子带的编码数据;如果所述第一时域码率不小于所述第二码率,则将利用熵编码方式对该比例因子带编码得到的数据确定为该比例因子带的编码数据;
若对当前音频帧执行第二编码模式,则针对所述当前音频帧中的每个比例因子带,分别利用频域差分熵编码方式和熵编码方式对该比例因子带进行编码,并确定利用频域差分熵编码方式对该比例因子带进行编码的第一频域码率、以及利用熵编码方式对该比例因子带进行编码的第二码率;如果所述第一频域码率小于所述第二码率,则将利用频域差分熵编码方式对该比例因子带编码得到的数据确定为该比例因子带的编码数据;如果所述第一频域码率不小于所述第二码率,则将利用熵编码方式对该比例因子带编码得到的数据确定为该比例因子带的编码数据;
S105或者S106之后还包括:确定对当前音频帧执行第一编码模式的第三码率、以及对当前音频帧执行第二编码模式的第四码率;如果所述第三码率小于所述第四码率,则将对当前音频帧执行第一编码模式得到的数据确定为当前音频帧的编码数据;如果所述第三码率不小于所述第四码率,则将对当前音频帧执行第二编码模式得到的数据确定为当前音频帧的编码数据。
本示例性实施例中,在每个比例因子带都选择码率更小的编码方式的基础上,进一步每个音频帧都选择码率更小的编码模式,进一步提高了编码效率。
本发明的一种示例性实施例中,利用频域差分熵编码方式对该比例因子带进行编码,可以包括:
将当前音频帧的前一帧的量化后的谱系数的绝对值减去当前音频帧的量化后的谱系数的绝对值,得到当前音频帧的时域差分谱系数;对所述当前音频帧的时域差分谱系数进行熵编码。
举例来说,可以利用如下算式2计算当前音频帧的时域差分谱系数:
Figure BDA0003075137890000131
其中,dt(k)表示当前音频帧的时域差分谱系数,
Figure BDA0003075137890000132
为当前音频帧的量化后的谱系数的整数表示,
Figure BDA0003075137890000133
为当前音频帧的前一帧的量化后的谱系数的整数表示,k表示谱线的序号。
利用频域差分熵编码方式对该比例因子带进行编码,可以包括:
将当前音频帧量化后的谱系数的绝对值减去当前音频帧的前一帧的量化后的谱系数的绝对值,得到当前音频帧频域差分谱系数;对所述当前音频帧的频域差分谱系数进行熵编码。
举例来说,可以利用如下算式3和4计算当前音频帧的频域差分谱系数:
Figure BDA0003075137890000141
Figure BDA0003075137890000142
其中,dt(k)表示当前音频帧的频域差分谱系数,
Figure BDA0003075137890000143
为当前音频帧的量化后的谱系数的整数表示,
Figure BDA0003075137890000144
为当前音频帧的前一帧的量化后的谱系数的整数表示,k表示谱线的序号。
本发明的一种示例性实施例中,S105之后可以在该比例因子带的编码数据中添加第一标记,所述第一标记表示:该比例因子带的编码方式为差分熵编码方式,S106可以在该比例因子带的编码数据中添加第二标记,所述第二标记表示:该比例因子带的编码方式为熵编码方式。
本实施例有助于解码端根据编码数据中添加的标记来确定每个比例因子带对应的解码方式。上述实施例中,差分熵编码方式进一步分为时域差分熵编码方式和频域差分熵编码方式,这些实施例中,可以针对时域差分熵编码方式和频域差分熵编码方式添加不同的标记。
应用本发明实施例,第一方面,本方案中采用差分熵编码方式,差分熵编码方式是对差分谱系数进行编码,其相比于对直接对量化后的谱系数进行编码,提高了编码效率;由图4~图6可知,对于较大的量化后的谱系数来说,其差值的动态范围比原值的动态范围小,因此使用差值进行熵编码,编码效率会有较大提高。
第二方面,本方案中通过对比差分熵编码方式和熵编码方式的码率,每个比例因子带都选择码率更小的编码方式,进一步提高了编码效率;由图4~图6还可以看到,一些谱线做了差分后,动态范围变大了,码率也会增大,因此,本发明实施例中,对比差分熵编码方式和熵编码方式的码率,每个比例因子带都选择码率更小的编码方式,这样可以降低这种情况的干扰,进一步提高编码效率。
图7为本发明实施例提供的音频编码方法的第二种流程示意图,包括:
S701:划分待编码的当前音频帧中的每个比例因子带。
S702:判断当前音频帧及其上一音频帧的类型是否均为缓变信号;如果否,则执行S703,如果是,则执行S704及S705。S704与S705的执行顺序不做限定。S701与S702的执行顺序也不做限定。
S703:利用熵编码方式对每个比例因子带进行编码。
S704:对当前音频帧执行第一编码模式,第一编码模式包括如下步骤:
S7041:针对当前音频帧中的每个比例因子带,分别利用时域差分熵编码方式和熵编码方式对该比例因子带进行编码。
S7042:确定利用时域差分熵编码方式对该比例因子带进行编码的第一时域码率、以及利用熵编码方式对该比例因子带进行编码的第二码率。
S7043:判断第一时域码率是否小于第二码率,如果小于,执行S7044,如果不小于,执行S7045。
S7044:将利用时域差分熵编码方式对该比例因子带编码得到的数据确定为该比例因子带的编码数据。
S7045:将利用熵编码方式对该比例因子带编码得到的数据确定为该比例因子带的编码数据。
S705:对当前音频帧执行第二编码模式,第二编码模式包括如下步骤:
S7051:针对当前音频帧中的每个比例因子带,分别利用频域差分熵编码方式和熵编码方式对该比例因子带进行编码。
S7052:确定利用频域差分熵编码方式对该比例因子带进行编码的第一频域码率、以及利用熵编码方式对该比例因子带进行编码的第二码率。
S7053:判断第一频域码率是否小于第二码率,如果小于,执行S7054,如果不小于,执行S7055。
S7054:将利用频域差分熵编码方式对该比例因子带编码得到的数据确定为该比例因子带的编码数据。
S7054:将利用熵编码方式对该比例因子带编码得到的数据确定为该比例因子带的编码数据。
S706:确定对当前音频帧执行第一编码模式的第三码率、以及对当前音频帧执行第二编码模式的第四码率。
S707:判断第三码率是否小于第四码率,如果小于,则执行S708,如果不小于,则执行S709。
S708:将对当前音频帧执行第一编码模式得到的数据确定为当前音频帧的编码数据。
S709:将对当前音频帧执行第二编码模式得到的数据确定为当前音频帧的编码数据。
应用本发明实施例,第一方面,本方案中采用差分熵编码方式,差分熵编码方式是对差分谱系数进行编码,其相比于对直接对量化后的谱系数进行编码,提高了编码效率;由图4~图6可知,对于较大的量化后的谱系数来说,其差值的动态范围比原值的动态范围小,因此使用差值进行熵编码,编码效率会有较大提高。
第二方面,本方案中通过对比差分熵编码方式和熵编码方式的码率,每个比例因子带都选择码率更小的编码方式,进一步提高了编码效率;由图4~图6还可以看到,一些谱线做了差分后,动态范围变大了,码率也会增大,因此,本发明实施例中,对比差分熵编码方式和熵编码方式的码率,每个比例因子带都选择码率更小的编码方式,这样可以降低这种情况的干扰,进一步提高编码效率。
第三方面,本实施例中,在每个比例因子带都选择码率更小的编码方式的基础上,进一步每个音频帧都选择码率更小的编码模式,进一步提高了编码效率。
与上述音频编码方法实施例相对应,本发明实施例还提供了一种音频解码方法。
图8为本发明实施例提供的一种音频解码方法的流程示意图,包括:
S801:针对待解码的当前音频帧中的每个比例因子带,判断该比例因子带对应的编码方式是差分熵编码方式还是熵编码方式;所述待解码的当前音频帧采用本发明上述实施例所述的音频编码方法编码而成;如果是差分熵编码方式,则执行S802,如果是熵编码方式,则执行S803。
上述实施例中,在每个比例因子带的编码数据中添加标记以标记该比例因子带采用的编码方式,这样,S801中可以根据该标记判断该比例因子带对应的编码方式是差分熵编码方式还是熵编码方式。
S802:利用差分熵编码方式对应的解码方式对该比例因子带进行解码。
本发明的一种示例性实施例中,S802可以包括:如果是时域差分熵编码方式,则利用时域差分熵编码方式对应的解码方式对该比例因子带进行解码;
如果是频域差分熵编码方式,则利用频域差分熵编码方式对应的解码方式对该比例因子带进行解码。
S803:利用熵编码方式对应的解码方式对该比例因子带进行解码。
与上述方法实施例相对应,本发明实施例还提供了一种音频编码装置,如图9所示,包括:
划分模块901,用于划分待编码的当前音频帧中的每个比例因子带;
第一编码模块902,用于针对所述当前音频帧中的每个比例因子带,利用差分熵编码方式对该比例因子带进行编码;
第二编码模块903,用于针对所述当前音频帧中的每个比例因子带,利用熵编码方式对该比例因子带进行编码;
第一确定模块904,用于确定利用差分熵编码方式对该比例因子带进行编码的第一码率;
第二确定模块905,用于利用熵编码方式对该比例因子带进行编码的第二码率;
第一判断模块906,用于判断所述第一码率是否小于所述第二码率,如果小于,触发第三确定模块907,如果不小于,触发第四确定模块908;
第三确定模块907,用于将利用差分熵编码方式对该比例因子带编码得到的数据确定为该比例因子带的编码数据;
第四确定模块908,用于将将利用熵编码方式对该比例因子带编码得到的数据确定为该比例因子带的编码数据。
本发明的一种示例性实施例中,划分模块901具体用于:
按照预设划分方式,划分待编码的当前音频帧中的每个比例因子带,所述预设划分方式为:比例因子带的频率越高,则其包括的谱线数量越多。
本发明的一种示例性实施例中,所述装置还包括:第二判断模块和第三编码模块(图中未示出),其中,
第二判断模块,用于判断所述当前音频帧及其上一音频帧的类型是否均为缓变信号;如果否,则触发第三编码模块,如果是,则解发第一编码模块902和第二编码模块903;
第三编码模块,用于利用熵编码方式对每个比例因子带进行编码。
本发明的一种示例性实施例中,第一编码模块902具体用于:在对当前音频帧执行第一编码模式的情况下,针对所述当前音频帧中的每个比例因子带,利用时域差分熵编码方式对该比例因子带进行编码;在对当前音频帧执行第二编码模式的情况下,则针对所述当前音频帧中的每个比例因子带,利用频域差分熵编码方式对该比例因子带进行编码;
第一确定模块904具体用于:在对当前音频帧执行第一编码模式的情况下,确定利用时域差分熵编码方式对该比例因子带进行编码的第一时域码率;在对当前音频帧执行第二编码模式的情况下,确定利用频域差分熵编码方式对该比例因子带进行编码的第一频域码率;
第一判断模块906具体用于:在对当前音频帧执行第一编码模式的情况下,判断所述第一时域码率是否小于所述第二码率;在对当前音频帧执行第二编码模式的情况下,所述第一频域码率是否小于所述第二码率;
第三确定模块907具体用于:在对当前音频帧执行第一编码模式的情况下,将利用差分熵编码方式对该比例因子带编码得到的数据确定为该比例因子带的编码数据;在对当前音频帧执行第二编码模式的情况下,将利用频域差分熵编码方式对该比例因子带编码得到的数据确定为该比例因子带的编码数据;
所述装置还包括:第五确定模块、第三判断模块、第六确定模块和第七确定模块(图中未示出),其中,
第五确定模块,用于确定对当前音频帧执行第一编码模式的第三码率、以及对当前音频帧执行第二编码模式的第四码率;
第三判断模块,用于判断所述第三码率是否小于所述第四码率,如果小于,执行第六确定模块,如果不小于,执行第七确定模块;
第六确定模块,用于将对当前音频帧执行第一编码模式得到的数据确定为当前音频帧的编码数据;
第七确定模块,用于将对当前音频帧执行第二编码模式得到的数据确定为当前音频帧的编码数据。
本发明的一种示例性实施例中,第一编码模块902具体用于:
在对当前音频帧执行第一编码模式的情况下,针对所述当前音频帧中的每个比例因子带,将当前音频帧的前一帧的量化后的谱系数的绝对值减去当前音频帧的量化后的谱系数的绝对值,得到当前音频帧的时域差分谱系数;对所述当前音频帧的时域差分谱系数进行熵编码;
在对当前音频帧执行第二编码模式的情况下,针对所述当前音频帧中的每个比例因子带,将当前音频帧量化后的谱系数的绝对值减去当前音频帧的前一帧的量化后的谱系数的绝对值,得到当前音频帧频域差分谱系数;对所述当前音频帧的频域差分谱系数进行熵编码。
本发明的一种示例性实施例中,所述装置还包括:
标记模块(图中未示出),用于在第三确定模块907将利用差分熵编码方式对该比例因子带编码得到的数据确定为该比例因子带的编码数据之后,在该比例因子带的编码数据中添加第一标记,所述第一标记表示:该比例因子带的编码方式为差分熵编码方式;
在第四确定模块908将利用熵编码方式对该比例因子带编码得到的数据确定为该比例因子带的编码数据之后,在该比例因子带的编码数据中添加第二标记,所述第二标记表示:该比例因子带的编码方式为熵编码方式。
与上述方法实施例相对应,本发明实施例还提供了一种音频解码装置,如图10所示,包括:
第四判断模块1001,用于针对待解码的当前音频帧中的每个比例因子带,判断该比例因子带对应的编码方式是差分熵编码方式还是熵编码方式;所述待解码的当前音频帧采用上述实施例中所述的音频编码装置编码而成;如果是差分熵编码方式,则触发第一解码模块1002,如果是熵编码方式,则触发第二解码模块1003;
第一解码模块1002,用于利用差分熵编码方式对应的解码方式对该比例因子带进行解码;
第二解码模块1003,用于利用熵编码方式对应的解码方式对该比例因子带进行解码。
本发明的一种示例性实施例中,第一解码模块1002具体用于:
在判断解码方式为时域差分熵编码方式的情况下,利用时域差分熵编码方式对应的解码方式对该比例因子带进行解码;
在判断解码方式为频域差分熵编码方式的情况下,利用频域差分熵编码方式对应的解码方式对该比例因子带进行解码。
本发明实施例还提供了一种电子设备,如图11所示,包括处理器1101和存储器1102,
存储器1102,用于存放计算机程序;
处理器1101,用于执行存储器102上所存放的程序时,实现上述任意一种音频编码、解码方法。
上述电子设备提到的存储器可以包括随机存取存储器(Random Access Memory,RAM),也可以包括非易失性存储器(Non-Volatile Memory,NVM),例如至少一个磁盘存储器。可选的,存储器还可以是至少一个位于远离前述处理器的存储装置。
上述的处理器可以是通用处理器,包括中央处理器(Central Processing Unit,CPU)、网络处理器(Network Processor,NP)等;还可以是数字信号处理器(Digital SignalProcessing,DSP)、专用集成电路(Application Specific Integrated Circuit,ASIC)、现场可编程门阵列(Field-Programmable Gate Array,FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件。
在本发明提供的又一实施例中,还提供了一种计算机可读存储介质,该计算机可读存储介质内存储有计算机程序,所述计算机程序被处理器执行时实现上述任意一种音频编码、解码方法。
在本发明提供的又一实施例中,还提供了一种包含指令的计算机程序产品,当其在计算机上运行时,使得计算机执行上述任意一种音频编码、解码方法。
在上述实施例中,可以全部或部分地通过软件、硬件、固件或者其任意组合来实现。当使用软件实现时,可以全部或部分地以计算机程序产品的形式实现。所述计算机程序产品包括一个或多个计算机指令。在计算机上加载和执行所述计算机程序指令时,全部或部分地产生按照本发明实施例所述的流程或功能。所述计算机可以是通用计算机、专用计算机、计算机网络、或者其他可编程装置。所述计算机指令可以存储在计算机可读存储介质中,或者从一个计算机可读存储介质向另一个计算机可读存储介质传输,例如,所述计算机指令可以从一个网站站点、计算机、服务器或数据中心通过有线(例如同轴电缆、光纤、数字用户线(DSL))或无线(例如红外、无线、微波等)方式向另一个网站站点、计算机、服务器或数据中心进行传输。所述计算机可读存储介质可以是计算机能够存取的任何可用介质或者是包含一个或多个可用介质集成的服务器、数据中心等数据存储设备。所述可用介质可以是磁性介质,(例如,软盘、硬盘、磁带)、光介质(例如,DVD)、或者半导体介质(例如固态硬盘Solid State Disk(SSD))等。
需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。
本说明书中的各个实施例均采用相关的方式描述,各个实施例之间相同相似的部分互相参见即可,每个实施例重点说明的都是与其他实施例的不同之处。尤其,对于装置实施例、设备实施例、计算机可读存储介质实施例、以及计算机程序产品实施例而言,由于其基本相似于方法实施例,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。
以上所述仅为本发明的较佳实施例,并非用于限定本发明的保护范围。凡在本发明的精神和原则之内所作的任何修改、等同替换、改进等,均包含在本发明的保护范围内。

Claims (18)

1.一种音频编码方法,包括:
划分待编码的当前音频帧中的每个比例因子带;
针对所述当前音频帧中的每个比例因子带,分别利用差分熵编码方式和熵编码方式对该比例因子带进行编码,并确定利用差分熵编码方式对该比例因子带进行编码的第一码率、以及利用熵编码方式对该比例因子带进行编码的第二码率;如果所述第一码率小于所述第二码率,则将利用差分熵编码方式对该比例因子带编码得到的数据确定为该比例因子带的编码数据;如果所述第一码率不小于所述第二码率,则将利用熵编码方式对该比例因子带编码得到的数据确定为该比例因子带的编码数据。
2.根据权利要求1所述的方法,其中,所述划分待编码的当前音频帧中的每个比例因子带,包括:
按照预设划分方式,划分待编码的当前音频帧中的每个比例因子带,所述预设划分方式为:比例因子带的频率越高,则其包括的谱线数量越多。
3.根据权利要求1所述的方法,其中,所述针对所述当前音频帧中的每个比例因子带,分别利用差分熵编码方式和熵编码方式对该比例因子带进行编码之前,还包括:
判断所述当前音频帧及其上一音频帧的类型是否均为缓变信号;
如果否,则利用熵编码方式对每个比例因子带进行编码;
如果是,则执行所述针对所述当前音频帧中的每个比例因子带,分别利用差分熵编码方式和熵编码方式对该比例因子带进行编码的步骤。
4.根据权利要求1所述的方法,其中,所述针对所述当前音频帧中的每个比例因子带,分别利用差分熵编码方式和熵编码方式对该比例因子带进行编码,并确定利用差分熵编码方式对该比例因子带进行编码的第一码率、以及利用熵编码方式对该比例因子带进行编码的第二码率;如果所述第一码率小于所述第二码率,则将利用差分熵编码方式对该比例因子带编码得到的数据确定为该比例因子带的编码数据;如果所述第一码率不小于所述第二码率,则将利用熵编码方式对该比例因子带编码得到的数据确定为该比例因子带的编码数据,包括:
若对当前音频帧执行第一编码模式,则针对所述当前音频帧中的每个比例因子带,分别利用时域差分熵编码方式和熵编码方式对该比例因子带进行编码,并确定利用时域差分熵编码方式对该比例因子带进行编码的第一时域码率、以及利用熵编码方式对该比例因子带进行编码的第二码率;如果所述第一时域码率小于所述第二码率,则将利用时域差分熵编码方式对该比例因子带编码得到的数据确定为该比例因子带的编码数据;如果所述第一时域码率不小于所述第二码率,则将利用熵编码方式对该比例因子带编码得到的数据确定为该比例因子带的编码数据;
若对当前音频帧执行第二编码模式,则针对所述当前音频帧中的每个比例因子带,分别利用频域差分熵编码方式和熵编码方式对该比例因子带进行编码,并确定利用频域差分熵编码方式对该比例因子带进行编码的第一频域码率、以及利用熵编码方式对该比例因子带进行编码的第二码率;如果所述第一频域码率小于所述第二码率,则将利用频域差分熵编码方式对该比例因子带编码得到的数据确定为该比例因子带的编码数据;如果所述第一频域码率不小于所述第二码率,则将利用熵编码方式对该比例因子带编码得到的数据确定为该比例因子带的编码数据;
所述方法还包括:
确定对当前音频帧执行第一编码模式的第三码率、以及对当前音频帧执行第二编码模式的第四码率;
如果所述第三码率小于所述第四码率,则将对当前音频帧执行第一编码模式得到的数据确定为当前音频帧的编码数据;如果所述第三码率不小于所述第四码率,则将对当前音频帧执行第二编码模式得到的数据确定为当前音频帧的编码数据。
5.根据权利要求4所述的方法,其中,利用频域差分熵编码方式对该比例因子带进行编码,包括:
将当前音频帧的前一帧的量化后的谱系数的绝对值减去当前音频帧的量化后的谱系数的绝对值,得到当前音频帧的时域差分谱系数;
对所述当前音频帧的时域差分谱系数进行熵编码;
利用频域差分熵编码方式对该比例因子带进行编码,包括:
将当前音频帧量化后的谱系数的绝对值减去当前音频帧的前一帧的量化后的谱系数的绝对值,得到当前音频帧频域差分谱系数;
对所述当前音频帧的频域差分谱系数进行熵编码。
6.根据权利要求1所述的方法,其中,所述将利用差分熵编码方式对该比例因子带编码得到的数据确定为该比例因子带的编码数据之后,还包括:
在该比例因子带的编码数据中添加第一标记,所述第一标记表示:该比例因子带的编码方式为差分熵编码方式;
所述将利用熵编码方式对该比例因子带编码得到的数据确定为该比例因子带的编码数据之后,还包括:
在该比例因子带的编码数据中添加第二标记,所述第二标记表示:该比例因子带的编码方式为熵编码方式。
7.一种音频解码方法,包括:
针对待解码的当前音频帧中的每个比例因子带,判断该比例因子带对应的编码方式是差分熵编码方式还是熵编码方式;所述待解码的当前音频帧采用权利要求1-6任意一项所述的音频编码方法编码而成;
如果是差分熵编码方式,则利用差分熵编码方式对应的解码方式对该比例因子带进行解码;
如果是熵编码方式,则利用熵编码方式对应的解码方式对该比例因子带进行解码。
8.根据权利要求7所述的方法,其中,所述如果是差分熵编码方式,则利用差分熵编码方式对应的解码方式对该比例因子带进行解码,包括:
如果是时域差分熵编码方式,则利用时域差分熵编码方式对应的解码方式对该比例因子带进行解码;
如果是频域差分熵编码方式,则利用频域差分熵编码方式对应的解码方式对该比例因子带进行解码。
9.一种音频编码装置,包括:
划分模块,用于划分待编码的当前音频帧中的每个比例因子带;
第一编码模块,用于针对所述当前音频帧中的每个比例因子带,利用差分熵编码方式对该比例因子带进行编码;
第二编码模块,用于针对所述当前音频帧中的每个比例因子带,利用熵编码方式对该比例因子带进行编码;
第一确定模块,用于确定利用差分熵编码方式对该比例因子带进行编码的第一码率;
第二确定模块,用于利用熵编码方式对该比例因子带进行编码的第二码率;
第一判断模块,用于判断所述第一码率是否小于所述第二码率,如果小于,触发第三确定模块,如果不小于,触发第四确定模块;
第三确定模块,用于将利用差分熵编码方式对该比例因子带编码得到的数据确定为该比例因子带的编码数据;
第四确定模块,用于将将利用熵编码方式对该比例因子带编码得到的数据确定为该比例因子带的编码数据。
10.根据权利要求9所述的装置,其中,所述划分模块,具体用于:
按照预设划分方式,划分待编码的当前音频帧中的每个比例因子带,所述预设划分方式为:比例因子带的频率越高,则其包括的谱线数量越多。
11.根据权利要求9所述的装置,其中,所述装置还包括:
第二判断模块,用于判断所述当前音频帧及其上一音频帧的类型是否均为缓变信号;如果否,则触发第三编码模块,如果是,则解发所述第一编码模块和所述第二编码模块;
第三编码模块,用于利用熵编码方式对每个比例因子带进行编码。
12.根据权利要求9所述的装置,其中,
所述第一编码模块,具体用于:在对当前音频帧执行第一编码模式的情况下,针对所述当前音频帧中的每个比例因子带,利用时域差分熵编码方式对该比例因子带进行编码;在对当前音频帧执行第二编码模式的情况下,则针对所述当前音频帧中的每个比例因子带,利用频域差分熵编码方式对该比例因子带进行编码;
所述第一确定模块,具体用于:在对当前音频帧执行第一编码模式的情况下,确定利用时域差分熵编码方式对该比例因子带进行编码的第一时域码率;在对当前音频帧执行第二编码模式的情况下,确定利用频域差分熵编码方式对该比例因子带进行编码的第一频域码率;
所述第一判断模块,具体用于:在对当前音频帧执行第一编码模式的情况下,判断所述第一时域码率是否小于所述第二码率;在对当前音频帧执行第二编码模式的情况下,所述第一频域码率是否小于所述第二码率;
所述第三确定模块,具体用于:在对当前音频帧执行第一编码模式的情况下,将利用差分熵编码方式对该比例因子带编码得到的数据确定为该比例因子带的编码数据;在对当前音频帧执行第二编码模式的情况下,将利用频域差分熵编码方式对该比例因子带编码得到的数据确定为该比例因子带的编码数据;
所述装置还包括:
第五确定模块,用于确定对当前音频帧执行第一编码模式的第三码率、以及对当前音频帧执行第二编码模式的第四码率;
第三判断模块,用于判断所述第三码率是否小于所述第四码率,如果小于,执行第六确定模块,如果不小于,执行第七确定模块;
第六确定模块,用于将对当前音频帧执行第一编码模式得到的数据确定为当前音频帧的编码数据;
第七确定模块,用于将对当前音频帧执行第二编码模式得到的数据确定为当前音频帧的编码数据。
13.根据权利要求12所述的装置,其中,所述第一编码模块,具体用于:
在对当前音频帧执行第一编码模式的情况下,针对所述当前音频帧中的每个比例因子带,将当前音频帧的前一帧的量化后的谱系数的绝对值减去当前音频帧的量化后的谱系数的绝对值,得到当前音频帧的时域差分谱系数;对所述当前音频帧的时域差分谱系数进行熵编码;
在对当前音频帧执行第二编码模式的情况下,针对所述当前音频帧中的每个比例因子带,将当前音频帧量化后的谱系数的绝对值减去当前音频帧的前一帧的量化后的谱系数的绝对值,得到当前音频帧频域差分谱系数;对所述当前音频帧的频域差分谱系数进行熵编码。
14.根据权利要求9所述的装置,其中,所述装置还包括:
标记模块,用于在所述第三确定模块将利用差分熵编码方式对该比例因子带编码得到的数据确定为该比例因子带的编码数据之后,在该比例因子带的编码数据中添加第一标记,所述第一标记表示:该比例因子带的编码方式为差分熵编码方式;
在所述第四确定模块将利用熵编码方式对该比例因子带编码得到的数据确定为该比例因子带的编码数据之后,在该比例因子带的编码数据中添加第二标记,所述第二标记表示:该比例因子带的编码方式为熵编码方式。
15.一种音频解码装置,包括:
第四判断模块,用于针对待解码的当前音频帧中的每个比例因子带,判断该比例因子带对应的编码方式是差分熵编码方式还是熵编码方式;所述待解码的当前音频帧采用权利要求9-14任意一项所述的音频编码装置编码而成;如果是差分熵编码方式,则触发第一解码模块,如果是熵编码方式,则触发第二解码模块;
第一解码模块,用于利用差分熵编码方式对应的解码方式对该比例因子带进行解码;
第二解码模块,用于利用熵编码方式对应的解码方式对该比例因子带进行解码。
16.根据权利要求15所述的装置,其中,所述第一解码模块,具体用于:
在判断解码方式为时域差分熵编码方式的情况下,利用时域差分熵编码方式对应的解码方式对该比例因子带进行解码;
在判断解码方式为频域差分熵编码方式的情况下,利用频域差分熵编码方式对应的解码方式对该比例因子带进行解码。
17.一种电子设备,包括处理器和存储器;
存储器,用于存放计算机程序;
处理器,用于执行存储器上所存放的程序时,实现权利要求1-8任一所述的方法步骤。
18.一种计算机可读存储介质,所述计算机可读存储介质内存储有计算机程序,所述计算机程序被处理器执行时实现权利要求1-8任一所述的方法步骤。
CN202110550167.5A 2020-12-31 2021-05-20 一种音频编码、解码方法、装置、设备及存储介质 Pending CN114694664A (zh)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
CN2020116268364 2020-12-31
CN202011626836 2020-12-31

Publications (1)

Publication Number Publication Date
CN114694664A true CN114694664A (zh) 2022-07-01

Family

ID=82135698

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202110550167.5A Pending CN114694664A (zh) 2020-12-31 2021-05-20 一种音频编码、解码方法、装置、设备及存储介质

Country Status (1)

Country Link
CN (1) CN114694664A (zh)

Similar Documents

Publication Publication Date Title
JP4963498B2 (ja) 非典型的な部分系列に関する部分情報を用いた音声及びオーディオ符号化パラメータの量子化
TWI449033B (zh) 用以編碼係數節段之音訊編碼器和方法、用以解碼已編碼音訊流之音訊解碼器和方法、及電腦程式
RU2702265C1 (ru) Способ и устройство обработки сигналов
CN110708079B (zh) 一种极化码构造方法及装置
KR101736705B1 (ko) 오디오 신호를 위한 비트 할당 방법 및 장치
US10789964B2 (en) Dynamic bit allocation methods and devices for audio signal
US9015042B2 (en) Methods and systems for avoiding partial collapse in multi-block audio coding
TW201618084A (zh) 編碼器、解碼器、編碼及解碼的系統及方法
JP7389651B2 (ja) デジタルオーディオ信号における可変アルファベットサイズ
EP3616325A1 (en) Difference data in digital audio signals
WO2005027096A1 (en) Method and apparatus for encoding audio
US8380526B2 (en) Method, device and system for enhancement layer signal encoding and decoding
JP2010500819A (ja) 複数の量子化パターンの効率的な知覚的関連検索による音声及びオーディオを量子化するための方法
JP5970602B2 (ja) 条件付き量子化器をもつオーディオ・エンコードおよびデコード
CN114694664A (zh) 一种音频编码、解码方法、装置、设备及存储介质
US8487789B2 (en) Method and apparatus for lossless encoding and decoding based on context
CN115376532A (zh) 一种音频编码、解码方法、装置、设备及存储介质

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination