How to: Import music
Everything else starts here — Automix and Harmonize can only use tracks that are in your library and analyzed. There are two import buttons, and the difference matters.
| You want to… | Use |
|---|---|
| Add music to your collection, nothing else | Library → + Import to library |
| Add music and start building a mix with it | Timeline → + Add tracks |
Both do the same upload and analysis. The only difference is that the Timeline one also drops each track into the build queue for the mix you're working on.
Add to the library only
- Open the Library view.
- Click + Import to library (bottom left, above rekordbox XML).
- Drag your audio files onto the drop zone — or click it to pick files. You can also drop files
anywhere on the Library view and this window opens by itself.
- Watch each file work through the list:
| | | |---|---| | · waiting | queued, not started | | ◐ analyzing… | currently being analyzed | | ✓ 128 BPM · 8A | done — its detected tempo and key | | ≡ already in library | same recording is already there (matched by audio, not filename) | | ✗ | failed, with the reason |
- The footer counts down — "Analyzing… 3 of 12 done" — then ends with a summary.
- The table refreshes and the new tracks are there.
Nothing is added to the timeline. This is the one to use when you're just filing music away.
Analysis runs one file at a time and takes a few seconds each, so a big batch is not instant. You can close the window and keep working — the import carries on, and reopening it shows where it's up to.
Add tracks while building a mix
- Open the Timeline view.
- Click + Add tracks, then + Import local files — or drag audio files straight onto the
panel, or onto an empty timeline.
- Imported tracks are added to the library and appear as chips in the queue, ready to build.
Changed your mind about a queued track? Click the ✕ on its chip. It stays in the library — the queue is only a staging list, and nothing reaches the timeline until you build.
What happens to a file
- It's copied into the engine's own folder (
engine/uploads/<library>/), so you can move or delete
your original afterwards without breaking anything.
- It's analyzed for key, BPM and the beat grid. That's what lets Harmonize order by key and lets
every track beat-match to one master tempo.
- Analysis runs one file at a time and takes several seconds each. The import window shows exactly
which file is being worked on.
A track only appears in the library and the track pickers once its analysis has finished. If you just imported something and can't find it, give it a moment rather than importing it twice.
Formats: mp3, wav, m4a, aac, flac, aiff/aif, ogg.
Importing a whole folder (advanced, no button yet)
For a large collection, going through the file picker is slow. The engine can scan a folder directly, in parallel, but there's no UI for it yet — it's an API call.
- Copy your audio into the library's media folder. For the default Mixx Intelligence Library that's:
spike/media (set per-library in spike/engine/data/libraries.json).
- Trigger the scan:
`` POST /library/mixmind/analyze { "jobs": 6 } ``
- Watch progress at
/library/mixmind/analyze/status, or tail/tmp/aidj-analyze-mixmind.log.
jobs is how many tracks are analyzed at once (default 6) — this is the parallel path, which is why it's far quicker than the one-at-a-time file picker. It skips anything already analyzed, so it's safe to re-run after adding more files ("reanalyze": true forces a redo).
What ⭳ rekordbox XML does not do
It does not import music. It reads a rekordbox Export Collection in xml and pulls the beatgrid and cues onto tracks you already have, matching by filename and then title. Use it to bring your own downbeats across — but the audio has to be in the library first.
Notes
- Duplicates are caught by the audio itself, not the filename — re-drop the same recording under a
different name and the row reads "already in library" instead of adding it twice.
- There's currently no way to delete a track from the library in the app.
- A track whose beat grid looks wrong can be fixed by hand — open ◫ Grid on it and set the "1"
(see guide 08 for half/double BPM detections).