AVAudioRecorder
次の設定で を使用して、iPhone でオーディオを録音しています。
NSMutableDictionary *recordSettings = [[NSDictionary alloc] initWithObjectsAndKeys:
[NSNumber numberWithInt: kAudioFormatMPEG4AAC], AVFormatIDKey,
[NSNumber numberWithFloat:44100.0], AVSampleRateKey,
[NSNumber numberWithInt:1], AVNumberOfChannelsKey,
[NSNumber numberWithInt:12800], AVEncoderBitRateKey,
[NSNumber numberWithInt:16], AVLinearPCMBitDepthKey,
[NSNumber numberWithInt: AVAudioQualityHigh], AVEncoderAudioQualityKey,
nil];
(これらの設定のほとんどは柔軟に対応できますが、MPEG4 AAC を使用する必要があります。)
オーディオをファイルに保存します。
ユーザーは後日戻ってきて、同じファイルへの記録を続行できる必要があります。これを で直接行うオプションはないようですAVAudioRecorder
。代わりに、新しいファイルに記録してそれらを連結しています。
現時点では、 anAVMutableComposition
と anAVMutableCompositionTrack
を使用してファイルを追加していますが、長時間の録音では非常に遅いため、これは実際には実現可能ではありません。
2 番目のファイルからヘッダーを削除し、オーディオ データを最初のファイルに追加し、結合されたファイルのヘッダーを変更して新しいデュレーションを反映できれば、はるかに速くなると思います。両方のファイルがまったく同じ設定で作成されていることがわかっているので、ヘッダーの他の詳細は同じであるはずです。
残念ながら、ヘッダーの形式や、この方法でファイルを結合できるかどうかについての情報は見つかりません。
だから私の質問は:
- iPhone で作成された MPEG-4 AAC ファイル ヘッダーの形式は何ですか?
- このようにヘッダーをいじって、2 つのオーディオ ファイルを結合することはできますか?
- 2 つの MPEG-4 AAC オーディオ ファイルをほぼ瞬時に追加するより良い方法はありますか?