ただ単純なWAVプレーヤーを作りたいです。 ここにMyCodeがあります。私の10ラインオーディオプレーヤー
#include <stdio.h>
int main(){
FILE* speaker = fopen("/dev/audio", "wb");
FILE* music = fopen("bugsbunny2.wav", "rb");
char data[16];
while(!feof(music)){
fread(data, sizeof(char), sizeof(data), music);
fwrite(data, sizeof(char), sizeof(data), speaker);
}
return 0;
}
これは音があまりにも騒々しいです。理解しづらい。 バッファ/チャンクサイズが不足していると思います 実際のチャンクサイズとは何ですか? または実際のチャンクサイズを取得するにはどうすればよいですか?
* what *チャンクのサイズ? 4バイトはポインタのサイズ、すなわちsizeof(data)である。私は512バイト以下のクラスターサイズのシステムを見かけることはないと言いたいので、少なくともそのサイズのバッファーを作りましょう。 – TheBlastOne
wavの3バイトまでは間違っています...考えてみてください...読み込みバッファのサイズを大幅に増やし、最初にそのバグを修正しないと、かなり多くのバイトが失われ、バグバニーは最終的にはバグのように聞こえます:) – TheBlastOne
最も単純なWAVプレーヤーは、おそらくWindowsまたはWindowsシェルが提供するAPI関数である "このファイル名のwavを再生する"かもしれません。 – TheBlastOne