OpenSL オーディオ プレーヤー用の bufferqueue インターフェイス (SLAndroidSimpleBufferQueueItf) があります。コールバックをインターフェイスに登録します。コールバック内で、データが循環バッファに埋められるのを条件付き待機しています。
私の問題は、コールバックへの最初の呼び出しを取得する方法がわからないことです。
インターフェイスを作成した直後に、ハードコーディングされたデータを Enqueue に渡すことで強制しました。これは、ダミー データを再生してから、循環バッファでデータを待機するコールバックに入るという効果があります。
これにより、すべてがうまく機能します。初めてコールバックを起動するために、このダミーデータを渡す必要はありません。
私は何が欠けていますか?