Skip to content

Repository files navigation

RomMP

License: GPL v3 Android

A gamepad-first Android music player for the game soundtracks in your RomM library.

Your RomM server already stores the soundtracks attached to your games. RomMP plays them. Browse by game, build playlists that live on the server rather than on one device, and take albums offline for the commute.

Features

Native RomM Client

Reads the soundtrack corpus through RomM's music API, so albums arrive with the game's cover art and platform already attached. No separate library to maintain and no metadata to re-tag.

Pairing Without a Password

Sign in by device authorization. Scan the QR from a phone that is already signed in, or open the verification URL in this device's browser. RomMP stores a scoped client token and never asks for or keeps your password.

Favorites and Playlists

Favorites and playlists are backed by RomM collections, so they follow your account to every device that talks to the same server rather than living in local storage.

Offline Downloads

Download an album or a single track into the device's Music library. Downloaded tracks play from local storage when the server is unreachable, and the player switches between local and streamed sources as connectivity changes.

Background Playback

A media session keeps playback running when the app leaves the foreground, with lockscreen, notification, Bluetooth, and wired remote controls.

Built for Handhelds

Full D-pad and face-button navigation, shoulder buttons mapped to track skip, and a touch lock for pockets. Designed for the same class of device as Anbernic, Retroid Pocket, and Odin hardware.

Requirements

  • Android 8.0 or newer
  • A RomM server exposing the music API, with soundtracks attached to your games

Building

./gradlew assembleDebug

Release builds are signed from a keystore.properties at the repository root, alongside the keystore it names:

storeFile=release.keystore
storePassword=...
keyAlias=...
keyPassword=...

Both files are gitignored. assembleRelease and bundleRelease fail with an explanation when keystore.properties is absent, rather than falling back to the debug signing key.

Connecting to a Self-Hosted Server

RomM is commonly served over plain HTTP on a LAN, or behind a certificate signed by a CA you installed yourself. RomMP permits both, since the server address is yours and is unknown when the app is built. Certificates installed through Android Settings are trusted alongside the system roots.

License

GPL-3.0. See LICENSE.

About

A music player for Android built on your RomM soundtrack library: sync, stream, and download to play when and where you want.

Resources

Contributing

Stars

1 star

Watchers

0 watching

Forks

Releases

Packages

Used by

Contributors

Languages