2016-12-17 6 views
0

を開始した記録後/再起動を停止し、AVAudioRecorderを記録するように設定し、表示レベルの計量された:私はレコーダーを起動するとAvAudioRecorderだけでiOSの10.2アプリで

recorder = [[ AVAudioRecorder alloc] initWithURL:url settings:recordSetting error:&error]; 
[recorder setDelegate:self]; 
[recorder prepareToRecord]; 
[recorder record]; 

は、私が気づいたVUメーター更新されません。録音が開始された直後にaudioRecorderDidFinishRecording: successfully:メソッドが呼び出されていることに気付きました。しかし、AVAudioRecorderはそれ以降も記録します。また、オーディオファイルを保存して再生することもできます。

さらに奇妙なことに、録音を一時停止してレジュームすると、最初の場合と同じようにaudioRecorderDidFinishRecording: successfully:が起動せず、録音がvu-meterで再開されます。

この奇妙な動作のアイデアはありますか?

答えて

1

AVPlayerを設定しているときは、記録されたオーディオを再生することも、レコーダーを実行することもできます。したがって、デリゲートとAVPlayerの構成設定を管理する必要があります。

希望します。

+0

私は記録段階にあるときはAVPlayerを使用せず、AudioRecorderのインスタンスを1つだけ使用しません。私はそれを確認した。しばらく前にiOS 8でコンパイルしたが、私のアプリのレコーダーセクションでまったく同じコードを使用していたのに、私はこの奇妙な振る舞いをしなかった... iOS10.2でこの古いバージョンを動かすことは問題なし... – Denis

+0

解決済みあなたの答えを再読した後:実際には、audioRecorderDidFinishRecording:successfully:は遅れて解雇されます(アプリがiOS10.2に対してコンパイルされていると思われます)。実際のレコーダーを作成する前に一時的なレコーダーを使用して信号レベルを表示し、そのレコーダーを録音を開始した後にストップ/リリースすると、干渉してしまいます。感謝のアマン! – Denis

+0

あなたの歓迎:) –

関連する問題