ATARI ST program that turns samples into DX7 patches...

Pulling out your hair? Don't know what to do or where to go? Ask in here.
Forum rules
READ: VSE Board-Wide Rules and Guidelines

If your Help request has been solved, please edit your first post in order to select the Image Topic Icon to let others know your topic has been solved.
masstronaut
Senior Member
Senior Member
Posts: 756
Joined: Fri Nov 10, 2006 10:26 pm

ATARI ST program that turns samples into DX7 patches...

Post by masstronaut » Tue Sep 25, 2007 12:23 pm

Well this might have been an April fool's joke or something because I haven't heard of anything similar since but I remember seeing advertised some time in the mid 80s a program for the ST that could somehow approximate a sampled sound as a patch for a DX7.

I suppose it is feasible, something like the Fairlight's resynthesis capability maybe.

Has anyone got any further recollection or information on such a thing?

jupiter8
Junior Member
Junior Member
Posts: 198
Joined: Sat Aug 05, 2006 3:30 pm
Location: Sweden

Post by jupiter8 » Tue Sep 25, 2007 12:40 pm

I'm 99 % convinced such a thing is quite impossible to do on todays computers nevermind an Atari ST.

Resynthesizers work with additive synthesis and since the DX7 has max 6 partials it isn't very suited for such a task.

With that said i have a very vague recollection of such a thing but i suspect the marketing department heavily overestimated the capabilities of such a tool.

I'd love to be proven wrong though as i've given the problem some time but the only solution i've come up with so far is an exhaustive search. IE making all possible combinations of all parameters and comparing it to the original and picking the closest one. That'll take one h**l of a computer to finish such a task.

Or maybe you could........ <wandering into deep deep geek territory.....>

User avatar
desmond
Active Member
Active Member
Posts: 721
Joined: Tue Oct 11, 2005 12:32 pm
Contact:

Post by desmond » Tue Sep 25, 2007 3:24 pm

There *was* something similar for the Kawai K5, as I recall.

Not sure about the DX7 though...

User avatar
Yoozer
Expert Member
Expert Member
Posts: 1390
Joined: Sun Oct 09, 2005 1:31 pm

Post by Yoozer » Tue Sep 25, 2007 4:20 pm

jupiter8 wrote:I'm 99 % convinced such a thing is quite impossible to do on todays computers nevermind an Atari ST.
Huh? The only thing holding it back on an ST is the abysmal small memory you have to put the sample in, so it's going to be lo-fi 8 bit, but that doesn't matter.

Fast Fourier Analysis works awfully well on 286s already, seeing that many MOD and XM players had something like it to let the equalizer bars jump and move. You should know, you're from the land of the demoscene ;)
Resynthesizers work with additive synthesis and since the DX7 has max 6 partials it isn't very suited for such a task.
Right. But then you ignore the effect of what happens when you let operator modulate another; exactly, you get sidebands. A DX7 is more than just 6 partials.
IE making all possible combinations of all parameters and comparing it to the original and picking the closest one. That'll take one h**l of a computer to finish such a task.
That's like trying to conjure up a picture of any hot female celebrity in the nude by trying to choose all the combinations of a 16-color 640x480 picture. Brute force is the wrong approach.

First: of course the sound can't be perfectly mimicked, so you're going to get an approximation. That's fair enough. Second: drums and noise might not be easy to do. Third: the envelopes are the bottleneck.

When you analyse a single band, you can see what the envelope during the time is; it's simply the volume of the band. You choose an envelope curve that fits it, and since there are only a few parameters, that's not impossible to do. However, once you combine 2 operators with different envelopes, you're going to get side-effects - literally - in the shape of extra frequencies that arise next to the root note.

6 operators in the chain is not impossible, and you let the algorithm do a best guess - just like MP3s, you try to keep the frequencies that form the character of the sound and discard the rest.

