ステレオ録音の 2 つの異なるチャネルに接続する 2 つのマイクと 2 つの異なるマイク プリアンプを使用して、ノイズ キャンセリング セットアップを構築しました。
ここにサンプルがあります
http://filestore.to/?d=U5FN2IH96K
私は試した
char ergebnis[80];
sprintf(ergebnis, "%s.neu.raw", Datei);
FILE* ausgabe = fopen(ergebnis, "wb");
FILE* f = fopen(Datei, "rb");
if (f == NULL)
{
return;
}
int i = -1;
int r1 = 0;
int r2 = 0;
int l1 = 0;
int l2 = 0;
int l = 0;
int r = 0;
int wo = 0;
int dif = 0;
while (wo != EOF)
{
wo = getc(f);
i++;
if (i == 0)
{
r1 = (unsigned)wo;
}
if (i == 1)
{
r2 = (unsigned)wo;
r = (r2 << 8) + r1; //r1 | r2 << 8;
}
if (i == 2)
{
l1 = (unsigned)wo;
}
if (i == 3)
{
l2 = (unsigned)wo;
l = (l2 << 8) + l1; //l1 | l2 << 8;
dif = r - (l * 2);
putc((char)( (unsigned)dif & 0xff), ausgabe);
putc((char)(((unsigned)dif >> 8) & 0xff), ausgabe);
i = -1;
}
}
魔法が起こるとき
dif = r - (l * 2);
しかし、これは周囲のノイズを排除するものではなく、パチパチという音を出すだけです。
代わりに、セットアップでこのタスクにどのように取り組むことができますか? 私は、「論文の著者だけが理解できる論文を読む」よりも、実際的な解決策を好みます。
その際、最終的なモノラル出力をノーマライズして、クリッピングなしで可能な限り大きくするにはどうすればよいでしょうか?