Author |
Message |
stelpa
Joined: Apr 09, 2021 Posts: 21 Location: USA
|
Posted: Sun Apr 11, 2021 9:59 am Post subject:
Quantization weirdness |
|
|
Hiya! Found some weird behavior with the microtonal quantizers in Wren - the scala one and the equal temperment one. I can't seem to get them to work as intended, even after setting the receiving oscillator's pitch to 440hz. For example, if I set the equal temperment oscillator to octaves and division size of 1, I would expect it to quantize the pitch to the nearest octave only - however, it seems to quantize to very strange intervals, depending heavily on what the "range" knob is set to.
Meanwhile, the scala quantizer doesn't seem to work at all - it outputs some quantized intervals, but it sounds pretty random, not like the scala files I give it. Are these modules broken, or am I missing something about their use?
Thanks |
|
Back to top
|
|
|
blue hell
Site Admin
Joined: Apr 03, 2004 Posts: 24079 Location: The Netherlands, Enschede
Audio files: 278
G2 patch files: 320
|
Posted: Sun Apr 11, 2021 10:30 am Post subject:
|
|
|
Can I see the patch please? _________________ Jan
also .. could someone please turn down the thermostat a bit.
|
|
Back to top
|
|
|
stelpa
Joined: Apr 09, 2021 Posts: 21 Location: USA
|
Posted: Sun Apr 11, 2021 1:13 pm Post subject:
|
|
|
Blue Hell wrote: | Can I see the patch please? |
Here are a few examples - hope these help. Maybe I'm doing something incorrectly? I'm assuming the quantizer can quantize any signal to necessary scale, but maybe they are intended to work with a different type of signal? Still learning the "wren format".
Description: |
|
Download |
Filename: |
equaldivquant.wren |
Filesize: |
4.75 KB |
Downloaded: |
312 Time(s) |
Description: |
attempting to quantize an lfo to "1EDO", aka only octaves, clearly not doing octaves |
|
Download |
Filename: |
equaldivquant.wren |
Filesize: |
4.75 KB |
Downloaded: |
307 Time(s) |
Description: |
tried switching it to 5edo, definitely not 5edo |
|
Download |
Filename: |
equaldivquant5.wren |
Filesize: |
4.75 KB |
Downloaded: |
316 Time(s) |
Description: |
testing the scala quantizer with another lfo, will also attach the scl and kbm files separately |
|
Download |
Filename: |
scalatest.wren |
Filesize: |
4.89 KB |
Downloaded: |
332 Time(s) |
Description: |
|
Download |
Filename: |
8EDT.scl |
Filesize: |
133 Bytes |
Downloaded: |
307 Time(s) |
|
|
Back to top
|
|
|
blue hell
Site Admin
Joined: Apr 03, 2004 Posts: 24079 Location: The Netherlands, Enschede
Audio files: 278
G2 patch files: 320
|
Posted: Sun Apr 11, 2021 3:16 pm Post subject:
|
|
|
Thanks, I will look into it, soon I hope, but now working on something else .. I can't keep up with you _________________ Jan
also .. could someone please turn down the thermostat a bit.
|
|
Back to top
|
|
|
stelpa
Joined: Apr 09, 2021 Posts: 21 Location: USA
|
Posted: Sun Apr 11, 2021 5:39 pm Post subject:
|
|
|
Blue Hell wrote: | Thanks, I will look into it, soon I hope, but now working on something else .. I can't keep up with you |
Haha, sorry to keep you busy, but I love your software - keep up the great work, but take your time, no rush
~Allie |
|
Back to top
|
|
|
blue hell
Site Admin
Joined: Apr 03, 2004 Posts: 24079 Location: The Netherlands, Enschede
Audio files: 278
G2 patch files: 320
|
Posted: Mon Apr 12, 2021 3:26 am Post subject:
|
|
|
Re. the equal division quantizer .. cconsider that one to be broken .. I looked at the code and see no quantization to be done ... no idea what happened there, alsoI cannot find a single patch I've used that module in
Re. the scala quantizer, Wren's scl parser rejects your scl file, will look into that .. it does not look like it would be invalid.
Could you send the kbm file as well? _________________ Jan
also .. could someone please turn down the thermostat a bit.
|
|
Back to top
|
|
|
blue hell
Site Admin
Joined: Apr 03, 2004 Posts: 24079 Location: The Netherlands, Enschede
Audio files: 278
G2 patch files: 320
|
Posted: Mon Apr 12, 2021 3:34 am Post subject:
|
|
|
Ah, the scl file has an empty description .. my parser sees that as a useless line that it skips, and then it sees the 8 in the following non empty / non comment line as the comment instead of the note number .. interesting ... I can make the parser recognize that situation .. ah ok .. specs say that description is allowed to be empty .. will change the scl parser for that. _________________ Jan
also .. could someone please turn down the thermostat a bit.
|
|
Back to top
|
|
|
blue hell
Site Admin
Joined: Apr 03, 2004 Posts: 24079 Location: The Netherlands, Enschede
Audio files: 278
G2 patch files: 320
|
Posted: Mon Apr 12, 2021 4:04 am Post subject:
|
|
|
I've fixed the scl file reader code, see the usual places for info and downloads.
info: https://bluehell.nl/wren/#changes
download: https://bluehell.nl/wiekietje/pmwiki.php/Wren/PreRelease
Then re. the patch. You are driving the quantizer with a bipolar (normal) signal (the triangle on the LFO signals that) ranging from -1 to 1, the module expects to be driven by non negative signals (Positive), so that should be changed.
Then the output range for the LFO will be 0 - 1, which is a very large range (of 128 half notes, or was that 256, hmm) ... you'll want to limit that by either adding a mixer between the flof out and the quantizer in, or could use a constant module there as well, using it's mult input .. or alternatively use a constant module connected to the LFO's am input ...
The re. the kbm .. the kbm is a keyboard mapping, it will cause some note numbers to be remapped to others. This is for easier playability from a keyboard. But ... when driving the quantizer from internal signals the keykboard mapping will cause some notes to be played longer than others .. as the keys that 'do not exist' for the mapping are mapped to existing ones.
To get things spread more evenenly .. I think it would be better to use the 128 mapping (which basicaly does not map .. or each key to itself), overhere it called 128.kbm .. think I downlaoded that from the Fokker Hugens pages. _________________ Jan
also .. could someone please turn down the thermostat a bit.
|
|
Back to top
|
|
|
blue hell
Site Admin
Joined: Apr 03, 2004 Posts: 24079 Location: The Netherlands, Enschede
Audio files: 278
G2 patch files: 320
|
Posted: Mon Apr 12, 2021 4:12 am Post subject:
|
|
|
Blue Hell wrote: | Re. the equal division quantizer .. cconsider that one to be broken .. I looked at the code and see no quantization to be done ... no idea what happened there, alsoI cannot find a single patch I've used that module in :shock: |
As a sidenote to that: When you'd want to use some equal division scaling to apply over the whole patch you could do that from the toolbar using the note span and notes/oct. thingies - this will retune all oscillators and most filters.
Fractional numbers can be used for both entries. _________________ Jan
also .. could someone please turn down the thermostat a bit.
|
|
Back to top
|
|
|
stelpa
Joined: Apr 09, 2021 Posts: 21 Location: USA
|
Posted: Mon Apr 12, 2021 4:24 pm Post subject:
|
|
|
Wow, you've really been busy!! I don't know how I hadn't noticed the thing in the toolbar, that works great for exploring different equal temperment systems!
Thank you btw for clarifying the negative and positive "voltages", I didn't know that about the Wren format so now I understand
I tried various .kbm files - the one I was using at first was just the one that the scala software exports, but at your suggestion I tried 128.kbm also, and it still doesn't sound correct to my ears. For reference, here is what 8EDT should sound like: https://sevish.com/scaleworkshop/?name=8%20equal%20divisions%20of%203%2F1&data=237.74437510817341%0A475.48875021634683%0A713.2331253245202%0A950.9775004326937%0A1188.7218755408671%0A1426.4662506490404%0A1664.2106257572138%0A1901.9550008653873&freq=440&midi=69&vert=5&horiz=1&colors=white%20black%20white%20white%20black%20white%20black%20white%20white%20black%20white%20black&waveform=triangle&env=organ
(This website, scaleworkshop, might also help you in your attempts to understand what's happening in scala and kbm files, as it's quite user friendly).
In my opinion, the scala module should only have an optional .kbm - by default it should load a standard full keyboard mapping unless you ask it to do otherwise, since for many people kbm are not necessary/commonly used for microtonal music. That's just my 2 cents though!
Completely unrelated, but I just started exploring the patch mutator and randomize functions in Wren, and OMG! You've really made an incredible software - I'm having so much fun exploring, and I hope I can soon make some videos exploring it in more detail - it's awesome
Thanks again for being so responsive, it's clear you care a lot about this project and you're doing an amazing job! |
|
Back to top
|
|
|
stelpa
Joined: Apr 09, 2021 Posts: 21 Location: USA
|
|
Back to top
|
|
|
blue hell
Site Admin
Joined: Apr 03, 2004 Posts: 24079 Location: The Netherlands, Enschede
Audio files: 278
G2 patch files: 320
|
Posted: Mon Apr 12, 2021 6:17 pm Post subject:
|
|
|
Ah ok, that kbm looks like there will be no issues, good!
And yes Scala is super confusing
Will have to look into the other stuff later on ...
edit: oh and ..when you specify no kbm I think it will use a 1 to 1 mapping.
Edit2: the default key mapping is :
MapLimit 0 // does default mapping .. whatever that is ...
FirstNote 0
LastNote 127
Middlenote 0
ReferenceNote 69
ReferenceFrequency 440 Hz
ScaleDegree 0
looks like a 1 to 1 mapping to me? _________________ Jan
also .. could someone please turn down the thermostat a bit.
Last edited by blue hell on Mon Apr 12, 2021 6:41 pm; edited 1 time in total |
|
Back to top
|
|
|
blue hell
Site Admin
Joined: Apr 03, 2004 Posts: 24079 Location: The Netherlands, Enschede
Audio files: 278
G2 patch files: 320
|
Posted: Mon Apr 12, 2021 6:24 pm Post subject:
|
|
|
I have some old Scala test documentation .. https://bluehell.nl/wren/scala.php .. heh.. that was showing me it was all fine .. finally ... not sure if I can still make sense out of it .. but anyway .. thought I'd share that bit. The implementation did not change after that .. except for accepting the empty comment from an SCL file.
Edit: but of course there still can be issues .. as I said ... _________________ Jan
also .. could someone please turn down the thermostat a bit.
Last edited by blue hell on Mon Apr 12, 2021 6:31 pm; edited 1 time in total |
|
Back to top
|
|
|
blue hell
Site Admin
Joined: Apr 03, 2004 Posts: 24079 Location: The Netherlands, Enschede
Audio files: 278
G2 patch files: 320
|
Posted: Mon Apr 12, 2021 6:30 pm Post subject:
|
|
|
And BTW .. https://bluehell.nl/wren/history.php has the release history over the first 6 years or so .. you can search it for Scala to see how it evolved .. more or less. _________________ Jan
also .. could someone please turn down the thermostat a bit.
|
|
Back to top
|
|
|
blue hell
Site Admin
Joined: Apr 03, 2004 Posts: 24079 Location: The Netherlands, Enschede
Audio files: 278
G2 patch files: 320
|
Posted: Mon Apr 12, 2021 6:42 pm Post subject:
|
|
|
I've edited my posts above a bit ... _________________ Jan
also .. could someone please turn down the thermostat a bit.
|
|
Back to top
|
|
|
stelpa
Joined: Apr 09, 2021 Posts: 21 Location: USA
|
Posted: Tue Apr 13, 2021 12:46 pm Post subject:
|
|
|
Thanks for all of this info! I've continued to play around with the scala module, and different KBM (128.kbm does seem to work best, I don't think it works without loading a kbm file), and can't seem to get the 8edt scala file I provided to sound as intended - not sure what's wrong with it as is.
I've tried other scala files and they've worked alright, but I'm also a little confused because, if the module needs to be set to 440hz and no negative voltages are allowed, does that mean that 440hz is the lowest pitch possible when using the quantizer? It seems like, if I set it a lower multiple, like 220hz, the tuning changes, so I'm not sure how you can get lower notes than that...
I'll keep playing around with it, but let me know if there's anything I can do to help in looking into this situation. Thanks again for your help |
|
Back to top
|
|
|
blue hell
Site Admin
Joined: Apr 03, 2004 Posts: 24079 Location: The Netherlands, Enschede
Audio files: 278
G2 patch files: 320
|
Posted: Tue Apr 13, 2021 3:26 pm Post subject:
|
|
|
I think .. that with the following mapping (kbm) (and this is not the same as the 128.kbm I have here - probably as downloaded from some web site ...)
Code: |
! Template for a keyboard mapping
!
! Size of map. The pattern repeats every so many keys:
12
! First MIDI note number to retune:
0
! Last MIDI note number to retune:
127
! Middle note where the first entry of 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.0
! Scale degree to consider as formal octave (determines difference in pitch
! between adjacent mapping patterns):
12
! Mapping.
! The numbers represent scale degrees mapped to keys. The first entry is for
! the given middle note, the next for subsequent higher keys.
! For an unmapped key, put in an "x". At the end, unmapped keys may be left out.
0
1
2
3
4
5
6
7
8
9
10
11 |
that note number 69 would produce a control signal ('voltage') of zero resulting in whatever the oscillator happens to betuned at (presumably the 440Hz reference frequency as specified in the above kbm) , and also that it then should be possible to input negative values into the Scala quantizer to get the lower notes. Ok, just tested that to be the case.
I have changed the default keyboard mapping of the module to the above mapping, it used to have 0 for the middle note, and then you can not go negative I think ... anyway, on the next release it should be possible to have a negative input for the module in order to be able to go below the set oscillator frequency (without loading a kbm). edit: just tested that to be the case.
The idea to have the oscillator set to 440Hz is just so that the reference note produces the frequency as specified in the kbm, otherwise you of course can retune it at will.
Keep in mind tho that the global tuning .. as set from the top tool bar can mess things up as well (I had it set for an A of 220Hz without noticing) .
Edit: had mixed up middle and reference notes and also note and frequency, I think I may have fixed that now. _________________ Jan
also .. could someone please turn down the thermostat a bit.
|
|
Back to top
|
|
|
blue hell
Site Admin
Joined: Apr 03, 2004 Posts: 24079 Location: The Netherlands, Enschede
Audio files: 278
G2 patch files: 320
|
|
Back to top
|
|
|
stelpa
Joined: Apr 09, 2021 Posts: 21 Location: USA
|
Posted: Wed Apr 14, 2021 4:41 pm Post subject:
|
|
|
Good news - both quantizers are working perfectly for me now! Great job! Thanks so much for the fixes, microtonal weirdness here I come |
|
Back to top
|
|
|
blue hell
Site Admin
Joined: Apr 03, 2004 Posts: 24079 Location: The Netherlands, Enschede
Audio files: 278
G2 patch files: 320
|
Posted: Thu Apr 15, 2021 4:56 am Post subject:
|
|
|
ah! something works then at least
Thanks for checking it out! _________________ Jan
also .. could someone please turn down the thermostat a bit.
|
|
Back to top
|
|
|
|