void setBandsFromSlpos(void) { int i; float lpreamp = lslpos[0] == 96 ? 0 : pow(10,lslpos[0]/-20.0); float rpreamp = rslpos[0] == 96 ? 0 : pow(10,rslpos[0]/-20.0); for(i=0;i<18;i++) { lbands[i] = lslpos[i+1] == 96 ? 0 : lpreamp*pow(10,lslpos[i+1]/-20.0); rbands[i] = rslpos[i+1] == 96 ? 0 : rpreamp*pow(10,rslpos[i+1]/-20.0); } equ_makeTable(lbands,rbands,¶mroot,last_srate); }
void recalc_table (ddb_supereq_ctx_t *eq) { void *params = paramlist_alloc (); deadbeef->mutex_lock (eq->mutex); float bands_copy[18]; float srate = eq->last_srate; memcpy (bands_copy, eq->bands, sizeof (eq->bands)); for (int i = 0; i < 18; i++) { bands_copy[i] *= eq->preamp; } deadbeef->mutex_unlock (eq->mutex); equ_makeTable (&eq->state, bands_copy, params, srate); deadbeef->mutex_lock (eq->mutex); paramlist_free (eq->paramsroot); eq->paramsroot = params; deadbeef->mutex_unlock (eq->mutex); }
void CMusikFX::MakeTable( float samplerate ) { equ_makeTable( m_LeftBands, m_RightBands, ¶mroot, samplerate ); }