gpt4 book ai didi

matlab - 归一化两个音频信号的能量

转载 作者:行者123 更新时间:2023-12-03 02:01:40 25 4
gpt4 key购买 nike

我有不同的音频信号,我想确保它们都具有相同的能量。目的是在我演奏它们时听起来相等(音量相同)。
我尝试了以下方法(如上所述),但是当我演奏它们时,它们听起来却有所不同。同样,如果我在应用归一化之后计算能量,则它是不同的。我究竟做错了什么?

我要做的是:
1)使用希尔伯特变换,使用包络计算每个音频信号的能量,

% Calculate the envelope
envelope = abs(hilbert(wave));

% Calculate the energy in the sound
energyInSound=sum(envelope.^2)

2)确保它们具有相同的能量,
for channel=1:2
regWave(:,channel) = 1000.* wave(:,channel)./energyInSound(channel);
end

最佳答案

我所做的(使用两个相同长度的信号)是将最大能量的信号乘以sqrt(energyRatio),再乘以另一个。* energyRatio。

tempSig1 = sig1.*energyRatio;
tempSig2 = sig2.*sqrt(energyRatio);

这将信号的能量值更改为相等。

关于matlab - 归一化两个音频信号的能量,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31054122/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com