RTCTrackEvent
Baseline Widely available
This feature is well established and works across many devices and browser versions. It’s been available across browsers since January 2020.
WebRTC API の RTCTrackEvent
インターフェイスは、 track
イベントを表します。これは新しい MediaStreamTrack
が RTCRtpReceiver
に RTCPeerConnection
の一部として追加されたときに送られます。
対象は、トラックが追加される RTCPeerConnection
オブジェクトです。
このイベントは WebRTC レイヤーからウェブサイトまたはアプリケーションに送信されるため、通常、RTCTrackEvent
を自分でインスタンス化する必要はありません。
コンストラクター
RTCTrackEvent()
-
新しい
RTCTrackEvent
オブジェクトを作成して返します。新しいトラックイベントは通常、 WebRTC インフラストラクチャによって作成され、接続のontrack
イベントハンドラーに送信されるため、自分で作成する必要はほとんどありません。
インスタンスプロパティ
RTCTrackEvent
は Event
から派生しているため、そちらのプロパティも使用できます。
receiver
読取専用-
RTCPeerConnection
に追加されたトラックで使用されるRTCRtpReceiver
です。 streams
読取専用 省略可-
MediaStream
オブジェクトの配列で、各オブジェクトは、追加するtrack
が属するメディアストリームの 1 つを表します。 既定では、配列は空で、ストリームのないトラックを示します。 track
読取専用-
この接続に追加された
MediaStreamTrack
です。 transceiver
読取専用-
新しいトラックで使用される
RTCRtpTransceiver
です。
トラックイベントの種類
トラックイベントは 1 種類のみです。
track
track
イベントは、新しいトラックが接続に追加されたときに RTCPeerConnection
に送信されます。 track
イベントが RTCPeerConnection
の ontrack
ハンドラーに配信される時点で、新しいメディアは特定の RTCRtpReceiver
(イベントの receiver
プロパティで指定)に対するネゴシエーションを完了しています。
さらに、受信者の track
で指定された MediaStreamTrack
は、イベントの track
で指定されたものと同じであり、そのトラックは、関連付けられたすべてのリモート MediaStream
オブジェクトに追加されています。
新しいトラックが利用可能になったときに通知を受ける track
イベントリスナーを追加することができます。これにより、例えば、 RTCPeerConnection.addEventListener()
または ontrack
イベントハンドラープロパティを使用して、そのメディアを <video>
要素に添付することができます。
メモ:
新しい着信トラックが接続に追加されたときに track
イベントを受け取り、 addTrack()
を呼び出して接続の遠端にトラックを追加すると、リモートピアーで track
イベントが起動されることを覚えておくとよいでしょう。
例
仕様書
Specification |
---|
WebRTC: Real-Time Communication in Browsers # dom-rtctrackevent |