我在磁盘上有一个单声道.WAV。我希望我的OSX(以及后来的iOS)应用程序将其读入浮点缓冲区。
实现这一目标的最简单方法是什么?
答案 0 :(得分:2)
解决方案是使用ExtAudioFile()
我发现它读得最优秀Core-Audio bible
答案 1 :(得分:1)
libsndfile方式:)
SF_INFO sfinfo;
SNDFILE *sf;
float *buf;
int err_code;
sfinfo.format = 0;
sf = sf_open("/meow.wav", SFM_READ, &sfinfo);
err_code = sf_error(sf);
if (err_code == SF_ERR_NO_ERROR) {
buf = malloc(sfinfo.frames * sfinfo.channels * sizeof(float));
sf_read(sf, buf, sfinfo.frames * sfinfo.channels);
printf("Done!\n");
} else {
printf("%s\n", sf_error_number(err_code));
}