What music recognition matches, and what it doesn't

Source: AudD•

What music recognition matches, and what it doesn't

AudD identifies recordings, not songs. A case-by-case table of what to expect for re-uploads, noisy captures, remasters, live versions, covers, samples, sped-up audio, AI soundalikes, DJ mixes, and unreleased music, plus how to build a test set that measures it on your own audio.

AudD identifies recordings, not songs. A fingerprint is computed from the sound of one specific recording, and a match means “this audio contains that recording.” A different recording of the same song (a cover, a live take, a re-recording) is a different fingerprint. This page walks through the cases that come up in moderation, monitoring, and tagging, gives an honest expected outcome for each, and shows how to measure the uncertain ones on your own audio before you rely on them.

TL;DR

  • A match needs the same recording to be in a database AudD searches: the public database of about 160 million commercially released songs, or your own custom catalog.
  • The same recording survives re-encoding, a different bitrate, clipping to an excerpt, a phone-speaker capture, background noise, and speech on top, within limits. Very quiet or heavily masked music may not match.
  • Covers, interpolations, hummed or sung melodies, and AI soundalikes are new recordings. They don’t match the original. AudD does not detect covers, versions, interpolations, or AI-generated audio.
  • Speed, pitch, and tempo changes reduce matching. AudD doesn’t publish a tolerance; measure it on your own transformed audio.
  • For moderation, “no match” means “unknown”, not “cleared”.

The expected-outcome table

“Matches” below assumes the recording is in a database AudD searches. “Test” means the outcome depends on the material, so measure it on yours (see Build a test set).

Why recordings, not songs

A song in the everyday sense is a composition: melody, harmony, lyrics. A recording is one performance of it captured and mixed. Rights follow the same split: the composition belongs to songwriters and publishers, the recording to whoever owns the master (see the music rights glossary).

Audio fingerprinting compares the sound itself. Two performances of the same song differ in timing, timbre, key, arrangement, and mix, so they produce different fingerprints. That’s why a cover won’t match the original, and why fingerprinting is good at the question “is this exact recording present?” rather than “is this song being performed?”

A consequence that trips people up: a match tells you which recording played, and the metadata (artist, title, label, ISRC, UPC) describes that recording and one release it appears on. It doesn’t tell you who owns the composition, whether the use is licensed, or whether the label is the current rights owner.

The cases in more detail

The same recording, degraded

Re-encoding to MP3 or AAC, a lower bitrate, mono, a different sample rate, trimming to an excerpt, and moderate noise all leave the recording recognizable. Fingerprinting is built for this. What reduces matching is losing the music itself: a very short clip, music far below speech or crowd noise, or heavy processing such as aggressive noise reduction. The audio formats and quality page covers capture and encoding choices.

The standard endpoint analyzes the first 12 seconds of what you send. If an upload opens with silence or talking, send a later excerpt, or use the enterprise endpoint, which scans the whole file.

Versions of the same track

Remasters, radio edits, extended mixes, and explicit/clean pairs share most of their audio, yet each is its own recording, often with its own ISRC. A clip from one of them may come back as the version you sent or as another version that sounds the same at that moment. Which one you get depends on the audio and on what’s in the database, so we don’t promise either.

If your logic keys on ISRC (an allow list of licensed tracks, for example), list every ISRC the license covers, or match on artist and title as a second check. Test with the actual versions you care about.

Live recordings, covers, and re-recordings

All three are new recordings. Each matches only itself, and only when it’s in the database. A released live album or a released cover can match; a phone recording of a concert usually can’t, because that performance was never released. AudD doesn’t detect that a recording is a cover or a version of another song.

Interpolations and samples

An interpolation re-performs part of a composition, so there’s no shared recording to match. A sample does reuse a recording, but it’s usually short, layered under new material, and often processed. The public database identifies the new track as itself (if it’s released), not the sample inside it.

When you own the source recordings and want to find them inside other people’s tracks, upload them to a custom catalog and scan candidates with the enterprise endpoint. The sample-detection recipe walks through it. How short or processed a sample can be and still match depends on the material, so test with real examples.

Sped-up, slowed, and pitch-shifted audio

Social uploads often change speed, pitch, or tempo, sometimes on purpose to avoid detection. Each of these transformations moves the audio away from the reference fingerprint and makes a match less likely as the change grows. AudD doesn’t publish a tolerance figure. If transformed audio matters to you, measure it; see Measure matching on transformed audio.

AI-generated soundalikes and voice clones

