Limited supportUse with care and provide a fallback when broad support matters.

Overview

The playback of multiple <video> or <audio> elements can be coordinated by a MediaController instance, for example to synchronize a sign-language interpreter track with the main video track. It is most useful when native HTML semantics or browser capabilities can replace custom implementation work.

Browser support

Feature Desktop Mobile
Chrome
Edge
Firefox
Safari
Chrome Android
Safari iOS
MediaController
Deprecated Non-standard
6
6
controller
Deprecated Non-standard

The HTMLMediaElement.controller property represents the media controller assigned to the element.

17
6
18
6
buffered
Deprecated Non-standard
7
7
currentTime
Deprecated Non-standard
7
7
defaultPlaybackRate
Deprecated Non-standard
7
7
duration
Deprecated Non-standard
7
7
MediaController
Deprecated Non-standard

`MediaController()` constructor

6
6
muted
Deprecated Non-standard
7
7
pause
Deprecated Non-standard
6
6
paused
Deprecated Non-standard
7
7
play
Deprecated Non-standard
6
6
playbackRate
Deprecated Non-standard
7
7
playbackState
Deprecated Non-standard
7
7
played
Deprecated Non-standard
7
7
seekable
Deprecated Non-standard
7
7
unpause
Deprecated Non-standard
7
7
volume
Deprecated Non-standard
7
7
1+Supported (version) Not supported Has note Sub-feature descriptions sourced from MDN Web Docs (CC BY-SA 2.5)
Notes 1 item(s)
Removed
  • This feature was removed in a later browser version (36)
Notes 1 item(s)
Removed
  • This feature was removed in a later browser version (36)

Syntax

HTML
<!-- Synchronous playback (legacy) --> <video src="video.mp4" mediagroup="sync"></video> <audio src="commentary.mp3" mediagroup="sync"></audio>

Live demo

Synchronized media idea

Show the intent of controlling multiple media elements as one timeline.

PreviewFullscreen

Why it stayed niche

Explain why many products coordinate media state in application code instead.

PreviewFullscreen

Modern alternative

Use application state to coordinate multiple players when you need full control.

PreviewFullscreen

Use cases

  • Use MediaController

    Use MediaController when standard HTML needs a more specific platform feature, semantic signal, or browser capability.

  • Handle edge cases

    Apply MediaController to solve a focused requirement without redesigning the whole page architecture.

Cautions

  • Test MediaController in your target browsers and input environments before depending on it as a primary behavior.
  • Provide a fallback path or acceptable degradation strategy when support is still limited.

Accessibility

  • Make sure MediaController supports the intended task without making the page harder to perceive, understand, or operate.

Powered by web-features