CN1770256B - 一种基于变换域的数字音频混合方法 - Google Patents
一种基于变换域的数字音频混合方法 Download PDFInfo
- Publication number
- CN1770256B CN1770256B CN200410088428A CN200410088428A CN1770256B CN 1770256 B CN1770256 B CN 1770256B CN 200410088428 A CN200410088428 A CN 200410088428A CN 200410088428 A CN200410088428 A CN 200410088428A CN 1770256 B CN1770256 B CN 1770256B
- Authority
- CN
- China
- Prior art keywords
- audio
- frame
- mixing
- domain
- discrete
- 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.)
- Expired - Fee Related
Links
- 238000000034 method Methods 0.000 title claims abstract description 28
- 238000001228 spectrum Methods 0.000 claims description 18
- 230000005236 sound signal Effects 0.000 claims description 10
- 230000003595 spectral effect Effects 0.000 claims description 10
- 230000008569 process Effects 0.000 claims description 8
- 230000009466 transformation Effects 0.000 claims description 3
- 238000006243 chemical reaction Methods 0.000 claims description 2
- 230000001256 tonic effect Effects 0.000 claims description 2
- 230000008901 benefit Effects 0.000 abstract description 4
- 238000012545 processing Methods 0.000 abstract description 3
- 230000000694 effects Effects 0.000 description 6
- 230000006870 function Effects 0.000 description 6
- 230000006835 compression Effects 0.000 description 3
- 238000007906 compression Methods 0.000 description 3
- 238000010586 diagram Methods 0.000 description 3
- 239000000203 mixture Substances 0.000 description 3
- 238000005070 sampling Methods 0.000 description 3
- 206010019233 Headaches Diseases 0.000 description 2
- 108010076504 Protein Sorting Signals Proteins 0.000 description 2
- 230000005540 biological transmission Effects 0.000 description 2
- 230000015572 biosynthetic process Effects 0.000 description 2
- 230000021615 conjugation Effects 0.000 description 2
- 238000013461 design Methods 0.000 description 2
- 231100000869 headache Toxicity 0.000 description 2
- 230000008676 import Effects 0.000 description 2
- 238000010606 normalization Methods 0.000 description 2
- 239000000654 additive Substances 0.000 description 1
- 230000000996 additive effect Effects 0.000 description 1
- 230000007812 deficiency Effects 0.000 description 1
- 238000002474 experimental method Methods 0.000 description 1
- 238000003780 insertion Methods 0.000 description 1
- 230000008447 perception Effects 0.000 description 1
- 238000013139 quantization Methods 0.000 description 1
Images
Landscapes
- Complex Calculations (AREA)
Abstract
本发明涉及一种数字混音方法,更具体的说,涉及一种基于变换域的数字音频混合方法。包括如下步骤:1)输入多个已数字化的音频流,进行分帧处理,得到各帧的时域音频序列;2)对多个音频流以帧为单位进行覆盖性频域插值,得到各帧频域混音后的时域音频序列;该覆盖性频域插值是先将原始音频序列由时域变换到频域,然后进行覆盖性频域插值运算,再由频域变回时域,最后得到混音音频序列;3)将混音信号的各帧数据组合成一个完整的输出音频流。与现有技术相比,本发明最大优点是有效地解决了经典混音中的溢出问题,在对数据的动态范围有严格限制的情况下,能够提供很好的“音效级”混合效果。本发明特别适用于嵌入式终端上的实时双路音频流混合。
Description
技术领域
本发明涉及一种数字混音方法,更具体的说,涉及一种基于变换域的数字音频混合方法。
背景技术
所谓混音就是用一个输出设备播放多个音频流,提供一个单输出多输入的通道。目前经典的混音方法都是采用基于时域的线性叠加方法。
传输声音这种连续的、时间要求严格的流与传输别的数据不同。这涉及声波转换为数字信号,数字信号恢复为声波。虽然AD/DA由硬件完成,但录音和播放由用户设置。特别需要注意的是,不象典型的视频流在空间/时间域占有唯一的位置,在同一时间和位置的图象元素叠加是无任何意义的,但人耳可以感知在同一空间/时间播放的多个音频流。例如多个终端参与的音频会议,由于这些终端物理上并不在一起,而每个终端通常只有一套音频输出设备(功放+音箱),为了能够在每个终端同时接收多个与会者的声音,必须进行多路音频流混合。
当多个音频源在一个房间播放时,人耳听到的声波是各个声源声波的线性叠加,这正是模拟混音的基础。该事实表明数字混音也可以线性相加。假设有n路输入音频流进行混音,Xi(t)是t时刻的第i路输入声音的线性样本,则t时刻的混音值为:
m(t)=∑Xi(t),i=0,1,……,n-1 (1)
数字音频的重要参数是采样率,显然,各路输入音频流的采样率相同是混音的前提。
然而此种方法在数字系统上实现的最大问题是如何防止溢出导致的失真。对于单声道16比特量化的音频数据在计算机中每个采样点需占用2个字节的空间,即如果输入样本是16比特,求和缓冲区也是16比特,那两路音频流相加就容易使求和区溢出。即使提供了高精度的求和缓冲区,使得在求和过程中是不会溢出,但是这不能保证求和结果的幅值仍适合输出硬件器件的要求范围(输出器件范围通常与输入一致也是16比特)。
为了解决上述问题,简单的方法是对超出范围的值箝位,更复杂一点方法是对求和结果分帧进行归一化定标。箝位指的是在运算中发生“溢出”时,将序列的当前值直接赋为最大值,如:若取值范围为0~65535,求和结果超过65535时,把当前值赋为最大值65535。然而这种方法只能减少因“溢出”而导致的“削波失真”的失真程度,而无法从根本上消除溢出。对求和结果分帧进行归一化定标指的是根据求和结果对每一帧乘以一个因子,使得该帧中的最大值在取值范围内,从而解决溢出的问题。这种方法的缺点是由于无法预测各帧的最大值,各帧所乘的因子大小不一,造成声音时大时小的问题,极大地影响了收听效果。
发明内容
本发明的目的是克服现有技术的不足,从根本上消除混音过程中由于溢出带来的“削波失真”;同时考虑人耳的特征,最大程度的减小混音过程对音效的影响;提供一种基于变换域的数字音频混合方法.
为达到上述目的,本发明提供的基于变换域的数字音频混合方法,包括如下步骤:
1)输入多个已数字化的音频流,进行分帧处理,得到各帧的时域音频序列;
2)对多个音频流以帧为单位进行覆盖性频域插值,得到各帧频域混音后的时域音频序列;该覆盖性频域插值是先将原始音频序列由时域变换到频域,然后进行覆盖性频域插值运算,再由频域变回时域,最后得到混音音频序列;
3)将混音信号的各帧数据组合成一个完整的输出音频流。
所述步骤2)还包括如下子步骤:
21)取两个音频流中相应的两个帧,分别做离散傅立叶变换/快速傅立叶变换,得到两个离散频谱;
22)对步骤21)中得到的两个离散频谱进行覆盖性插值,得到一个混音频谱;
23)对步骤22)中得到的混音频谱做离散傅立叶逆变换/快速傅立叶逆变换,得到混音后的时域音频序列。
所述步骤步骤22)中的覆盖性插值过程如下:
将两个离散频谱乘上一个插值函数,使得插值序列中奇数/偶数序号的谱线与第一个离散频谱的相应谱线相同,偶数/奇数序号的谱线与第二个离散频谱的相应谱线相同。
所述步骤3)中需消除由于帧移造成的帧与帧之间的相互重叠,具体做法是:
若帧长为N,帧移为M,则最后输出音频流中的一帧取前一混音帧的前N-M项作为该输出帧的前N-M项,取后一混音帧的前M项作为该输出帧的后M项。
与现有技术相比,本发明提供的基于变换域的数字音频混合方法,其最大优点是有效地解决了经典混音中的溢出问题,尤其对于嵌入式终端(如定点DSP)上的实时双路音频流混合,提供了足以令人满意的音效级混音效果。变换域混音算法的设计初衷是针对嵌入式移动终端开发的,目的是为了在移动终端上提共形成特定语音效果的实时音效处理。所以在不过分苛求音质的情况下,频域混音算法能够提供很好的“音效级”混合效果,例如将一段语音与一段背景声音实时混合到一起,作为手机的音效铃声等等。实际上对于任何嵌入式系统,“溢出”问题都是最让人头痛的,因为嵌入式系统相对于桌面系统需要更高的集成度以减小其体积,而体积有限的情况下存贮器(输入缓冲区,累加器,输出缓冲区)的容量必然不会很大,因而对数据的动态范围便会有严格的限制。
附图说明
图1是本发明提供的基于变换域的数字音频混合方法实施例流程图;
图2是覆盖性频域插值示意图。
具体实施方式
对音频信号进行处理的一个基本概念就是对声音样本以缓冲区为单位处理,即对输入的声音样本分帧.将已数字化的音频信号序列依次存入一个数据区,在音频信号处理中一般用循环队列的方式来存储这些数据,以便用一个有限容量的数据区来应付数量极大的音频数据(已处理过的音频数据可以依次抛弃,让出存储空间来存入新数据).在进行处理时,按帧(frame)从此数据区中取出数据,处理完成后再取下一帧,依次循环.在取数据时,前一帧和后一帧的交叠部分称为帧移(overlap).为了保证重构信号具有更好的连续性,一般做语音信号处理都采用帧移的方式.
已取出的一帧音频数据x(n)要经过加窗处理,这就是用一定的窗函数w(n)来乘x(n),从而形成加窗音频数据xw(n),xw(n)=x(n)×w(n)。在音频信号处理中常用的窗函数是矩形窗(Triangular)和哈明窗(Hamming),表达式如下(其中N为帧长):
矩形窗
哈明窗
下面结合附图与优选实施例,进一步描述本发明提供的基于变换域的数字音频混合方法。
图1是本发明的一个优选实施例流程图,包括如下步骤:
步骤101:输入已数字化的音频流1和音频流2,该音频流1和音频流2的采样率相同,分别用序列表示音频流1和音频流2。将两个音频信号序列分别存入两个数据区,采用循环队列的方式来存储这些数据,以便用一个有限容量的数据区来应付数量极大的音频数据。
步骤103:若已经读完一帧数据(达到一帧),在加窗后进入步骤104;若还未读完一帧数据,回到步骤102,继续读取数据。需注意的是,程序实现不能保证每一帧的数据同时读完,但是哪一路快的话,可以等待另一路读完,只要在进入步骤105之前都读完当前这一帧即可。
步骤104:对x(n),y(n)做N点离散傅立叶变换(DFT),即:
DFT[x(n)]=X(k) k=0,1,2…N-1 (6)
DFT[y(n)]=Y(k) k=0,1,2…N-1 (7)
易知,该步骤中的DFT变换也可以用FFT变换代替。
在此需要说明的是,一般N都取偶数,因为对应DFT的快速算法FFT要求输入序列的点数为2的N次方,例如8,16,32,64,128,…,1024,2048,4096等等,显然这些均为偶数。所以为了提高数据精度,在不进行人为补0的情况下,N一般都取2的整数幂,以便于直接利用FFT算法快速计算DFT变换。
步骤105:对X(k)、Y(k)进行覆盖性频域插值。
当N为偶数时,设插值函数T(n)=[1+(-1)n]/2,n=0,±1,±2,……即:
则令
Z(k)=X(k)T(k)+Y(k)T(k+1) k=0,1,…N-1 (9)
或 Z(k)=X(k)T(k+1)+Y(k)T(k) k=0,1,…N-1 (10)
以上两种形式均可,相当于把俩个频谱的对应谐波分量进行覆盖性插值,称为覆盖性频域插值(Frequency Replacement-Insertion)。因为实序列的谱线是关于原点和N/2(N为偶数)共轭对称的,按上述定义的插值函数T(n)恰好把俩个共轭谱线(对应同一谐波分量)同时(插值)替换了。
步骤106:对覆盖性插值后得到的频谱Z(k)做离散傅立叶逆变换(IDFT)。得到与Z(k)对应得时域序列z(n),即:
z(n)=IDFT[Z(k)] n=0,1,…N-1 (11)
易知,这一步也可以通过IFFT得到z(n)。
步骤107:将经过频域混音后的信号z(n)写入缓冲区。在这一过程中应注意帧移(overlap)的影响。
设后一帧与前一帧的帧移为M(0≤M<N)。
则令:
x1(n)、y1(n)为后一帧的时域音频序列。
对x1(n)、y1(n)重复步骤102~步骤106的操作,得到z1(n)。
设为混音后的时域音频序列,则z(n)的前N-M个点与z1(n)的前M个点便一起构成了的第一帧的N个点,即:
以上是得到了混音序列的完整一帧。
频域混音作为一种非线性变换,相对于时域混音的线性叠加方法从根本上克服了混音中的“溢出”问题,从而彻底解决了经典混音算法中的“削波失真”问题。
由上述可知,频域混音先是对原音频信号的频谱进行抽取,然后再在频域构造新的频谱以生成新的音频信号,实际上是对原音频信号谐波成分的重构。
就如MP3压缩一样,MP3为了获得更大的压缩比,实际上是一种对音频数据的有损压缩;而频域混音为了避免经典混音算法中的溢出问题,实际上是一种对音频数据的有损混音。然而通过听觉实验可以发现这种程度的失真人耳一般是很难察觉出来的。
频域混音算法的设计初衷是针对嵌入式移动终端开发的,目的是为了在移动终端上提共形成特定语音效果的实时音效处理.所以在不过分苛求音质的情况下,频域混音算法能够提供很好的“音效级”混合效果,例如将一段语音与一段背景声音实时混合到一起,作为手机的音效铃声等等.实际上对于任何嵌入式系统,“溢出”问题都是最让人头痛的,因为嵌入式系统相对于桌面系统需要更高的集成度以减小其体积,而体积有限的情况下存贮器(输入缓冲区,累加器,输出缓冲区)的容量必然不会很大,因而对数据的动态范围便会有严格的限制.
频域混音的最大特点是有效地解决了经典混音中的溢出问题,尤其对于嵌入式终端(如定点DSP)上的实时双路音频流混合,提供了足以令人满意的音效级混音效果。
Claims (1)
1.一种基于变换域的数字音频混合方法,包括如下步骤:
1)输入两个已数字化的音频流,进行分帧处理,得到各帧的时域音频序列;
2)对两个音频流以帧为单位进行覆盖性频域插值,得到各帧频域混音后的时域音频序列;该覆盖性频域插值是先将原始音频序列由时域变换到频域,然后进行覆盖性频域插值运算,再由频域变换到时域,最后得到混音音频序列;
具体步骤如下:
21)取两个音频流中相应的两个帧,分别做离散傅立叶变换/快速离散傅立叶变换,得到两个离散频谱;
22)对步骤21)中得到的两个离散频谱进行覆盖性插值,得到一个混音频谱;
其中,所述步骤步骤22)中的覆盖性插值过程如下:
将两个离散频谱乘上一个插值函数,使得插值序列中奇数/偶数序号的谱线与第一个离散频谱的相应谱线相同,偶数/奇数序号的谱线与第二个离散频谱的相应谱线相同;
23)对步骤22)中得到的混音频谱做离散傅立叶逆变换/快速离散傅立叶逆变换,得到混音后的时域音频序列;
3)将混音信号的各帧数据组合成一个完整的输出音频流;
所述步骤3)中还需消除由于帧移造成的帧与帧之间的相互重叠,具体做法是:
若帧长为N,帧移为M,则最后输出音频流中的一帧取前一混音帧的前N-M项作为该输出帧的前N-M项,取后一混音帧的前M项作为该输出帧的后M项。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN200410088428A CN1770256B (zh) | 2004-11-02 | 2004-11-02 | 一种基于变换域的数字音频混合方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN200410088428A CN1770256B (zh) | 2004-11-02 | 2004-11-02 | 一种基于变换域的数字音频混合方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN1770256A CN1770256A (zh) | 2006-05-10 |
CN1770256B true CN1770256B (zh) | 2010-05-05 |
Family
ID=36751503
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN200410088428A Expired - Fee Related CN1770256B (zh) | 2004-11-02 | 2004-11-02 | 一种基于变换域的数字音频混合方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN1770256B (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20150200643A1 (en) * | 2011-10-11 | 2015-07-16 | Google Inc. | Clipping protection in fixed-width audio mixing |
Families Citing this family (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102682776B (zh) * | 2012-05-28 | 2014-11-19 | 深圳市茁壮网络股份有限公司 | 一种音频数据的处理方法和服务器 |
CN104064191B (zh) * | 2014-06-10 | 2017-12-15 | 北京音之邦文化科技有限公司 | 混音方法及装置 |
CN106878230A (zh) * | 2015-12-10 | 2017-06-20 | 中国电信股份有限公司 | 网络电话会议中的音频处理方法、服务器以及系统 |
CN106504758B (zh) * | 2016-10-25 | 2019-07-16 | 大连理工大学 | 混音器及混音方法 |
KR102067692B1 (ko) * | 2018-09-28 | 2020-01-17 | 주식회사 앤씨앤 | 영상 및 음성의 혼합 신호 생성 방법 및 장치 |
CN109819391B (zh) * | 2019-01-24 | 2022-05-06 | 思必驰科技股份有限公司 | 用于FreeRTOS单芯片的音频重采样方法和装置 |
CN110415716B (zh) * | 2019-07-05 | 2021-11-26 | 达闼机器人有限公司 | 音频混合方法、装置、存储介质及电子设备 |
CN112948331B (zh) * | 2021-03-01 | 2023-02-03 | 湖南快乐阳光互动娱乐传媒有限公司 | 音频文件的生成方法、解析方法、生成器及解析器 |
CN113223499B (zh) * | 2021-04-12 | 2022-11-04 | 青岛信芯微电子科技股份有限公司 | 一种音频负样本的生成方法及装置 |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1184382A (zh) * | 1996-12-05 | 1998-06-10 | 汤姆森多媒体公司 | 处理数字信号的方法 |
CN1250293A (zh) * | 1998-08-10 | 2000-04-12 | 扬智科技股份有限公司 | 压缩多声道音频位元流的解码装置及方法 |
US6154161A (en) * | 1998-10-07 | 2000-11-28 | Atmel Corporation | Integrated audio mixer |
-
2004
- 2004-11-02 CN CN200410088428A patent/CN1770256B/zh not_active Expired - Fee Related
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1184382A (zh) * | 1996-12-05 | 1998-06-10 | 汤姆森多媒体公司 | 处理数字信号的方法 |
CN1250293A (zh) * | 1998-08-10 | 2000-04-12 | 扬智科技股份有限公司 | 压缩多声道音频位元流的解码装置及方法 |
US6154161A (en) * | 1998-10-07 | 2000-11-28 | Atmel Corporation | Integrated audio mixer |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20150200643A1 (en) * | 2011-10-11 | 2015-07-16 | Google Inc. | Clipping protection in fixed-width audio mixing |
US9118296B2 (en) * | 2011-10-11 | 2015-08-25 | Google Inc. | Clipping protection in fixed-width audio mixing |
Also Published As
Publication number | Publication date |
---|---|
CN1770256A (zh) | 2006-05-10 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN101263741B (zh) | 产生和处理表示hrtf的参数的方法和设备 | |
Hatziantoniou et al. | Generalized fractional-octave smoothing of audio and acoustic responses | |
Härmä et al. | Frequency-warped signal processing for audio applications | |
JP3528258B2 (ja) | 符号化音声信号の復号化方法及び装置 | |
CN106658343A (zh) | 用于渲染音频声场表示以供音频回放的方法和设备 | |
CN1770256B (zh) | 一种基于变换域的数字音频混合方法 | |
CN101366081A (zh) | 双声道音频信号的解码 | |
Laroche et al. | New phase-vocoder techniques are real-time pitch shifting, chorusing, harmonizing, and other exotic audio modifications | |
CN111724807A (zh) | 音频分离方法、装置、电子设备及计算机可读存储介质 | |
CN101646123B (zh) | 一种模拟听觉感知模型的滤波器组 | |
Garcia-Gomez et al. | Binaural room impulse responses interpolation for multimedia real-time applications | |
CN103945291A (zh) | 一种应用双麦克风定向传声的方法及装置 | |
Schlecht et al. | Accurate reverberation time control in feedback delay networks | |
Kabzinski et al. | A causality-constrained frequency-domain least-squares filter design method for crosstalk cancellation | |
CN103714825A (zh) | 基于听觉感知模型的多通道语音增强方法 | |
CN115588437A (zh) | 语音增强方法、装置、设备和存储介质 | |
US11942097B2 (en) | Multichannel audio encode and decode using directional metadata | |
CN105280178A (zh) | 声音信号处理装置及其声音信号处理方法 | |
Bank | Warped, kautz, and fixed-pole parallel filters: A review | |
Burred et al. | Comparison of frequency-warped representations for source separation of stereo mixtures | |
Schroeder | Correlation techniques for speech bandwidth compression | |
Binelli et al. | Digital equalization of automotive sound systems employing spectral smoothed FIR filters | |
Wefers et al. | Potential of non-uniformly partitioned convolution with freely adaptable FFT sizes | |
Abel et al. | Luciverb: Iterated convolution for the impatient | |
CN116312636B (zh) | 电音基调分析方法、装置、计算机设备和存储介质 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C14 | Grant of patent or utility model | ||
GR01 | Patent grant | ||
CF01 | Termination of patent right due to non-payment of annual fee | ||
CF01 | Termination of patent right due to non-payment of annual fee |
Granted publication date: 20100505 |