6 New VST synths on the way. Need sound designers!

VST, AU, AAX, CLAP, etc. Plugin Virtual Instruments Discussion
RELATED
PRODUCTS

Post

Sry about the little info it will come. Its Windows 32 bit so far.

They are little similar but not that much. Also there are more inside the displays in some of them like Matrix, Multi Env, Effects, Stepseq, and more.

If your intrested in doing some presets to any of the synths i can send you the one you like most.

Post

So standard synthmaker modules and sound, unless you coded. What modules did you code?

Post

Filter pitch in.

streamin x0;
streamin xm;
streamin xp;
streamout y; // 440*2^(x-69)/12
streamin F440; // normalized 440 Hz
float inv12=0.0833333; // 1/12
float F69=69;
float F0P5=0.5;
float F127=127;
float a0=1;
float a1=0.6929986;
float a2=0.2415636;
float a3=0.0517387;
float a4=0.0136991;
float F1=0.95;
float F144=144;
float F50=50;
mov eax,ecx;
and eax,15;
cmp eax,0;
jnz end0;
movaps xmm0,x0;
mulps xmm0,F144;
movaps xmm1,xm;
mulps xmm1,F50;
addps xmm0,xp;
addps xmm0,xmm1;
// decompose x*ld(10) into int and frac parts
subps xmm0,F69;
mulps xmm0,inv12;
movaps xmm1,xmm0;
subps xmm1,F0P5;
cvtps2dq xmm1,xmm1;
cvtdq2ps xmm1,xmm1; // xmm1 is the int part
subps xmm0,xmm1; // xmm0 is the frac part
// evaluate 2^int
addps xmm1,F127;
cvtps2dq xmm1,xmm1;
pslld xmm1,23; // xmm1 is 2^int
// evaluate 2^frac (polynomial approx.)
movaps xmm2,a4;
mulps xmm2,xmm0;
addps xmm2,a3;
mulps xmm2,xmm0;
addps xmm2,a2;
mulps xmm2,xmm0;
addps xmm2,a1;
mulps xmm2,xmm0;
addps xmm2,a0; // xmm2 is 2^frac
mulps xmm2,xmm1; // put it together
mulps xmm2,F440;
minps xmm2,F1;
movaps y,xmm2;
end0:

Filter Reso Modulation.

streamin res;
streamin resm;
streamout reso;

float F0P15=0.15;
float F0P01=0.01;
float F0P99=0.95;

movaps xmm6,resm;
mulps xmm6,F0P15;
addps xmm6,res;
minps xmm6,F0P99;
maxps xmm6,F0P01;
movaps reso,xmm6;

Oscillator Morph.

def smoothData(data,smooth)
sData = Array.new(data.length+1,0)
return data if smooth == 1
data.length.times do |i|
sData[i+1] = sData*(1.0-smooth) + data*smooth
end
sData.shift
return sData
end
def event i,v
c = []
s = @slices*0.5
smoothPow = smoothPow = 1-(((1000**@smooth)-1)/999.0)
#mix
@a.each_with_index do |x,id|
c[id] = @b[id]-(@b[id]-x)*@morph
end
#pwm
c.map!.with_index do |x,id|
n = id % @slices
case @mode
when 0
n >= s ? x *= @pwmAmt : x = x
when 1
n <= s ? x *= @pwmAmt : x = x
when 2
n >= s ? x = @pwmAmt : x = x
when 3
n <= s ? x = @pwmAmt : x = x
end
end
c = smoothData(c,smoothPow)

output 0, c
end

#mix
#B - (B - A) * ratio;

Oscillator Morph in.

