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

support alternative solmization types #302

Open
Tracked by #671
felixroos opened this issue Dec 12, 2022 · 3 comments
Open
Tracked by #671

support alternative solmization types #302

felixroos opened this issue Dec 12, 2022 · 3 comments
Assignees
Labels
feature completely new feature good first issue Good for newcomers

Comments

@felixroos
Copy link
Collaborator

felixroos commented Dec 12, 2022

inspired by https://isartum.net/leimma it would be really cool if other alternatives to note strings would work:

  • solfege: do re mi fa so la ti da
  • indian: sa re/ri ga ma pa dha ni
  • german/dutch: c d e f g a h
  • japanese: ha ni ho he to i ro
  • javanese: ji ro lu pat ma nem pi
  • byzantine: ni pa vu ga di ke zo

sadly the leimma project is not open source so some research is needed.

edit: did some research on indian music:

semitones hindustani carnatic
0 Sa sa
1 re ra
2 Re ri / ga
3 ga ru / gi
4 Ga gu
5 Ma ma
6 ma mi
7 Pa pa
8 dha dha
9 Dha dhi / na
10 ni dhu / ni
11 Ni nu

more links:

edit: leimma actually has sourcemaps, so you can read the code in the browser. here is how they do it:

export const SCALE_DEGREE_NAMES_ENGLISH = [
    "C",
    "C#",
    "Db",
    "D",
    "D#",
    "Eb",
    "E",
    "F",
    "F#",
    "Gb",
    "G",
    "G#",
    "Ab",
    "A",
    "A#",
    "Bb",
    "B"
];

export const SCALE_DEGREE_NAMES_SOLFEGE = [
    "Do",
    "Do #",
    "Re b",
    "Re",
    "Re #",
    "Mi b",
    "Mi",
    "Fa",
    "Fa #",
    "Sol b",
    "Sol",
    "Sol #",
    "La b",
    "La",
    "La #",
    "Si b",
    "Si"
];
export const SCALE_DEGREE_NAMES_NORTH_INDIAN = [
    "Sa",
    "Re -",
    "Re -",
    "Re",
    "Gā -",
    "Gā -",
    "Gā",
    "Mā",
    "Mā +",
    "Mā +",
    "Pā",
    "Dhā -",
    "Dhā -",
    "Dhā",
    "Nī -",
    "Nī -",
    "Nī"
];
export const SCALE_DEGREE_NAMES_SOUTH_INDIAN = [
    "Sa",
    "Ri -",
    "Ri -",
    "Ri",
    "Ri +",
    "Gā -",
    "Gā",
    "Mā",
    "Mā +",
    "Mā +",
    "Pa",
    "Dhā -",
    "Dhā -",
    "Dha",
    "Dha +",
    "Ni -",
    "Ni"
];
export const SCALE_DEGREE_NAMES_GERMAN = [
    "C",
    "Cis",
    "Des",
    "D",
    "Dis",
    "Es",
    "E",
    "F",
    "Fis",
    "Ges",
    "G",
    "Gis",
    "As",
    "A",
    "Ais",
    "B",
    "H"
];
export const SCALE_DEGREE_NAMES_DUTCH = [
    "C",
    "Cis",
    "Des",
    "D",
    "Dis",
    "Es",
    "E",
    "F",
    "Fis",
    "Ges",
    "G",
    "Gis",
    "As",
    "A",
    "Ais",
    "Bes",
    "B"
];
export const SCALE_DEGREE_NAMES_JAPANESE = [
    "Ha",
    "Ei-ha",
    "Hen-ni",
    "Ni",
    "Ei-ni",
    "Hen-ho",
    "Ho",
    "He",
    "Ei-he",
    "Hen-to",
    "To",
    "Ei-to",
    "Hen-i",
    "I",
    "Ei-i",
    "Hen-ro",
    "Ro"
];

export const SCALE_DEGREE_NAMES_JAVANESE = [
    "Ji",
    "Ji +",
    "Ji + ",
    "Ro",
    "Ro +",
    "Ro +",
    "Lu",
    "Pat",
    "Pat +",
    "Pat +",
    "Ma",
    "Ma +",
    "Ma +",
    "Nem",
    "Nem +",
    "Nem +",
    "Pi"
];

export const SCALE_DEGREE_NAMES_BYZANTINE = [
    "Ni",
    "Ni #",
    "Pa b",
    "Pa",
    "Pa #",
    "Vu b",
    "Vu",
    "Ga",
    "Ga #",
    "Di b",
    "Di",
    "Di #",
    "Ke b",
    "Ke",
    "Ke #",
    "Zo b",
    "Zo"
];

I am not sure how accurate these are + not sure how sense it makes to use them for notation in strudel. Just dropping them here to have them as a reference

@felixroos felixroos added the enhancement improves an existing feature label Dec 12, 2022
@felixroos
Copy link
Collaborator Author

{ solfege: ['do', 'di', 'res', 're', 'ri', 'mes', 'mi', 'fa', 'fi', 'ses', 'so', 'si', 'les', 'la', 'li', 'tes', 'ti'] }

https://www.musical-u.com/learn/an-approach-to-ear-training/

@felixroos felixroos added feature completely new feature and removed enhancement improves an existing feature labels Mar 29, 2023
@felixroos felixroos added the good first issue Good for newcomers label May 12, 2023
@dariacotocu
Copy link

dariacotocu commented May 19, 2023

hello, can you please assign this issue to me? I have written the code for it :)

@felixroos
Copy link
Collaborator Author

#570 is now merged, but the logic is still unused + some things are still missing, so i'll keep this open

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
feature completely new feature good first issue Good for newcomers
Projects
None yet
Development

No branches or pull requests

2 participants