2023-06-11 23:09:23 +00:00
|
|
|
* Libraries to use
|
|
|
|
- Aubio for analyzing audio and getting BPM. It has a rust wrapper.
|
|
|
|
|
|
|
|
* Use Figma for mockups
|
|
|
|
- Sadly, penpot is not mature enough.
|
|
|
|
- Or maybe we'll use penpot because figma also sucks. lmao
|
2023-06-12 05:39:55 +00:00
|
|
|
|
|
|
|
* Metadata parsing
|
|
|
|
- Works off the relative file path (from the imported root)
|
|
|
|
- Multi-pass, for responsiveness.
|
|
|
|
- Pass 1 (fast):
|
|
|
|
- xx.x BPM -> BPM
|
2023-06-12 05:52:55 +00:00
|
|
|
- "Partition X" (a-z0-9)
|
2023-06-12 05:39:55 +00:00
|
|
|
- a b c d e f g plus sharps/minors -> Key
|
|
|
|
- add tags based on a dictionary of possible tags (not added until at least one found)
|
|
|
|
- Pass 2 (async):
|
|
|
|
- BPM detection using Aubio to analyze file
|
|
|
|
|
|
|
|
* Uniformity of libraries
|
|
|
|
- Clear out unnecessary deep folders
|
|
|
|
- Flatten unneeded folders with simple interface
|
|
|
|
- (consolidate)
|