background

Universal HbbTV MediaSync App

The single, open-source companion app for all broadcasters to enable perfectly synchronized second-screen experiences.

Available now on Android and Meta Quest

Powered by

3Cat

Supported by

UHD Spain

Experience it in Seconds

Enjoy synchronized second-screen content effortlessly.

Step 1: Discovery

TVs on your network

Step 2: Choose Track

Audio and Video tracks

Step 3: Listen

Synchronized alternative audio playing

Step 3: Watch

Synchronized additional video playing

The app can offer alternative audio, additional video, sign-language video, subtitles or interactive web experiences synchronized with the programme, depending on what the broadcaster makes available.

Zero-Friction Deployment

Zero custom apps to build or maintain. Zero backend to run. Zero complex infrastructure to configure.

Broadcasters only need to add a lightweight HbbTV snippet that points to the companion content: a DASH MPD, an HLS playlist or a web page. The app handles the rest: it discovers the TV on the local network, loads the content, and synchronizes with the TV in real time.

The same MPD can also announce interactive web experiences, one per language if needed. They appear next to the audio and video tracks and receive the TV timeline when the viewer opens them.

<EventStream schemeIdUri="urn:3cat:ums:application:2026" value="1">
  <Event id="1" presentationTime="0">
    <ums:Application type="web" lang="en"
      url="https://apps.example.com/experience/"
      name="Immersive experience"/>
  </Event>
</EventStream>
dns No backend to run
movie No media-file changes
bolt Near-zero configuration
verified HbbTV standards-based
public Web experiences in the MPD
menu_book Read the integration guide

Initiative Supporters

Powered by

3Cat

Supported by

UHD Spain

Want to support the initiative?

Contact us

Use Cases: Unlocking Next-Gen Multi-Device Experiences

Demonstrate the practical value of HbbTV MediaSync by delivering seamless, personalized, accessible, and immersive services without any friction for the viewer.

headphones

Personalized Audio Experiences

  • Private Listening
  • Alternative Audio Languages
  • High-Fidelity Audio
accessibility_new

Universal Accessibility

  • Alternative Audio Tracks
  • Audio Description on Smart Glasses
  • Sign Language on Second Screen
devices

Home Mobility & Enriched Content

  • Private Views & Continuity
  • Alternative Camera Views
  • XR & Next-Gen Ecosystems

Application Capabilities

Key built-in features engineered for seamless companion screen experiences.

language

Available in 7 Languages

The app interface comes pre-localized in 7 languages: Catalan, Spanish, Basque, English, German, Italian, and French.

hearing

Background Audio

Minimize the application or lock your device while keeping the fully synchronized audio track playing in the background.

fullscreen

Fullscreen Video

Expand complementary video tracks, alternative angles, or sign-language feeds into a fully synchronized fullscreen view.

public

Synchronized Web

Broadcasters can announce companion web experiences inside the DASH manifest, next to the tracks, or point the content ID straight to a web page. The phone opens it fullscreen and streams the TV timeline to it, so the page renders in perfect sync with the broadcast.

closed_caption

Subtitles & Accessibility

TTML and WebVTT subtitles from the manifest, with audio description and sign-language tracks clearly labeled. Controls are labeled for the TalkBack and VoiceOver screen readers.

devices

Native Android & iOS

Built natively with Kotlin/Jetpack Compose and Swift/SwiftUI on a shared, tested protocol core. Choose between high-precision DVB-CSS and an App2App compatibility mode for TVs with an unreliable sync stack.

What happens under the hood?

MediaSync keeps discovery, manifest parsing, user choice, and playback timing in one continuous flow, so the companion device can render the right component at the same programme time as the TV.

1

The mobile scans for MediaSync devices

The app searches the local network for HbbTV terminals that advertise MediaSync capability.

2

The TV publishes the companion content

The HbbTV app enables MediaSync and shares which content the second device should receive: a DASH MPD, an HLS playlist or a web page. The app picks the most reliable sync transport the TV offers.

3

The mobile reads the manifest components

Once it receives the MPD, the app parses every available component: audio, video, subtitles, accessibility, language and role metadata, plus the web experiences announced in the manifest.

4

The user chooses what to watch or hear

Viewers select the component they need, from an alternate audio track to a sign-language video, subtitles or an interactive web experience.

5

DVB-CSS keeps playback within 20 ms

CSS-CII, CSS-WC, and CSS-TS endpoints align the second device to the TV timeline with less than 20 ms of delay.

Community Driven Innovation

Maintenance is open and community-driven. Any HbbTV member is welcome to propose and contribute new features to the core repository.

fork_left

Pull Requests

Contribute bug fixes or new device discovery adapters.

bug_report

Report Issues

Help us identify interoperability challenges across terminals.

groups

Discussion

Join the HbbTV working groups to define the future of second-screen.

Frequently Asked Questions

Everything you need to know, whether you watch or you broadcast.

person

For Users

How do I use the app? expand_more
On Android, download it from Google Play; on Meta Quest headsets, from the Meta Horizon Store. Open the app while on the same Wi-Fi network as your TV: it automatically discovers the television, loads the companion content and synchronizes with what is playing on screen. No setup, accounts or pairing codes required.
Which TVs are compatible? expand_more
In theory, any TV supporting HbbTV 2.0.1 or later (from 2016 onwards) should work. In practice, some devices still have interoperability issues. We are building a list of verified compatible devices — if your TV works well, let us know so we can add it.
My TV is not working — what can I do? expand_more
If you run into a problem, please open an issue on GitHub describing your device and the behaviour you see. It helps us track interoperability problems across terminals and improve support.
Which channels and services can I watch? expand_more
The app works with services that broadcasters have enabled for second-screen sync. We will publish a list of compatible services soon so you know where to look.
cell_tower

For Broadcasters

How do I activate the service? expand_more
Add a lightweight HbbTV snippet to your service that points to the companion DASH MPD, HLS playlist or web page. There is no backend to run and no media-file changes required — the app discovers the TV, loads the content and synchronizes in real time. Step-by-step instructions are in the integration guide. Need help getting started? Contact us.
What is supported right now? expand_more
Over broadband, any service that uses an MPD manifest is supported: live streams (with and without DVR), VOD, and audio on demand. HLS playlists and companion web pages work too. Tracks can be alternative audio, audio description, extra video or sign language, with TTML or WebVTT subtitles. DRM-protected tracks are not supported yet.
How do I offer an interactive web experience? expand_more
Add an EventStream with the scheme urn:3cat:ums:application:2026 to your MPD, with one Application type="web" per page and language. The app lists each one next to the tracks; when opened, the page receives the TV position through post-messages. If the experience is only a web page, you can also use its URL as the content ID. See the integration guide.
What if the TV's DVB-CSS implementation is unreliable? expand_more
Add the open-source hbbtv-compat script to your HbbTV application. It serves the same sync protocol over the App2App channel, and the app uses it automatically when the TV offers it. It also lets your TV application and the companion web page exchange messages.
Do I need to maintain a custom app? expand_more
No. The Universal MediaSync app is shared across all broadcasters, so there are no custom apps to build or maintain, no backend to run, and near-zero configuration.
Can I fork it and ship my own branded version? expand_more
The project is open source (MIT), so technically you can fork it and build your own branded version. However, we believe a single, shared app across all broadcasters is far more valuable for users — one app to discover and sync with any service, instead of a separate app per broadcaster. We encourage joining the common effort rather than fragmenting the experience.