Skip to content

Releases: mcgeezy/relaytv

v0.8.0

Choose a tag to compare

@github-actions github-actions released this 22 Jul 06:02
ddcaca9

RelayTV on phone and TV

📺 New: IPTV live channels

RelayTV now brings live TV into the same remote. Add M3U playlists — or pick
from the built-in free-provider directory — then curate a My Channels list,
pin the ones you watch most to the top, and send a live channel straight to the
TV, all from the phone UI. IPTV is opt-in and disabled by default; enable it in
Settings → IPTV Integration. See
IPTV operations.


0.8.0 (2026-07-22)

Features

  • add optional IPTV live channels — browse and play live TV alongside the rest of RelayTV, off by default and enabled in Settings (4516bae)
  • build a curated My Channels home from added channels, with favorites pinned to the top and kept separate from the full catalog (4516bae)
  • discover channels from custom M3U playlists (URL or pasted) and a built-in free-provider directory (iptv-org and Free-TV), adding the ones you want with a single tap (4516bae)
  • manage IPTV sources — add, refresh, enable, disable, and remove owner-only playlists stored locally in /data/iptv.sqlite3 (4516bae)
  • play a live channel now, play next, or add it to the queue, with per-channel availability checks (4516bae)
  • present IPTV in the RelayTV glass design system across My Channels, Discover, and Sources on phone and desktop (4516bae)

Bug Fixes

  • keep live IPTV playback active across short buffering and telemetry gaps instead of ending the session (4516bae)
  • show a stable LIVE status for live channels instead of flashing rolling HLS segment positions and durations (4516bae)

Documentation

  • add IPTV operator guidance and introduce live channels in the README with a My Channels phone mockup (4516bae)

v0.7.3

Choose a tag to compare

@github-actions github-actions released this 20 Jul 23:30
6f830b7

RelayTV on phone and TV

0.7.3 (2026-07-20)

