javascript - 如何使麦克风静音(但不是传入声音)?
问题描述
使用时
const audioIncoming = document.createElement('audio');
通过浏览器调用。
将麦克风静音而不是来自网络的传入音频声音的正确方法是什么?或者这甚至可能吗?
这是一个完整的代码示例:
const audioProgress = document.createElement('audio');
const audioIncoming = document.createElement('audio');
/*** Define listener for managing calls ***/
var callListeners = {
onCallProgressing: function(call) {
audioProgress.src = 'style/ringback.wav';
audioProgress.loop = true;
audioProgress.play();
$('div#callLog').append('<div id="stats">Ringing...</div>');
},
onCallEstablished: function(call) {
audioIncoming.srcObject = call.incomingStream;
audioIncoming.play();
audioProgress.pause();
//Report call stats
var callDetails = call.getDetails();
$('div#callLog').append('<div id="stats">Answered at: '+(callDetails.establishedTime && new Date(callDetails.establishedTime))+'</div>');
},
onCallEnded: function(call) {
audioProgress.pause();
audioIncoming.srcObject = null;
$('button').removeClass('incall');
$('input#phoneNumber').removeAttr('disabled');
//Report call stats
var callDetails = call.getDetails();
$('div#callLog').append('<div id="stats">Ended: '+new Date(callDetails.endedTime)+'</div>');
$('div#callLog').append('<div id="stats">Duration (s): '+callDetails.duration+'</div>');
$('div#callLog').append('<div id="stats">End cause: '+call.getEndCause()+'</div>');
if(call.error) {
$('div#callLog').append('<div id="stats">Failure message: '+call.error.message+'</div>');
}
}
}
解决方案
推荐阅读
- excel - 如何在 Excell 单元格中获取一个值并将其放在另一列中?
- javascript - 强制重定向到新的浏览器 nodejs 功能
- flutter - Flutter 去除空格 TabBar 和 SliverAppBar
- java - 如何从 BE 的角度处理“对预检请求的响应未通过请求的资源上不存在 Access-control-Allow-Origin 标头”
- xamarin - 问题验证 MSAL 活动目录-b2c-xamarin-native
- c# - 如何将音频 wav 文件转换为 Mp3 文件 Xamarin 形式
- android - 如何确定安卓设备是否使用 Trusty TEE 安全操作系统?
- chrome-ux-report - 找到通过 Core Web Vitals Stat 的 Origin?
- python - cv2.bitwise_and: 操作既不是'array op array'
- python - 如何让这个贪心函数更快?