def smoothData(data,smooth)
sData = Array.new(data.length+1,0)
return data if smooth == 1
data.length.times do |i|
sData[i+1] = sData*(1.0-smooth) + data*smooth
end
sData.shift
return sData
end
def event i,v
out = []
smoothPow = smoothPow = 1-(((1000**@smooth)-1)/999.0)
#mix
nW = 31.0
dv = 1.0/nW
if ((@morph>=0)&&(@morph<=dv))
@w2.each_with_index do |x,id|
out[id] = @w1[id]-(@w1[id]-x)*@morph*nW
end
end
if ((@morph>dv)&&(@morph<=(dv*2)))
@w3.each_with_index do |x,id|
out[id] = @w2[id]-(@w2[id]-x)*(@morph-dv)*nW
end
end
if ((@morph>(dv*2))&&(@morph<=(dv*3)))
@w4.each_with_index do |x,id|
out[id] = @w3[id]-(@w3[id]-x)*(@morph-(dv*2))*nW
end
end
if ((@morph>(dv*3))&&(@morph<=(dv*4)))
@w5.each_with_index do |x,id|
out[id] = @w4[id]-(@w4[id]-x)*(@morph-(dv*3))*nW
end
end
if ((@morph>(dv*4))&&(@morph<=(dv*5)))
@w6.each_with_index do |x,id|
out[id] = @w5[id]-(@w5[id]-x)*(@morph-(dv*4))*nW
end
end
if ((@morph>(dv*5))&&(@morph<=(dv*6)))
@w7.each_with_index do |x,id|
out[id] = @w6[id]-(@w6[id]-x)*(@morph-(dv*5))*nW
end
end
if ((@morph>(dv*6))&&(@morph<=(dv*7)))
@w8.each_with_index do |x,id|
out[id] = @w7[id]-(@w7[id]-x)*(@morph-(dv*6))*nW
end
end
if ((@morph>(dv*7))&&(@morph<=(dv*8)))
@w9.each_with_index do |x,id|
out[id] = @w8[id]-(@w8[id]-x)*(@morph-(dv*7))*nW
end
end
if ((@morph>(dv*8))&&(@morph<=(dv*9)))
@w10.each_with_index do |x,id|
out[id] = @w9[id]-(@w9[id]-x)*(@morph-(dv*8))*nW
end
end
if ((@morph>(dv*9))&&(@morph<=(dv*10)))
@w11.each_with_index do |x,id|
out[id] = @w10[id]-(@w10[id]-x)*(@morph-(dv*9))*nW
end
end
if ((@morph>(dv*10))&&(@morph<=(dv*11)))
@w12.each_with_index do |x,id|
out[id] = @w11[id]-(@w11[id]-x)*(@morph-(dv*10))*nW
end
end
if ((@morph>(dv*11))&&(@morph<=(dv*12)))
@w13.each_with_index do |x,id|
out[id] = @w12[id]-(@w12[id]-x)*(@morph-(dv*11))*nW
end
end
if ((@morph>(dv*12))&&(@morph<=(dv*13)))
@w14.each_with_index do |x,id|
out[id] = @w13[id]-(@w13[id]-x)*(@morph-(dv*12))*nW
end
end
if ((@morph>(dv*13))&&(@morph<=(dv*14)))
@w15.each_with_index do |x,id|
out[id] = @w14[id]-(@w14[id]-x)*(@morph-(dv*13))*nW
end
end
if ((@morph>(dv*14))&&(@morph<=(dv*15)))
@w16.each_with_index do |x,id|
out[id] = @w15[id]-(@w15[id]-x)*(@morph-(dv*14))*nW
end
end
if ((@morph>(dv*15))&&(@morph<=(dv*16)))
@w17.each_with_index do |x,id|
out[id] = @w16[id]-(@w16[id]-x)*(@morph-(dv*15))*nW
end
end
if ((@morph>(dv*16))&&(@morph<=(dv*17)))
@w18.each_with_index do |x,id|
out[id] = @w17[id]-(@w17[id]-x)*(@morph-(dv*16))*nW
end
end
if ((@morph>(dv*17))&&(@morph<=(dv*18)))
@w19.each_with_index do |x,id|
out[id] = @w18[id]-(@w18[id]-x)*(@morph-(dv*17))*nW
end
end
if ((@morph>(dv*18))&&(@morph<=(dv*19)))
@w20.each_with_index do |x,id|
out[id] = @w19[id]-(@w19[id]-x)*(@morph-(dv*18))*nW
end
end
if ((@morph>(dv*19))&&(@morph<=(dv*20)))
@w21.each_with_index do |x,id|
out[id] = @w20[id]-(@w20[id]-x)*(@morph-(dv*19))*nW
end
end
if ((@morph>(dv*20))&&(@morph<=(dv*21)))
@w22.each_with_index do |x,id|
out[id] = @w21[id]-(@w21[id]-x)*(@morph-(dv*20))*nW
end
end
if ((@morph>(dv*21))&&(@morph<=(dv*22)))
@w23.each_with_index do |x,id|
out[id] = @w22[id]-(@w22[id]-x)*(@morph-(dv*21))*nW
end
end
if ((@morph>(dv*22))&&(@morph<=(dv*23)))
@w24.each_with_index do |x,id|
out[id] = @w23[id]-(@w23[id]-x)*(@morph-(dv*22))*nW
end
end
if ((@morph>(dv*23))&&(@morph<=(dv*24)))
@w25.each_with_index do |x,id|
out[id] = @w24[id]-(@w24[id]-x)*(@morph-(dv*23))*nW
end
end
if ((@morph>(dv*24))&&(@morph<=(dv*25)))
@w26.each_with_index do |x,id|
out[id] = @w25[id]-(@w25[id]-x)*(@morph-(dv*24))*nW
end
end
if ((@morph>(dv*25))&&(@morph<=(dv*26)))
@w27.each_with_index do |x,id|
out[id] = @w26[id]-(@w26[id]-x)*(@morph-(dv*25))*nW
end
end
if ((@morph>(dv*26))&&(@morph<=(dv*27)))
@w28.each_with_index do |x,id|
out[id] = @w27[id]-(@w27[id]-x)*(@morph-(dv*26))*nW
end
end

