我试图做出类似于https://recordscreen.io/的东西
它将用户的摄像头放在屏幕录制上方
我现在已经得到了两个不同的流。
我尝试将它们重叠在一起,但我希望它们能够在一个单独的视频元素中被记录下来
我试图创建一个混合媒体流,包含来自这两个流的轨道,但是我无法对它们进行定位
/**
* Edge has a slightly incorrect implementation of getDisplayMedia
* Typescript currently uses this so typing is incorrect
*/
const screenMediaStream = await (navigator.getDisplayMedia ?
navigator.getDisplayMedia(constraints) :
(navigator.mediaDevices as any).getDisplayMedia(constraints)
) as MediaStream;
const cameraMediaStream = await navigator.mediaDevices.getUserMedia({
audio: true,
video: { width: 150, height: 150 }
});
const combinedMediaStream = new MediaStream([...cameraMediaStream.getTracks(), ...screenMediaStream.getTracks()]);
screenVideoElement.srcObject = combinedMediaStream;
这只显示网络摄像头。我希望能够将网络摄像头放置在屏幕录制的顶部。