Language

AudioTrack.GetTimestamp(AudioTimestamp) メソッド

定義

必要に応じてタイムスタンプをポーリングします。

[Android.Runtime.Register("getTimestamp", "(Landroid/media/AudioTimestamp;)Z", "GetGetTimestamp_Landroid_media_AudioTimestamp_Handler")]
public virtual bool GetTimestamp(Android.Media.AudioTimestamp? timestamp);
[<Android.Runtime.Register("getTimestamp", "(Landroid/media/AudioTimestamp;)Z", "GetGetTimestamp_Landroid_media_AudioTimestamp_Handler")>]
abstract member GetTimestamp : Android.Media.AudioTimestamp -> bool
override this.GetTimestamp : Android.Media.AudioTimestamp -> bool

パラメーター

timestamp
AudioTimestamp

呼び出し元によって割り当てられ所有されている null 以外の AudioTimestamp インスタンスへの参照。

返品

タイムスタンプが使用可能な場合は true、タイムスタンプが使用できない場合は false。 タイムスタンプが使用可能な場合、AudioTimestamp インスタンスにはフレーム単位の位置と、そのフレームが表示されたとき、または表示がコミットされた推定時間が入力されます。 タイムスタンプが使用できない場合、指定されたインスタンスは変更されません。 オーディオ クロックが安定している間、またはルートの変更中と直後に、タイムスタンプが一時的に使用できない場合があります。 ルートがタイムスタンプをサポートしていない場合、特定のルートのタイムスタンプは永続的に使用できません。 この場合、 #getPlaybackHeadPositionを用いておおよそのフレーム位置が得られる。 ただし、ルートの変更後に復旧するために、タイムスタンプのクエリを継続して実行すると便利な場合があります。

属性

注釈

必要に応じてタイムスタンプをポーリングします。

初期ウォームアップ中またはルーティングまたはモードの変更後にタイムスタンプを追跡する必要がある場合は、報告されたタイムスタンプにフレーム位置が進んでいることが示されるまで、またはタイムスタンプがこのルートで使用できないことが明らかになるまで、定期的に新しいタイムスタンプを要求する必要があります。

クロックが安定した速度で進んだ後、10 秒ごとに約 1 回、1 分に 1 回、新しいタイムスタンプを照会します。 このメソッドをより頻繁に呼び出すことは非効率的です。 また、連続するタイムスタンプ レポート間の短期的な違いは意味がないため、推奨よりも頻繁にこのメソッドを呼び出すことも逆効果です。 フレーム位置とプレゼンテーション時間の間に高解像度のマッピングが必要な場合は、低解像度のタイムスタンプに基づいて、アプリケーション レベルで実装することを検討してください。

返された位置のオーディオ データは、既に表示されているか、まだ表示されていないが表示されるようにコミットされている可能性があります。 特定の位置に対応する時刻を要求したり、特定の時刻に対応する (小数部の) 位置を要求したりすることはできません。 このような機能が必要な場合は、アプリケーション レベルで実装することを検討してください。

Javaドキュメント。

このページの一部は、によって作成および共有され、に記載されている条件に従って使用される作業に基づく変更です。

適用対象