xxmxst

tv-receiver

TV Receiver is a casting receiver for Android TV that discovers itself on the LAN, receives a video URL from a phone and plays it, with remote-control support and a remote control API.

v1.1.1
Published at
Mar 6, 2026
2
Stars
39
Download
Synced at
1d ago

The author no longer ships through GitHub Releases, but the repository is still active (last push 19d ago). Get the latest version from:

Latest release

v1.1.1Mar 6, 2026, 12:40 PM
Downloads slow? Switch the source anytime above

README

Project Overview

TV Receiver is a casting receiver that runs on Android TV or Android televisions, publishing a discoverable service (NSD/mDNS) on the LAN, receiving a video URL pushed from a phone, and playing it directly. Playback can be controlled with the remote (pause, resume, seek, and speed menu), and it supports full-screen playback and remote control from the phone. It also exposes HTTP endpoints so other programs can query status or issue playback commands.

Turn the TV into a receiver for phone videos and control it with the remote.

Key Features

  • Service discovery: publishes an NSD/mDNS service on the LAN so phones can find the TV automatically
  • Receive and play: receives a video URL from the phone and plays it
  • Remote control: pause, resume, seek forward/backward, and a speed menu
  • Full screen: supports full-screen playback and exits it with the back key
  • Remote commands: play, pause, and stop remotely via the /control endpoint
  • Playback status: /status returns the current state, and /cast accepts an optional MIME type, title, and headers
  • Startup resilience: if service initialization fails, you can still open the main page to inspect status

Target Audience

  • Users who want to cast phone videos to a TV
  • Users of Android TV or Android TV boxes
  • Developers who need to control TV playback remotely

Quick Start

  1. Build and install the APK with Android Studio, running ./gradlew assembleDebug
  2. Open TV Receiver on the TV and keep it on the same LAN as the phone
  3. Use the companion sender on the phone to discover the TV and push a video URL
  4. Control playback with the remote, or call the /cast and /control endpoints
  5. Request /status when you need to check state

Core Advantages

  • Simple discovery: automatic LAN discovery with no manual address entry
  • Complete control: both the remote and the remote API can control playback
  • Clear API: /cast, /control, and /status have clear semantics and are easy to integrate

System Requirements

Item Requirement
OS Android TV or Android television
Build environment Android Studio, JDK 17, Android SDK 34
Network Same LAN as the phone

Notes

  • The TV and phone must be on the same LAN to be discovered
  • The remote API is exposed on the LAN; do not use it on untrusted networks
  • Requires the companion phone sender

Release history

Sort