带网络摄像头覆盖的MediaStream桌面捕获

时间:2020-06-17 21:57:31

标签: javascript chromium mediastream

我目前正在尝试使用MediaStream构建基于WebRTC的应用程序以捕获计算机屏幕并将其保存到视频文件中。我可以正常使用,但是,现在我想在录制的视频中添加一个附加层,以便显示网络摄像机。

据我了解,通过Media Streams API,我无法同时使用两个Video资源。因此,我决定将捕获的视频绘制到Canvas元素上并在其上分层放置Web Camera,然后从Canvas中获取流。但是我遇到了问题,无法正常工作

我要构建的东西类似于Loom的东西,桌面捕获和网络摄像头位于一个圆圈中。

我想知道我是否朝着正确的方向前进如果您要构建这样的东西,您将如何处理?

1 个答案:

答案 0 :(得分:0)

如果可以的话,最好的方法是流式传输两个MediaStream:一个用于摄像机,另一个用于截屏。
然后,它只是两个

当然,您也可以在发射器端进行合成,方法是将两个视频都绘制到HTMLCanvasElement上,然后使用其captureStream方法流式传输从此画布生成的MediaStream,但我想它最终会变得更多比两个流选项效率低下,并且画布流质量通常很差...