2011-09-30 42 views
4

我有播放与AVAssetReader和iPod库一起工作,当我将应用程序放在后台时,它将继续读取音频到播放缓冲区,但是当它到达歌曲末尾并开始阅读下一首歌曲时,它将失败当startReading被调用时。我收到以下错误的详细信息。将应用程序置于后台后AVAssetReader失败,为什么?

Error Domain=AVFoundationErrorDomain Code=-11800 "The operation couldn’t be completed. (AVFoundationErrorDomain error -11800.)" UserInfo=0x1bfc20 {NSUnderlyingError=0x113e00 "The operation couldn’t be completed. (OSStatus error -12985.)"} 
{ 
    NSUnderlyingError = "Error Domain=NSOSStatusErrorDomain Code=-12985 \"The operation couldn\U2019t be completed. (OSStatus error -12985.)\""; 
} 

AVAssetReader是否有我不知道的限制?

+0

嗨Brennen,你有没有解决过这个问题?我一直对我的头撞,但仍然卡住.. – Dick

回答

-1
NSError *sessionError = nil; 
    [[AVAudioSession sharedInstance] setCategory:AVAudioSessionCategoryPlayback error:&sessionError]; 
    UInt32 doSetProperty = 1; 
    OSStatus tStatus = AudioSessionSetProperty (kAudioSessionProperty_OverrideCategoryMixWithOthers, 
               sizeof (doSetProperty), 
               &doSetProperty 
               ); 
    NSLog(@"AVAudioSession AudioSessionSetProperty status is %@", tStatus); 
    [[AVAudioSession sharedInstance] setActive:YES error:&sessionError]; 
    [[AVAudioSession sharedInstance] setDelegate:self]; 
    NSLog(@"AVAudioSession setActive Error is %@", sessionError); 
+1

这是有点难以阅读这个答案。你可以将它格式化为代码吗?另外,你能解释一下为什么这会起作用吗? – Brennan

相关问题