自作デジタルエフェクターではLFOなど可聴域外の周波数を扱う事があります。そういった音声信号はWAVファイルへ出力しても耳で聞いて確認することができません。そのような場合は数値データをそのままファイルに落としてグラフ化ツールなどで可視化して確認します。 gnuplot gnuplotはフリーのグラフツールです。 gnuplot https://sourceforge.net/projects/gnuplot/files/gnuplot/ gnuplotにはコマンドライン版とウインドウ版の両方が入っています。どちらでも同じように使えますが、ここではウインドウ版を使います。 インストールの際にデスクトップ上にアイコンを作成するにチェックを入れておきます。 インストールが終わったら、デスクトップのショートカットを右クリックしてショートカットのプロパティを表示します。 ショートカットのプロパティで作業フォルダーの中を消して空にします。 グラフ表示してみる 作業の流れは、 ・wgnuplotショートカットを作業フォルダへコピーする。 ・コンソールで標準出力へデータを出力するプログラムを作る。 ・リダイレクトでデータファイルを生成する。 ・gnuplotで表示する。 ちょっと面倒ですけど、こんなものでしょう。ではちょっとやってみましょう。 まず、初めにデスクトップにあるwgnuplotのショーカットを作業フォルダへドラッグ&ドロップでコピーし、作業フォルダからwgnuplotを起動できるようにしておきます。これを作って置かないと起動の度に作業フォルダを指定しなければなりません。 次にサイン、コサインの数値を出力するプログラムを書いてみます。教科書通りの何の変哲もないコンソールに数値を出力するだけのプログラムです。 sine_cos.cpp #include <iostream> #include <math.h> main() { int fs = 44100; // サンプリングレート int freq = 1; // 周波数 int l