Sine Sine Everywhere a Sine
- KVRAF
- 18558 posts since 16 Sep, 2001 from Las Vegas,USA
Yes but the inter-frequency transformation must be oversampled at Nyquist or you'll get aliasing on the post amplitude time domains.
None are so hopelessly enslaved as those who falsely believe they are free. Johann Wolfgang von Goethe
-
- KVRian
- Topic Starter
- 595 posts since 20 Jan, 2006
Yup, that pretty much makes #2 the answer (for SpectroBlend specifically), and therefore is, as Urs states, "...a form of granular synthesis where each grain is obtained from a spectrum...". I suppose I could wonder how often a new grain is calculated while warping, but I have to wonder why I would wander off wondering about warping when I wonder of what usefulness negative partial values are to my resynthesis efforts. It would appear that negative values are generating a cosine, but sine phases other than 0 and 90 are not possible. Not that they should be, but I was just wondering.xh3rv wrote:Maybe this is helpful? http://www.kvraudio.com/forum/viewtopic.php?t=219409billstei wrote: Then it could be either #2 or #3 above, or possibly #4 if the secret has been partially discovered, and I would only need to be killed partially, not completely.
So maybe it's a little of all of #1, 2, 3 and AAAAAAGHH NINJAS
-
- KVRist
- 279 posts since 21 Feb, 2006 from UK
Bah..I was going to say that.Teksonik wrote:Yes but the inter-frequency transformation must be oversampled at Nyquist or you'll get aliasing on the post amplitude time domains.
- KVRAF
- 4130 posts since 11 Aug, 2006 from Texas
They're probably all too busy right now getting ready for this year's Ninja Parade. http://www.youtube.com/watch?v=WtR2m20C2YMbillstei wrote:I don't care what anybody says as long as there are no ninjas sneaking up on me.
-
- KVRian
- Topic Starter
- 595 posts since 20 Jan, 2006
While the ninjas were out parading, I managed to get a proof of concept put together...
I decided to try to resynthesize the word "zebra" as spoken by Urs at the beginning of the Zebra Oscillator Part 1 tutorial on YouTube. This was completely done in Octave, but the scripts will probably run in MATLAB too. I'm not sure how happy I am about them, but it's just an alpha's-beta-than-nothing version. The patch uses MSEG1 to sweep through the Waves, and I tried to get ENV1 to close right at the end so that the final Wave16 doesn't sound too long. Anyway, it sounds a lot better than I thought it would. Keep in mind that the way Urs pronounces the word "zebra" is not like us Europeans who got lost on the other side of the Atlantic, so there is no "eeeeeee" like we just went for a fun ride on a black horse with white stripes (or is it white with black stripes?).
I Am Zebra
I decided to try to resynthesize the word "zebra" as spoken by Urs at the beginning of the Zebra Oscillator Part 1 tutorial on YouTube. This was completely done in Octave, but the scripts will probably run in MATLAB too. I'm not sure how happy I am about them, but it's just an alpha's-beta-than-nothing version. The patch uses MSEG1 to sweep through the Waves, and I tried to get ENV1 to close right at the end so that the final Wave16 doesn't sound too long. Anyway, it sounds a lot better than I thought it would. Keep in mind that the way Urs pronounces the word "zebra" is not like us Europeans who got lost on the other side of the Atlantic, so there is no "eeeeeee" like we just went for a fun ride on a black horse with white stripes (or is it white with black stripes?).
I Am Zebra
- KVRAF
- 9453 posts since 17 Sep, 2002 from Gothenburg Sweden
I remember reading about this technique in the late 80ies. The Synclavier did that IIRC. Obviously i could'nt afford one at the time but i was really curious about it. Now i can try it. Now that's progress. Took me 20 years but i got there in the end.
EDIT: I'm curious as to why you went the FFT route. What was the thinking there ?
EDIT: I'm curious as to why you went the FFT route. What was the thinking there ?
-
- KVRian
- Topic Starter
- 595 posts since 20 Jan, 2006
After sittin a spell and thinkin bout stuff, the thing missing is the "B" sound, which doesn't have much BAH to it, and I think that's because I chose 80 Hz as the lowest frequency represented by the harmonic spectrum (Urs voice resonates at 80 Hz as he says the "Z"). If I had gone a bit lower I probably would have got more B blast.
-
- KVRian
- Topic Starter
- 595 posts since 20 Jan, 2006
Duh, because I have to maintain my public image as a "friggin geek".jupiter8 wrote:I remember reading about this technique in the late 80ies. The Synclavier did that IIRC. Obviously i could'nt afford one at the time but i was really curious about it. Now i can try it. Now that's progress. Took me 20 years but i got there in the end.
EDIT: I'm curious as to why you went the FFT route. What was the thinking there ?
- KVRAF
- 9453 posts since 17 Sep, 2002 from Gothenburg Sweden
That's a good reason.billstei wrote:Duh, because I have to maintain my public image as a "friggin geek".jupiter8 wrote:I remember reading about this technique in the late 80ies. The Synclavier did that IIRC. Obviously i could'nt afford one at the time but i was really curious about it. Now i can try it. Now that's progress. Took me 20 years but i got there in the end.
EDIT: I'm curious as to why you went the FFT route. What was the thinking there ?
-
- KVRian
- Topic Starter
- 595 posts since 20 Jan, 2006
@jupiter8
Speaking of code I'm not happy about, I take it that in Wav2Zebra Zebra Script compilation you did this:
float Wave[128];
Wave[0]=0.0;
Wave[1]=0.1;
Wave[2]=0.2;
etc.
instead of this:
float Wave[128] = { 0.0, 0.1, 0.2, etc };
because of a script compiler bug. Like I did.
Speaking of code I'm not happy about, I take it that in Wav2Zebra Zebra Script compilation you did this:
float Wave[128];
Wave[0]=0.0;
Wave[1]=0.1;
Wave[2]=0.2;
etc.
instead of this:
float Wave[128] = { 0.0, 0.1, 0.2, etc };
because of a script compiler bug. Like I did.
- KVRAF
- 4122 posts since 23 May, 2004 from Bad Vilbel, Germany
billstei wrote:I Am Zebra
Here turned into a speaking patch. Actually sounds like Urs himself:
http://www.box.net/shared/l2s1306cy4
We have 4 oscillators, so with a bit of jiggery-pokery, we should be able to get a few more words into a single patch. Loving it!
Last edited by Howard on Mon Jun 08, 2009 11:02 pm, edited 1 time in total.
- KVRAF
- 9453 posts since 17 Sep, 2002 from Gothenburg Sweden
I did the first one but can't really remember why. It was the easiest and only way i knew so.....billstei wrote:@jupiter8
Speaking of code I'm not happy about, I take it that in Wav2Zebra Zebra Script compilation you did this:
float Wave[128];
Wave[0]=0.0;
Wave[1]=0.1;
Wave[2]=0.2;
etc.
instead of this:
float Wave[128] = { 0.0, 0.1, 0.2, etc };
because of a script compiler bug. Like I did.
-
- KVRian
- Topic Starter
- 595 posts since 20 Jan, 2006
Okay, bugs are attracted to me -- I filed a bug report on the Techy forum for Urs, and in the mean time keep using the longer-winded method.jupiter8 wrote:I did the first one but can't really remember why. It was the easiest and only way i knew so.....billstei wrote:@jupiter8
Speaking of code I'm not happy about, I take it that in Wav2Zebra Zebra Script compilation you did this:
float Wave[128];
Wave[0]=0.0;
Wave[1]=0.1;
Wave[2]=0.2;
etc.
instead of this:
float Wave[128] = { 0.0, 0.1, 0.2, etc };
because of a script compiler bug. Like I did.
-
- KVRian
- Topic Starter
- 595 posts since 20 Jan, 2006
Yup. Your patch is uber cool.Howard wrote:billstei wrote:I Am Zebra
Here turned into a speaking patch. Actually sounds like Urs himself:
http://www.box.net/shared/l2s1306cy4
We have 4 oscillators, so with a bit of jiggery-pokery, we should be able to get a few more words into a single patch. Loving it!