オーディオを wav ファイルに記録するプログラム (c++、vs2010、win7) を作成しています。オーディオを聞こうとすると、ホワイト ノイズが多くなります。私が書いた別のプログラムでファイルを再度開いてみました。このプログラムが行う唯一のことは次のとおりです。
Char buffer[8000*60*2] = {}
File *wav, *out
Wav = fopen ("raw", "r+")
Out = fopen("out", "a+")
fread(buffer, sizeof (char) *8000*60*2,1,wav)
fwrite(buffer, sizeof (char) *8000*60*2,1,out)
fclose (wav)
fclose (out)
このプログラムに生データを渡すと、元の wav ファイルのごく一部をノイズなしで聞くことができます (これを生データとして大胆に開きます)。私の問題は、データを書き直すだけでデータを何も変更していないことであり、はっきりと聞こえる魔法のようです。私は何が欠けていますか?私はデータを変更しません。データを書き込むときは、短い変数として書き込みます。データは短い fwrite(data, 1024,1,wav)