我有以下代码段:
OSStatus status = AudioFileWriteBytes(self.audioFile, FALSE, self.startingByte, &ioNumBytes, theData);
状态代码在iPhone模拟器上随机返回noErr和-50。
如果我重新运行它就可以了。
任何指针都会被理解,为什么上面的代码会随机出现。
提前感谢您的帮助。
答案 0 :(得分:1)
我想我发现了自己的问题。
带问题的原始代码:
// Start
OSStatus status = AudioOutputUnitStart(self.ioUnit);
// Record the audio samples and save it to a file
[self createFile];
修复问题的新代码。请注意,在调用AudioOutputUnitStart
之前首先调用“createFile” // Record the audio samples and save it to a file
[self createFile];
// Start
// Once AudioOutputUnitStart is called, it will start calling callback method quickly. We need to call the above [self createFile] first.
OSStatus status = AudioOutputUnitStart(self.ioUnit);
AudioOutputUnitStart调用回调方法,该方法将音频样本写入文件。由于文件是在AudioOutputUnitStart之前创建/打开的,现在音频样本被写入文件而没有任何错误。