5
通過使用以下內容,我們可以提示用戶選擇具有音頻和視頻源限制(目前僅對Chrome支持感興趣)的首選媒體輸入設備。檢查選定的麥克風是否靜音或不使用網絡音頻API
navigator.mediaDevices.getUserMedia({audio: true})
.then((stream) => {
console.log(stream);
});
任何人都知道是否有暴露的API來檢測用戶選擇的輸入設備是否當前被靜音?輸入設備可以是板載麥克風,外部麥克風或軟件定義的麥克風,在系統中顯示爲硬件設備。
這似乎並不反映Chrome 57(Windows 10)中麥克風的實際靜音狀態,即使通過deviceId選擇了特定的非默認麥克風。 –
@ChrisHunt也可以設置'contraints'的'volume'屬性。請參閱[功能,約束和設置](https://developer.mozilla.org/en-US/docs/Web/API/MediaStreamTrack/applyConstraints)。麥克風是如何靜音的?你能描述如何重現案件嗎?你把'onmute','onunmute'事件附加到'MediaStreamTrack'上了嗎? – guest271314
首先在托盤>聲音圖標上下文菜單>錄製設備>音頻下識別啓用的麥克風。使用'navigator.mediaDevices.enumerateDevices()'來標識具有相同標籤的設備的'deviceId'。使用'navigator.mediaDevices.getUserMedia({audio:{deviceId:'...'}})'選擇設備。驗證'track = stream.getTracks()[0]'匹配設備並檢查'track.muted'。通過「錄音設備」對話框中特定設備的「級別」選項卡使麥克風靜音。檢查'track.muted',看看它沒有改變。 –