Video streaming 使用WebRTC实现屏幕共享

Video streaming 使用WebRTC实现屏幕共享,video-streaming,webrtc,screensharing,Video Streaming,Webrtc,Screensharing,我需要使用WebRTC实现屏幕共享。我知道WebRTC支持共享选项卡内容,但我需要共享整个屏幕。 我想到的一个解决方案是经常拍摄屏幕截图,并使用WebRTC数据通道将图像传输给另一方。然后,另一方将在每次收到新图像时更新图像 这有可能实现吗?我特别想知道是否可以使用WebRTC数据通道传输图像 提前感谢。屏幕共享可通过Chrome()中的实验性getUserMedia约束实现 您需要首先在getUserMedia()中启用名为enable screen capture support的标志chr

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

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


提前感谢。

屏幕共享可通过Chrome()中的实验性
getUserMedia
约束实现


您需要首先在
getUserMedia()中启用名为
enable screen capture support的标志chrome://flags


这里有一个关于如何捕获屏幕的好例子:

getUserMedia支持整个屏幕的屏幕共享,而不仅仅是选项卡内容

我已经完成了一个屏幕捕获演示(使用强制约束chromeMediaSource:“screen”),它将流传输到一个RTPeerConnection:

chrome.tabCapture API获取选项卡内容,但这当然不是您想要的:例如(尽管代码现在已被破坏)


编辑:将HTTPS添加到链接中:这是截屏所必需的。

看看这个Chrome扩展,它实现了桌面共享,非常好。

您可以通过DataChannel传输图像,但更大的问题是从JavaScript沙盒内部捕获屏幕。如果没有某种浏览器扩展,我想这是不可能的。谢谢你的回答。getUserMedia是我真正需要的。但是为了在本地测试它,我似乎必须安装一些HTTPS服务器,对吗?用这种方法可以获得60FPS吗?我试过了,但似乎还远远不够理想。现在有没有办法实现屏幕共享,因为chrome没有最新版本中支持屏幕共享的标志。现在,Android上的chrome可以在标志后面进行屏幕捕获。请参阅的演示和Paul Kinlan的文章。谢谢,这是一个很好的例子。但是,当我将html内容复制到本地html文件时,它不起作用。似乎我需要安装HTTPS服务器。似乎不再需要了:
Enable screen capture support
标志已从ChromeIs中删除是否有新的屏幕捕获方法?是否有替换标志或如何通过getUserMedia()启用屏幕捕获?