Any streaming site,
a real player.
FMHYPlay opens the sites you choose, finds the video they play and plays it natively: hardware decoding, nothing painted over the picture, and a remote-friendly interface.
DownloadUser guideBuild from source
What it does
Streaming sites are built for a mouse. FMHYPlay keeps the site and replaces the part that does not work on a TV.
Native player
Finds the stream the page starts and plays it in ExoPlayer with the hardware decoder. Quality with frame rate, audio, subtitles, speed and zoom.
Drives the site for you
The player's Servers, Quality and Episodes buttons press the site's own buttons, even inside cross-origin iframes. You never go back to the page.
Subtitles built in
OpenSubtitles search by title and episode, side-loaded without losing your place.
Built for the remote
Focus navigation designed for D-pads, a cursor mode for stubborn pages, and a TV launcher. On a phone: brightness and volume swipes, double-tap to skip.
Ad blocking and WARP
Domain, pop-up and redirect blocking, plus an optional in-app Cloudflare WARP tunnel for the app's traffic only, with no VPN permission.
IPTV
More than 11,000 public channels by category and country. Offline ones are hidden by a background check; add your own playlists by URL.
On the TV
Browse sites and a movie and series catalog, search by typing or voice, and pick up where you left off.




On the phone
The same app and the same player, on a touch screen.


Under the hood
No Gradle
Plain Java and the Android SDK command-line tools, about 11 MB per APK. A clean clone builds with two commands.
Signed releases
Pushing a tag builds both APKs on GitHub Actions, signs them with the project key and publishes a release with checksums.
Private by design
No FMHYPlay account, no analytics, no telemetry. The tunnel is a userspace WireGuard client that only carries this app's traffic.