
Latest News: LinPlug updates Spectral to v1.3
Exactly how does the Schrader Wavetable generator work?
-
- KVRian
- 1450 posts since 9 Feb, 2007 from San Ramon, California
I am a new CronoX 3 user and have read through the manual now and played with the synthesizer in more depth. I searched here and elsewhere on exactly how the Schrader generator works. In an earlier thread, Peter stated that it takes 128 single cycle samples from an input sample and allows you to play them back at variable speed. Based on that, I developed an interpretation of how it works and would like to know close I am.
Given a sample loaded into the generator, I assume "start" and "end" tell the generator where to take the subsamples relative to the length of the input wave. So that gives the generator a sequence of values from which to generate the waves. Does the generator then bust that sequence into 128 pieces distributed uniformly over the range of this portion of the input sample and subsample or interpolate each piece to get the single cycle waves? Should I then think of this sequence of 128 waves like a sequence of wave tables that Cronox steps through at a rate determined by the speed? Modulating the rate by an LFO or envelope then would give an interesting way to step through the sequence of wavetables. I own Kubik, but it has been a long time since I have programmed it. I am used to the idea of wave table sequencing.
Here is a picture of how I am imagining this (imagine the commas are blanks):
(Input sample)
|-----------------------------------------------------------------------------|
,,,,(subregion determined by start and end)
,,,,|...............................................................|
,,,start,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,end
,,,,|.....| (wave 1)
,,,,,,,,|.....| (wave 2)
,,,,,,,,,,,|.....| (wave 3)
,,,,,,,,,,,,,,,,.
,,,,,,,,,,,,,,,,,,,,,,,.
,,,,,,,,,,,,,,,,,,,,,,,,,,,,,.
,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,.
,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,.
,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,.
,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,|.....| (wave 127)
,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,|.....| (wave 128)
I guess the real question in my mind is how the waves 1-128 are created from the subregion. What happens if the input sample is really short (interpolation? boring sound?) or really long (subsampling or just first N points?).
Thanks a bunch.
Given a sample loaded into the generator, I assume "start" and "end" tell the generator where to take the subsamples relative to the length of the input wave. So that gives the generator a sequence of values from which to generate the waves. Does the generator then bust that sequence into 128 pieces distributed uniformly over the range of this portion of the input sample and subsample or interpolate each piece to get the single cycle waves? Should I then think of this sequence of 128 waves like a sequence of wave tables that Cronox steps through at a rate determined by the speed? Modulating the rate by an LFO or envelope then would give an interesting way to step through the sequence of wavetables. I own Kubik, but it has been a long time since I have programmed it. I am used to the idea of wave table sequencing.
Here is a picture of how I am imagining this (imagine the commas are blanks):
(Input sample)
|-----------------------------------------------------------------------------|
,,,,(subregion determined by start and end)
,,,,|...............................................................|
,,,start,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,end
,,,,|.....| (wave 1)
,,,,,,,,|.....| (wave 2)
,,,,,,,,,,,|.....| (wave 3)
,,,,,,,,,,,,,,,,.
,,,,,,,,,,,,,,,,,,,,,,,.
,,,,,,,,,,,,,,,,,,,,,,,,,,,,,.
,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,.
,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,.
,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,.
,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,|.....| (wave 127)
,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,|.....| (wave 128)
I guess the real question in my mind is how the waves 1-128 are created from the subregion. What happens if the input sample is really short (interpolation? boring sound?) or really long (subsampling or just first N points?).
Thanks a bunch.
------------------------------------------
Gribs
Gribs
-
Peter from LinPlug Peter from LinPlug https://www.kvraudio.com/forum/memberlist.php?mode=viewprofile&u=24
- KVRian
- 1258 posts since 25 Oct, 2000
I would have to look up code ... as its a while ago I build this generator. And I hope you understand I'm not too hot about publiching the technical details, especially how to handle "problematic" samples (eg short ones). I can understand your interest, but I'm sorry ...
Best
Pete
Best
Pete
-
- KVRian
- Topic Starter
- 1450 posts since 9 Feb, 2007 from San Ramon, California
OK thanks Peter. I understand that you are not comfortable about talking about algorithmic details. I am not in the business of making audio software, just a curious math guy. I work in optics in my real job and both write a lot of code and use a lot of purchased code for optical design. It is definitely true that a significant amount of the code I develop for optical design is considered proprietary, including not only the algorithms but the applications.
I have done a little searching on Schrader but not much. If the generator has a name then it must be named after somebody, but most of the immediate hits I got pointed back at CronoX (LOL).
I would like to say that not knowing exactly what the Schrader generator does has not stopped me from playing with it and making some really interesting sounds from my own samples. FM it just a little and I open things up to even more weirdness, which is a good thing in my book.
Cheers!
I have done a little searching on Schrader but not much. If the generator has a name then it must be named after somebody, but most of the immediate hits I got pointed back at CronoX (LOL).
I would like to say that not knowing exactly what the Schrader generator does has not stopped me from playing with it and making some really interesting sounds from my own samples. FM it just a little and I open things up to even more weirdness, which is a good thing in my book.
Cheers!
------------------------------------------
Gribs
Gribs
-
Peter from LinPlug Peter from LinPlug https://www.kvraudio.com/forum/memberlist.php?mode=viewprofile&u=24
- KVRian
- 1258 posts since 25 Oct, 2000
Thaqnks for your understanding, in German there is a Schredder, which is a device to cut (secret) docuemnts into small pieces, this schredder was the name giving of the Schrader, which also cuts samples in some way 
-
- KVRian
- 1184 posts since 13 May, 2004 from SF Bay Area, California
Aha! So that's what happened to the printed manual for RM V!Peter from LinPlug wrote:Thaqnks for your understanding, in German there is a Schredder, which is a device to cut (secret) docuemnts into small pieces, this schredder was the name giving of the Schrader, which also cuts samples in some way
If you like 80s retro sounds, check out my latest tune…
-
- KVRian
- Topic Starter
- 1450 posts since 9 Feb, 2007 from San Ramon, California
That is so cool, and a nice bit of VST history for us all!Peter from LinPlug wrote:Thaqnks for your understanding, in German there is a Schredder, which is a device to cut (secret) docuemnts into small pieces, this schredder was the name giving of the Schrader, which also cuts samples in some way
I have a paper shredder here in my home office, though it doesn't really eat anything secret. It does get a steady diet of junk mail, especially credit card applications. However, when my 3 year old was 2, I caught him putting the manual for my Rolls MIDI buddy into it - too late. Good thing the device is not exactly complicated.
------------------------------------------
Gribs
Gribs
- KVRAF
- 37409 posts since 14 Sep, 2002 from In teh net
-
Peter from LinPlug Peter from LinPlug https://www.kvraudio.com/forum/memberlist.php?mode=viewprofile&u=24
- KVRian
- 1258 posts since 25 Oct, 2000
Exactly, and LinPlug is not named after Roger Linn, though Roger really had some impact on my personal life 
- KVRian
- 504 posts since 11 May, 2006 from Northern Germany
And you are not named after "Pita" (like in Gyros Pita)?Peter from LinPlug wrote:Exactly, and LinPlug is not named after Roger Linn, though Roger really had some impact on my personal life
-
- KVRAF
- 10170 posts since 2 Jan, 2005 from somewhere in the woods
what a pita!streifentier wrote:And you are not named after "Pita" (like in Gyros Pita)?Peter from LinPlug wrote:Exactly, and LinPlug is not named after Roger Linn, though Roger really had some impact on my personal life
o u a i love cronoX shaken and stirred
"It dreamed itself along"