xenharmonic-devs / scale-workshop

Design and visualize microtonal scales and play them in your web browser. Export your scales for use with VST instruments. Convert Scala files to various tuning formats.
MIT License
84 stars 13 forks source link

Better kbm support: 1/1 and diapason on different MIDI notes #99

Open frostburn opened 2 years ago

frostburn commented 2 years ago

frostburn — 06/12/2022

So the interval drop down would be populated based on the scale data, right? What happens if you rewrite the line currently selected as the base interval?

Sevish — 06/12/2022

Yep. I'm not sure yet what would happen if the line gets rewritten. It can always change to 1/1 as fallback because 1/1 will always exist in the scale. If there's a clever way to select the changed line that would help but not strictly necessary

Sevish — 06/12/2022

Maybe when this component gets its signal to refresh the list of options, it could count which option is selected, then select the same one after the scale data is populated Maybe I opened a can of worms here.

frostburn — 06/12/2022

A non-trivial problem, but I'm sure it'll be satisfying to finally crack the puzzle.

Sevish — 06/12/2022

For the majority of cases, you'd want 1/1 for the key tuning. But there are times when it's helpful to have the option

Sevish — Today at 12:16 PM

maybe hold on that tuning interval drop down

Sevish — Today at 12:18 PM

my suggestion for the interval in tuning seems incomplete

frostburn commented 2 years ago

Sevish — Today at 12:35 PM

My thinking is to remove the interval drop down and replace it. So we would have the 3 fields I mentioned above, which correspond directly to fields in the kbm standard

! Middle note where the first entry in the mapping is mapped to:
60
! Reference note for which frequency is given:
69
! Frequency to tune the above note to (floating point e.g. 440.0):
440.000000

e.g. to have meantone[12] ionian 1/1 on C, but then tune A to 440

000masa000 commented 7 months ago

It might be nice in the sonic-weave entry window for the parser to recognise lines that generate the scale and to automatically display the MIDI key they would be assigned to by default. when the kbm data changes, these change automatically. The key assigned to base frequency could have a little triangle or something....

frostburn commented 7 months ago

A single line of SonicWeave can create hundreds of pitches. I don't think that would work inside Scale data.