マルチチャンネルミキサーベースのAUGraphを介して同期し、最大3つを同時に再生して、一度に複数のステレオオーディオファイル(数秒から4分までの範囲)を処理する必要があるiOSアプリを開発しています。私のオーディオファイルは、MP3、AAC、またはCAFのいずれかとして圧縮されていますが、バッファにロードされると、32ビット形式に変換されます(私のコードはAppleのiPhoneMultichannelMixerTestAudioUnitSampleType
に基づいています)。言うまでもなく、このような大きなバッファでは、アプリのメモリがすぐに問題になります。
Appleのドキュメントには、iOSデバイスは一度に1つのMP3 / AACファイルをハードウェアでデコードできると記載されており、ソフトウェアでのデコードが必要な他のファイルにはCAF(IMA4)形式が推奨されています。再生中にオーディオを動的にロードするシステムを開発する前に、圧縮ファイルをバッファに直接ロードして(これによりメモリ要件を大幅に削減)、AUGraphにオンザフライで変換させることができるかどうかを知りたいですか?