Я собираюсь создать приложение для голосового чата (с возможностью разделения экрана), но при использовании подключаемого модуля Electron Desktop Capture параметр «chromeMediaSource» в аудио не оказывает никакого влияния (протестировано на Windows 10).
По какой-то причине он полностью захватывает звук на рабочем столе, а это означает, что пользователи могут слышать себя при просмотре экрана.
Есть ли способ захватить звук только одного приложения с помощью этого плагина?
Ниже приведен код, который я использую для захвата аудио / видео на рабочем столе.
desktopCapturer.getSources({ types: ['screen', 'window', 'audio'] }).then(async sources => {
for (const source of sources) {
//console.log(source);
if (source.id === screenID) {
try {
const stream = await navigator.mediaDevices.getUserMedia({
audio: {
mandatory: {
chromeMediaSource: 'desktop',
chromeMediaSourceId: screenID,
}
},
video: {
mandatory: {
chromeMediaSource: 'desktop',
chromeMediaSourceId: screenID,
minWidth: 1280,
maxWidth: 1280,
minHeight: 720,
maxHeight: 720,
maxFrameRate: 60
}
}
})
handleStream(stream)
} catch (e) {
handleError(e);
}
return;
}
}
});