2012-11-28 153 views
27

我们正在探索WebRTC,但是看到了关于今天可能和支持的内容的冲突信息。与WebRTC共享屏幕?

支持WebRTC,是否有可能重现类似join.me屏幕分享服务或WebEx的地方:

  • 可以共享屏幕的一部分
  • 您可以向对方给控制
  • 没有下载是必要的

这是今天可能有任何的WebRTC的浏览器? iOS上的Chrome如何?

+1

这是一个演示:WebRTC屏幕共享:https://webrtc-experiment.appspot.com/screen-broadcast/ - 也广播! –

+1

部分屏幕或部分屏幕或屏幕共享区域是可能的---请参阅演示--- https://webrtc-experiment.appspot.com/#part-of-screen-sharing ---自己尝试! ---- https://github.com/muaz-khan/WebRTC-Experiment/tree/master/part-of-screen-sharing#how-use-use-in-your-own-site ---虽然, html2canvas库用于拍摄html元素的快照,并使用socket.io或WebRTC数据通道传输它们。 –

回答

6

据我所知,目前无法使用任何浏览器,尽管Google Chrome团队表示他们最终打算支持此方案(请参阅roadmap上的“Screensharing”项目符号点);我怀疑这意味着最终其他浏览器会跟随,大概是IE和Safari提出了尾巴。但所有这些都可能在二月份的某个时候出现,那时他们应该完成当前的WebRTC标准并发布产品。 (希望微软在作品中最后一分钟的扳手不会搞砸了。)最近我可能错过了一些东西,但我一直非常仔细地关注这个项目,而且我认为屏幕分享甚至没有做到这一点进入Chrome Canary,更不用说dev/beta/prod了。 Opera是唯一一款在其WebRTC实施中与Chrome保持同步的浏览器(FireFox似乎落后了大约六个月),而且我还没有看到该团队的任何内容或者屏幕共享。

有人告诉我,有是现在就做的一种方式,这是写自己的网络摄像头的驱动程序,让您的本地屏幕上出现了的WebRTC getUserMedia()API只是另一种视频源。我不知道有人这样做 - 当然,这需要在相关机器上安装驱动程序。在所有的说法和完成的时候,使用VNC或者沿着这些线可能会更容易些。

19

chrome.tabCapture API适用于Chrome应用和扩展程序。

这使得可以将标签的可见区域捕获为可以在本地使用或通过RTCPeerConnection的addStream()共享的流。请参阅WebRTC Tab Content Capture proposal

屏幕共享初始支持使用带有chromeMediaSource约束的getUserMedia的'普通'网页 - 但这已被禁止。

编辑2015年4月1日:现在编辑屏幕分享只在Chrome应用和扩展程序中受Chrome支持。

+0

非常有趣 - 我错过了。在看它的时候,把它看作是一个单独的API似乎很奇怪 - 不应该只是大型桌面共享API的一部分吗?在该API中,您应该能够选择特定区域或特定窗口或整个桌面进行共享 - 并且选择特定选项卡应该只是其中的一部分。这只是一个建立到全屏共享API的临时实验吗?还是它本身就是一个目标? –

+2

这应该更新,因为它没有提到在Chrome中默认禁用屏幕共享,除非您在启动Chrome时在命令行上传递“--enable-usermedia-screen-capture”。 – Aki

+0

谢谢@Aki - 编辑。 –

8

你们可能知道screencapture(不是tabCapture)在Chrome Canary(26+)中是可用的,我们刚刚发布了一个演示; https://screensharing.azurewebsites.net

请注意,您需要在HTTPS下运行它://,

video: { 
    mandatory: { 
    chromeMediaSource: 'screen' 
    } 

你也可以在这里找到一个例子; https://html5-demos.appspot.com/static/getusermedia/screenshare.html

+0

您好dathor,仅供参考,在azurewebsites演示捕获屏幕,但不会传输到另一个端点。它只显示主页。不过,官方的HTML5 Demo效果很好。 +1! – jmort253

+0

嗨,是的,有一个新的演示,你可以找到http://joinaspot.com,请确保你运行在https://上下文 – dathor

+0

我超级累,所以我可能错过了它,但我没有看到屏幕共享功能?尽管很酷的演示。让我想起https://bistri.com/ – jmort253

6

我知道我回答迟了一点,但希望它能帮助那些偶然发现页面,如果不是OP。

目前,Firefox和Chrome浏览器都支持与同行通过WebRTC共享整个屏幕或其中一部分(您可以选择某个应用程序窗口)作为媒体流,就像您的相机/麦克风Feed一样,因此无法让其选择其他方掌握你的桌面呢。除此之外,还有一个问题,你的网站必须在https模式下运行,并且Firefox和Chrome都需要安装扩展。

您可以试试这个Muaz Khan的Screen-sharing Demo,该页面还包含必需的扩展名。

P. S:如果你不想安装扩展运行演示,在Firefox(没有办法逃避在Chrome扩展),你只需要修改两个标志,

  • about:config
  • set media.getusermedia.screensharing.enabled as true
  • add *.webrtc-experiment.com to media.getusermedia.screensharing.allowed_domains flag。
  • 刷新演示页面并点击共享屏幕按钮。
+0

此屏幕共享演示不再适用,因为Chrome中的屏幕共享选项不再存在了。 –

+0

现在,无需在firefox中配置about:config。屏幕共享在当前版本的Firefox中默认工作。 – CpnCrunch