Element-web: implement a chrome extension to enable screensharing

Created on 21 Oct 2015  Â·  30Comments  Â·  Source: vector-im/element-web

Created by @ matthew:matrix.org.

feature p3

Most helpful comment

i hope they wont use jitsi for 1:1, its a dependency on another service which defeats the purpose of running your own instance.

for large groups it could be usefull, altough you first need to add a widget in order to start a conference. there should be just native button for that without the use of widgets.....Dont make riot like KDE :P

and for screensharing, i would be best if it was native and not dependent on jitsi
if i want to sell matrix/riot as a slack/skype replacement for companies.....this will be a deal breaker unfortunately

All 30 comments

What about the Electron app? There is a alpha-web-rtc screen share tool: https://github.com/maxogden/screencat - it uses RobotJS (https://github.com/octalmage/robotjs). Don't know how that is related to the chrome screencast stuff.

@carlos22 oops - missed this. the electron app already does screensharing - shift-click the video call button. (we'll make it more obvious in future)

Clarification for people wanting to try screensharing from Chrome / Chromium: no need to install an extension, just start Chrome / Chromium with the --enable-usermedia-screen-capturing command-line option and then do a Shift+click on the Riot video call button. Tested it, works. (source)

In addition, I tried several extensions for Chrome / Chromium but did not find any that would make Shift+click video calls work in Riot _without_ the --enable-usermedia-screen-capturing command-line argument.

The latter is because riot-web (matrix-js-sdk actually) would need to understand the specific extensions and communicate with them especially

OK, shift-clicking the video call button does screen sharing, which is not intuitive at all, but there doesn't appear to be a way to switch between camera and screen sharing without leaving the call first…

Because it is an easter egg currently, in the next gen conferencing, available via Matrix Apps screensharing is seamless and via its own button and you can switch on the fly

Because it is an easter egg currently, in the next gen conferencing, available via Matrix Apps screensharing is seamless and via its own button and you can switch on the fly

What version it will appear and when? Does Shift-click work in desktop version?

@akontsevich the current version has Jitsi support but I believe Jitsi screensharing in desktop is currently broken

I think it was fixed in 0.13?

@t3chguy I need Riot<->Riot screensharing. Jitsi not interesting to me.

Riot has Jitsi widgets within it, Jitsi is replacing the "native" (freeswitch/verto) conferencing stack in Riot. @akontsevich

Riot has Jitsi widgets within it, Jitsi is replacing the "native" (freeswitch/verto) conferencing stack in Riot. @akontsevich

I see, thanks. Shift-Click on phone call button will work after this? I see that Jitsi is something standalone. So video calls in Riot works only for p2p? Does not work for multiple people in a room?

ftr, when using Jitsi you're very plainly asked to install the extension. When Jitsi becomes embedded in Riot, this issue can probably be closed.

Will Jisti widget replace also direct one-to-one calls in Riot? Seems now they are working directly via p2p, and in future will works through Jisti server?

The most recent update made Jitsi the default for video calls.
Jitsi supports screen sharing on modern web browsers.

https://github.com/vector-im/riot-web/releases/tag/v0.15.6

In 1:1 I believe jitsi isn't the default.

i hope they wont use jitsi for 1:1, its a dependency on another service which defeats the purpose of running your own instance.

for large groups it could be usefull, altough you first need to add a widget in order to start a conference. there should be just native button for that without the use of widgets.....Dont make riot like KDE :P

and for screensharing, i would be best if it was native and not dependent on jitsi
if i want to sell matrix/riot as a slack/skype replacement for companies.....this will be a deal breaker unfortunately

You can self host jitsi
See dimension.t2bot.io

@akontsevich the current version has Jitsi support but I believe Jitsi screensharing in desktop is currently broken

Confirming, still broken in the standalone app (0.15.7). :disappointed: This is probably only feature I am truly missing.

Broken in v0.16 as well on desktop.

Does this extension https://chrome.google.com/webstore/detail/riotim-screen-sharing/ehgcnaneidbjcmblghjepmamomchgahd solve the problem in Chrome browser? For me - yes.

So screen sharing works for me on desktop as of this writing, however we really need some core functionality in order for it to be actually useful.

  1. Actual UX features to share screen (screen sharing button dedicated please), the hidden shortcut nobody will find (I suspect that's intentional right now though).
  2. The ability to select, all monitors/one specific monitor/specific app/screen region (drag and resize perhaps?)
  3. The ability to CHANGE visible scope without restarting the call (including dis/enabling screen sharing without dropping the call).
  4. The ability to share screen without video being required on the other ends. Sharing to users without webcams on their end must be an option.
  5. Some sort of way to highlight the region that is being shared, so the user doesn't forget their sharing content (UX)

The fact it works with zero effort out of the box right now, suggests to me most of the work is already done, we just need this polish for it to be actually rad ;)

So, apart from my proposals here, what exactly is the current plan/status for screen sharing in riot? (including android and ios)

Also, I'm not sure if screen sharing works in a room chat right now (conference?). As it talks about failinng to accesxs my camera....

@BloodyIron did you write about internal p2p screensharing function in Riot (via shift+click hack) or about new implementation via Jitsi library? Old p2p versions seems to be dropped in future, replaced via Jitsi library: https://github.com/vector-im/riot-web/issues/4880

Yeah my testing was as of today, so AFAIK this is Jitsi relevant. Does that answer your question? :)

Part of it is p2p (jitsi anyways though?) and part of it is room conferencing though, so both?

So I can't do screensharing without a webcam, this is a shortcoming of the latest Riot design.

@BloodyIron that is completely off topic for this issue.

@t3chguy not sure how it isn't since I'm literally updating my testing from above... I wanted to do screensharing last night and couldn't due to the limitation. So not following why that somehow isn't relevant?

@BloodyIron because the issue you want is https://github.com/vector-im/riot-web/issues/188

This is redundant now that all supported Chrome versions have stable screensharing support.

Was this page helpful?
0 / 5 - 0 ratings