4

AudioTrackオブジェクトに書き込む PCM デコーダーを実装しました。

AudioTrackすべてが素晴らしいように見えますが、最後に書き込まれたチャンクの再生が停止したときに、オブジェクトから何らかの通知を受け取る必要があります。

などのコールバック メソッドがあることに気付きましたがsetNotificationMarkerPosition,、それらの使用方法に関する詳細なドキュメントは見つかりませんでした。

前もって感謝します!

4

1 に答える 1

2

コールバックを取得するにはAudioTrack、マーカー コールバックを設定するか、定期的なコールバックを使用します。マーカーに問題があるという報告を見たことがありますので、両方試してみてください。

マーカー コールバックの場合、最初に呼び出しsetNotificationMarkerPositionたいフレーム番号を指定して呼び出します。

定期的なコールバックの場合は、代わりに呼び出し、 xフレームsetPositionNotificationPeriodごとに呼び出します。

setPlaybackPositionUpdateListenerいずれにせよ、コールバックを登録するために呼び出す必要があります。onMarkerReachedこれは、マーカーに到達した場合、またはonPeriodicNotification設定されたフレーム数ごとに2 つのメソッドを呼び出します。どちらか一方、または両方を使用することを選択できます。どちらのコールバックも、AudioTrack設定に使用した のインスタンスを参照します。

デフォルトでは、AudioTrackインスタンスが作成されたのと同じスレッドでコールバックされます。または、コールバックを登録するときにハンドラーを渡して、別のスレッドに送信することもできます。

于 2011-05-25T01:11:22.417 に答える