Documentation
How Rewamp works, screen by screen. The app is the same on macOS, Windows, Linux, Android, iPhone and iPad; where a platform differs, it is said.
Getting started
Rewamp plays game soundtracks, chiptunes, tracker modules and demoscene music from online collections — Modland, HVSC, joshw, Demozoo, VGMRips and more — as well as your own files. Every tune is played by an emulation engine for its original chip or tracker, not by a recording.
The tabs are Home, Search, Local, Library, Stats, Settings, Help and About, plus Downloads at the bottom of the sidebar on the desktop. On a phone, four tabs sit in the bottom bar and the rest are under More; Settings → General lets you reorder them and choose the tab the app opens on.
Playing a track
Tap a track and Rewamp asks when to hear it: now, next (right after the current track) or at the end of the queue. A long press — or a right click on the desktop — opens the track's options: view the album, view the subsongs, add to a playlist, play with another engine.
Don't want the question every time? Settings → Playback has two separate settings: one for tracks tapped in the app, one for files opened from the system (double click, “Open with”, command line). Each can be set to play immediately.
Search and browse
Search finds songs, artists and albums — and, when the words match them, demo groups, playlists and productions (demoscene releases listed on Demozoo) too, each in its own tab. A last tab lists the matching files on this device. Type part of a title — each word matches the beginning of a word — and narrow the results by collection, format, platform or podium (tunes ranked at a demoparty competition). When nothing matches, Rewamp tries a fuzzy search and says so (“Did you mean…”).
Anchors let you match a whole title: ^ma finds titles starting with “ma”, ma$ titles ending with it, ^ma$ the exact title. A $ or ^ that does not touch a word (as in $$$ dantro $$$) is read as part of the title.
Browsing
Below the search field, Browse opens the catalogue by angle: collections, platforms, chips, demo groups and productions, demoparties. The Podiums browser lists every tune that placed in a competition, by party series, competition type and year, with a hall of fame per artist, series and year.
Related collections are grouped into families (for example the joshw rips of every console): tap the family to filter on all of them, or open it to pick one.
The player
Tap the mini player at the bottom (or press ⌘P / Ctrl+P) to open the full player. It shows the artwork, the title, the album and the artist, the engine that plays the tune right under the seek bar, and a visualizer. Swipe down or press Esc to close it.
The ⓘ panel
The ⓘ button (⌘I / Ctrl+I) shows everything known about the track: its tags, the engine in use, the voices of the chip, the comments of the rip, and every file the engine loaded — including companions such as Amiga sample files or PSF libraries.
Voices and speed
The voices sheet mutes or solos each channel of the chip and shows what each one is playing. It also sets the playback speed from 0.2× to 3×; on most engines the tempo changes while the pitch stays the same.
The queue
The queue panel (⌘L / Ctrl+L) lists what plays next. Drag a track to reorder it, swipe it away to remove it, tap it to jump to it. Clearing the queue stops playback.
Shuffle and repeat are modes: they stay on until you turn them off. Repeat-one loops the track natively when the format has a loop point, so the intro is not replayed each time. When a shuffled queue starts over, it is shuffled again.
Autoplay (∞)
With autoplay on, the queue refills itself near its end with tracks close to what you were listening to: same artist, same demo group, then same collection. What autoplay added is marked, and turning it off removes what has not played yet.
Play all, radio and surprise
Most lists — a collection, a search, an artist, a podium ranking, a folder — carry three buttons. Play all queues what the list shows, in order. Radio on a list of tracks starts an endless station drawn at random from the whole list, not just the page on screen: it does not repeat a track before it has played them all, and keeps only a few tracks ahead and a few behind in the queue. On a list of artists, albums or groups, radio plays their tracks shuffled, once. Surprise plays one random track from the list. On Home, the radio of a featured selection is endless too.
Adding tracks to the queue keeps the radio going; playing something else or clearing the queue stops it. Autoplay waits while a radio is on.
Gapless and crossfade
Tracks follow each other without a gap. Settings → Playback can add a crossfade of up to 8 seconds.
Library and account
A heart marks a favourite. Your favourites, downloaded albums and playlists make up your library, listed by tracks, albums, artists and playlists under the Library tab.
An account is optional. Signed in, your library, playlists and listening statistics follow you across your devices. A file you imported on another device is shown greyed as “on another device”: it stays in your library and plays where the file is.
Playlists
Playlists are private by default. Publishing one is a request: it stays pending until it is reviewed, then appears to everyone under your pen name.
Stats
The Stats tab shows what you listen to — top tracks, artists, albums, platforms and engines. Once signed in it merges all your devices. A play counts after ten seconds.
Your own files
The Local tab lists the music on this device. There are two ways to bring your files in:
- Import copies files or whole folders into Rewamp. Archives (zip, 7z, rar, lha…) are unpacked, and an imported folder unpacks the archives it contains.
- Link a folder plays its content in place, without copying: a disk or network share on the desktop, the Rewamp folder of the Files app on iPhone and iPad, a folder you pick on Android. Linked folders are listed even when the disk is not connected.
On the desktop you can also drop files or folders on the window, open them from the system (double click, “Open with”, the Dock icon on macOS), or pass them on the command line.
Playlists and companion files
An M3U playlist next to the files is honoured: it names the album, the tracks and the subsongs. When a folder has several playlists, they are merged. Companion files — Amiga sample files, PSF libraries, MIDI banks, artwork — stay with the track that needs them, and are removed with it.
At import, Rewamp reads the title and author stored in the file when the format has them (SID, NSF, GBS, SPC, MOD, XM, S3M, IT, VGM…).
Managing imports
Create folders, rename and move imported files from the Local tab. Settings → Data → Storage shows what the app keeps on disk, category by category, with a filter, folder-wide selection and deletion.
Subsongs and formats
Many files hold several tunes: SID, NSF, GBS, game rips and others. Such a container opens as a list of subsongs. Playing the whole file queues every subsong, starting from the one the file marks as its default.
Game rips often hold sound effects next to the music. Subsongs shorter than the threshold set in Settings → Playback (5 seconds by default) are greyed and skipped when you play the whole file — they stay playable on tap.
Engines and sound banks
Rewamp ships more than 40 playback engines. Each format has a default engine; when several engines read the same format, “Play with…” in the track options chooses one for that file, or for the whole album. Settings → Engines sets the defaults and each engine's options, and lists the formats each one reads.
- MIDI plays with FluidLite and a SoundFont, with the OPL3 or OPN2 FM engines and an FM bank (
.wopl,.wopn), or with an MT-32 emulation if you provide its ROMs. - Banks, SoundFonts and ROMs are imported from Settings → Engines, or simply by opening the file.
- Loops: tunes that loop forever can play a set number of times with a fade-out, or loop endlessly with repeat-one.
Visualizers
Seven visualizers: stereo scope, spectrum, one oscilloscope per voice, notation, piano, tracker patterns and projectM (MilkDrop presets). Tap the visualizer to show its controls, double tap for full screen; on the desktop, V and ⇧V switch between them.
projectM
projectM plays MilkDrop presets in time with the music. Lock the current preset, let them cycle in order or at random, or pick one from the list. Preset packs can be imported, and transitions smoothed, in Settings → Visualization.
Desktop: window and mini player
The mini player (⇧⌘M / Ctrl+Shift+M) shrinks the window to a compact bar; the visualizer mini player (⇧⌘V) to a small 4:3 visualizer. It is the same window, so the queue and playback go on unchanged. Where the system allows it, the window can stay always on top (⇧⌘T) — on Linux this needs an X11 session.
Settings → General chooses how the app starts: as a normal window, as the mini player, or as it was when you closed it.
Media keys and now playing
Media keys and the system's now-playing controls drive playback: Control Center on macOS, the media overlay on Windows, MPRIS on Linux (GNOME, KDE). On macOS and Linux, a notification at each track change can be turned on in Settings.
Command line
The app accepts files and folders to open, and commands to drive a running instance. Run it with --help for the list of options.
Keyboard shortcuts
On the desktop. In the app, press ? or open Help → Keyboard shortcuts. Shortcuts that open a screen close it on a second press, and none of them fires while you type in a text field.
Playback
| Action | macOS | Windows / Linux |
|---|---|---|
| Play / pause | Space | Space |
| Previous / next track | ← / → | ← / → |
| Back / forward 10 seconds | ⇧← / ⇧→ | Shift+← / Shift+→ |
| Back / forward 1 minute | ⌥← / ⌥→ | Alt+← / Alt+→ |
| Jump to 0 %…90 % of the track | 0 – 9 | 0 – 9 |
| Repeat mode | R | R |
| Shuffle | S | S |
| Favourite | F | F |
| Slower / faster | − / + | − / + |
| Normal speed | = | = |
Visualizer
| Action | macOS | Windows / Linux |
|---|---|---|
| Next / previous visualizer | V / ⇧V | V / Shift+V |
| Show the visualizer controls | F1 or I | F1 or I |
| projectM: next / previous preset | N / P | N / P |
| projectM: lock the preset | H | H |
| projectM: random order | X | X |
| projectM: preset list | L | L |
Window and navigation
| Action | macOS | Windows / Linux |
|---|---|---|
| Mini player | ⇧⌘M | Ctrl+Shift+M |
| Mini player with visualizer | ⇧⌘V | Ctrl+Shift+V |
| Always on top | ⇧⌘T | Ctrl+Shift+T |
| Open / close the player | ⌘P | Ctrl+P |
| Close the topmost panel | Esc | Esc |
| Queue panel | ⌘L | Ctrl+L |
| Search | ⌘F | Ctrl+F |
| Tabs, in sidebar order | ⌘1 – ⌘8 | Ctrl+1 – Ctrl+8 |
| Downloads | ⌘9 | Ctrl+9 |
| Open files… | ⌘O | Ctrl+O |
| Link a folder… | ⇧⌘O | Ctrl+Shift+O |
| Track info | ⌘I | Ctrl+I |
| Settings | ⌘, | Ctrl+, |
| Full screen | ⌃⌘F | F11 |
| Keyboard shortcuts | ? | ? |
Settings worth knowing
- Playback — when to play what you tap or open, the short-subsong threshold, crossfade, forced loops and fade-out, autoplay.
- Engines — the default engine per format, each engine's options, FM banks, SoundFonts, MT-32 ROMs.
- Visualization — oscilloscopes, the artwork background, projectM presets and transitions.
- General — theme, the home sections and their order, the start-up tab (and, on a phone, the order of the tabs), how the desktop app starts.
- Data — storage per category, listening history, clean-up of the local database and caches, backup export.
A dot next to a setting means it differs from the default; tap it to reset that setting.
Troubleshooting
A track stays silent or sounds wrong
When a track fails to play, Rewamp reports it on its own — the engine and the file go to the server for later analysis, so there is nothing to send. If several engines can read the format, you can try another one with “Play with…” in the track options.
An album seems out of date
When an album was replaced online under the same address, files on disk can be stale. The album screen offers to download it again.
The app feels slow or cluttered
Settings → Data cleans the local database and caches in one step, without touching your library.
Reporting a bug
The version and build number are on the first page of the welcome carousel, which you can replay from About. Write to [email protected] or open an issue on GitHub.