Wusikstation Open Source kvr buyout

Anything about MUSIC but doesn't fit into the forums above.
Post Reply New Topic

How would you like to buyout Wusik.com?

Buy so it can be open source software
96
79%
Buy but retain commercial status
26
21%
 
Total votes: 122

RELATED
PRODUCTS

Post

jtxx000 wrote:how will he handle the people that preordered 1.2 or wusikmod? also, who will be in charge of further developement?
Here's how I see it. He sell the company for 12 000, some of that money is then used by him to pay back the customers who bought a product and never got it.

/Majken

Post

These are being worked out. It is probably WK's responsibility to sort out the pre-order fiasco.

Post

Sickle666 wrote:
djastroboy wrote:If you don't like the direction that the WS takes, you just "fork" your own version and do watcha want from there.
Yeah, you're talking pure un-optimized code chaos..
The forking process is usually more of a safety valve. It happens very rarely. A developer disapears or takes his baby commercial or just makes everyone mad. Out of the thousands of open source projects I'v e used over the last ten years, I can count the forks that I've noticed on one hand.

Post

I'm not worried about code chaos. The development process in open source is chaotic, to be sure, but the order happens when a release process is started. That's when all the misc. garbage gets weeded out and the final result is polished. It works great for Firefox and Mozilla, as well as OpenOffice and Linux itself, so I don't see why the model inherently wouldn't work for WStation.

To me the real issue with open sourcing something like this is whether or not there are any developers who are simultaneously capable of developing this kind of intensive DSP code/SSE-optimized assembler and are willing to do so for no financial compensation. This is a highly specialized skill, and I'm just not sure how many folks are out there who really will be able to do this who aren't already employed doing this.

Post

Would you really want pigknuckles like jackylandhype getting his hands on this code..

:uhuhuh:

Post

Sickle666 wrote:Would you really want pigknuckles like jackylandhype getting his hands on this code..

:uhuhuh:
does it matter if it's available to anyone...Don't like that dude myself, but really don't see the point in that comment either...

Post

snooky wrote:
Sickle666 wrote:Would you really want pigknuckles like jackylandhype getting his hands on this code..

:uhuhuh:
does it matter if it's available to anyone...Don't like that dude myself, but really don't see the point in that comment either...


Based on some things William has said, maybe he would embrace this idea. He could get some cash and maybe even help the project (with a relatively small amount of time).

I would be interested in William's repsonse to this idea.

jeffn1
To Hear Original Instrumental "Progtronic Rock" Music, go to:

https://open.spotify.com/album/0rPidJwBYGmKZFUV4joAKN

Post

I think before anyone goes throwing money around, someone should contact him and get all these issues sorted out. I would be willing to put in money, but I need clarity first.
"You are going to let the fear of poverty govern your life and your reward will be that you will eat, but you will not live."

Post

I'd pay $25-50 to help opensource the engine. I wouldn't pay anything to support a commercial group-buy.

Who is organizing the open-source initiative? Someone should keep track of 'pledges' to see how much money we can raise.

Post

I would be in only if the orignal code was made open source.
ModuLR / Radio

Post

I've read through all of the recent threads surrounding the recent Wusik issue... From what can be seen in the "surface" of the threads, it is probably reasonable to infer there's a lot more to this that we can't see. :(

An old friend of mine's favorite saying is, "It's what you don't know that gets you killed."

Given that it's apparent that some amount of money has already gone by the boards with no product to show for it, there's a real likelihood that a group buy of the product line source for any purpose could put 12k USD of the group's money in W's pocket for exactly nothing in return.

"The group" is going to need lawyers to see this through successfully.

