CoWatchingClient

@PublicApi
interface CoWatchingClient


同時視聴セッションを表します。

最近のユーザー操作(再生、一時停止、シークなど)と、メディアのバッファリングによる遅延などの環境的要因を Meet に通知します。

まとめ

定数

const Double

最大許容プレイアウト レート。

const Double

1 秒あたりに許可されるシークの最大数。

パブリック関数

Unit
notifyBuffering(mediaPlayoutPosition: Duration!)

前のメディア切り替え、メディアシーク、通常のネットワークの輻輳などにより、バッファリングのためにメディアを再生する準備ができていないことを Meet に通知します。

Unit
notifyEnded(mediaPlayoutPosition: Duration!)

メディア プレーヤーが現在のメディアの最後に達したことを Meet に通知します。

Unit
notifyPauseState(paused: Boolean, mediaPlayoutPosition: Duration!)

ユーザーがメディアの再生を一時停止または一時停止解除したことを Meet に通知し、その操作を Meet が他のユーザーにミラーリングできるようにします。

Unit
notifyPlayoutRate(rate: Double, mediaPlayoutPosition: Duration!)

ユーザーがメディアの再生速度を更新したことを Meet に通知します(例:

Unit

キューが変更されたことを Meet に通知し、他のユーザーにそれをミラーリングできるようにします。

Unit
notifyReady(mediaPlayoutPosition: Duration!)

バッファリングが完了し、メディアを再生できる準備が整ったことを、指定したタイムスタンプから開始することを Meet に通知します。

Unit
notifySeekToTimestamp(mediaPlayoutPosition: Duration!)

ユーザーがメディアの再生ポイントをシークしたことを Meet に通知し、そのアクションを他のユーザーにミラーリングできるようにします。

Unit
notifySwitchedToMedia(
    mediaTitle: String!,
    mediaId: String!,
    mediaPlayoutPosition: Duration!
)

ユーザーがメディアを切り替えたことを Meet に通知し、それを Meet が他のユーザーに伝えられるようにする

Unit
notifySwitchedToMedia(
    mediaTitle: String!,
    mediaId: String!,
    mediaPlayoutPosition: Duration!,
    queue: CoWatchingQueue!
)

ユーザーがメディアを切り替えたことを Meet に通知し、シミュレーション キューの更新を使用してそれを他のユーザーに渡すようにします。

定数

MAX_PLAYOUT_RATE

const val MAX_PLAYOUT_RATE = 2.0: Double

最大許容プレイアウト レート。

MAX_SEEKS_PER_SECOND

const val MAX_SEEKS_PER_SECOND = 0.9: Double

1 秒あたりに許可されるシークの最大数。

パブリック関数

notifyBuffering

fun notifyBuffering(mediaPlayoutPosition: Duration!): Unit

前のメディア切り替え、メディアシーク、通常のネットワークの輻輳などにより、バッファリングのためにメディアを再生する準備ができていないことを Meet に通知します。

パラメータ
mediaPlayoutPosition: Duration!

メディアが一時停止する位置(バッファリングの完了を待機)

例外
java.lang.NullPointerException

mediaPlayoutPosition が null の場合

com.google.android.meet.addons.AddonException

予期しないエラーが発生した場合

java.lang.IllegalStateException

同時視聴セッションの終了後に呼び出された場合

notifyEnded

fun notifyEnded(mediaPlayoutPosition: Duration!): Unit

メディア プレーヤーが現在のメディアの最後に達したことを Meet に通知します。

注: メディアが終了した直後に自動再生メカニズムを介して通知された SwitchedToMedia が呼び出される場合、このメソッドの呼び出しは必須ではありません(ただし、有害ではありません)。

パラメータ
mediaPlayoutPosition: Duration!

プレーヤーの最終的な位置

例外
java.lang.NullPointerException

mediaPlayoutPosition が null の場合

com.google.android.meet.addons.AddonException

予期しないエラーが発生した場合

java.lang.IllegalStateException

同時視聴セッションの終了後に呼び出された場合

notifyPauseState

fun notifyPauseState(paused: Boolean, mediaPlayoutPosition: Duration!): Unit

ユーザーがメディアの再生を一時停止または一時停止解除したことを Meet に通知し、その操作を Meet が他のユーザーにミラーリングできるようにします。

パラメータ
paused: Boolean

一時停止の場合は true、再生が再開された場合は false

mediaPlayoutPosition: Duration!

メディアが一時停止または一時停止解除された位置

例外
java.lang.NullPointerException

mediaPlayoutPosition が null の場合

com.google.android.meet.addons.AddonException

予期しないエラーが発生した場合

java.lang.IllegalStateException

同時視聴セッションの終了後に呼び出された場合

notifyPlayoutRate

fun notifyPlayoutRate(rate: Double, mediaPlayoutPosition: Duration!): Unit

ユーザーがメディアの再生速度を更新したことを Meet に通知します(例:1.25 倍)を新しい値に変更します。

パラメータ
rate: Double

メディアの再生速度

mediaPlayoutPosition: Duration!

プレーヤーの現在の位置

例外
java.lang.IllegalStateException

rate が正数でない場合

java.lang.IllegalStateException

rateMAX_PLAYOUT_RATE より大きい場合

com.google.android.meet.addons.AddonException

予期しないエラーが発生した場合

java.lang.IllegalStateException

同時視聴セッションの終了後に呼び出された場合

notifyQueueUpdate

fun notifyQueueUpdate(queue: CoWatchingQueue!): Unit

キューが変更されたことを Meet に通知し、他のユーザーにそれをミラーリングできるようにします。

パラメータ
queue: CoWatchingQueue!

アドオンアプリのキューに関する情報

例外
java.lang.NullPointerException

queue が null の場合

com.google.android.meet.addons.AddonException

予期しないエラーが発生した場合

java.lang.IllegalStateException

同時視聴セッションの終了後に呼び出された場合

notifyReady

fun notifyReady(mediaPlayoutPosition: Duration!): Unit

バッファリングが完了し、メディアを再生できる準備が整ったことを、指定したタイムスタンプから開始することを Meet に通知します。

パラメータ
mediaPlayoutPosition: Duration!

メディアがバッファされて再生可能な位置

例外
java.lang.NullPointerException

mediaPlayoutPosition が null の場合

com.google.android.meet.addons.AddonException

予期しないエラーが発生した場合

java.lang.IllegalStateException

同時視聴セッションの終了後に呼び出された場合

notifySeekToTimestamp

fun notifySeekToTimestamp(mediaPlayoutPosition: Duration!): Unit

ユーザーがメディアの再生ポイントをシークしたことを Meet に通知し、そのアクションを他のユーザーにミラーリングできるようにします。

パラメータ
mediaPlayoutPosition: Duration!

ユーザーがシークした時点のタイムスタンプ

例外
java.lang.NullPointerException

mediaPlayoutPosition が null の場合

com.google.android.meet.addons.AddonException

予期しないエラーが発生した場合

java.lang.IllegalStateException

同時視聴セッションの終了後に呼び出された場合

java.lang.IllegalStateException

1 秒あたりのシーク数が MAX_SEEKS_PER_SECOND より大きい場合

notifySwitchedToMedia

fun notifySwitchedToMedia(
    mediaTitle: String!,
    mediaId: String!,
    mediaPlayoutPosition: Duration!
): Unit

ユーザーがメディアを切り替えたことを Meet に通知し、それを Meet が他のユーザーに伝えられるようにする

パラメータ
mediaTitle: String!

切り替わったメディアのタイトルなどですこのタイトルは、他のユーザーが同時視聴セッションへの接続を検討しているときに、Meet UI に反映されます。

mediaId: String!

切り替え先のメディアの文字列 URI

mediaPlayoutPosition: Duration!

メディアの再生が開始された位置

例外
java.lang.NullPointerException

mediaId または mediaPlayoutPosition が null の場合

com.google.android.meet.addons.AddonException

予期しないエラーが発生した場合

java.lang.IllegalStateException

同時視聴セッションの終了後に呼び出された場合

notifySwitchedToMedia

fun notifySwitchedToMedia(
    mediaTitle: String!,
    mediaId: String!,
    mediaPlayoutPosition: Duration!,
    queue: CoWatchingQueue!
): Unit

ユーザーがメディアを切り替えたことを Meet に通知し、シミュレーション キューの更新を使用してそれを他のユーザーに渡すようにします。

パラメータ
mediaTitle: String!

切り替わったメディアのタイトルなどですこのタイトルは、他のユーザーが同時視聴セッションへの接続を検討しているときに、Meet UI に反映されます。

mediaId: String!

切り替え先のメディアの文字列 URI

mediaPlayoutPosition: Duration!

メディアの再生が開始された位置

queue: CoWatchingQueue!

アドオンアプリのキューに関する情報

例外
java.lang.NullPointerException

mediaIdmediaPlayoutPosition、または queue が null の場合

com.google.android.meet.addons.AddonException

予期しないエラーが発生した場合

java.lang.IllegalStateException

同時視聴セッションの終了後に呼び出された場合