# Plugin Demo: Screen Sharing

### Demo details

This demo, as the Video Conferencing one, makes use of the Video Room plugin. Unlike the video conferencing scenario, though, this demo implements a webinar kind of scenario: that is, it allows a single user to share their screen with a set of passive viewers.

When started, the demo asks you whether you want to be the one sharing the screen (or an application you're using, if your browser version is recent enough) or a viewer to an existing session. When sharing your screen/application, an ID will be returned that you'll be able to share with other people to act as viewers. Just notice that, for the sake of simplicity, just the screen is shared, without any additional audio and video feed: you may want to try and add those yourself to the demo, by relying, for instance, on the AudioBridge plugin for the purpose.

Note well! Sharing your screen is an experimental feature in WebRTC, and only works if the browser you're using meets particular requirements. If you're using a relatively recent version of Chrome (34+), you'll need to install this extension. If you're using an older verson of Chrome, instead, you'll need to manually enable the Chrome flag chrome://flags/#enable-usermedia-screen-capture or otherwise you'll get a permission error. Besides, please beware that some versions of Chrome may only support the feature if you explicitly pass the `--enable-usermedia-screen-capturing` parameter on the command line. Finally, active screen/application sharing will only work from Firefox if you have at least version 33 installed: if so, make sure you also manually enable the `media.getusermedia.screensharing.enabled` setting in about:config, and that the domain this web application is from is listed in `media.getusermedia.screensharing.allowed_domains`.
Note well (part 2)! If you want to share your screen, you may need to open the HTTPS version of this page. If Janus is not behind the same webserver as the pages that are served (that is, you didn't configure a proxying of HTTP requests to Janus via a web frontend, e.g., Apache HTTPD), make sure you started it with HTTPS support as well, since for security reasons you cannot contact an HTTP backend if the page has been served via HTTPS. Besides, if you configured Janus to make use of self-signed certificates, try and open a generic link served by Janus in the browser itself, or otherwise AJAX requests to it will fail due to the unsafe nature of the certificate.

Press the `Start` button above to launch the demo.

or

### Screen Capture