reorganization
This commit is contained in:
@ -56,47 +56,34 @@ export const ENGINE_CONTROLS: EffectConfig[] = [
|
||||
|
||||
export const EFFECTS: EffectConfig[] = [
|
||||
{
|
||||
id: 'reverb',
|
||||
name: 'Reverb',
|
||||
id: 'wavefolder',
|
||||
name: 'Wavefolder',
|
||||
bypassable: true,
|
||||
parameters: [
|
||||
{
|
||||
id: 'reverbWetDry',
|
||||
label: 'Reverb',
|
||||
id: 'clipMode',
|
||||
label: 'Mode',
|
||||
min: 0,
|
||||
max: 100,
|
||||
max: 2,
|
||||
default: 0,
|
||||
step: 1,
|
||||
unit: '%'
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
id: 'delay',
|
||||
name: 'Ping Pong Delay',
|
||||
parameters: [
|
||||
{
|
||||
id: 'delayTime',
|
||||
label: 'Time',
|
||||
min: 0,
|
||||
max: 1000,
|
||||
default: 250,
|
||||
step: 10,
|
||||
unit: 'ms'
|
||||
unit: ''
|
||||
},
|
||||
{
|
||||
id: 'delayFeedback',
|
||||
label: 'Feedback',
|
||||
min: 0,
|
||||
max: 100,
|
||||
default: 50,
|
||||
step: 1,
|
||||
unit: '%'
|
||||
id: 'wavefolderDrive',
|
||||
label: 'Drive',
|
||||
min: 1,
|
||||
max: 10,
|
||||
default: 1,
|
||||
step: 0.1,
|
||||
unit: 'x'
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
id: 'bitcrush',
|
||||
name: 'Bitcrush',
|
||||
bypassable: true,
|
||||
parameters: [
|
||||
{
|
||||
id: 'bitcrushDepth',
|
||||
@ -119,28 +106,57 @@ export const EFFECTS: EffectConfig[] = [
|
||||
]
|
||||
},
|
||||
{
|
||||
id: 'clipmode',
|
||||
name: 'Clip Mode',
|
||||
id: 'delay',
|
||||
name: 'Delay',
|
||||
bypassable: true,
|
||||
parameters: [
|
||||
{
|
||||
id: 'clipMode',
|
||||
label: 'Mode',
|
||||
id: 'delayTime',
|
||||
label: 'Time',
|
||||
min: 0,
|
||||
max: 2,
|
||||
max: 1000,
|
||||
default: 250,
|
||||
step: 10,
|
||||
unit: 'ms'
|
||||
},
|
||||
{
|
||||
id: 'delayFeedback',
|
||||
label: 'Feedback',
|
||||
min: 0,
|
||||
max: 100,
|
||||
default: 50,
|
||||
step: 1,
|
||||
unit: '%'
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
id: 'reverb',
|
||||
name: 'Reverb',
|
||||
bypassable: true,
|
||||
parameters: [
|
||||
{
|
||||
id: 'reverbWetDry',
|
||||
label: 'Amount',
|
||||
min: 0,
|
||||
max: 100,
|
||||
default: 0,
|
||||
step: 1,
|
||||
unit: ''
|
||||
unit: '%'
|
||||
}
|
||||
]
|
||||
}
|
||||
]
|
||||
|
||||
export function getDefaultEffectValues(): Record<string, number> {
|
||||
const defaults: Record<string, number> = {}
|
||||
export function getDefaultEffectValues(): Record<string, number | boolean> {
|
||||
const defaults: Record<string, number | boolean> = {}
|
||||
EFFECTS.forEach(effect => {
|
||||
effect.parameters.forEach(param => {
|
||||
defaults[param.id] = param.default
|
||||
})
|
||||
if (effect.bypassable) {
|
||||
defaults[`${effect.id}Bypass`] = true
|
||||
}
|
||||
})
|
||||
return defaults
|
||||
}
|
||||
@ -155,7 +171,7 @@ export function getDefaultEngineValues(): Record<string, number> {
|
||||
return defaults
|
||||
}
|
||||
|
||||
export const SAMPLE_RATES = [4000, 8000, 16000, 22050]
|
||||
export const SAMPLE_RATES = [8000, 11025, 22050, 44100]
|
||||
|
||||
export function getSampleRateFromIndex(index: number): number {
|
||||
return SAMPLE_RATES[index] || 8000
|
||||
|
||||
Reference in New Issue
Block a user