1

私は現在、Csound を使用してマルチチャンネル オーディオ コンボルバーに取り組んでいます。私は 2 つの ftable を作成し、2 つの異なる IR の 2048 ポイントの長さを 48kHz のサンプル レートでロードしています。第 1 世代関数テーブル コマンド (iRL ftgen 0, 0, 2048, -1, "IRL.wav", 0, 0, 0) および (iRR ftgen 0, 0, 2048, -1, "IRR.wav "、0、0、0)。

私が現在抱えている問題の 1 つは、関数テーブル番号を負 (-1) に設定するとスケーリングが停止するが、各 ftable のスケーリングが異なることです。一方の scalemax 値は 0.155 で、もう一方は 0.145 です。このスケーリングの発生を完全に停止する方法を知りたかったので、両方の IR がスケーリングされず、テーブルに読み込まれません。

4

1 に答える 1

0

「関数テーブル番号をマイナス(-1)」に設定するのではなく、GEN番号(正規化の場合は1、単純なコピーの場合は-1)を設定しますが、あなたの行動は正しいと思います。
あなたが説明した場合、スケーリングが Csound によって行われるとは信じられないので、scalemax 値の違いについて 2 つの可能性があると思います
。1) 入力ファイルにはこれらの (異なる) 最大値があります。それらが実際のステレオ インパルス応答である場合、これは非常に可能性が高いです。
2) 本当にモノラル オーディオ ファイルをテーブルにインポートしていることを確認します。「IRL.wav」に複数のチャンネルがあると、混乱します。(または、ステレオ サウンド ファイルを使用して両方のチャネルをテーブルにインポートすることもできます。)
補足として、テーブルのグローバル変数 (iRL と iRR ではなく giRL と giRR) が必要ないかどうか疑問に思っていました。

于 2016-01-27T17:41:29.050 に答える