Iphone AudioFileOpenURL在现有文件上返回-43

Iphone AudioFileOpenURL在现有文件上返回-43,iphone,core-audio,Iphone,Core Audio,我的应用程序中有一个步骤,用户反复听到三个语音数字 如果我让此步骤运行一段时间(对于某些未定义的“while”值),我的调试日志将显示以下内容(删除不相关的日志条目): 其中file是AudioFileID instvar,name和type是NSString*参数。是否可能是文件句柄不足?完成后是否关闭打开的文件?我已检查过,但我会重新检查。当然,对AudioFileClose()的调用在dealloc方法中,但我将检查是否确实释放了必要的对象。实际上,一个包含NSMutableArray的对

我的应用程序中有一个步骤,用户反复听到三个语音数字

如果我让此步骤运行一段时间(对于某些未定义的“while”值),我的调试日志将显示以下内容(删除不相关的日志条目):


其中file是AudioFileID instvar,name和type是NSString*参数。

是否可能是文件句柄不足?完成后是否关闭打开的文件?

我已检查过,但我会重新检查。当然,对AudioFileClose()的调用在dealloc方法中,但我将检查是否确实释放了必要的对象。实际上,一个包含NSMutableArray的对象(包含打开文件的对象)释放了数组,但没有释放数组中的项。因此,没有一个对象被称为AudioFileClose()。谢谢
2010-03-01 13:44:21.283 iPhoneHearChk[1236:207] AudioFileOpenURL returned 0
 (for <file://localhost/var/mobile/Applications/3A28F975-EAD5-4A5B-AFE6-FA1C6EE95732/iPhoneHearChk.app/5b3.ima4>)
2010-03-01 13:44:35.493 iPhoneHearChk[1236:207] AudioFileOpenURL returned 0
 (for <file://localhost/var/mobile/Applications/3A28F975-EAD5-4A5B-AFE6-FA1C6EE95732/iPhoneHearChk.app/5b3.ima4>)
2010-03-01 13:45:17.916 iPhoneHearChk[1236:207] AudioFileOpenURL returned 0
 (for <file://localhost/var/mobile/Applications/3A28F975-EAD5-4A5B-AFE6-FA1C6EE95732/iPhoneHearChk.app/5b3.ima4>)
2010-03-01 13:47:00.408 iPhoneHearChk[1236:207] AudioFileOpenURL returned -43
 (for <file://localhost/var/mobile/Applications/3A28F975-EAD5-4A5B-AFE6-FA1C6EE95732/iPhoneHearChk.app/5b3.ima4>)
NSString *soundFilePath = [[NSBundle mainBundle] pathForResource: name ofType: type];
if (!soundFilePath) { NSLog(@"No path found for sound file %@.%@", name, type); }
NSURL *fileURL = [[NSURL alloc] initFileURLWithPath: soundFilePath];
rc = AudioFileOpenURL((CFURLRef) fileURL, kAudioFileReadPermission, 0, &file);