2011-01-05 6 views
3

私は再生中のオーディオキューを停止し、正しく一時停止していますが、AudioQueueStop()関数の実行に時間がかかります。AudioQueueを停止してすばやく再生

すぐに停止してからオーディオキューの再生を再開したいのですが、これを行う最も簡単な方法が何であるか不思議でした。

私のプロジェクトでは、特定のサウンドを何度も繰り返し再生するために、複数のオーディオキューがあります。私はそれらの音のいくつかを止めて、直ちにそれらを再生しなければならない状況があります。これを行うオーディオキューが2つしかない場合はそれほど悪くはありませんが、停止して再起動する必要がある場合は長い時間がかかります。

オーディオキューでstopを呼び出し、同じサウンドで新しいものを作成しても、それを行うより良い方法があるかどうか疑問に思っていました。

答えて

2

AudioQueueこの種のものは面倒です。キューの中間バッファを停止するのは難しいです。つまり、現在のバッファが引き続き再生されます。さらに、待ち時間の問題に対処する必要があります。

待機時間の短い高速停止と再生のために、私はRemoteIO AudioUnitを使用することをお勧めします。

Using RemoteIO audio unit

あなたはここにコードを持つ偉大なチュートリアルを見つけることができます

関連する問題