Presentation API Demo

This demo page provides an example of the video sharing use case of Presentation API which is being developed in the Second Screen Presentation Community Group in W3C.

Downloading the binaries, or building Chromium with the patches listed below applied to your tree allows you to run the demo.

Opening this page in the modified version of Chromium allows you to click on the second screen icon s in the right side of the controls bar of the video player and the video will open and continue playing on your secondary screen. Clicking the button again closes the window and playback resumes on your primary screen.

Prerequisites

It's recommended to run this demo with a secondary display connected to your system and having it configured to extend your desktop.

Binaries

Binaries are available for Linux and Mac. Use at your own risk.

Building the Demo / Code

Implementation Details

The patches to Chromium implement a new feature attribute for the window.open() function called presentation which opens a new full-screen browser window on the first found secondary display.

The Presentation API bindings are currently implemented as a JavaScript shim on top of the modified window.open() call.

Demo of Video Sharing Use Case

Instructions

Run your binary, on Linux you may need to append the --no-sandbox command line argument.

Play the video and click the second screen icon s, click the button again or focus the secondary window and press Escape to close the secondary window.


Video "FPV Sunset - Medellin" by YouTube user Bllama under CC-BY.
Second Screen Icon based on IcoMoo.

Building your own Project

By using the JavaScript shim and the demo Chromium release for your own project, you can experiment and realize your own ideas for how to make use of Presentation API.

Contact

For feedback on the demo or on the Presentation API itself, please subscribe and post your feedback to the public-webscreens W3C mailing list.

This demo is provided by Intel's Open Source Technology Center, Dominik Röttsches.