我正在使用电子的desktopCapturer API来显示计算机的实时流(并可以选择通过getSources()
方法显示的桌面)。
const { desktopCapturer } = require('electron')
desktopCapturer.getSources({ types: ['window', 'screen'] }).then(async sources => {
for (const source of sources) {
if (source.name === 'Electron') {
try {
const stream = await navigator.mediaDevices.getUserMedia({
audio: false,
video: {
mandatory: {
chromeMediaSource: 'desktop',
chromeMediaSourceId: source.id,
minWidth: 1280,
maxWidth: 1280,
minHeight: 720,
maxHeight: 720
}
}
})
handleStream(stream)
} catch (e) {
handleError(e)
}
return
}
}
})
function handleStream (stream) {
const video = document.querySelector('video')
video.srcObject = stream
video.onloadedmetadata = (e) => video.play()
}
function handleError (e) {
console.log(e)
}
我正在尝试在react-native应用程序上提供流,但是我遇到了一个问题:
ontrack
不存在)我可以通过URL提供desktopCapturer
流吗?您是否有更好的方法来实现这一目标?
谢谢!