Open303 - open source 303 emulation project - collaborators wanted

DSP, Plugin and Host development discussion.
Post Reply New Topic
RELATED
PRODUCTS
JC-303

Post

Just a random musing - if the design documentation, source samples and other measurement data etc. are all open and subject to peer-review and multiple contributions, maybe an analogue emulation might survive the mauling that Arturia's latest is getting in the main instruments forum :D

Post

'Antto - this is your future if you go further down the road of 303 emulation. Some little weenies will say "it sounds great" and some other little weenies will say "it doesn't sound like a 303". You will only ever be able to satisfy yourself, and once you've done that there really is little point pursuing the whole thing any further.'

antto's already got a great reception on his alpha (in another thread). That obviously helps drive him. Why not just enjoy the happiness of the little weenies who say "it sounds great" and ignore the dissenting weenies, who will go use something else (or keep looking unhappily forever--that's their choice)?

Dave, you obviously have some people who love the Tau. I personally went out of my way to buy the magazine with the slimmed-down version of your synth. It's your choice to decide how seriously to take the praise and how much of the scorn.

Of course, as a businessman, you also have to weigh damage to your reputation and how it affects you economically. And, yes, every synth maker who goes down the emulation route has to deal with that. Emulation is a double-edged sword, bringing you immediate attention and skeptical ears. People want to work with the musical sounds they are familiar with--a comfortable palette. Just look at how many requests (not just on KvR, but on all music boards) there are for emulations. It never ends. I just saw on Sound on Sound that someone is now selling a hardware digital Mellotron!
Swing is the difference between a drum machine and a sex machine.

Post

Why not just enjoy the happiness of the little weenies who say "it sounds great" and ignore the dissenting weenies
Sound advice indeed, and I subscribe to it wholeheartedly. Who was it who said something about it being human nature to only seek evidence to support a particular point of view? it's a cliche because its true.

Emulation is a double-edged sword, bringing you immediate attention and skeptical ears.
I'd go further and add that it might be at best a distraction from the main show (new and innovative plugins) and at worst an evolutionary cul-de-sac.

Let's say a team gets together and works out a good method for emulating a popular analogue synth. Their process, source data, tools etc. are all open for everyone to see what is going on and offer more improvements and more source data and more measurements. When the final emulation is ready, they should be able to run the same process against the emulated output and show that what they have produced is, in point of fact, accurate against what was measured.

Doing things this way gets the benefit of peer review, paves the way for a generic approach to synth *measurement* (if not emulation, as there are a hundred ways to implement things) and also puts the process in the public domain so moaning weenies who have little else to offer except "it sounds like a digeridoo" can get involved and make sure it doesn't.

Just a thought.

Post

When this thread was started I followed it with great interest. Some months ago I was poring over the 303's schematic trying to understand how the controls interacted. I pretty much found what I wanted and along the way I learned two other things:

1) The creators of the x0xb0x hardware emulation had already done the hard work.

2) The internet is full of misinformation and opinion dressed up as fact chuntered out by people who haven't a clue. I lost count of the number of people on the net who regurgitated the same bollocks about 3-pole filters when it's obvious within a second of looking at the schematic that it's a 4-pole filter with one pole an octave above the others.

I didn't chime in here with the little I'd learned from the analogue circuitry of the 303 as there were some far wiser heads than mine getting involved.

Suddenly the thread was 30+ pages long and it was clear that as a collaboration towards an open-source result this was a lesson in how not to do it. Where was the roadmap and information repository? A project like this needs leaders who can work together well and effectively delegate chunks of the work to individuals best suited. Collaborations are a juggling act between democracy and the need to have someone in a position to make important decisions. Was this a collaboration at all?

Anyone who has poked about on Sourceforge and the like cannot fail to have noticed that many projects die on their arse because:

a) there is no clear goal agreed on by everyone at the outset.

b) if there is a goal there is no-one with their hand firmly on the tiller guiding the project towards it.

c) some project members are blessed with poor social skills or short attention spans. A problem compounded by there being no-one in charge.

d) it's not a collab at all, but someone's pet project. Other opinions are always welcome, but will be ignored.

