우연한 점은 this blog post from Mozilla입니다. 흥미로운 부분은 "오디오 및 비디오 스트림 음소거"헤드 라인 아래에서 시작됩니다. 여기에 다음 코드 줄이 있습니다.
mediaStream.getVideoTracks()[0].enabled = !(mediaStream.getVideoTracks()[0].enabled);
기본적으로 비디오 트랙을 비활성화 할 수 있습니다. 밝혀 졌 듯이 다음과 같은 경우도 가능합니다.
mediaStream.getAudioTracks()[0].enabled = false;
오디오 스트림을 음소거합니다.localStream에 다음과 같이 적용하면 :
Participant.prototype.startCall = function(){
var participant = this;
var target = participant.callees[0];
navigator.getUserMedia = navigator.getUserMedia || navigator.webkitGetUserMedia || navigator.mozGetUserMedia;
navigator.getUserMedia({
audio: true,
video: true
},function(stream){
console.log("called");
//IMPORTANT LINE HERE
stream.getAudioTracks()[0].enabled = false;
participant.localStream = stream;
participant.call = participant.peer.call(target, stream);
},function(error){
console.log(error);
});
};
오디오 스트림을 사용하지 않는 것 같습니다. 당신은 내가 내 객체의 속성으로 localStream를 저장하고 난 당신이 remoteStream에서 같은 작업을 할 수 없어 판단 할 수 마찬가지로 지금까지
myObj.localStream.getAudioTracks()[0].enabled = true;
를 사용하여 오디오 스트림을 활성화 나중에 수 있어요 볼 수 있듯이 . 하지만 추가 테스트를 통해이를 확인해야합니다.
왜 peerjs 호출의 메타 데이터 매개 변수를 사용하여 오디오 호출인지 화상 호출인지 식별하지 마십시오. 물론 전화를 걸 때이 매개 변수를 설정해야합니다. – thunderbird