Firefox/Projects/Video Controls

From MozillaWiki
Jump to navigation Jump to search

Current design

Current video control design.png

Wanted features

Streaming UI controls

Our current video controls follow conventions of digital playback: a horizontal timeline with a slider that marks the current play point.

(wireframe of current)

Current implementations of live video feed tend to be variations on video controls, but with non-interactive elements such as stationary or removed timelines. These indicate to the user what they can't do, but don't give any additional functionality. They also do not allow video to be buffered for playback.

(wireframe of current implementations)

We'd like to give the added functionality of playback in live video: the ability the keep an amount of video buffered so that users can 1. leave the live feed, replay what they've just seen, and jump back to live or 2. pause the feed and pick up watching where they left off. However, this presents a few design challenges:

  • How to visually represent when the user is "live" vs. viewing buffered video
  • How to visually represent the amount of video in the buffer (past & future)
  • How to make it easy for the user to jump between live and buffered video
  • How to visually distinguish between past (buffered video), present (what the user is currently viewing), future (video buffered after the user paused), and live

Below is a design we've been considering to handle these issue. By default, the user is in a visually marked "live" mode - the box on the right of the timeline. As the user watches the live video, the timeline to the left of live fills up with how much video is buffered. So, after one minute the timeline represents one minute in length, and after two minutes it represents two. To give an indication of how much time the bar represents, tick marks marking minutes will scroll left as the video plays.

(image of plain live mode)

However, eventually the video will reach the maximum that can be buffered. For the purposes of these mockups, we'll say that 10MB and 10minutes is the limit. After the video plays for 10 minutes, the beginning of the video is dropped and no longer accessible. The user sees this as the 0:00 mark disappearing from the timeline, and higher numbers continuing to scroll left.

(first buggered image)

Accessibility

  • Improve default shortcut keys

Audio controls

  • Audio controls currently just use the video ones
  • Uses too much screen real estate
  • Slightly different use case, since it doesn't require you to pay attention to what's on the screen

Fullscreen implementation + UI

  • Implement full-screen support for video
  • Make larger controls for this mode, probably floating

Other

  • Giant play button when paused (e.g. YouTube)
  • Volume adjustment button could use degrees of volume states (eg more obvious when muted)
  • Adjust text (currently too high and thin on marker)
  • Be able to overlay text / other content onto video
  • Determine what events to be able to consume / produce
  • Ability to link to a direct moment in the video

Error messages

  • Currently, there's no proper handling of errors

Meetings

  • Contact people at YouTube + DailyMotion to make sure we give them what they need when it comes to controls
  • Meet with the accessibility people to figure out what the best approach for keyboard shortcuts is

Reference