MPA

From the to-do list: MPA V1.0: Import/ local / Offline

❏ Auto-tagging adjustments

Comments

Pierre henri Seylan on August 30, 2019:

The changes below are to apply to the auto-tagging mechanism which parses infos from the files tittles.

1. BPM:
If the number is in brackets, e.g (128), it should be ignored and not tagged as tempo/bpm

2. Key: 
If the following is included in the file's name, and If:
  • between 2 spaces,
  •  _key_  
  • _key (if at the end of filename)
  • -key (if at the end of filename)
  • -key-

Then it should be tagged as key value.
This is also valid for the letters below combined with "#" or "b"
A

C
D
E
F
G

below are examples of characters which should recoginzed as key tags:
file name A
file name-A
file name_A
file name-A- (28)
file name_A_(28)
file name A ( 28)

file name Ab
file name-Ab
file name_Ab
file name-Ab- (28)
file name_Ab_(28)
file name Ab ( 28)

file name A#
file name-A#
file name_A#
file name-A#- (28)
file name_A#_(28)
file name A# ( 28)


Important:
Some keys are equivvalent to each other, however in the app we are using only the # version.
This means that when a file tag is detected using the "b" notation, it must be tagged in our system using the "#" equivalence.
See below the relations between # and b

A# = Bb
B# = C
C# = Db
D# = Eb
E# = F
F# = Gb
G# = Ab

Pierre henri Seylan on October 24, 2019:

Feedback:

1. Key + number:
*If one of the letter ABCDEFG
*is combined without space with one of the numbers 0/1/2/3/4/5/6/7/8
then it should be identified as key.
For example C0 / B6

*It should also work in combination to # and b
for example C#3 or Db2

2. Remove "between 2 spaces":

For the "Key" detection, we should remove the condition if the key is located between 2 spaces.
Except for the case above when combined to a letter.

for example:
no key should be detected in "file name A# ( 28)"
a key should be detected in "file name A0# ( 28)"

3. Bugs:
Some files sometimes have detected keys when they should not:

a.
"PBR&B_Geneva808_"   --> Key B
"B" is between letters --> not key

b.
"MTK_808 O.C._" --> Key C
"C" is between 2 dots --> not key

c.
"TPDK_808V I B E _" --> Key B
"B" is between 2 spaces --> not key