音频信号放大

问题描述

我正在尝试编写一个程序,该程序需要两个音频文件,并尽可能地将它们相互匹配。因此,如果我要给程序提供两个音频文件,其中一个只是另一个文件的安静版本,则程序应放大一个安静的文件以匹配另一个文件。我可以使用什么功能来实现所需的功能?我使用了以下代码行,但它会平衡两个信号,但会降低响亮的信号。我希望安静的声音等于响亮的声音

dbWriteTable (with," table ",table,row.names = FALSE,overwrite = TRUE)

解决方法

您需要获得xy的比率与最大值的平均值,对于x来说是0.5,对于y来说是1。实现这一目标:

N=1024;
n=0:N-1;
x=sin(2*pi*(2^-7).*n);
y=2*sin(2*pi*(2^-7).*n+pi/4);

% justify its power
x1=x./(sqrt(mean(x.^2)/(max(mean(x.^2),mean(y.^2)))));
y1=y./(sqrt(mean(y.^2)/(max(mean(x.^2),mean(y.^2)))));

figure()
plot(n,y)
hold on
plot(n,x1)
legend('y','x1')
xlabel('n');

结果如下图: y and x1 plotted