dpwe / audfprint

Landmark-based audio fingerprinting
MIT License
547 stars 123 forks source link

Improve matches in pitch/tempo changing song samples #35

Closed liorazi closed 6 years ago

liorazi commented 6 years ago

There is a possibility this is one of the disadvantages of the algorithm used in audfprint, but is there a way to improve the match % in songs where the pitch/tempo was changed? (via the Options?)

According to what I tested (using Ableton) if you change pitch >-/+1% songs start to be not matchable. Same goes to changing tempo only (preserving the key) with >-/+ 5%.

-Lior

dpwe commented 6 years ago

That's right, the algorithm is acutely sensitive to the exact timing and tuning of the original, so if they are changed, the matching falls apart.

I've seen some work on designing fingerprints that were invariant to either or both of tempo or pitch shifts, but they would be more expensive, and presumably less discriminative (since there are now many possible matching waveforms). E.g. http://www.ofai.at/research/impml/technology/identify.html

When I wanted to deal with the possibility of substantial playback speed change in the past, I added multiple resampled versions of the reference to my database (since in many applications the reference database has plenty of room to spare). That way you only span the ranges and combinations of scalings you care about. Spacing them e.g. 1% apart will provide the ability to match any factors within the range.

Good luck!

DAn.

On Tue, Apr 3, 2018 at 3:00 PM, liorazi notifications@github.com wrote:

There is a possibility this is one of the disadvantages of the algorithm used in audfprint, but is there a way to improve the match % in pitch/tempo changing songs? in the settings/options maybe?

According to what I tested (using Ableton) if you change pitch >-/+1% songs start to be not matchable. Same goes to changing tempo only (preserving the key) with >-/+ 5%.

-Lior

— You are receiving this because you are subscribed to this thread. Reply to this email directly, view it on GitHub https://github.com/dpwe/audfprint/issues/35, or mute the thread https://github.com/notifications/unsubscribe-auth/AAhs0fRgjwABM5nI6PFl-yQ9L6KOnH1Xks5tk8bLgaJpZM4TFnCH .

liorazi commented 6 years ago

Cool, that answered my needs.

Thanks for the quick reply!

-Lior