Multisynth Scala Support
-
- Posts: 30
- Joined: Wed Dec 19, 2018 4:05 am
Multisynth Scala Support
I have an interesting request, allowing the Multisynth module to load Scala (and possible also MIDI Tuning Standard) files. It is possible to do microtonal music in SunVox, but it always requires some inconvenient trickery, either with the set pitch effect or with the "note off" command and polyphony with the Off-Key detuner (viewtopic.php?f=11&t=4431) iaon made. In addition, it is inconvenient to create scales with more than 12 notes per octave (you have to use multiple Off-Keys) and basically impossible to create non-octave repeating scales (like Bohlen-Pierce).
All of these could be solved easily if the Multisynth module could read Scala files and instantly retune itself to whatever scale is loaded in. Polyphony would work without a hitch, there would be no need to mess with sliders and do math to get the tuning right, and both non-octave repeating scales and scales with more than 12 notes per octave would be easy.
All of these could be solved easily if the Multisynth module could read Scala files and instantly retune itself to whatever scale is loaded in. Polyphony would work without a hitch, there would be no need to mess with sliders and do math to get the tuning right, and both non-octave repeating scales and scales with more than 12 notes per octave would be easy.
-
- Posts: 30
- Joined: Wed Dec 19, 2018 4:05 am
Re: Multisynth Scala Support
P.S.: I should give a link to what Scala files are. They shouldn't be confused with the programing language. They're simply a file that explains the set of ratios (or cents) that each interval in a period has. The period is usually an octave, but it can be anything. Scala files are easy to understand and are almost plain text.
http://huygens-fokker.org/scala/
http://huygens-fokker.org/scala/
-
- Posts: 174
- Joined: Sat Mar 17, 2018 4:23 pm
Re: Multisynth Scala Support
Had the same idea! I hope Nightradio will be in tha mood someday to add this to the Multisynth block!!!
-
- Posts: 5
- Joined: Sun Aug 09, 2020 9:57 am
Re: Multisynth Scala Support
I was going to post this myself but just found it here. I would seriously pay for this feature.
- AutumnCheney
- Posts: 507
- Joined: Sun Dec 29, 2019 8:16 am
- Location: tahlequah, ok, usa
- Contact:
Re: Multisynth Scala Support
actually, there already is a tool to get weird scales and tunings like bohlen-pierce into sunvox: https://github.com/metrasynth/gallery/t ... microtonal it works by playing a metamodule outputting a set pitch command corresponding to a frequency in the scale for every midi note you press.
you can specify your own scales using the ultrasonic tool, which requires solar sails to be installed (it's on the author's github too: https://github.com/metrasynth/solar-sails)
now someone just needs to find a way to convert the information in the scala files into input for ultrasonic...
you can specify your own scales using the ultrasonic tool, which requires solar sails to be installed (it's on the author's github too: https://github.com/metrasynth/solar-sails)
now someone just needs to find a way to convert the information in the scala files into input for ultrasonic...
-
- Posts: 174
- Joined: Sat Mar 17, 2018 4:23 pm
Re: Multisynth Scala Support
Hi Autumncheney! Thanks for noticing this project! I looked at this project. I see it is a nice project and you can import scales but like the page says:
Would build it kind of the same way using 88 multisynths(or glides?) to set every tone independently, create a spreadsheet that converts cents to sunvox XXYY, and making templates inside the module which you can play to load them. But that many multisynths can be quite heavy...
When testing it did stop every note after a few seconds. maybe because of CPU, don't know. It is not a full solution for those who want to work with non-actave tunings. But currently, I don't have the answer to non-octave tunings.Please note that these scales are large, and contain hundreds of MetaModules. As such, just having one of these scales loaded can use a significant amount of CPU!
Would build it kind of the same way using 88 multisynths(or glides?) to set every tone independently, create a spreadsheet that converts cents to sunvox XXYY, and making templates inside the module which you can play to load them. But that many multisynths can be quite heavy...
-
- Posts: 5
- Joined: Sun Aug 09, 2020 9:57 am
Re: Multisynth Scala Support
I would assume a good solution would essentially work like Off-Key but by retuning each individual note separately, rather than tuning all notes of the same current pitch class the same.
Ideally, such a solution would involve allowing custom input of note names à la OpenMPT, but that would probably be a lot more difficult and require tinkering well outside of Sunvox's current modular paradigm.
Ideally, such a solution would involve allowing custom input of note names à la OpenMPT, but that would probably be a lot more difficult and require tinkering well outside of Sunvox's current modular paradigm.
-
- Posts: 174
- Joined: Sat Mar 17, 2018 4:23 pm
Re: Multisynth Scala Support
In 1.9.6 there will be a sunvox style note-to-pitch-curve in multisynth so you can create custom curves/tunings which is awesome! Looking forward to the next update...
Re: Multisynth Scala Support
I made an online converter for converting Scala files to SunVox MultiSynth pitch curves:
https://www.ahornberg.at/scala2sunvox/
https://www.ahornberg.at/scala2sunvox/
Re: Multisynth Scala Support
Very nice! Will you be open sourcing the code?
-
- Posts: 5
- Joined: Sun Aug 09, 2020 9:57 am
Re: Multisynth Scala Support
I'm going to be honest, I have no idea what this is. Are you talking about option 78 on the MultiSynth? And if so, how do I import the file?
-
- Posts: 5
- Joined: Sun Aug 09, 2020 9:57 am
Re: Multisynth Scala Support
Never mind, got it.
Re: Multisynth Scala Support
I put this in the Sunvox 2.0 beta thread, but I think it applies here, as well.
You may be aware of a relatively new program for microtuning support called MTS-ESP. It is developed by a company called ODDSound (https://www.oddsound.com/index.php). This program runs as a single master that allows you to select any one of thousands of different tuning scales (all of the standard .scl and .tun files are supported). Any client program that contains (what I understand to be) a very few lines of simple code will be seen automatically by the master, allowing multiple instruments and plugins to be tuned together automatically, and changed on the fly - no connection or other midi routing is necessary. The MTS-ESP Mini VST plugin is a free version of the master, and when run in a VST host DAW should connect automatically to enabled client devices running in freestanding audio software (I just tried this by running MTS-ESP mini in Renoise, and was able to change tunings on the fly in u-He synths running separately in Bidule).
Is it possible to implement MTS-ESP client capability in Sunvox? Information for developers can be found here: https://www.oddsound.com/devs.php. If Sunvox had this implemented natively (again, it appears to be relatively simple to do for those who know programming), then users could easily change tunings within Sunvox for multiple devices, at once, on the fly, and could also have Sunvox run in tune with other synths that may be running separately in a different DAW.
You may be aware of a relatively new program for microtuning support called MTS-ESP. It is developed by a company called ODDSound (https://www.oddsound.com/index.php). This program runs as a single master that allows you to select any one of thousands of different tuning scales (all of the standard .scl and .tun files are supported). Any client program that contains (what I understand to be) a very few lines of simple code will be seen automatically by the master, allowing multiple instruments and plugins to be tuned together automatically, and changed on the fly - no connection or other midi routing is necessary. The MTS-ESP Mini VST plugin is a free version of the master, and when run in a VST host DAW should connect automatically to enabled client devices running in freestanding audio software (I just tried this by running MTS-ESP mini in Renoise, and was able to change tunings on the fly in u-He synths running separately in Bidule).
Is it possible to implement MTS-ESP client capability in Sunvox? Information for developers can be found here: https://www.oddsound.com/devs.php. If Sunvox had this implemented natively (again, it appears to be relatively simple to do for those who know programming), then users could easily change tunings within Sunvox for multiple devices, at once, on the fly, and could also have Sunvox run in tune with other synths that may be running separately in a different DAW.
Re: Multisynth Scala Support
you can already do that. that is what curve3 is in the multisynth. select open-->enverlope---.multisynth--->curve3 and there you should have several pre-made tuning curves.then users could easily change tunings within Sunvox for multiple devices, at once, on the fly, and could also have Sunvox run in tune with other synths that may be running separately in a different DAW.
if your tuning is not on the list, then make it with the pixilang curve maker script included.
Re: Multisynth Scala Support
But that won't affect the tuning of synths and other audio programs running outside of Sunvox, will it?Keres wrote: ↑Tue Jan 04, 2022 1:33 amyou can already do that. that is what curve3 is in the multisynth. select open-->enverlope---.multisynth--->curve3 and there you should have several pre-made tuning curves.then users could easily change tunings within Sunvox for multiple devices, at once, on the fly, and could also have Sunvox run in tune with other synths that may be running separately in a different DAW.
if your tuning is not on the list, then make it with the pixilang curve maker script included.