Zebra Waveform Format?

Official support for: u-he.com
RELATED
PRODUCTS

Post

Hi,

Is there any publicly available information regarding the process of creating waveforms for Zebra? We are creating a waveform generation software package and would like to support the Zebra format in our exporting process, but have not yet found any information about this process. Any info would be appreciated.


Steven

Post

Hi Steven,
There's not much out there about the *morph modes, mostly because Urs is too busy being a sound wizard. :)

There was quite a bit of reverse engineering with Urs' help by user billstei (I miss that guy) in 2009. He created a set of GNU Octave scripts to generate Specroblend waveforms, although it could probably be used for Geoblend too.

http://www.kvraudio.com/forum/viewtopic ... 09#3627209

And then I got lost for a while last year doing something similar in python...
http://www.kvraudio.com/forum/viewtopic ... 29#4669429

I never did get around to working out the amplitude drop adjustment for spectroblend partials. I hope this is a decent start.

EDIT: And don't forget about jupiter8 's work on wav2zebra: https://sites.google.com/site/wav2zebra2/

Post

bmrzycki wrote:Hi Steven,
There's not much out there about the *morph modes, mostly because Urs is too busy being a sound wizard. :)

There was quite a bit of reverse engineering with Urs' help by user billstei (I miss that guy) in 2009. He created a set of GNU Octave scripts to generate Specroblend waveforms, although it could probably be used for Geoblend too.

http://www.kvraudio.com/forum/viewtopic ... 09#3627209

And then I got lost for a while last year doing something similar in python...
http://www.kvraudio.com/forum/viewtopic ... 29#4669429

I never did get around to working out the amplitude drop adjustment for spectroblend partials. I hope this is a decent start.

EDIT: And don't forget about jupiter8 's work on wav2zebra: https://sites.google.com/site/wav2zebra2/
Ah, very good, thank you for the information, I under the impression that it was a moreso straightforward conversion, such as to other synthesizers which support single or multi-cycle waveforms. I think we'll have to pass on including it at this point, but possibly later when there is more time to dedicate to researching formats which require more in-depth conversions. Thanks once again,


Steven

Post

DNR Collaborative wrote:
bmrzycki wrote:Hi Steven,
There's not much out there about the *morph modes, mostly because Urs is too busy being a sound wizard. :)

There was quite a bit of reverse engineering with Urs' help by user billstei (I miss that guy) in 2009. He created a set of GNU Octave scripts to generate Specroblend waveforms, although it could probably be used for Geoblend too.

http://www.kvraudio.com/forum/viewtopic ... 09#3627209

And then I got lost for a while last year doing something similar in python...
http://www.kvraudio.com/forum/viewtopic ... 29#4669429

I never did get around to working out the amplitude drop adjustment for spectroblend partials. I hope this is a decent start.

EDIT: And don't forget about jupiter8 's work on wav2zebra: https://sites.google.com/site/wav2zebra2/
Ah, very good, thank you for the information, I under the impression that it was a moreso straightforward conversion, such as to other synthesizers which support single or multi-cycle waveforms. I think we'll have to pass on including it at this point, but possibly later when there is more time to dedicate to researching formats which require more in-depth conversions. Thanks once again,


Steven
That would be really great! :)

Cheers
Dennis

Post

Jupiter8 made an app to do this years ago, do a search, its about somewhere
Might be useful

Post

Bronto Scorpio wrote:That would be really great! :)

Cheers
Dennis
Yes, or the other way around: Zebra importing single cycle waveforms, .wav files :)
No band limits, aliasing is the noise of freedom!

Post

Or having a true harmonic mode where partials aren't decreasing in aplitude 1/n as they are in Spectro modes now, for true additive synthesis. :D

Post

EvilDragon wrote:Or having a true harmonic mode where partials aren't decreasing in aplitude 1/n as they are in Spectro modes now, for true additive synthesis. :D
THIS!!!1!!!!!11!!one!!!!!eleventy!!!1!

...and a bigger waveform editor with a few more tools...and......aaaand...

Cheers
Dennis

Post

It's a pretty straightforward text based format. Piece of cake really,even i could do it. :D
I have the code for it somewhere, i could look it up for you. The only real downside is the 128 samples limit.

Post

Found this codesnippet on my HD. This is Java code. I should have C++ code as well but i can't find it. Should be fairly easy to port though.

Code: Select all

try {
					FileWriter writer = new FileWriter(exportFile);
					String temp1 ="";
					temp1 += "#defaults=no \n";
					temp1 += "#cm=OSC \n";
					temp1 += "Wave=2 \n";
					temp1 += "<? \n\n";
					temp1 += "float Wave[ 128 ]; \n";
					for (int j=0;j<16;j++){                             
						
						if (gui.waveDisplays[j].getFileName() != "") {
							for (int i = 0; i < 128; i++) {
								String sampleValue = "" + soundData[j][i];
								if (soundData[j][i] < 0.0001f
										&& soundData[j][i] > -0.0001f) {
									sampleValue = "0.0";
								}
								temp1 += "Wave[" + i + "] = " + sampleValue
										+ "; \n";
							}
							temp1 += "Selected.WaveTable.set( " + (j+1) +" , Wave ); \n\n";
						}						
					}
					temp1 += "?> \n";
					writer.write(temp1);
					writer.close();
				} 
				catch (IOException e1) {
					e1.printStackTrace();
				}

Post

I've been suffering for want of an easier way to construct various Zebra waveforms. One of my last projects was a geo-blend based table, based on a sawtooth (hand-drawn as there's no line tool), where wave 1 had every other datapoint zeroed, wave 2 had two left and two cancelled etc, up to wave 16. I really wished I could have opened a text file and manually zeroed out these points, instead of using the GUI.

That was a real labour of love :lol: . It reminds me of those steady hand games where you have to get the ring around the metal shape. But always I'm egged on by the unique sounds that these wavetables produce in Zebra.

EDIT: geo-blend NOT geo-morph! :roll:
http://sendy.bandcamp.com/releases < My new album at Bandcamp! Now pay what you like!

Post

EvilDragon wrote:Or having a true harmonic mode where partials aren't decreasing in aplitude 1/n as they are in Spectro modes now, for true additive synthesis. :D
Indeed! Death to filtered sawtooths! :D

That's a fairly popular request, along with a harmonic grid and snapping, and some more tools for wave editing, so my guess is at least some of them will appear sooner or later.
http://sendy.bandcamp.com/releases < My new album at Bandcamp! Now pay what you like!

Post

Sendy wrote:One of my last projects was a geo-blend based table, based on a sawtooth (hand-drawn as there's no line tool)...
Zebra2 manual, page 30, draw a straight line :wink:

Post

Howard wrote:
Sendy wrote:One of my last projects was a geo-blend based table, based on a sawtooth (hand-drawn as there's no line tool)...
Zebra2 manual, page 30, draw a straight line :wink:
Ah, I was so busy being smart, I forgot to be smart :hihi:
http://sendy.bandcamp.com/releases < My new album at Bandcamp! Now pay what you like!

Post

Howard wrote:
Sendy wrote:One of my last projects was a geo-blend based table, based on a sawtooth (hand-drawn as there's no line tool)...
Zebra2 manual, page 30, draw a straight line :wink:
Thanks for this Howard!!!

It's easy to look over and miss some useful stuff in the manual.
I was scared to use geoblend until now! :oops:

Cheers,
:)

Post Reply

Return to “u-he”