【发布时间】:2020-12-25 06:30:42
【问题描述】:
我正在尝试能够禁用(空白视频和静音音频)正在发送到其他对等方,同时保持本地媒体启用。
我想要电话接听或拒绝按钮。但我不想等待被叫方按下“接听”按钮,然后才能发送媒体,这会导致媒体出现在屏幕上之前有点延迟。我知道我可以收听iceState 并仅在connected 或completed 时显示视频,但我认为用户单击应答按钮通常会给连接更多时间来完成操作,所以我确信媒体连接通常已经在他们“接听”电话之前进行设置。
为此,我将发送媒体但已禁用,当按下“回答”按钮时,我将启用正在发送的媒体。
我正在尝试以下代码来禁用媒体,但它也适用于本地媒体。
document.getElementById("local_video").srcObject = webcamStream;
webcamStream.getTracks().forEach(
function (track){
myPeerConnection.addTrack(track, webcamStream);
});
function initialMediaMuted(){
let videoTrackBlank;
let audioTrackBlank;
myPeerConnection.getSenders().find(function (s) {
if (s.track.kind === "video") {
videoTrackBlank = s.track;
}
if (s.track.kind === "audio") {
audioTrackBlank = s.track;
}
});
videoTrackBlank.enabled = false;
audioTrackBlank.enabled = false;
}
谁能指导我如何调整它以保持启用本地媒体但禁用传出媒体?
谢谢
【问题讨论】:
标签: webrtc