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

Handle and ignore invalid bpm values in MP3 files #2157

Merged
merged 1 commit into from
Jun 12, 2019
Merged

Handle and ignore invalid bpm values in MP3 files #2157

merged 1 commit into from
Jun 12, 2019

Conversation

uklotzde
Copy link
Contributor

@uklotzde uklotzde commented Jun 11, 2019

Fixes https://bugs.launchpad.net/mixxx/+bug/1832325

Actually caused by an ugly workaround to adjust non-standard bpm values.

@uklotzde uklotzde added this to the 2.2.2 milestone Jun 11, 2019
@daschuer
Copy link
Member

Good catch. LGTM.
Waiting for CI

@uklotzde
Copy link
Contributor Author

Looks like util/fpclassify.h is incomplete and not portable :((

@igor47
Copy link

igor47 commented Jun 11, 2019

fun fact: my laptop was stolen and i was re-setting up mixxx on a new one. i had an unexpectedly out-of-date backup of .mixxx (already bad, i lost about two years of cue points, stars, plays, and crates), but trying to use it resulted in pegged CPU and unresponsive UI. i then spent about 8 hours trying various things. eventually, working on the assumption that it was the large number of files in my music library that was causing the problem, i moved a bunch of directories out, and was moving them in one letter at a time (like mv a* ~/Music/music) and re-scanning the library. this allowed me to eventually zero in on certain specific files that were not working.

really appreciate the speed of resolution here, since i am hoping to use Mixxx at an event this weekend and some of my files cannot be added to the library.

@igor47
Copy link

igor47 commented Jun 11, 2019

confirmed that applying https://github.com/mixxxdj/mixxx/pull/2157.patch fixes all my problems

@uklotzde
Copy link
Contributor Author

Oh, no. The plugins failed to build!! I have to find a workaround for 2.2 without using fpclassify.

I will revert all changes and force push this branch when finished.

@uklotzde uklotzde changed the title Handle and ignore invalid bpm values in MP3 files [WiP] Handle and ignore invalid bpm values in MP3 files Jun 11, 2019
@uklotzde uklotzde changed the title [WiP] Handle and ignore invalid bpm values in MP3 files Handle and ignore invalid bpm values in MP3 files Jun 11, 2019
@uklotzde
Copy link
Contributor Author

I found a solution that doesn't need the fpclassify workaround and hopefully works on all platforms.

@daschuer
Copy link
Member

Nice solution. LGTM.
Waiting for CI

@uklotzde
Copy link
Contributor Author

uklotzde commented Jun 12, 2019

@igor47 Thanks for tracking this down, reporting, and providing the example file! The supply of malformed and corrupt files is endless, there is always a new edge case that has not been covered yet.

If you enable metadata export Mixxx will replace the invalid ID3v2.3 tag with a fresh and valid ID3v2.4 tag.

@daschuer daschuer merged commit d2f3e75 into mixxxdj:2.2 Jun 12, 2019
@uklotzde uklotzde deleted the lp1832325_invalid_bpm branch June 12, 2019 19:08
@mbrouillet
Copy link

I built from source today, and "Rescan Library" does no longer hang. Thank you !

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging this pull request may close these issues.

4 participants