ディスクから非常に大きなオーディオ ファイルを再生する必要があり、それらをメモリにストリーミングするのが最も効率的です。
これには OpenAL を使用する必要がありますか、それとも別のオプションがありますか?
ディスクから非常に大きなオーディオ ファイルを再生する必要があり、それらをメモリにストリーミングするのが最も効率的です。
これには OpenAL を使用する必要がありますか、それとも別のオプションがありますか?
間違いなくAudioUnitを使用してください。これは、Appleの最低レベルのAudio APIであるため、低レイテンシーに最適です。
最初にremoteIOでAudioUnitを初期化する必要があります。それらは、whileループでファイルからバッファーを読み取り、AudioUnitコールバックでこれらのバッファーをAudioUnitにプッシュします。
Audio Queuesの使用をお勧めします。それらは使いやすく、十分に文書化されており、高レベルです。また、拡張オーディオ ファイル サービスを使用して、ファイルからオーディオ データを取得することをお勧めします。
iOS では、圧縮されていないオーディオ データの場合、巨大なファイルを mmap し、サンプルをメモリから RemoteIO コールバック バッファにコピーするだけです。RemoteIO オーディオ ユニットは、Audio Queues よりもレイテンシをさらに低く設定できます。