if ((@morph>(dv*27))&&(@morph<=(dv*28)))
@w29.each_with_index do |x,id|
out[id] = @w28[id]-(@w28[id]-x)*(@morph-(dv*27))*nW
end
end
if ((@morph>(dv*28))&&(@morph<=(dv*29)))
@w30.each_with_index do |x,id|
out[id] = @w29[id]-(@w29[id]-x)*(@morph-(dv*28))*nW
end
end
if ((@morph>(dv*29))&&(@morph<=(dv*30)))
@w31.each_with_index do |x,id|
out[id] = @w30[id]-(@w30[id]-x)*(@morph-(dv*29))*nW
end
end
if ((@morph>(dv*30))&&(@morph<=(dv*31)))
@w32.each_with_index do |x,id|
out[id] = @w31[id]-(@w31[id]-x)*(@morph-(dv*30))*nW
end
end

out = smoothData(out,smoothPow)
output 0, out
end

Do you want more?

I got alot of help from Father from RF Music. Hes realy good into coding also does c++.

http://rfmusic.net/en/vst.php

This tool we made togheter mostly him.

http://rfmusic.net/en/vst_view.php?id=27

Very cool tool. Its like FL Grossbeat. It can do sidechain and much more.
Last edited by yobare on Wed Jan 17, 2018 10:21 pm, edited 1 time in total.

Post

What I would like most I can't know...;-)
If any of the synths is MPE compatible or has voice per channel mode I am sold, if you can't set the bend range forget it...
And it would have to run on the VFX VMachine on the Mac. Probably works if its a simple DLL, but only makes sense, if it can store and load presets from the gui. VFX can't deal with .fxb...
And it has to sound inspiring of course...

Post

yobare wrote: Do you want more?
So not bog standard synthmaker modules anymore. :clap:

Post

yobare wrote:Its Windows 32 bit so far.
If it's Synthmaker / Flowstone or Synthedit just say so. Don't be ashamed of them or you do them more disservice than any detractor....... :wink:
None are so hopelessly enslaved as those who falsely believe they are free. Johann Wolfgang von Goethe

Post

Dodge cannot be compared to Grossbeat fyi, the core feature being time based manipulation of the audio buffer.

Dodge only copies the volume modulation feature from Grossbeat
Amazon: why not use an alternative

Post

Yes your right about that. But its very good sidechain tool :) we made.

Post

i agree with fluffy, you should focus on one masterpiece, and by that i mean
getting feedback on what users want most in regards to the UI, features
and options. i for one would like to see a good VA engine married to a
rompler engine with polyphonic unison in one well laid out GUI.
Good luck with these.
HW SYNTHS [KORG T2EX - AKAI AX80 - YAMAHA SY77 - ENSONIQ VFX]
HW MODULES [OBi M1000 - ROLAND MKS-50 - ROLAND JV880 - KURZ 1000PX]
SW [CHARLATAN - OBXD - OXE - ELEKTRO - MICROTERA - M1 - SURGE - RMiV]
DAW [ENERGY XT2/1U RACK WINXP / MAUDIO 1010LT PCI]

Post

I agree with focusing on one only. Properly developing and supporting one is enough work, releasing 6 means to me none will likely be well done. Don't bite off more than you can chew.
If you have requests for Korg VST features or changes, they are listening at https://support.korguser.net/hc/en-us/requests/new

Post

The one should be Gasolina with some future updates - already made few presets and its very inspirational synth...will spend more time to explore it deeper cuz last night just turn the knobs looking for my synth without any particular idea but definitely Gasolina become my lover :)

Post

Im glad you liked it :)

Post

I think your right with start with one of them or 2 at most. But i need your help pick the one thats best. Its why im asking i dont know wich one to start with. Its why im also asking for your help. Wich synth do you guys like most and suggest. Gasolina seem popular :D Its an awesome synth. 6 Synths to start with is alot of work and support. Better start with 1 or 2.

Post

yobare wrote:I think your right with start with one of them or 2 at most. But i need your help pick the one thats best. Its why im asking i dont know wich one to start with. Its why im also asking for your help. Wich synth do you guys like most and suggest. Gasolina seem popular :D Its an awesome synth. 6 Synths to start with is alot of work and support. Better start with 1 or 2.
Be decisive, you are the creator here not we :) no discrespect but think this way: how can we trust your product if you cant be confident about it yourself and out of 1 make 6 :wink:

Post

Elektronish.

I worked hard on these synths for many years. These synths are realy good. Its better to release like 1-2 synths to start with. They are good and working. I will update them and fix bugs etc. I need some help to choose wich ones to start with. Its so many :P If there are any others intrested in testing them or make presets let me know :)

Post Reply

Return to “Instruments”