2011-10-27 23 views
0

今、私はAVAudioRecorderで最初に録音された.wavファイルを再生しようとしていて、AVAudioPlayerでこのサウンドを再生しています。これは十分に簡単だと思われますが、私はAVAudioRecorderを停止させずに一時停止します。それは何らかの理由でAVAudioPlayerがレコーダーで開かれているファイルを再生するのを拒否するという問題です。AVAudioPlayerでAVAudioRecorderで録音したファイルを再生する

recorder = [[AVAudioRecorder alloc] initWithURL:url settings:settings error:&error]; 
[recorder record]; 

*record for some time* 

[recorder stop]; 

player = [[AVAudioPlayer alloc] initWithContentsOfURL:[self copySoundFileURL] error:nil]; 
[player play]; 

をしかし、私はこのようにそれを呼び出すとき、それは仕事をしたい:これは動作します

recorder = [[AVAudioRecorder alloc] initWithURL:url settings:settings error:&error]; 
[recorder record]; 

*record for some time* 

[recorder pause]; 

player = [[AVAudioPlayer alloc] initWithContentsOfURL:[self copySoundFileURL] error:nil]; 
[player play]; 

(これらは例ofcourseのです)

誰もが道を知っていれば基本的に私の質問です次のいずれかを実行します。

  1. レコーダーで開いているファイルを再生します。
  2. レコーダーを停止し、ファイルを再生してから、同じファイルでレコーディングを再開します(以前に記録されたものを失うことはありません)。

すべての情報や考えを歓迎します。

答えて

1

これを修正するための唯一の方法は、2つのwavファイルをマージすることです。これに関するさらに詳しい情報は、私の質問の別の1つにあります:NSURL returns Invalid Summary when merging WAV files。これは100%正確なものではありません(それゆえの質問ですが、これについての情報がほしい人にとってはこれがスタートです)。