It's not like I can give you a nice Windows app tomorrow that does exactly this, but it's all a matter of analysis and guessing by comparing the original's frequency plot with the result of the algorithm. It's certainly not random searching, but the ear may be tricked into thinking one option seems to resemble the original better than the other, so you just suggest a few possibilities, then pick out the best. Of course, you're going to need a 1-voice 6-op FM synth for this to hear a preview, and the sounds you're going to feed it will benefit from being monophonic too - chords reduce the detail of each separate operator (if it's even being mimicked like that).
"Part of an instrument is what it can do, and part of it is what you do to it" - Suzanne Ciani, 197x.

jupiter8
Junior Member
Junior Member
Posts: 198
Joined: Sat Aug 05, 2006 3:30 pm
Location: Sweden

Post by jupiter8 » Tue Sep 25, 2007 5:11 pm

Fast Fourier Analysis works awfully well on 286s already, seeing that many MOD and XM players had something like it to let the equalizer bars jump and move. You should know, you're from the land of the demoscene
I know a thing or two about FFT. I just don't see that as a valid approach for this.
Right. But then you ignore the effect of what happens when you let operator modulate another; exactly, you get sidebands. A DX7 is more than just 6 partials.
Yes but you don't have individual control over the sidebands. It's not like you can let one increase in amplitude and another decrease while they both go up in pitch for example. To make something resembling the original you must have individual control.
Plus as you mention later the DX7 only has 6 envelope generators.

Could be i'm not well enough familiar with FM synthesis and you could do a program that makes sounds that at least resembles the samples.
However so far i still think they'd be pretty far from the orinial sample.

EDIT: To begin with,how are you going to dermine what algorith you should use on the DX7? Can't see how you could tell that from a FFT.

masstronaut
Senior Member
Senior Member
Posts: 756
Joined: Fri Nov 10, 2006 10:26 pm

Post by masstronaut » Tue Sep 25, 2007 5:26 pm

I don't think it's too far fetched that you could do an FFT analysis on the sound and then have some scheme where you approximate an average harmonic content of the sample using FM. Quite clever still but really just a snapshot of the sound like the Vocoder capture thing on a Microkorg. I suspect that's what you got with that software, if it went further than that I'd be very impressed.

User avatar
kayvon
Supporting Member!
Supporting Member!
Posts: 151
Joined: Tue Dec 20, 2005 3:59 am
Location: London

Post by kayvon » Tue Sep 25, 2007 5:37 pm

I remember a former UK Yamaha employee who was involved with patch design and other things saying on the SOS forum that they used a such a program sometimes when programming the FS1r. He tried to get them to release it but they wouldn't have it.

I've seen a similar thing for the formant filter on the FS1r but i'm pretty sure this was for the FM engine.

jupiter8
Junior Member
Junior Member
Posts: 198
Joined: Sat Aug 05, 2006 3:30 pm
Location: Sweden

Post by jupiter8 » Tue Sep 25, 2007 5:49 pm

I asked about this over ath the KVR DSP forum. See if anything turns up. There's some pretty clever guys over there.

Interesting subject.

masstronaut
Senior Member
Senior Member
Posts: 756
Joined: Fri Nov 10, 2006 10:26 pm

Post by masstronaut » Tue Sep 25, 2007 5:50 pm

Nice to know i may not be completely imaging things. :wink:

Thinking about it if you can model the output of the FM voice architecture there's no reason why you can't then reverse the model and determine the closest patch settings needed to generate a given set of frequencies. It's the progression of the sound in time that's going to complicate things a lot on something like a DX7, but even then you could use the envelopes to make some adjustments to the harmonic content.

GeneralBigbag
Senior Member
Senior Member
Posts: 852
Joined: Thu Jan 19, 2006 10:16 pm
Location: Grad school

Post by GeneralBigbag » Tue Sep 25, 2007 8:09 pm

Why not use wavelet analysis, with little peaks-and-sideband shaped kernels?
virb.com/ookpikk

jupiter8
Junior Member
Junior Member
Posts: 198
Joined: Sat Aug 05, 2006 3:30 pm
Location: Sweden

Post by jupiter8 » Tue Sep 25, 2007 8:25 pm

GeneralBigbag wrote:Why not use wavelet analysis, with little peaks-and-sideband shaped kernels?
The problem either way,knowing very little about wavelet analysis,is that it does'nt really tell you how to reproduce the sound on a DX7. Only what frequencies are present.

User avatar
madtheory
Supporting Member!
Supporting Member!
Posts: 5238
Joined: Mon May 01, 2006 12:45 pm
Real name: Tomas Mulcahy
Gear: Flangebeast Mk1, Plonkotron, Morovdis Arpeggiator, Maplin My First EQ, Jeff Wayne Thunderchild rack, Thermostat, Buck Owens' Moog.
Band: Minim
Location: Cork, Ireland
Contact:

Post by madtheory » Tue Sep 25, 2007 9:19 pm

Yoozer wrote: Huh? The only thing holding it back on an ST is the abysmal small memory you have to put the sample in, so it's going to be lo-fi 8 bit, but that doesn't matter.
It's possible to work with a 16 bit sample on he Atari, because the analysis does not have to be real time. There was a program to do this for the K5. But that was an additive synth so the translation was straightforward (relatively speaking).

It's not impossible to do for FM at all, it just requires knowledge of the out come :)

felis
Junior Member
Junior Member
Posts: 188
Joined: Tue May 02, 2006 8:44 pm

Post by felis » Wed Sep 26, 2007 3:18 am

On my TX81Z, if I used the algorithm where all 4 operators were carriers, I could get 32 partials by setting their frequencies. (4 carriers x 8 voices, in multimode on the same midi channel).

The DX7 was 6 operators x 16 voices, wasn't it? If so, you'd be able to get 96 partials from it.

Of course, the sound would be monophonic then.


To try and match a sample with a different type of FM algorithm would take some pretty sophisticated mathematics.

jupiter8
Junior Member
Junior Member
Posts: 198
Joined: Sat Aug 05, 2006 3:30 pm
Location: Sweden

Post by jupiter8 » Wed Sep 26, 2007 8:48 am

The KVR thread is here:
http://www.kvraudio.com/forum/viewtopic ... highlight=

The general consensus so far is: well it's kinda possible but not really.

User avatar
madtheory
Supporting Member!
Supporting Member!
Posts: 5238
Joined: Mon May 01, 2006 12:45 pm
Real name: Tomas Mulcahy
Gear: Flangebeast Mk1, Plonkotron, Morovdis Arpeggiator, Maplin My First EQ, Jeff Wayne Thunderchild rack, Thermostat, Buck Owens' Moog.
Band: Minim
Location: Cork, Ireland
Contact:

Post by madtheory » Wed Sep 26, 2007 12:04 pm

felis wrote:On my TX81Z, if I used the algorithm where all 4 operators were carriers, I could get 32 partials by setting their frequencies.
You can make good organ sounds that way, but you don't have 32 envelopes with which to control the levels over time. So that's not going to cut it for resynthesis.

Post Reply