Bug Fixes

  • mount stable Xauthority for Raspberry Pi Wayland installs (#47) (4a4e9e9)

v0.7.2

Choose a tag to compare

@github-actions github-actions released this 20 Jul 20:14
d2134e2

RelayTV on phone and TV

0.7.2 (2026-07-20)

Bug Fixes

  • resolve rotating display credentials at runtime (c288fd3)

v0.7.1

Choose a tag to compare

@github-actions github-actions released this 20 Jul 02:33
7c79d62

RelayTV on phone and TV

0.7.1 (2026-07-20)

Bug Fixes

  • harden public playback data for Home Assistant (#43) (b477e72)

v0.7.0

Choose a tag to compare

@github-actions github-actions released this 19 Jul 22:31
0d6df76

RelayTV on phone and TV

0.7.0 (2026-07-19)

Features

  • add a visual product overview above generated GitHub Release notes (3681b20)
  • modernize RelayTV branding and the built-in idle-screen banner (3681b20)
  • modernize the Jellyfin browsing UI (#40) (296044a)
  • redesign the README as a product landing page with current phone and TV visuals (3681b20)
  • redesign the remote, queue, and now-playing UI as a neon-glass control system with light mode (d6eb8cf)

Bug Fixes

  • cache-bust UI assets so deploys reach already-installed clients (d6eb8cf)
  • harden the remote UI against silent connection loss on mobile (d6eb8cf)
  • install and validate Docker dependencies on supported Linux hosts (37fa7f1)
  • preserve operator environment settings across installer reruns (37fa7f1)
  • prevent Compose from creating missing system bind paths (37fa7f1)
  • protect user-managed Compose overrides during host detection (37fa7f1)
  • publish a cache-safe README banner so GitHub renders the current brand asset (3681b20)
  • stop the now-playing card flashing to idle every few seconds (d6eb8cf)

Documentation

  • add a reproducible Playwright workflow for refreshing README imagery (3681b20)
  • document the native Linux support and Docker installation contract (37fa7f1)

v0.6.1

Choose a tag to compare

@github-actions github-actions released this 18 Jul 18:19
ec53db9

0.6.1 (2026-07-18)

Bug Fixes

  • a just-ended YouTube stream now plays from the start while YouTube is still processing the replay, instead of being skipped with a "processing" notice — playback begins within seconds, and once the background download completes, seeking and the full timeline switch on mid-playback (0a6664e)
  • still-processing replays restart and auto-resume correctly, never reuse stale stream links, and fall back to the previous skip-with-notice behavior if the relay is disabled (RELAYTV_POSTLIVE_RELAY=0) or unavailable (0a6664e)
  • wait for YouTube media URL availability (a84b015)

Documentation

  • planning-era architecture and roadmap documents consolidated into permanent ARCHITECTURE.md and POSTLIVE_REPLAY.md operator docs (0a6664e)

v0.6.0

Choose a tag to compare

@github-actions github-actions released this 12 Jul 22:54
f0791a7

0.6.0 (2026-07-12)

Features

  • support Emby servers with auto-detected branding, live configuration, capability-aware dashboards, and runtime-gated session restore (8487d3d)

Bug Fixes

  • a just-ended YouTube stream now shows "YouTube is processing this live stream" and moves on to the next video instead of playing its final seconds and stopping — the replay plays normally once YouTube finishes processing it (dc884cd)
  • live YouTube streams keep your cookies and bot-challenge settings when handed to mpv, so a stream that resolves no longer hits a bot check the moment playback starts (dc884cd)

v0.5.0

Choose a tag to compare

@github-actions github-actions released this 05 Jul 01:55
e81a74e

0.5.0 (2026-07-05)

Features

  • a machine-checked operations test matrix — every supported host profile (x11, wayland, headless, Raspberry Pi, arm64, external mpv) now has pinned runtime decisions and an operator validation checklist (#26) (945656d)
  • a top-to-bottom architecture overhaul — modular routes, a runtime config service, a playback transition service, a dedicated Jellyfin service, and an optional API token for locked-down networks (#21, #22, #23, #24, #25) (945656d)
  • deno ships in the image as yt-dlp's JavaScript challenge runtime, so YouTube playback keeps working as YouTube changes things (945656d)
  • yt-dlp now keeps itself up to date — flip the new "Keep yt-dlp up to date" toggle in Settings and RelayTV checks daily in the background (945656d)

Bug Fixes

  • bot-checked YouTube videos are skipped with a friendly heads-up toast instead of being retried forever (945656d)
  • closing a video glides back to the idle screen instead of flashing your desktop for a few seconds (945656d)
  • device passthrough is now generated from what your host actually has, so the container starts cleanly on any box (945656d)
  • live and just-ended YouTube streams now play instead of hanging on a black screen, and any stream that can't start shows a "Can't start stream" toast within 45 seconds instead of leaving you staring at nothing (7f7d722)
  • Raspberry Pi 5 installs no longer trip over hardware decode nodes that only exist on the Pi 4 (945656d)
  • your TV and RelayTV finally talk — turning the TV off or switching inputs pauses playback, and coming back resumes right where you left off (CEC) (945656d)
  • YouTube bot checks now explain themselves everywhere — the warning toast also appears on direct plays and settings changes, and your current video keeps playing instead of dropping to a black screen (7f7d722)

Documentation

  • close out architecture review and slim agent instructions (#30) (fb72af5)

v0.4.0

Choose a tag to compare

@github-actions github-actions released this 30 Jun 15:56
3a237ea

0.4.0 (2026-06-30)

Features

  • modernize settings modal controls (#20) (0bc277b)

Bug Fixes

  • harden runtime profile and cec defaults (#17) (0d86d51)
  • keep tv cursor persistently hidden (#19) (812092a)

v0.3.1

Choose a tag to compare

@github-actions github-actions released this 29 Jun 03:39
da9d565

0.3.1 (2026-06-29)

Bug Fixes

  • address stale codex review findings (#15) (4092843)
  • keep close from replaying interrupted streams (#12) (9bbec4c)
  • persist interrupted close state across reloads (#14) (c2a2e79)
  • prevent closed sessions from priming queued playback (#16) (e3eba35)