Mobile/Projects/Project video to second screen
From MozillaWiki
Contents
Tracking
- Meta-bug to be filed
Goals
Develop initial multi-screen capabilities within Firefox, where video content from one device (ie: phone or tablet) can be "projected" in a lightweight (possibly chromeless) browser window (or app?) on a second device.
MVP feature set
Roku player app
Firefox on Roku - final app name TBD
- The ability to download app from Roku "Channel Store"
- Initial interface on TV
- Introduction page allowing users to discover and learn how to use the feature
- Recent history list
- Need to figure how which pre-defined Roku screen type to use
- Also which title to use (video title, page title, URL?)
- Loading screen with title: "streaming XXX" on TV
- Indication of pausing on TV app (overlay a pause indicator on the TV so there is some visual indication that the screen is paused, not just frozen) - pause can be initiated from either mobile device or the Roku remote control
- Go back to Firefox on Roku after finished streaming
- ie: to the "recent history" list so the user has something to actually to back to (or another screen)
- Show general error messages
- Failed to download
- Failed to play
Android UI
- Fix current bugs
- Visual polishing
- visual, micro-copy, icon, size, etc.
- Be able to initiate screencasting from mobile (currently: long-press on video element & item in context menu)
- Be able to pause / play from mobile
Technical specifications
- Client app support (first-screen app: Firefox)
- Discover player-ready devices on local network
- Start a new session using video in web content
- Discover an in-progress player session (?)
- Present UI to control player session (play/pause/volume)
- Player app support (second-screen app)
- Launch video from a specified starting position (timeline)
- Play video
- Pause video
- Change volume (Roku does not support this, but other systems do)
- Close player
- Targets
- Roku channel
UX design
Justification
- Proof of concept to demonstrate that we have the technologies in place to make this possible.
Quality criteria
- No user-perceptible performance degradation
- All goals are met
- All user stories are implemented & tested
- All relevant telemetry probes are implemented