カメラ/マイクを使わず受信のみモードで接続したい
RICOH Live Streaming Conference (Web Application Component)の場合
join APIを呼び出すときのconnectOptionsで、useDummyDeviceをtrueに設定することで通話開始時のカメラとマイクがダミーデバイスとなりデバイスなしで参加可能になります。
await frame.join({
clientId: 'hoge',
acccessToken: accessToken,
connectOptions: {
username: 'huga'
enableVideo: true,
enableAudio: true,
useDummyDevice: true
}
});
RICOH Live Streaming Client SDK for Webの場合
下記のようにダミーデバイスを生成し、それを利用することでマイク/カメラデバイスが無い環境などでも利用できます。
function getDummyMedia() {
if ("function" !== typeof HTMLCanvasElement.prototype.captureStream) return null;
const canvas = document.createElement("canvas");
canvas.getContext("2d");
return canvas.captureStream();
}
$("#join").addEventListener("click", async (e) => {
const stream = getDummyMedia();
const access_token = accessToken(Credentials.CLIENT_SECRET, { type: "sfu"});
const localLSTracks = stream.getTracks().map((mediaStreamTrack) => {
return new LSSDK.LSTrack(mediaStreamTrack, stream, { mute: "softmute" });
});
try {
client = createClient();
const connectOption = { localLSTracks };
client.connect(Credentials.CLIENT_ID, access_token, connectOption);
} catch (e) {
console.log(e);
}
});