type offer に含まれる認証 metadata
チャネルID
クライアントID
WS シグナリングで type offer メッセージを受信したシグナリング URL
コネクションID
PeerConnection に渡す configuration
WS シグナリングで最初に type connect を送信したシグナリング URL
デバッグフラグ
サイマルキャストで使用する RTCRtpEncodingParameters のリスト
メタデータ
接続オプション
PeerConnection インスタンス
リモートコネクションIDのリスト
ロール(sendonly | sendrecv | recvonly)
type offer に含まれるセッションID。Sora 2023.2.0 以降に接続した時に含まれる
シグナリングに使用する URL 候補
メディアストリーム
audio が有効かどうか
DataChannel メッセージング用の DataChannel 情報のリスト
E2EE のリモートのフィンガープリントリスト
E2EE の自分のフィンガープリント
シグナリングに使用する URL
video が有効かどうか
SendRecv Object で発火するイベントのコールバックを設定するメソッド
const sendrecv = connection.sendrecv("sora");
sendrecv.on("track", (event) => {
// callback 処理
});
addstream イベントは非推奨です. track イベントを使用してください
removestream イベントは非推奨です. removetrack イベントを使用してください
audio track を削除するメソッド
audio track を削除する MediaStream
const sendrecv = connection.sendrecv("sora");
const mediaStream = await navigator.mediaDevices.getUserMedia({audio: true, video: true});
await sendrecv.connect(mediaStream);
sendrecv.removeAudioTrack(mediaStream);
stream の audio track を停止後、PeerConnection の senders から対象の sender を削除します
video track を削除するメソッド
video track を削除する MediaStream
const sendrecv = connection.sendrecv("sora");
const mediaStream = await navigator.mediaDevices.getUserMedia({audio: true, video: true});
await sendrecv.connect(mediaStream);
sendrecv.removeVideoTrack(mediaStream);
stream の video track を停止後、PeerConnection の senders から対象の sender を削除します
audio track を入れ替えするメソッド
audio track を削除する MediaStream
新しい audio track
const sendrecv = connection.sendrecv("sora");
const mediaStream = await navigator.mediaDevices.getUserMedia({audio: true, video: true});
await sendrecv.connect(mediaStream);
const replacedMediaStream = await navigator.mediaDevices.getUserMedia({audio: true});
await sendrecv.replaceAudioTrack(mediaStream, replacedMediaStream.getAudioTracks()[0]);
stream の audio track を停止後、新しい audio track をセットします
video track を入れ替えするメソッド
video track を削除する MediaStream
新しい video track
const sendrecv = connection.sendrecv("sora");
const mediaStream = await navigator.mediaDevices.getUserMedia({audio: true, video: true});
await sendrecv.connect(mediaStream);
const replacedMediaStream = await navigator.mediaDevices.getUserMedia({video: true});
await sendrecv.replaceVideoTrack(mediaStream, replacedMediaStream.getVideoTracks()[0]);
stream の video track を停止後、新しい video track をセットします
audio track を削除するメソッド
audio track を削除する MediaStream
この関数は非推奨です。代わりに removeAudioTrack を使用してください
const sendrecv = connection.sendrecv("sora");
const mediaStream = await navigator.mediaDevices.getUserMedia({audio: true, video: true});
await sendrecv.connect(mediaStream);
sendrecv.stopAudioTrack(mediaStream);
stream の audio track を停止後、PeerConnection の senders から対象の sender を削除します
video track を削除するメソッド
video track を停止する MediaStream
この関数は非推奨です。代わりに removeVideoTrack を使用してください
const sendrecv = connection.sendrecv("sora");
const mediaStream = await navigator.mediaDevices.getUserMedia({audio: true, video: true});
await sendrecv.connect(mediaStream);
sendrecv.stopVideoTrack(mediaStream);
stream の video track を停止後、PeerConnection の senders から対象の sender を削除します
Role が "recvonly" の場合に Sora との WebRTC 接続を扱うクラス