2

私は Unity 開発者であり、同僚が Obj-C でネイティブにこれを行うのを手伝う必要があります。Unity では大したことではありません。

1) サンプルは float[] のリストとしてメモリに保存されます

2) ヘルパー関数は、任意のオフセットで、任意のサンプルに対して n サイズの float[] を返します。

3) 必要に応じて別のヘルパー関数がデータをフェードします

4) AudioClip オブジェクトは、カットされたすべてのサンプルに対応する適切なサイズで作成され、適切なオフセットで埋められます。

5) AudioClip はプレーヤー コンポーネント (AudioSource) に割り当てられます。

6)AudioSource.Play(ulong offsetInSamples) は、将来の正確なサンプル時間で再生されます。ループも、AudioSource オブジェクトの loop パラメータを設定するだけの問題です。

iOS デバイス用の Obj-C で同様の結果を達成するための適切なクラスを教えていただければ幸いです。多くの iOS オーディオ初心者も興味を持っていると確信しています。よろしくお願いします!

グレッグゾ

4

1 に答える 1

3

iOSで利用可能な関連するオーディオAPIの概要はこちらです

オーディオクリップにパッチを適用し、音量レベルを設定し、ケースで再生するのに適した最高レベルのフレームワークは、おそらくAVFoundationです。

これには、sを作成AVAssetし、それらをsに追加しAVPlayerItem、場合によってはそれらをsに入れてAVMutableComposition複数のアイテムをマージし、それらの音量(audioMix)を調整し、それらを。で再生することが含まれAVPlayerます。

AVFoundationはAVAssetと連携して、関連するフォーマットと、確認したい下位レベルのバイトを変換しますAudioToolbox(まだ2つ以上のリンクを投稿することはできません)。

制御が少ないやや単純なAPIについては、を参照してくださいAVAudioPlayer。より高度な制御が必要な場合(例:ゲーム-リアルタイム/低遅延)、再生にOpenALを使用する必要がある場合があります。

于 2013-01-20T12:48:27.847 に答える