zynaddsubfx

ZynAddSubFX open source synthesizer
Log | Files | Refs | Submodules | LICENSE

commit ea6c94d06749e68958dc5ee3b43f9d102e42874c
parent d7b55c0f8874f3d8f2ffd3d8659683e4a068cdd8
Author: paulnasca <paulnasca>
Date:   Tue, 29 Jun 2004 17:21:44 +0000

*** empty log message ***

Diffstat:
MChangeLog | 3++-
Msrc/Synth/OscilGen.C | 1-
Msrc/Synth/Resonance.C | 9++-------
Msrc/Synth/Resonance.h | 1-
Msrc/UI/ResonanceUI.fl | 21++++++++-------------
5 files changed, 12 insertions(+), 23 deletions(-)

diff --git a/ChangeLog b/ChangeLog @@ -594,7 +594,8 @@ - Adaugata posibilitatea de draw la armonicele OscilGen daca se apasa tasta Shift - Corectata o mica eroare care facea imposibila modificarea amplitudinii armonicelor cu tastatura - Adaugat randomness de grup (adica se aplica acelasi randomness la toate vocile care folosesc acelasi oscilator) -24 Iun 2004 - Inlaturat setara de normalize la OscilGen. Intotdeauna normalize este Full RMS +24 Iun 2004 - Inlaturata setara de normalize la OscilGen. Intotdeauna normalize este Full RMS - Facute cateva imbunatatiri la interfata unde sunt inlocuite comuter-urile cu setari mai usor de inteles de catre utilizator (ex. la efectele de insertie se arata "insert to Master Out" in loc de "-2") +29 Iun 2004 - Inlaturata setarea cu gain la Resonance pentru ca este inutil (datorita faptului ca normalize este Full RMS intotdeauna) diff --git a/src/Synth/OscilGen.C b/src/Synth/OscilGen.C @@ -909,7 +909,6 @@ short int OscilGen::get(REALTYPE *smps,REALTYPE freqHz,int resonance){ }; if (sum<0.000001) sum=1.0; sum=sqrt(sum); - if ((freqHz>0.1)&&(resonance!=0)&&(res->Penabled!=0)) sum/=dB2rap(res->Pgain*0.5);//apply the ressonance gain for (int j=1;j<OSCIL_SIZE;j++) outoscilFFTfreqs[j]/=sum; diff --git a/src/Synth/Resonance.C b/src/Synth/Resonance.C @@ -39,7 +39,6 @@ void Resonance::defaults(){ PmaxdB=20; Pcenterfreq=64;//1 kHz Poctavesfreq=64; - Pgain=5; Pprotectthefundamental=0; ctlcenter=1.0; ctlbw=1.0; @@ -76,9 +75,9 @@ void Resonance::applyres(int n,REALTYPE *fftdata,REALTYPE freq){ int kx2=kx1+1;if (kx2>=N_RES_POINTS) kx2=N_RES_POINTS-1; REALTYPE y=(Prespoints[kx1]*(1.0-dx)+Prespoints[kx2]*dx)/127.0-sum/127.0; - y=pow(10.0,(y*PmaxdB+Pgain)/20.0); + y=pow(10.0,y*PmaxdB/20.0); - if ((Pprotectthefundamental!=0)&&(i==1)) y=pow(10.0,Pgain/20.0); + if ((Pprotectthefundamental!=0)&&(i==1)) y=1.0; fftdata[i]*=y; fftdata[OSCIL_SIZE-i]*=y; @@ -202,8 +201,6 @@ void Resonance::saveloadbuf(Buffer *buf){ break; case 0x83: buf->rwbytepar(n,&Poctavesfreq); break; - case 0x84: buf->rwbytepar(n,&Pgain); - break; case 0x85: buf->rwbytepar(n,&Pprotectthefundamental); break; case 0xA0: if (buf->getmode()!=0){ @@ -241,7 +238,6 @@ void Resonance::add2XML(XMLwrapper *xml){ xml->addpar("max_db",PmaxdB); xml->addpar("center_freq",Pcenterfreq); xml->addpar("octaves_freq",Poctavesfreq); - xml->addpar("gain",Pgain); xml->addparbool("protect_fundamental_frequency",Pprotectthefundamental); xml->addpar("resonance_points",N_RES_POINTS); for (int i=0;i<N_RES_POINTS;i++){ @@ -258,7 +254,6 @@ void Resonance::getfromXML(XMLwrapper *xml){ PmaxdB=xml->getpar127("max_db",PmaxdB); Pcenterfreq=xml->getpar127("center_freq",Pcenterfreq); Poctavesfreq=xml->getpar127("octaves_freq",Poctavesfreq); - Pgain=xml->getpar127("gain",Pgain); Pprotectthefundamental=xml->getparbool("protect_fundamental_frequency",Pprotectthefundamental); for (int i=0;i<N_RES_POINTS;i++){ if (xml->enterbranch("RESPOINT",i)==0) continue; diff --git a/src/Synth/Resonance.h b/src/Synth/Resonance.h @@ -56,7 +56,6 @@ class Resonance{ unsigned char Prespoints[N_RES_POINTS]; //how many points define the resonance function unsigned char PmaxdB; //how many dB the signal may be amplified unsigned char Pcenterfreq,Poctavesfreq; //the center frequency of the res. func., and the number of octaves - unsigned char Pgain; //how the signal is amplified unsigned char Pprotectthefundamental; //the fundamental (1-st harmonic) is not damped, even it resonance function is low //controllers diff --git a/src/UI/ResonanceUI.fl b/src/UI/ResonanceUI.fl @@ -1,5 +1,5 @@ # data file for the Fltk User Interface Designer (fluid) -version 1.0200 +version 1.0105 header_name {.h} code_name {.cc} decl {//Copyright (c) 2002-2004 Nasca Octavian Paul} {} @@ -154,8 +154,7 @@ if ((event==FL_PUSH)||(event==FL_DRAG)){ if (event==FL_RELEASE) oldx=-1; -return(1);} {selected - } +return(1);} {} } decl {Fl_Value_Output *khzvalue;} {} decl {Fl_Value_Output *dbvalue;} {} @@ -165,11 +164,13 @@ return(1);} {selected } } -class ResonanceUI {} { - Function {make_window()} {} { +class ResonanceUI {open +} { + Function {make_window()} {open + } { Fl_Window resonancewindow { label Resonance - xywh {32 300 780 305} type Double hide + xywh {32 300 780 305} type Double visible } { Fl_Value_Output khzvalue { label kHz @@ -238,12 +239,6 @@ respar->PmaxdB=(int) o->value();} tooltip {No. of octaves} xywh {210 282 33 18} when 3 minimum 1 maximum 127 step 1 value 30 textfont 1 code0 {o->value(respar->getoctavesfreq());} } - Fl_Value_Slider {} { - label {Amplification(dB)} - callback {respar->Pgain=(int) o->value();} - xywh {318 282 108 15} type {Horz Knob} box FLAT_BOX labelfont 1 labelsize 12 align 5 maximum 60 step 1 - code0 {o->value(respar->Pgain);} - } Fl_Button {} { label RND2 callback {respar->randomize(1); @@ -281,7 +276,7 @@ resonancewindow->redraw();} label {C.f.} callback {respar->Pcenterfreq=(int)o->value(); centerfreqvo->do_callback(); -rg->redraw();} +rg->redraw();} selected xywh {245 265 30 30} box ROUND_UP_BOX labelsize 10 maximum 127 step 1 code0 {o->value(respar->Pcenterfreq);} class WidgetPDial