Android YouTube Music player for my phone and car. Unofficial. Sideloaded. Zero corporate energy — just playback that actually slaps.
Instead of hopping between a pile of forks, I combined the best from the whole open-source stack: ArchiveTune as the base, then pulled in the good stuff from Metrolist, Vivi Music, Echo Music, and the shared libs behind ViMusic, OuterTune, and BetterLyrics. One app. Most of the features. No fork roulette.
Package: app.hush.music · debug: app.hush.music.debug
| Releases | Fresh APKs |
| Obtainium | Auto-updates, no cap |
| Issues | Broken install on this fork |
| Privacy | What the app keeps & sends |
| Changelog | What shipped each version |
Personal fork. I build it for me. You're welcome to the APKs.
Think: YT library sync, queue, downloads, lyrics (multi-provider), Android Auto, Cast on GMS builds, local files, backups, podcasts, dynamic themes, canvas art, crossfade, tempo/pitch — the full session, not a demo.
Not a PR factory. Not taking donations. If something's broken in code that came from Metrolist or ArchiveTune, hit their issues when you can. Hush-specific bugs — weird on this build, this fork, your install — open an issue here; I'll see what I can do.
Real talk on what got ported from where. This table only moves when I add something new. Patch notes for each version → Changelog.
| Source | What landed in Hush |
|---|---|
| ArchiveTune | Core app, YT login & sync, playback engine, queue & downloads, crossfade, tempo/pitch, Chromecast, Music Together, Last.fm / ListenBrainz, local files, backup & restore, multi-provider lyrics, podcasts, Android Auto, dynamic theme & canvas art, onboarding, stream-source picker, custom extractor, hi-res / lossless |
| Metrolist | Wake-up music alarms, loudness presets, playlist export (CSV / M3U), Android Auto settings |
| Vivi Music | Playlist view-count prefetch, auto-backup before in-app update, JioSaavn streaming (320 kbps primary, YT fallback) |
| Echo Music | Settings search, IPv4 / IPv6 / Auto network mode |
| ViMusic | InnerTube foundations, bottom-sheet UI patterns, KuGou lyrics client |
| OuterTune | Player carousel snap / parallax, network connectivity observer |
| BetterLyrics | Word-synced TTML lyrics module |
Tiny fixes and UI polish are mixed in from everywhere. Full license wall → About → Licenses in the app.
| Project | Bugs go here |
|---|---|
| ArchiveTune | Issues |
| Metrolist | Issues |
| Vivi Music | Issues |
| Echo Music | Issues |
CI drops universal APKs — one file, every CPU arch, no guessing.
| APK | When |
|---|---|
hush-foss-mobile-universal-release.apk |
Default. Clean build, no Google libs. GitHub or Obtainium for updates. |
hush-gms-mobile-universal-release.apk |
You need Chromecast or tap-to-update inside the app. |
hush-gms-tv-universal-release.apk |
Android TV couch mode. |
Same Hush. Different sauce in the APK.
| FOSS | GMS | |
|---|---|---|
| Play music, sync library, lyrics, settings | ✓ | ✓ |
| Chromecast | — | ✓ |
| In-app updater | — | ✓ |
| Google Play Services | Nah | Only for Cast |
Package conflict / invalid APK — the usual sideload ritual:
- Backup → Settings → Backup and restore
- Yeet the old Hush or ArchiveTune install
- Install from Releases
- Restore your backup
adb install -r your.apk > random WhatsApp file forward. First YT Music sync might need VPN if YTM's blocked where you live.
bash scripts/build-release.sh list # see everything
bash scripts/build-release.sh foss mobile arm64 # phone FOSS
bash scripts/build-release.sh gms mobile universal # what CI ships
bash scripts/build-release.sh gms tv universal # TVYou'll want app/keystore/release.keystore + secrets in local.properties (local.properties.example has the template). Raw ./gradlew assemble*Release gives you unsigned — scripts/build-release.sh signs it proper.
Unofficial third-party client. Not Google. Not YouTube. GPL-3.0. Upstream copyrights live in source where they belong.