Intent to Implement and Ship: Presentation Receiver API 1-UA Mode

104 views
Skip to first unread message

mark a. foltz

unread,
Dec 1, 2016, 1:04:36 PM12/1/16
to blink-dev, Bin Zhao, Mounir Lamouri, Anton Vayvod

Contact emails

zha...@chromium.org, mfo...@chromium.org


Spec

https://w3c.github.io/presentation-api/#interface-presentationreceiver


TAG Review: https://github.com/w3ctag/spec-reviews/blob/master/2015/presentation-api.md


Summary

Currently, the Presentation API in Chrome only allows presentation of specific URLs that correspond to Cast or DIAL applications.   These URLs are interpreted by Chrome to trigger the launching of the corresponding app on the presentation display.  This mechanism is called “2-UA mode”, as the remote device is responsible for rendering the content.


We are preparing to ship “1-UA mode.”   In this mode any URL can be passed into the API and shown on the presentation display.    In 1-UA mode, the presented document is rendered locally in an offscreen tab, which is captured and mirrored to the target display, using Cast Streaming (for Cast-enabled displays) or WebRTC (for cloud-accessible displays).  The presented document exchanges messages with the controlling (initiating) document via the navigator.presentation.receiver API.


Motivation

Currently there is no cross-browser way to render Web content on a presentation display.  Web developers are forced to write display-specific apps and control them through SDKs that are specific to that display technology.


Shipping 1-UA mode is important for demonstrating interoperability with other browsers, and will enable us to promote use of the API among Web developers.


Interoperability and Compatibility Risk

This improves the interoperability of the Presentation API.  Mozilla is implementing 1-UA mode as well which was demoed at TPAC 2016 and has landed in Firefox for Android nightly.  This will provide two interoperable implementations of the API.


There are no users of navigator.presentation.receiver that we are aware of.  Existing uses of PresentationRequest fall in the category of “proprietary app URLs” which will be excluded from 1-UA mode, so there is not a significant compatibility concern.


Ongoing technical constraints

None.


Will this feature be supported on all six Blink platforms (Windows, Mac, Linux, Chrome OS, Android, and Android WebView)?

It will be supported on all desktop platforms.

Support for Android will come at a later date.  The lack of support will be visible by the web page as no device available. Presentation API is not supported on WebView.


OWP launch tracking bug

https://bugs.chromium.org/p/chromium/issues/detail?id=525660


Link to entry on the feature dashboard

https://www.chromestatus.com/feature/5414209298890752


Requesting approval to ship?

Yes.  We are awaiting security reviews, so tentatively M57 but may slip to M58.

Chris Harrelson

unread,
Dec 6, 2016, 8:37:08 PM12/6/16
to mark a. foltz, blink-dev, Bin Zhao, Mounir Lamouri, Anton Vayvod
LGTM1

--
You received this message because you are subscribed to the Google Groups "blink-dev" group.
To unsubscribe from this group and stop receiving emails from it, send an email to blink-dev+unsubscribe@chromium.org.

TAMURA, Kent

unread,
Dec 8, 2016, 1:32:32 AM12/8/16
to Chris Harrelson, mark a. foltz, blink-dev, Bin Zhao, Mounir Lamouri, Anton Vayvod
LGTM2

--
TAMURA Kent
Software Engineer, Google


Dimitri Glazkov

unread,
Dec 8, 2016, 10:34:02 AM12/8/16
to TAMURA, Kent, Chris Harrelson, mark a. foltz, blink-dev, Bin Zhao, Mounir Lamouri, Anton Vayvod
LGTM3

LGTM2


LGTM1

To unsubscribe from this group and stop receiving emails from it, send an email to blink-dev+...@chromium.org.




Reply all
Reply to author
Forward
0 new messages