A model that generates music “in the style of” an artist, or a cloned voice singing new material, produces a new recording. It won’t match the original recordings it imitates, and AudD doesn’t classify audio as AI-generated. A generated track matches only when that exact generated recording is in a catalog: if it has been commercially released and is in the public database, or if you uploaded it to your custom catalog to catch re-uploads.

DJ mixes

A mix is many recordings back to back, with overlaps. The enterprise endpoint returns a match for each 12-second chunk it recognizes, with offsets in your file; a chunk can list more than one song during a transition. DJs often change tempo to beatmatch, and effects, loops, and long blends can hide a track for part of its play time. The DJ set tracklist recipe shows how to collapse chunk matches into a tracklist.

Library music and unreleased audio

The public database covers commercially released music. Production-library cues, unreleased masters, demos, and in-house jingles may not be there. If you need to recognize a specific set of recordings, put them in a custom catalog (special access; email [email protected]). A custom match carries an audio_id, and artist/title may be null.

Practical consequences

”No match” is not “cleared”

An empty result means AudD found no recording it knows in that audio. The audio could still contain a cover, an interpolation, a heavily transformed track, a live performance, or a recording that isn’t in the database. For copyright moderation, treat “no match” as unknown, and decide what your platform does with unknown content (publish, publish and keep monitoring reports, or review when other signals point to music).

Pair recognition with human review

Recognition answers one narrow question well. Route the cases it can’t settle to people: disputed matches, uploads with lots of unidentified music, and reports from rights holders about content that didn’t match. From match to decision shows how to turn results into allow, block, and review outcomes.

Know what your own content looks like

Every claim on this page that says “test” depends on your audio: your uploaders’ devices, your mix of content, the transformations that are common on your platform. A small labeled test set answers those questions better than any general figure.

Build a test set

  • Collect real samples by category. Pull 20 to 50 items per category that matters to you: clean re-uploads, phone captures, music under speech, remasters and edits, live recordings, covers, sped-up clips, and clean content with no music. Use your real uploads where you can.
  • Label the expected answer. For each file, record the artist and title you expect, or leave them blank when nothing should match.
  • Run the set and classify each outcome as correct, wrong track, missed, or unexpected match. Keep the scores (Startup plan or higher) for the score calibration step.
  • Re-run when inputs change: a new upload source, a new content category, a new transformation trend.

A CSV with path,category,expected_artist,expected_title is enough:

Title matching by substring is deliberately loose, since versions often carry suffixes like “Remastered” or “Radio Edit”. Review the wrong_track rows by hand; some will be another version of the right recording.

Each file costs one request. For full-length files, scan with audd.recognize_enterprise(path, limit=...) instead and compare the list of matches; set limit so a long file can’t run up the bill.

Measure matching on transformed audio

To learn how your audio behaves when sped up, slowed, or pitch-shifted, take files from your test set that match cleanly and generate variants with ffmpeg:

Add each variant to the CSV with the original’s expected artist and title and a category such as rate_1.10, run the harness above, and read the match rate per category. The step where matches start to drop is your platform’s practical limit for that transformation. Use enough source tracks (a few dozen across genres) that one unusual recording doesn’t decide the result.

FAQ

Does AudD recognize covers?

No. A cover is a new recording of the same composition, and AudD matches recordings. A cover matches only itself, and only if that cover recording is in the database.

Will a remaster or radio edit match the original?

It may match as itself or as another version of the same track. They are separate recordings with their own identifiers, so test with the versions you care about and don’t assume the ISRC on a match is the exact one used.

Can AudD detect AI-generated music or voice clones?

No. AudD does not classify audio as AI-generated. A generated recording matches only if that exact recording is in the public database or in your custom catalog.

How much speed or pitch change can recognition handle?

AudD does not publish a tolerance. Matching becomes less likely as the change grows. Generate sped-up, slowed, and pitch-shifted variants of tracks that match cleanly and measure the match rate on your own audio.

Does no match mean an upload has no copyrighted music?

No. It means no known recording was found. The upload can still contain covers, interpolations, transformed audio, live performances, or recordings outside the database, so treat no match as unknown rather than cleared.

How do I recognize unreleased or library music?

Upload those recordings to a custom catalog. Custom catalog access is enabled on request at [email protected], and matches against it carry an audio_id that you map back to your own records.

  • From match to decision: allow, block, and review policies
  • Public database vs your custom catalog
  • Interpreting the recognition score
  • Audio formats and quality for music recognition
  • Detect samples and reuse of your own tracks
  • Music rights and recognition glossary
  • API reference

What this article says