No matter what happens, this episode has been disturbing to say the least of it.
:(
We shall see orchestral machines with a thousand new sounds, with thousands of new euphonies, as opposed to the present day's simple sounds of strings, brass, and woodwinds. -- George Antheil, circa 1925 ---

Post

There is enough open-source code out there that I don't see why we need to shell out $12,000.

I would rather see us try to do something more along the lines of the WusikMod idea. Something modular with the ability to easily insert pieces. We just need a good design for a shell and then the product can go in different directions. If you work on a product like WusikStation, you would need committees to debate what new features to add. It's hard to please everyone.

WusikStation is a great product but it doesn't include any earth-shattering technology. William did an excellent job of optimizing the code to work with SSE but he is not the only developer that has accomplished that.

Phil.

Post

If you want to donate money to a worthy cause - donate to all the free VST and nagware VST vendors who have given us good plugins for nothing. Where did the samples for WusikStation come from? Are they legally his to sell for $12,000? An open source project for a ROMPLER doesn't require that sort of money. Somebody is beeing greedy - again ... :P

Post

actually the more I think about it, I have changed my mind (hey, isn't that what started all the this.. :hihi:). It just feels a bit odd suggesting the idea of handing $10k to someone, who initially saw no problem with basically screwing his customers. While I love the idea of open sourcing Wu, it's just not that necessary.. and a commerical venture seems like suicide. :?

gonna watch this from the sidelines... best of luck to all!
ModuLR / Radio

Post

ok for the people wondering how the readability / documentation of the code is william sent an example:

Code: Select all

/*--------------------------------------------------------------------------
---

© 2004 Wusik.com - Williamk

----------------------------------------------------------------------------
-*/

#include "Wavetable2.h"

extern float GenValues[99];
extern float Wavetable_Output[99999];
extern float Wavetable_Output2[99999];
extern float Wavetable_Amplitude[99999];
extern float *Wavetable_Sample[99999];
extern float Wavetable_Time[99999];
extern float Wavetable_TimeF[99999];
extern float Wavetable_Rate[99999];
extern float Wavetable_RateF[99999];
extern float Wavetable_LoopEnd[99999];
extern float Wavetable_LoopSize[99999];
extern float Wavetable_Position[99999];
extern bool Envelope_StateQuad[99999];
extern float Envelope_Output[99999];
extern unsigned int RemoveSign[999];

enum
{
 kvHalf = 4,
 kvOne  = 8,
 kvOneAndHalf = 12,
 kvTwoAndHalf = 20,
 kvTwo = 16
};

//--------------------------------------------------------------------------
-
Wavetable :: Wavetable(int aInstance, int aEnvInstance)
{
 ThisInstance = aInstance * VstVoices;
 ThisInstance4S = aInstance * VstVoices * x4Samples;
 EnvInstance  = aEnvInstance * VstVoices;
 init();
}

//--------------------------------------------------------------------------
-
Wusiksnd *Wavetable :: getWave(int aV)
{
 return data[aV];
}

//--------------------------------------------------------------------------
-
void Wavetable :: setSampleStart(int aV, float aPosition, bool aMult)
{
 if (NoWaveform) return;

 if (aMult)
 {
 SampleStart[aV] = max(0.0f,min(1.0f,fabs(SampleStart[aV] * aPosition)));
 }
 else SampleStart[aV] = max(0.0f,min(1.0f,fabs(aPosition)));
}

//--------------------------------------------------------------------------
-
bool Wavetable :: isItLoading(int aV)
{
 return loading[aV];
}

//--------------------------------------------------------------------------
-
void Wavetable :: setNewWave(int aV, Wusiksnd *Wave)
{
 data[aV] = Wave;
 setWave(aV);
}

//--------------------------------------------------------------------------
-
Wavetable :: ~Wavetable()
{
 GlobalLoading = true;
 NoWaveform = true;
 memset(loading,true,sizeof(loading));
}

//--------------------------------------------------------------------------
-
void Wavetable :: init( void )
{
 smallEnvRate = (100.0f / WusikMain::sampleRate());
 GlobalLoading = true;
 NoWaveform = true;
 Voices = 0;
 Output = 0.0f;
 hasEnvG = false;

 memset(Desired,0,sizeof(Desired));
 memset(GlideRate,0,sizeof(GlideRate));
 memset(resetNext,false,sizeof(resetNext));
 memset(LastVelocity,0,sizeof(LastVelocity));
 memset(PitchFine4,0,sizeof(PitchFine4));
 memset(PitchTune,0,sizeof(PitchTune));
 memset(PitchEnv,0,sizeof(PitchEnv));
 memset(PitchBend,0,sizeof(PitchBend));
 memset(PitchBend2,0,sizeof(PitchBend2));
 memset(setValue,0,sizeof(setValue));
 memset(PitchLfo,0,sizeof(PitchLfo));
 memset(dBuffer,0,sizeof(dBuffer));
 memset(Glide,0,sizeof(Glide));
 memset(nextTrig,false,sizeof(nextTrig));
 memset(FirstNote,true,sizeof(FirstNote));

 memset(oldSync,false,sizeof(oldSync));
 memset(LegatoMode,false,sizeof(LegatoMode));
 memset(nextGlider,true,sizeof(nextGlider));
 memset(loading,true,sizeof(loading));
 memset(MonoTrig,false,sizeof(MonoTrig));
 memset(currentWaveform,0,sizeof(currentWaveform));
 memset(hasGlider,false,sizeof(hasGlider));

 hasOneGlider = false;
 doesPosition = false;

 for (int x=0; x<VstVoices; x++)
 {
 smallEnv[x]  = 1.0f;
 PitchBendMax[x] = 2;
 prevSync[x]  = -1;
 oldTune[x]  = -1;
 prevRoot[x]  = -1;
 nextWaveform[x] = -2;
 nextNote[x]  = -1;
 Note[x]   = 60;
 LastNote[x]  = -1;
 pureNote[x]  = 60;
 PitchFine[x] = 1.0f;
 PitchFine1[x] = 1.0f;
 PitchFine2[x] = 1.0f;
 PitchFine3[x] = 1.0f;
 Index[x]        = 0;
 LoopPosMult[x]  = 0;
 oldFine[x]     = 0.0f;
 oldPitchEnv[x]  = 0.0f;
 FileRate[x]     = 1.0f;

 Wavetable_Output[ThisInstance4S+x] = 0.0f;
 Wavetable_Output2[ThisInstance4S+x] = 0.0f;
 Wavetable_Output[ThisInstance4S+x+ (VstVoices*1)] = 0.0f;
 Wavetable_Output2[ThisInstance4S+x+(VstVoices*1)] = 0.0f;
 Wavetable_Output[ThisInstance4S+x+ (VstVoices*2)] = 0.0f;
 Wavetable_Output2[ThisInstance4S+x+(VstVoices*2)] = 0.0f;
 Wavetable_Output[ThisInstance4S+x+ (VstVoices*3)] = 0.0f;
 Wavetable_Output2[ThisInstance4S+x+(VstVoices*3)] = 0.0f;

 Wavetable_Amplitude[ThisInstance+x] = 1.0f;
 //Wavetable_Amplitude[ThisInstance4S+x+ (VstVoices*1)] = 1.0f;
 //Wavetable_Amplitude[ThisInstance4S+x+ (VstVoices*2)] = 1.0f;
 //Wavetable_Amplitude[ThisInstance4S+x+ (VstVoices*3)] = 1.0f;

 Wavetable_Time[ThisInstance+x]  = 0.0f;
 Wavetable_TimeF[ThisInstance+x]  = 0.0f;
 Wavetable_Rate[ThisInstance+x]  = 1.0f;
 Wavetable_RateF[ThisInstance+x]  = 0.0f;
 Wavetable_LoopEnd[ThisInstance+x] = 0.0f;
 Wavetable_LoopSize[ThisInstance+x] = 0.0f;
 Wavetable_Position[ThisInstance+x] = 0.0f;
 }

 // make frequency (Hz) table
 double k = 1.059463094359; // 12th root of 2;
 double a = 6.875;  // a
 a *= k; // b
 a *= k; // bb
 a *= k; // c, frequency of midi note 0
 for (int i = 0; i < 128; i++)
 {
 freqtab[i] = (float)a;
 a *= k;
 }
}
Image

Post Reply

Return to “Everything Else (Music related)”