Key-follow for filters
-
Is there a builtin way to do this or has anyone written one?
-
You can use a Notenumber Modulator in the Frequency Chain of a filter for a quick estimate (it changes the modulation value depending on the note number, but it's not accurate). If you need correct values for each note frequency, you'll have to use a Voice Start Modulator in the Frequency chain and calculate the modulation value from the note number:
function onVoiceStart(voiceIndex) { local nn = Message.getNoteNumber(); local freq = Engine.getFrequencyForMidiNoteNumber(nn); local ratio = (freq - 20.0) / 19980.0; // the modulation value (0 ... 1) for the linear frequency range return ratio; } function onVoiceStop(voiceIndex) {} function onController() {} function onControl(number, value) {}
Example patch:
A waveform generator with noise and self oscillating resonant filter (to demonstrate the correct frequency):
HiseSnippet 998.3oc6W0saaaCElxNDqNccXsMXX.6FcwtHAXMyxsq+ffg5Dm3BiVm3VGjs65XnnsIJMoJEkSbK186wa.6EXOB6MX6PIaKpLmD6f0tshJXXnyGOGpuyO7PxNZEkEGqzHuqe33HFx6SwcGKMCZLfvknV6h79LbaRrgo8yf1YbDINlEh77J+DKfWkUPoO+wi2gHHRJKGBgNRwormwGxM4n+T8mxEhljP1g7gNZeu5snJYCkPk.7oLtJJhPeEoOaehUsRXzHN6jXjWU7cqso9UAG+ls27LOGD0.9ueQbDMQqYRyQf4HOr2eBOd38B4FktqgXXvbtxNpvwcGnNQl8oOhGyOVvrBAnt.mxfapDgVm29Npw.tHryzPXLBl6N4AzxYAz0vs4g7Y34A1OOc.+bKbCsdktH5E3RupykdAygdHG1sRF6.RnBSDDSQlYyrSFfqJlzaIMLYL2L1My+uJcuItC2PGLe9VZN7ERTuq46jj+Mv60qGiZxI6J3l+362L8Mynx0w+.YDKcwcJQVKUtmROz+ILISaioWvp6e8e9U2GPM.CNTSjwQpXVf6Lelwp4N1tLShrn5YPEzx5cMAuyQu0pOErlKXGhrvjAxElo17SyE+8G6UdgSXtcNJtjxQ+O1F4baiTdwn6bhfdNb7Slxwt7gQB1dxQLgBPx5crKqGIQXlgdojbaiA1Vxs.5ELAiD6Tq+00eFWxHZv2YWQ+KXw8uKJG7k3L55aWL5+gQK8xe.0ReINagaJ+ZYb4V3NJw3nAJIm1jKfSokRna6.6OA+76riPM0rWmvjz734u7a0edtF90KVHuV8mmPDWR7+pWaWZAKR9B7Lh+tpx9JldvYr9qvcoZdjIcaR3qoMy7hTG3V3mxFCSqPchellWN4mnWopd3dIRp0i8Ux7uv5iru1RFxNciUe6pUDJJQ3Kk9eueafcvoo2rOyruxv1OY3wL85arUkaLUsdP7DTbOYen8kUuYAXXSS61LN1Ikar0LC01POX45oyvc7qUcypa3+s9AO5QODd0pH7SC6RqkYJu0p+7p+cGPEcV9WTsFJoQCALKuO2QWWlxvuweDQjvlpG5r6aWYwR6JYKI2bPDSNUNOXOGTUjKXNemCZNDbvHHUabt9wbZE0HSokoIpcg9+eZ5aOIyo+GftuPkX3x9sIFs8jeXnfuKbnUJCnpTxDw16PVxlQxjqZksDpKSFVc5ELmLXfU1axfASG78x2XHgpUujlUrYaQcsTDvukoWntBbydP1O.ktPIK1LDVk+RJ0tq1cfny7sn1RawcWZKt2Raw2szVb+k1hGrzV7vKvBaK0sSLpgY06HzeA7ehmxL
-
Thank you! This should work fine.
-
i use filters on global FX slot, because of 2 synthesizer groups. So in the Fx section, impossible to activate a voice start modulator.
only usable if filter is in the waveform generator.
Is there a way to do the same thing with a container FX filter ?
thanks.
-
No because you don't have acces to the voices on container level (they are summed up by then).
-
yep !
i decided to change my filters. Because i had subtractive (with another subosc - 12 and noise osc) + FM. But in fact FM has no filters. so i put all waveforms in one synth group + filters and separate FM (2 sine osc) without filters.for now i have keyfollow + polarity (because it also didn't work in FX filter mode)