Newly available 主要ブラウザで対応済みだが、古いバージョンでは未対応の場合がある。

対応ブラウザ

機能 デスクトップ モバイル
Chrome
Edge
Firefox
Safari
Chrome Android
Safari iOS
86
86
117
15.4
86
15.4

rtctransform イベントは、エンコードされたビデオまたはオーディオフレームが WebRTC API またはエンコード変換を使用して処理のためにキューに入れられた際に、ワーカーの DedicatedWorkerGlobalScope オブジェクトで発生します。

141
141
117
15.4
141
15.4

RTCEncodedAudioFrame インターフェースの data プロパティは、エンコードされたフレームのデータを含むバッファを返します。

86
86
117
15.4
86
15.4

RTCEncodedAudioFrame インターフェースの getMetadata() メソッドは、そのフレームに関連付けられたメタデータを含むオブジェクトを返します。

86
86
117
15.4
86
15.4

RTCEncodedAudioFrame() コンストラクタは、完全に独立した新しい RTCEncodedAudioFrame オブジェクトを作成します。

127
127
145
26
127
26

WebRTC API の `RTCEncodedVideoFrame` は、WebRTC の受信側または送信側のパイプラインにおけるエンコード済みビデオフレームを表しており、WebRTC エンコード変換を使用して変更することができます。

86
86
117
15.4
86
15.4

RTCEncodedVideoFrame インターフェースの data プロパティは、フレームデータを含むバッファを返します。

86
86
117
15.4
86
15.4

RTCEncodedVideoFrame インターフェースの getMetadata() メソッドは、そのフレームに関連付けられたメタデータを含むオブジェクトを返します。

86
86
117
15.4
86
15.4

RTCEncodedVideoFrame() コンストラクタは、完全に独立した新しい RTCEncodedVideoFrame オブジェクトを作成します。

127
127
145
26
127
26

RTCEncodedVideoFrame インターフェースの `type` 読み取り専用プロパティは、このフレームがキーフレームかデルタフレームかを示します。

86
86
117
15.4
86
15.4

RTCRtpReceiver オブジェクトの transform プロパティは、ワーカースレッドで実行されている変換ストリーム (TransformStream) をレシーバーパイプラインに挿入するために使用されます。これにより、パケット化モジュールから到着したエンコード済みのビデオおよびオーディオフレームに対して、再生やレンダリングが行われる前にストリーム変換を適用することが可能になります。

141
141
117
15.4
141
15.4

WebRTC API の RTCRtpScriptTransform インターフェースは、WebRTC エンコード変換(ワーカースレッドで実行される TransformStream)を WebRTC の送信パイプラインおよび受信パイプラインに挿入するために使用されます。

141
141
117
15.4
141
15.4

RTCRtpScriptTransform() コンストラクタは、新しい RTCRtpScriptTransform オブジェクトを作成します。

141
141
117
15.4
141
15.4

WebRTC API の RTCRtpScriptTransformer インターフェースは、WebRTC エンコード変換が、受信および送信の WebRTC パイプライン内のエンコード済みメディアフレームを変更するために使用できる、ワーカー側の Stream API インターフェースを提供します。

141
141
117
15.4
141
15.4

RTCRtpScriptTransformer インターフェースの generateKeyFrame() メソッドは、ビデオエンコーダーにキーフレームを生成させます。

117
15.4
15.4

RTCRtpScriptTransformer インターフェースの read-only プロパティは、対応する RTCRtpScriptTransform の生成時に(オプションで)2 番目の引数として渡されたオブジェクトを返します。

141
141
117
15.4
141
15.4

RTCRtpScriptTransformer インターフェースの readable 読み取り専用プロパティは、エンコードされたメディアフレームのソースとなる ReadableStream インスタンスを返します。

141
141
117
15.4
141
15.4

RTCRtpScriptTransformer インターフェースの sendKeyFrameRequest() メソッドは、受信したエンコード済みビデオフレームを処理している WebRTC Encoded Transform によって呼び出され、送信者に対してキーフレームを要求するために使用されることがあります。

141
141
117
15.4
141
15.4

RTCRtpScriptTransformer インターフェースの「writable read-only」プロパティは、対応する RTCRtpScriptTransformer.readable にキューに入れられたエンコード済みメディアフレームのシンクとして使用できる WritableStream インスタンスを返します。

141
141
117
15.4
141
15.4

RTCRtpSender オブジェクトの transform プロパティは、ワーカースレッドで実行されているトランスフォームストリーム (TransformStream) を送信パイプラインに挿入するために使用されます。これにより、コーデックによって出力された後、送信される前のエンコード済みビデオおよびオーディオフレームに対して、ストリーム変換を適用することが可能になります。

141
141
117
15.4
141
15.4

WebRTC API の RTCTransformEvent は、エンコードされたフレームが WebRTC Encoded Transform による処理のためにキューに入れられた際に、専用のワーカーで発生するイベントを表します。

141
141
117
15.4
141
15.4

RTCTransformEvent インターフェースの読み取り専用トランスフォーマー プロパティは、そのイベントに関連付けられた RTCRtpScriptTransformer を返します。

141
141
117
15.4
141
15.4
1+対応 (バージョン) 未対応 注釈あり サブ機能の解説は MDN Web Docs (CC BY-SA 2.5)

基本構文

JAVASCRIPT
addEventListener("rtctransform", (event) => { })

onrtctransform = (event) => { }

実務での使いどころ

  • WebRTC encoded transform の活用

    rtctransform イベントは、エンコードされたビデオまたはオーディオフレームが WebRTC Encoded Transform によって処理のためにキューに入れられたときに、ワーカーの DedicatedWorkerGlobalScope オブジェクトで発生します。

注意点

  • 古いブラウザでは対応していない場合がある。

実装メモ

  • 一部の API はセキュアコンテキスト (HTTPS) やユーザー操作起点を必要とする。利用前に要件を確認すること。