すべてのサンプルを含むcsvファイルを書き込むために、オーディオファイルを入力として読み込むコードを書いています。これはコードです:gnuplot - 軸上の物理的次元
FILE *pipein;
pipein = popen("ffmpeg -i test1.wav -f s16le -ac 1 -", "r");
fread(buf, 2, sample_number, pipein);
pclose(pipein);
// Print the sample values in the buffer to a CSV file
FILE *csvfile;
csvfile = fopen("samples.csv", "w");
while (n<=sample_number) {
//if (buf[n]!=0) {
fprintf(csvfile, "%d %f\n", buf[cont], Sam_freq*cont);
cont++;
// }
n++;
}
fclose(csvfile);
これはcsvファイルは、コードを実行した後にどのように見えるかです:
10 43.150544
-36 43.150567
11 43.150590
30 43.150612
-29 43.150635
61 43.150658
13 43.150680
46 43.150703
121 43.150726
61 43.150748
144 43.150771
128 43.150794
130 43.150816
131 43.150839
私はgnuplotのを使用してsamples.csvのデータをプロットしてみましたが、私は理解していませんどの物理的次元がy軸上に表されるかを示す。
私はy軸上の値がマイクの膜の変形を表していると読んでいます。これらの値から必要な物理的な次元を抽出するために誰かが数学的関係を知っていますか?
[PCMオーディオの振幅値?](https://stackoverflow.com/questions/5890499/pcm-audio-amplitude-values)の複製があります。 – user8153