-
Notifications
You must be signed in to change notification settings - Fork 3
Closed
Milestone
Description
Algorithm will work as follows:
- upon refresh or creation, check the given folder for files
- for MXL files, check if there is an unzipped copy with the same name in the folder. if not, unzip it. issue create file unzipper #184
- for XML files:
- get a list of all files in the database ( compare list of files in DB to list of files in folder #185 )
- for any files not in the list, ( compare list of files in DB to list of files in folder #185 ) parse the file ( create an xml file parser #186 ) and sort the data into a dict containing:
- filename
- title
- composer
- instruments, which should be organised into a list of dicts containing:
- name
- transposition, which should again be a dict containing
- octave change
- diatonic change
- chromatic change (if any of these are unchanged, set them to 0)
- keys, which should be a dict with instrument names as keys, and a list of dicts containing fifths and mode as indexes
- clefs which should be the same as keys
- time which should be a list of dicts, with "beat" and "b_type" as indexes
- tempos which should be a list of dicts with beat and either minute or beat_2 as indexes. Beat and beat_2 should be the rhythmic name in either English or American terminology. Where beats are semi/hemi/demi they should not contain spaces, and where beats are dotted this should be denoted by dots put at the end of the beat name.
- for any files in the list which aren't in the folder, delete them or archive them.
This will all be managed by the musicManager class described in issue #189
Metadata
Metadata
Assignees
Labels
No labels