Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Add finding similar audio by content #970

Merged
merged 23 commits into from May 7, 2023
Merged

Add finding similar audio by content #970

merged 23 commits into from May 7, 2023

Conversation

qarmin
Copy link
Owner

@qarmin qarmin commented May 3, 2023

Fixes #132

Fixed also bug with not using cache when reading tags in similar audio mode
Cache loading times should now be a little faster
Also cleaned some code - need to have some #[timed] proc macro to calculate how long took function

Not all files can be compared - Symphonia have problems with some music files - pdeljanov/Symphonia#124

Most of the features are already implemented(tested on i7 4770):

  • Fingerprint calculating and caching - 2374 music files was calculated in 4:15 minutes(9 files/second)
  • Comparing fingerprints - 5 million comparisons(2374*2374) was done in 2:34 minutes(35000 comparisons/second)
  • Faster reference folder checking - instead doing testing all possible combinations of files(n * n), only files from reference folders are compared to other files(k * m) - with same number of files to check, minimal speedup is 4x.
  • Tags for files with similar content are read
  • Can choose mode, minimal number of seconds and also maximum difference in GUI

TODO in different PR:

  • Add support for multiple configurations - rusty-chromaprint support for now 3-5 preset configurations

@qarmin qarmin marked this pull request as ready for review May 7, 2023 12:05
@qarmin qarmin merged commit 78d00ee into master May 7, 2023
20 checks passed
@qarmin qarmin deleted the similar_audio branch May 7, 2023 18:54
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

Add tool to find similar music
1 participant