More particular to this project, How far do you think you're going to get by looking at a few 303 samples? For example by the time a square wave has passed through a couple of coupling caps it won't look very square any more and the result can be very misleading. Someone needs to take a real 303 apart and examine each part of it's functioning in detail and how these parts form the holistic whole. All the software smarts in the world won't save you if you don't have a clue about electronics.

I'm glad that Dave poke his nose in here, I've always had respect for his work. Hopefully he's given this project the kick in the arse that it so desperately needs, or at least made those involved ask some important questions. Just because a project is open-source doesn't mean that it should be undertaken in a pisspoor manner as "it's a gift to the world". Do it properly or not at all is a good motto here.
Last edited by jonnyG on Tue Oct 06, 2009 2:54 pm, edited 1 time in total.
"are we there yet?"

Post

"Sound advice indeed, and I subscribe to it wholeheartedly. Who was it who said something about it being human nature to only seek evidence to support a particular point of view? it's a cliche because its true. "

I don't know who stated it first. But it's known as "confirmation bias." But it's a bit different than deciding whose opinions you use to inform your decisions.

You may have a very objective (and possibly painful) view that 80% of people won't have any interest in your plug, or may even despise it, yet still decide to improve it based on the fact that the 20% is the market you care about because they could be (or are) paying customers, or at least people who appreciate the work and effort you put in to create something they enjoy using.
Swing is the difference between a drum machine and a sex machine.

Post

rv0 explained pretty well what i wanted to say

Dave:
what code can i give?! the synth is really simple, osc, filter, amp, envelopes, sequencer
OSC: i am currently analyzing it, but i've explained how i did mine, and you can see the results
FILTER: to be honest, almost any 4 pole, resonant LP filter would work, you only need to add some HP filters, to get the resonance-loss at low frequencies
hell, even a StateVariable would work for a start..
the modifient moog ladder (which we all kinda assembled over the other thread here) is pretty good, you can find the complete source CODE for it if you want (or ask me, it's not a secret)
AMP: really not special, i've also explained about the ~5sec release time
ENVELOPES: i've already written a formula, to approximate the envelope curve, and it is rock solid, and it is actually code!
and if you don't like my approximitation, i've also shared the data i used to get the curve (the values i measured)
SEQUENCER: well, i really can't share the source code, as it is a complete mess, and definately not looking nice like Robin's code, and it's not cross-platform or anything, and it is entirely built around the SynthEdit GUI-Module classes (so, it's useless)

i've also explained how i think the "modules" of the synth are wired together (IMO)

what more do you want?
really, Robin has to finaly come here and tell us what's going to happen from now on

i see you got good arguments, and i probably have done things i shouldn't
so i will try to be quiet till then
It doesn't matter how it sounds..
..as long as it has BASS and it's LOUD!

irc.libera.chat >>> #kvr

Post

You may have a very objective (and possibly painful) view that 80% of people won't have any interest in your plug, or may even despise it, yet still decide to improve it based on the fact that the 20% is the market you care about because they could be (or are) paying customers, or at least people who appreciate the work and effort you put in to create something they enjoy using.
I'm not really following you. I'm sure you're not being deliberately oblique, maybe I'm just being thick.

Is it being suggested that I should return to Tau2 and improve it? or are you merely speaking in general terms?

If its the former, I'd rather see a good open-source project with documented methodologies than do Tau Mk3. Seriously - Muon makes its money from contract software development, and I can still contribute my skills to an open-source effort if that enhances my employability as a contractor.

Having said that, it doesn't mean that I have no interest in supporting our many thousands of loyal customers who have paid their money for our products. I'll support them for basically as long as I am physically able to do so.

Their opinions, and the opinions of our contract development clients, matter a great great deal to me.

Post

what code can i give?! the synth is really simple, osc, filter, amp, envelopes, sequencer
Antto - what you give is your decision. If you think you have given enough for the open-source side of things to catch up, then great. I guess we'll wait and see if anyone uses the information you have provided to good effect. In the meantime, don't stop working on whatever you are doing if you are enjoying it. I am not trying to attack, demotivate or otherwise negatively affect you - and for the record I am not trying to recruit you and steal your code :lol:

As I've said loads of times, what has brought me here is the potential of open-source and collaboration to solve a problem that is interesting to me. Nothing more.

Post

"Is it being suggested that I should return to Tau2 and improve it? or are you merely speaking in general terms? "

