Although I’m really happy with the iPad and KymaControl when performing live I was seeking for a physical controller to provide some global controls. Therefore I purchased an AKAI MidiMix and hooked it up with Kyma today. I haven’t used any MIDI controllers with Kyma before so I wanted to share my experience with you.
Since my modules have been ported to the NeverEngine Labs there will be a little change in direction of my blog. Because the modules are not for free anymore I can’t share them here and I can’t do any tutorials on them. If you’re interested in that you might want to sign up for the upcoming Spectral Lab.
So I decided to do something different here and this will be a series called Rebuild where I deconstruct and rebuild commercial plugins in Kyma. Since Kyma is such a flexible programming environment you shouldn’t spend money on plugins, instead you should build them yourself. While this takes a little time to do it leaves you with the opportunity to modify and recombine them to your needs.
So yesterday I released the kymaguy Modules – but how do we use them properly? Well, let’s have a look at the Product1 module and how we can do some crazy PitchShifting / Detuning with it.
We’ll start with a basic setup for Spectral Processing: use an analysis module (LiveSpectralAnalysis here), split the channels, join them again, and use a resythesis module (OscillatorBank here) to bring it back into the time domain. We want to treat the frequencies for PitchShifting, so we’ll insert the Product1 into the right leg. The resulting Sound looks like this:
Now for basic PitchShifting we’ll use a Constant for the Multiplier Input of the Product1 and use a HotParameter to control it. Read more
During some private coaching I was asked if it is possible to build something like the Buchla Spectral Processor in Kyma. Certainly the answer is yes Or as Pete once said to me: “Of course this is possible in Kyma, I just don’t know how it’s done yet.”
Anyway, we just started to build it and of course we ended up with something different than the original. I’m not going to do a tutorial on how that Sound was made, I just want to explain the basic operation and of course share the Sound. So let’s have a look at the VCS and I’ll walk you through:
The Sound has two mono inputs, namely A and B. Read more
While I was enjoying my christmas holidays the last week, I couldn’t help thinking about Kyma stuff This tutorial will certainly contain some math but don’t be afraid, it will not be that hard. At least I figured it out and I’m not a math genius at all..
Adjusting the feedback parameter to control the level of smoothing was something I was always unhappy with. Until you reach about 0.8 there’s not too much happening, but then a very small change makes a huge difference. Luckily I found a way to control the number of frames the smoothing will be applied
If you don’t know about smoothing spectral data have a look at these tutorials:
So let’s start with a simple delay and see what happens if you feed an impulse (1 sample with the value 1) in it.
See what comes out if you use 0.7 for feedback:
Looks like an exponential function, right? It certainly is and we can prove it: Read more
As I promised I will release all the Sounds from my talk at KISS 2014 here on my blog. The first part (this one) will be about Pitch Deviation and the second part will be about Formant Extraction (expected next week).
So, what do I mean by Pitch Deviation? Read more
All of you Kyma Users know what an OscillatorBank is and how we use it to resynthesize spectral data. The OscillatorBank is very powerful and efficient but it is limited in a way that you can’t use individual processing for each partial. So I asked myself if there is way to resynthesize the spectral data with single individual Oscillators instead and came up with the following solution.
First we start with a SpectrumTrackSelector in between the SpectrumInRAM and the OscillatorBank to isolate one partial e.g. Track 1 which is the fundamental:
Now we need to get rid of the OscillatorBank. Read more
In the last post I described how you can split up a spectral signal and how you can smooth the amplitudes and/or the frequencies. Now it’s time to get deeper
Johannes had a great idea in the forum: What if we had a smooth transition from original to processed signal? The Delay module’s feedback doesn’t work at sample rate so we need to build our own feedback. Thanks to Pete this is not a problem
So what’s happening here? Read more
What kind of signal is the SpectrumInRAM and/or the LiveSpectralAnalysis producing and how can you access single partials and process them seperately? This was the question I asked myself a while ago. Of course you can use the SpectrumTrackSelector or any of the Spectral Modifiers but there’s no way of splitting or summing the signal itself so you always end up with many processor-hungry OscillatorBanks. At least that’s what I thought… but after watching “The Wire Between” by Pete Johnston and with some help of the very same Pete in the Forum I worked it out
First you have to understand how the signal is presented to the OscillatorBank. To see it you have to split the signal. So just put a ChannelJoin after the SpectrumInRam and delete the delay module which will be added by default. Now you have the amplitudes on the left and the frequencies on the right. In this case I used Alien threat new h.spc which contains 252 partials. Insert an OscilloscopeDisplay to see what’s going on. Set the PulseTrain Period to 252 samp:
While searching for complex control signals Bruno showed me this module: The ADDAC502 is a quite unique module using Lissajous Curves to generate its control signals. After seeing the resulting curves I instantly wanted to have it – so I rebuild it in Kyma! I recommend downloading the Interactive User Guide (Win/Mac) and play around with it for a few minutes so you know what’s happening.
I started with 4 Oscillators, 2 for the x- and 2 for the y-axes.
To see the Lissajous Curves we connect Read more