gpt4 book ai didi

javascript - 如何在 WebRTC 视频聊天中添加音频/视频静音/取消静音按钮

转载 作者:塔克拉玛干 更新时间:2023-11-02 22:02:13 33 4
gpt4 key购买 nike

我正在尝试创建 WebRTC 视频聊天。现在我忙于创建媒体轨道按钮(静音视频以启用或禁用视频发送,静音音频以与音频相同)。这是我的代码。

<script type="text/javascript" src="http://ajax.googleapis.com/ajax/libs/jquery/2.1.0/jquery.min.js"></script>
<script type="text/javascript" src="http://cdn.peerjs.com/0.3/peer.min.js"></script>
<script>
navigator.getUserMedia = navigator.getUserMedia || navigator.webkitGetUserMedia || navigator.mozGetUserMedia;

var myStream;
var peer = new Peer({key: 'PeerJS key'});
var setOthersStream = function(stream){
$('#others-video').prop('src', URL.createObjectURL(stream));
};

var setMyStream = function(stream){
myStream = stream;
$('#video').prop('src', URL.createObjectURL(stream));

};

peer.on('open', function(id){
$('#peer-id').text(id);
});

peer.on('call', function(call){
call.answer(myStream);
call.on('stream', setOthersStream);
});

$(function(){
navigator.getUserMedia({audio: true, video: true}, setMyStream, function(){});

$('#call').on('click', function(){
var call = peer.call($('#others-peer-id').val(), myStream);
call.on('stream', setOthersStream);
});
});

peer.on('error', function(e){
console.log(e.message);
});

有人可以指导我吗?

最佳答案

流中的视频和音频轨 Prop 有您可以修改的 enabled 属性。例如:

function muteMic() {
myStream.getAudioTracks().forEach(track => track.enabled = !track.enabled);
}

function muteCam() {
myStream.getVideoTracks().forEach(track => track.enabled = !track.enabled);
}

关于javascript - 如何在 WebRTC 视频聊天中添加音频/视频静音/取消静音按钮,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34469618/

33 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com