Completely general. I was not suggesting anything for your particular case. I don't know your business well enough to suggest anything to you.

I was just trying to clarify that confirmation bias (seeking out what you want to hear) is different than deciding how to value judgments from possible customers.

Confirmation bias is often a reaction of ego and can lead to bad business decisions.

Anyway, antto's plug is free. He doesn't have to worry about money--just motivation and satisfaction.
Swing is the difference between a drum machine and a sex machine.

Post

I was just trying to clarify that confirmation bias (seeking out what you want to hear) is different than deciding how to value judgments from possible customers.
I think maybe you've taken some of my lighthearted comments a little too seriously. Anyone wishing to provide feedback about a Muon product that they have tried is welcome to contact me at the usual email address.

All I'm saying is that this thread is not the best place for it.

Post

Right. I was talking about the perils of emulation in general, which you keep bringing up as warnings to antto (what he's in for).

I'll be quiet now. Eagerly waiting for Robin's next post. :-)
Swing is the difference between a drum machine and a sex machine.

Post

Right. I was talking about the perils of emulation in general, which you keep bringing up as warnings to antto (what he's in for)
We appear to be talking at cross purposes. Also, I only gave one specific comment directed at Antto and that was the one you quoted. After that, I did not specifically address a comment about the "perils of emulation" to him. In any case, I was being lighthearted. Did I not use enough smileys? :wink:

In continuing to discuss the perils of emulation, I have been trying to make the point that an open process might mitigate some of those perils.

If no-one else finds this particular idea as interesting as I do then I'm possibly mistaken and should shut up too. :D

Post

rv0: a new sample request

pattern: (16 steps)

Code: Select all

PM: c(D) d#(D) f(D) g(D)
..: c(-) d#(-) f(-) g(-)
..: c(U) d#(U) f(U) g(U)
..: C(U) c (D) g(-) C(U)
TM: <all G>
so this is a "short" test of the synth at the whole sequencer range

now the parameters:
tempo: very low, 30 or something (no need to be exact, i'll match it)
Cutoff, Envmod, Decay = MAX
Tune = min
Resonance = min
Waveform: Square

for this test, i need really high sampling rate, so 88200Hz (wav,mono), i want to look at that "ugly edge" it's kinda hard at lower rates (it's a very sharp one)

now for the recording:

Code: Select all

..nothing, just let it play the pattern 2-3 times and that's it
then, repeat the same recording, but only change the resonance (before recording)
increase it a little carefuly, till the synth gets in the state where the output gain drops down, but there isn't yet too much resonance (or almost none)
this is where the phases kinda go straigth, and the waveform can be seen a little bit clearer

and if you have the time, record the whole thing again, with the sawtooth

/* hope this is not offtopic */ grrr..
It doesn't matter how it sounds..
..as long as it has BASS and it's LOUD!

irc.libera.chat >>> #kvr

Post

Muon Software Ltd wrote:
I really don't get why Muon is "attacking" Antto for not sharing his 'code'.. His code is useless for any other project, is not cross platform, etc.. I don't understand why Muon makes such a case out of it. Antto is sharing his functions, what more could he do from his development point of view?
Attack? at what point did I attack *anyone*?
Perhaps when you suggested braindoc wasn't posting anymore because of antto's postings...

Then you went on into what appears to be to me an endlessly repeated and rather agressive patronizing rant directed towards him, blaming him over and over for not contributing code and occupying the space for his own sole personal profit.

Then when you begun to mention you were employing people and that you wouldn't employ him I felt you had lost the plot completely as we are in an open-source project thread after all.

Post

exactly my impression at first...
but you know, forums, language, always a bad combination ;)





anyway: samples coming soon after i rolled myself a nice cigar

as for the ongoing discussion: I think everyone has made his point of view clear
Muon said a lot of valid points, alhough some of it (project, sourceforge, licence etc..) had already been mentioned by me and possibly some others (haven't followed this topic from the beginning)

I really hope Robin can make the right decisions soon.


As for the licence, I don't know a lot about them, but a licence that allows you to use the codebase in closed-source non-commercial projects would be great.
I haven't really mentioned but I hope to use the synth as a preview tool in a direct PC<->303 link application (what would be mkII of this computerinterface) in the future (say, late 2010, after I finish the pile of projects here))

Post Reply

Return to “DSP and Plugin Development”