使用WebRTC完成屏幕共享

时间:2013-07-09 07:25:22

标签: video-streaming webrtc screensharing

我需要使用WebRTC实现屏幕共享。我知道WebRTC支持共享选项卡内容,但我需要共享整个屏幕。 我想到的解决方案是经常拍摄截图并使用WebRTC数据通道将图像传输到其他方。然后,每次收到新图像时,另一方将更新图像。

这有可能实现吗?特别是我想知道是否可以使用WebRTC数据通道传输图像?

提前谢谢。

3 个答案:

答案 0 :(得分:9)

getUserMedia支持整个屏幕的屏幕共享,而不仅仅是标签内容。

我已经完成了一个屏幕捕获演示(使用强制约束chromeMediaSource:'screen'),它将流传输到RTCPeerConnection:https://simpl.info/screencapture

chrome.tabCapture API获取标签内容,但当然这不是您想要的:示例here(尽管代码现已损坏)。

编辑:向链接添加HTTPS:这是screencapture所必需的。

答案 1 :(得分:7)

屏幕共享可通过Chrome中的实验getUserMedia约束(not yet available in Firefox)获得。

您需要先在Enable screen capture support in getUserMedia()中启用名为chrome://flags的标记。

这里有一个很好的例子来捕捉屏幕:https://html5-demos.appspot.com/static/getusermedia/screenshare.html

答案 2 :(得分:0)

看看这款Chrome扩展程序,它实现了桌面共享,非常不错。 https://www.webrtc-experiment.com/Pluginfree-Screen-Sharing/