Guide

Matching & the History tab

DJ software rarely carries perfect tags. Milonga is built around that reality: it takes whatever your DJ app reports — incomplete, reordered, or mis-spelled — and finds the right recording in its database of ~45 000 tango recordings.


How a track is resolved

Each time your DJ app reports a new track, Milonga works through a cascade, stopping at the first step that gives a certain answer:

  1. Cortina markers — a C- prefix, ***, or a leading run of dashes on the title or artist means cortina, immediately.
  2. Your saved decisions — tracks you have confirmed or corrected before (see Learning) resolve instantly to your saved answer.
  3. Trusted prefix — tracklist-style names such as 1V-Troilo - Ruiz - Flor de Lino are read positionally: the V marks a vals, the fields follow in order. Every trusted-prefix match is also automatically saved to a personal learned database so the general engine can use these recordings in future lookups.
  4. General matching — the string is split into typed fields (title, orchestra, singers, date, duration), each spelling-corrected against curated name lists, then scored against candidate recordings. Extra evidence from your DJ software's own database and the audio file's embedded tags is merged in. The best candidate is accepted only when it clears the minimum score and clearly beats the runner-up.

If nothing is certain enough, the track is treated as a cortina — for a tango DJ, a wrong "unknown" is better than a confidently wrong title on screen.


Cortina rules

A track is shown as a cortina (and the tanda cycle advances) when:

  • its title or artist carries a cortina marker (C-, ***, leading ---), or
  • no database match clears the minimum score.

The C- prefix and any leading punctuation are stripped for display, so C-Tainted Love appears simply as Tainted Love.


La Cumparsita

By tradition the milonga closes with La Cumparsita. When a matched track's title is exactly La Cumparsita, the carousel enters its closing Cumparsita state.

If you play the tune mid-event, turn this off in Preferences → Matching → Treat "La Cumparsita" as closing tanda and it will display as an ordinary tango.


The History tab

The control window's History tab shows, for every track played, exactly what Milonga looked up and the ten best candidates it considered:

The History tab

  • Left — the lookup history of the evening, newest first, with the resolved genre.
  • Top right — the raw input received from the DJ app and the chosen result.
  • Table — the scored candidates. Click any row to push that recording onto the display immediately — the fastest way to fix a wrong match live, without touching your DJ software.

Learning from corrections

With Preferences → Matching → Learn from corrections enabled (the default), Milonga maintains a personal overlay on top of the shipped database:

  • inputs you have confirmed or corrected resolve instantly next time;
  • learned spellings (e.g. a recurring typo in your library) apply to future lookups;
  • recordings missing from the base database can be learned as your own entries.

In addition, every track resolved via a trusted prefix is automatically saved to learned_recordings.db — a separate personal database in the Milonga application-support folder. As this database grows, the general matcher gains more recordings to draw from, improving coverage for tracks not in the main database.

Your data survives application updates.


Matching settings

In Preferences → Matching:

Setting Default Effect
Minimum match score 68 Candidates below this score are rejected (track becomes a cortina). Lower = more permissive, higher = stricter.
Treat "La Cumparsita" as closing tanda on See above.
Learn from corrections on Enables the personal learning overlay.

Giving the matcher more to work with (Traktor)

Traktor's now-playing broadcast only carries title and artist. You can give Milonga access to the rest of your collection metadata (genre, dates, comments, file paths):

  1. In Traktor, export your collection as HTML (with all columns).
  2. In Preferences → Listeners → Traktor metadata, select the exported file and click OK.

Milonga imports it once into a local lookup database. Dates and genres from your own library then corroborate the match — and when the audio file itself is reachable, its embedded tags are read too.

VirtualDJ needs no export: Milonga reads database.xml directly.

Next: Troubleshooting