2010-05-15 73 views
3

我正在使用AVAudioPlayer对象播放音频。我最初创建了一个audioPlayer对象。我播放动画,当动画开始时,播放音频并在动画完成时暂停音频。我最初发现了三种使用仪器的内存泄漏。 (提到的负责人是RegisterEmbedCodecs)。在这个论坛中添加MediaPlayer框架的“ahmet emrah”的建议之后,泄漏的数量减少到了一个。有什么办法可以彻底摆脱它吗?AVAudioPlayer内存泄漏 - 媒体播放器框架

感谢和问候, 克里希南。

+1

在谷歌长时间搜索后,我发现这个问题只发生在iPhone模拟器,而不是在设备中。但是,在设备测试中,我获得了另一个内存泄漏名称“CAPThreadStart”的天赋。负责的图书馆是AudioToolbox。所以如果有人遇到了这个问题,请分享你的想法。 – Krishnan 2010-05-19 05:04:38

回答

2

我解决了这个问题。这只发生在模拟器中,而不是在设备中。

0

你可能想要张贴一些代码。这通常是我如何播放音频文件,并且我没有任何泄漏出现:

NSString *path = [[NSBundle mainBundle] pathForResource:@"somefile" ofType:@"mp3"]; 

AVAudioPlayer * newAudio=[[AVAudioPlayer alloc] initWithContentsOfURL:[NSURL fileURLWithPath:path] error:NULL]; 
self.theAudio = newAudio; // automatically retain audio and dealloc old file if new file is loaded 

[newAudio release]; // release the audio safely 

theAudio.delegate = self; 
[theAudio prepareToPlay]; 
[theAudio setNumberOfLoops:0]; 
[theAudio play]; 
+0

嗨朋友, 我解决了这个问题。这只发生在模拟器中,而不是在设备中感谢您的时间。 – Krishnan 2010-07-14 04:50:34