我正在使用一个捕获用户屏幕并将该屏幕发送给另一个用户的Web应用程序。到目前为止,我的桌面捕获效果很好,为此我使用了peer.js。现在,我也想将用户麦克风的音频添加到流中。因此,我认为将其简单化,就像在getUserMedia调用中将audio变量设置为true一样,但这只会给我带来错误。有任何想法吗?
function startScreenStreamFrom(streamId) {
navigator.webkitGetUserMedia({
audio: true,
video: {
mandatory: {
chromeMediaSource: 'desktop',
chromeMediaSourceId: streamId,
maxWidth: window.screen.width,
maxHeight: window.screen.height
}
}
},
function(screenStream) {
stream = screenStream;
videoElement.src = URL.createObjectURL(screenStream);
videoElement.play();
videoplaying = true;
broadcaststarted = true;
},
function(error) {
console.log('getUserMedia failed!: ' + error);
});
}
这将显示“浏览用户媒体错误”。
由于某些原因,您无法同时共享屏幕和音频。解决此问题的一种方法是拥有两个单独的流,然后将视频流加载到视频元素中,将音频加载到单独的音频元素中。或者,如果您希望将它们都加载到video元素。
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句