Open-source · local-first · self-hosted

Make your Linux box the TV.

RelayTV plays media on a Linux device connected over HDMI. Your phone, browser, media server, Home Assistant, and automations simply tell it what to do.

amd64 + arm64DockerNo app telemetryGPL-3.0

Not a casting app. RelayTV is the player connected to the display—not an app running inside your existing smart TV.

Star on GitHubFollow releases and support RelayTV
Living room online
RelayTV idle screen on a television with phone remote and library views
Playback stays on your hardware
How it works

The endpoint your self-hosted stack was missing.

Media and control stay modular. RelayTV owns playback beside the screen while the services you already run remain in charge of their own jobs.

Jellyfin / EmbySeerrIPTV / URLsHome AssistantAndroid / Web
RelayTVLinux playback endpoint
Now playing
Your TV
One endpoint, four jobs

Built around what happens in the room.

Browse from the couch, queue from a phone, automate an interruption, then let the box keep playing without a cloud coordinator.

Explore every feature →
01

Play

Turn URLs and local audio or video into durable playback, with queue advancement and history owned by the endpoint.

  • mpv playback
  • Persistent queue
  • Local uploads
  • TV notifications
02

Browse

Use a responsive library to explore what you host, resume playback, request what is missing, or curate live channels.

  • Jellyfin
  • Emby
  • Seerr
  • IPTV / M3U
03

Control

Keep the television free of menus while browsers and Android provide the remote, queue, discovery, and media controls.

  • Web remote
  • Android sharing
  • mDNS
  • Multiple screens
04

Automate

Make the screen part of the house with media-player controls, temporary playback, overlays, snapshots, and synchronized starts.

  • Home Assistant
  • HTTP API
  • Overlays
  • Synced playback
Real workflows

From intent to the TV, without taking it over.

These are captures from a running RelayTV—not conceptual mockups.

Android share sheet with RelayTV Play and RelayTV Queue targets
Share → queue → TV

Send it from wherever you found it.

Choose Play or Queue in Android. RelayTV takes over from there and confirms the action on screen.

Jellyfin Continue Watching and Next Up rails in RelayTV
Browse → resume → play

Your library stays connected.

Browse Jellyfin or Emby from a phone, then resume or queue the title on the television.

RelayTV device and media controls in Home Assistant
Event → action → resume

The screen becomes part of the home.

Automate an overlay or temporary clip, then continue what was already playing.

Operator reality

Know what fits before you install.

RelayTV is intentionally opinionated about where playback runs and equally clear about the network boundary around it.

Full compatibility matrix →

Hardware and runtime

A 64-bit Linux host connects directly to the display. Runtime behavior depends on the graphics session and devices the host exposes.

  • amd64 or arm64
  • Wayland, X11, DRM/KMS
  • Optional GPU via /dev/dri
  • Optional HDMI-CEC

Network and privacy

Core playback has no RelayTV account or cloud control plane. Treat the API like any other capable service on your network.

  • Trusted LAN by default
  • Optional bearer token
  • VPN or protected proxy remotely
  • No app telemetry
Ready when your hardware is

Install in minutes. Understand every step.

Run the installer on a supported 64-bit Linux device connected to your TV. It can install Docker with your approval, then deploys RelayTV's published image.

relaytv · install
mkdir -p ~/relaytv
cd ~/relaytv
curl -fsSL https://relaytv.app/install.sh | bash

Then open http://YOUR_RELAYTV_HOST:8787/ui.

Before you begin

Questions worth answering upfront.

Does RelayTV cast to a smart TV or streaming stick?

No. RelayTV runs on the Linux host connected to the TV and renders playback there. If you need an app inside an existing smart TV or Chromecast-style receiver, RelayTV is not that.

What hardware do I need?

A 64-bit amd64 or arm64 Linux host connected to the display. Mini PCs, NUCs, HTPCs, and capable Raspberry Pi-class devices can fit; display, codec, GPU, audio, and CEC results still depend on the hardware and runtime profile.

Can I expose RelayTV to the internet?

It is designed for a trusted LAN. For remote access, use a VPN or authenticated reverse proxy and enable the optional RelayTV API token. Do not expose an unauthenticated API directly.

Is it free and open source?

Yes. RelayTV and its companion projects are GPL-3.0 licensed, have no paid tier, and require no RelayTV account for core playback.