2011-10-04 98 views
2

問題:通過http流式傳輸音頻後無法錄製聲音。ios流式MP3和錄製聲音

這我遇到的問題是,我再也不能記錄聲音使用本指南流MP3後:http://cocoawithlove.com/2008/09/streaming-and-playing-live-mp3-stream.html

我可以錄製聲音完美的罰款之前,我流的任何MP3。只有在使用指導我流mp3後,我的ios應用程序不能再錄製聲音。

我想知道你們之前是否有可能遇到過這個問題,或者對此問題發生的原因有任何預感?我會繼續發佈我的代碼進行錄製,以防萬一您需要查看它。

在我流任何mp3之前,audioRecorderDidFinishRecording始終在記錄完成後觸發。

i流mp3之後,audioRecorderDidFinishRecording在記錄完成後永不開火。

非常感謝您的幫助。

// ######################### 
    NSURL *soundFileUrl = [NSURL fileURLWithPath:self.recordFilePath]; 

    NSDictionary *recordSettings = [NSDictionary dictionaryWithObjectsAndKeys: 
           [NSNumber numberWithInt:kAudioFormatLinearPCM], AVFormatIDKey, 
           [NSNumber numberWithInt:AVAudioQualityMax], AVEncoderAudioQualityKey, 
           [NSNumber numberWithInt:24], AVEncoderBitRateKey, 
           [NSNumber numberWithInt:1], AVNumberOfChannelsKey, 
           [NSNumber numberWithFloat:22050.0f], AVSampleRateKey, 
           nil]; 

    NSError *error = nil; 
    self.recorder = [[AVAudioRecorder alloc] initWithURL:soundFileUrl settings:recordSettings error:&error]; 

    if (error) { 
     NSLog(@"%@", error); 
    } else{  
     self.recorder.delegate = self; 
     [self.recorder prepareToRecord];  
     [self.recorder record]; 

     self.recordCountdown = [NSTimer scheduledTimerWithTimeInterval:(1.0/1.0) target:self selector:@selector(updateLabelCountdown) userInfo:nil repeats:YES]; 
    } 

    // delegate for finish recording with success and failure 
    - (void) audioRecorderDidFinishRecording:(AVAudioRecorder *)recorder successfully:(BOOL)flag { 
     NSLog(@"record did finish flag - %d", flag); 
     } 

    - (void) audioRecorderEncodeErrorDidOccur:(AVAudioRecorder *)recorder error:(NSError *)error { 
     NSLog(@"error record - %@", [error localizedDescription]); 
     } 
+0

沒有ü找到任何解決辦法? – yogs

+0

是的。我最終沒有使用這個外部庫。我結束了使用UIWebView流音頻。 我認爲外部庫佔據了一些重要的音頻資源,並且在完成播放音頻文件後從不釋放它。 –

回答