-
Notifications
You must be signed in to change notification settings - Fork 1.9k
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
Implement an automatic bmp computation #3856
Comments
In fact, I would say it should become part of the |
Thanks a lot. I will have a look. |
Sounds reasonable. FWIW, you can also try AcousticBrainz, which gets not only |
True. But then this information will be triggered from the AcousticBrainz API. If the track you are trying to import is not part of the project, then you have nothing or, better said, you will need an offline solution. This is where the current Does it make sense? |
Yes, but there is also |
Having a deeper look at it... If we go the way @wisp3rwind is suggesting, then we end up with an unclean interface IMHO: method:
manual:
max_strokes: ... What do you think? |
Sorry @ribeaud for not replying for such a long time here!
Sounds good! I guess beets doesn't really have a very clean config structure in that sense overall, and we don't validate the configuration apart from checking types for the values that are actually being accessed anyway. Currently, the plugin can be configured as bpm:
max_strokes: 3,
overwrite: yes, So the full config section for the plugin might look like this I guess? bpm:
max_strokes: 3, # Still support this for the time being, but issue a deprecation warning
overwrite: yes,
method: "manual"|"aubio", # Default to "manual", which doesn't have any external dependency and matches the old behaviour
manual:
max_strokes: 3,
aubio:
some_setting: "value", One could also consider adding an |
All this sounds totally reasonable, including the separate subsections in the config! I just also wanted to mention that it could even make sense to establish a second plugin, called something like Anyway, no strong preference in favor of separation, but just thought I'd mention it as a possibility! |
Use case
beets already comes with a plugin for computing bpm, based on manual tapping (!).
However alternatives exist for automatically computing the bpm:
Solution
I quickly test both. Both projects are quite active. audio was a bit simpler to install and to test. It could be installed as a standalone command as well, not only as Python dependency.
Other criteria to consider if I want to write a plugin around it? What about the name? Or are they already plugins in beets which might compute the
bmp
?The text was updated successfully, but these errors were encountered: