Live radio · Android

Live radio.
One tap to keep it
forever.

TARV plays curated live stations — and the moment a song catches you, the ♥ records it straight off the air into an offline library that's genuinely yours. No account. No ads. No cloud.

↓ Download APK Google Play SOONComing to Google Play soon F-Droid SOONComing to F-Droid soon

Android 13+ · arm64 · ≈52 MB · sideload · no Google services needed

radios.tarv.app station catalog Also on the web — browse 49,632 live stations right in your browser radios.tarv.app →

How it works

Tune. Like. Own.

📻
01 · TUNE

Tune in

Pick a curated live station, or paste any direct stream URL. Your most-recorded stations float to the top.

💾
03 · OWN

Own it

It lands in your offline library — tagged with cover art, grouped by station — and plays with no signal at all.

Real screen capture: live radio → ❤ like → your offline library → the visualizer.

What it does

More than a radio player.

A like is ownership.

Liking a track taps the stream a second time, buffers it, and cuts cleanly at the track boundary — saved passthrough (MP3 kept as-is, AAC remuxed to M4A). No transcoding, no quality loss.

On save it's tagged automatically and given cover art looked up on iTunes then Deezer, falling back to the station logo — so the track looks finished the instant it lands.

Capture runs in a foreground media service, so it keeps going with the screen off.

Your catch, offline.

Saved tracks live in Music/TARV/<station> and are indexed straight from the device — newest first, grouped by station.

Browse them as a compact cover shelf that expands into a full grid. Anything missing artwork shows the TARV mark — never a blank tile. Once recorded, it plays with no network at all.

A visualizer on a dead-tape CRT.

A native projectM engine, driven by the real audio, runs through a worn-cassette CRT post-effect — chroma bleed, soft scanlines, a slow roll bar. Set the phone down and it becomes a living, music-reactive light show.

Visuals react to what you do: a beam sweep between live and library, a negative flash on station change, a calm freeze-frame on track change. Cast it to a big screen — no Google services required.

Pick a station, or bring your own.

Ships with 18 curated stations across genres. The picker sorts them by how many tracks you've saved from each, and a single paste adds any stream you love.

Now-playing — artist, title, cover — comes live from the stream's own ICY metadata.

What it isn't

Quiet by design.

No surveillance, no upsell, no lock-in. TARV asks for the bare minimum and keeps everything on your device.

✕
No ads, ever
✕
No subscription or paywallA one-time installed app.
✕
No account or sign-in
✕
No telemetry or tracking
✓
Records the stream, not your roomNever requests microphone access.
✓
Touches only its own media folderNo broad storage access.
✓
Recording only ever addsIt never deletes what you saved.
✓
Runs without Google servicesGrapheneOS-friendly.

Permissions, in full: internet, network state, read its own audio, notifications, foreground media service, wake lock, vibrate. And that's it.

Get it

Install the beta.

Version 0.2.5 · beta
↓ Download APK Google Play SOONComing to Google Play soon F-Droid SOONComing to F-Droid soon

Android 13+ · arm64-v8a · ≈52 MB

Sideloaded build — your browser or files app will ask to allow installing unknown apps. It installs cleanly on GrapheneOS and stock Android alike.

SHA-256 · 155fbbfadb1c4b4c5f8857b4b47de8d63736f9788a5b3697f360622469d560ab

Also on the web

TARV Radios — the catalog in your browser.

Find your station among 49,632 live streams — filter by genre, language or country, listen right in the browser, and see which ones TARV can record. The catalog that feeds the app.

🌐 radios.tarv.app