私:
- 作成します
android::MediaBufferGroup
。 buf_group.add_buffer(new android::MediaBuffer(bufsize));
初期化時に複数で埋めます。buf_group->acquire_buffer(&buffer)
どこかに送信するためのバッファーが必要な場合に実行します。buffer->data()
データを格納する実際のメモリ位置を取得し、メタデータを使用およびset_range
設定してから、バッファを他のコンポーネントにフィードするために使用します。- その他のコンポーネント
release
はバッファであり、それらを MediaBufferGroup に戻します。
動作しますが、確実ではありません。取得したバッファdata()
が NULL を返すこともあれば、プログラムがクラッシュすることもありますrelease()
...
MediaBufferGroup を適切に使用するには? 同期を使用する必要がありますか?