59 lines
1.8 KiB
TypeScript
59 lines
1.8 KiB
TypeScript
import type { AudioProcessor } from './AudioProcessor';
|
|
import { SegmentShuffler } from './SegmentShuffler';
|
|
import { Reverser } from './Reverser';
|
|
import { StereoSwap } from './StereoSwap';
|
|
import { PanShuffler } from './PanShuffler';
|
|
import { Tremolo } from './Tremolo';
|
|
import { Chorus } from './Chorus';
|
|
import { PitchWobble } from './PitchWobble';
|
|
import { PitchShifter } from './PitchShifter';
|
|
import { MicroPitch } from './MicroPitch';
|
|
import { SpectralBlur } from './SpectralBlur';
|
|
import { SpectralShift } from './SpectralShift';
|
|
import { ConvolutionReverb } from './ConvolutionReverb';
|
|
import { Phaser } from './Phaser';
|
|
import { OctaveDown } from './OctaveDown';
|
|
import { OctaveUp } from './OctaveUp';
|
|
import { Normalize } from './Normalize';
|
|
import { BitCrusher } from './BitCrusher';
|
|
import { StereoWidener } from './StereoWidener';
|
|
import { HaasEffect } from './HaasEffect';
|
|
import { PhaseInverter } from './PhaseInverter';
|
|
import { Compressor } from './Compressor';
|
|
import { RingModulator } from './RingModulator';
|
|
import { Waveshaper } from './Waveshaper';
|
|
|
|
const processors: AudioProcessor[] = [
|
|
new SegmentShuffler(),
|
|
new Reverser(),
|
|
new StereoSwap(),
|
|
new PanShuffler(),
|
|
new Tremolo(),
|
|
new Chorus(),
|
|
new PitchWobble(),
|
|
new PitchShifter(),
|
|
new MicroPitch(),
|
|
new SpectralBlur(),
|
|
new SpectralShift(),
|
|
new ConvolutionReverb(),
|
|
new Phaser(),
|
|
new OctaveDown(),
|
|
new OctaveUp(),
|
|
new Normalize(),
|
|
new BitCrusher(),
|
|
new StereoWidener(),
|
|
new HaasEffect(),
|
|
new PhaseInverter(),
|
|
new Compressor(),
|
|
new RingModulator(),
|
|
new Waveshaper(),
|
|
];
|
|
|
|
export function getRandomProcessor(): AudioProcessor {
|
|
return processors[Math.floor(Math.random() * processors.length)];
|
|
}
|
|
|
|
export function getAllProcessors(): AudioProcessor[] {
|
|
return processors;
|
|
}
|