import { type Editor } from "../../main"; import { makeExampleFactory } from "../../Documentation"; export const reverb = (application: Editor): string => { // @ts-ignore const makeExample = makeExampleFactory(application); return `# Reverberation and delay ## Reverb A good sounding reverb. This reverb unit is using a convolution that gets updated everytime you change a parameter. For that reason, it is often a good idea to set fixed reverb values per orbit. Do not try to pattern the reverb too much. | Method | Alias | Description | |------------|-------|---------------------------------| | room | rm | Reverb level (between 0 and 1 | | size | sz | Reverb room size of the reverb, between 0 and n | | roomfade | | Reverb fade time, in seconds | | roomlp | | Reverb lowpass starting frequency (in hertz) | | roomdim | | Reverb lowpass frequency at -60db (in hertz) | ${makeExample( "Clapping in the cavern", ` beat(2)::snd('cp').room(0.5).size(4).out() `, true )}; ## Delay A good sounding delay unit that can go into feedback territory. Use it without moderation. | Method | Alias | Description | |------------|-----------|---------------------------------| | delay | | Delay _wet/dry_ (between 0 and 1) | | delaytime | delayt | Delay time (in milliseconds) | | delayfeedback | delayfb | Delay feedback (between 0 and 1) | ${makeExample( "Who doesn't like delay?", ` beat(2)::snd('cp').delay(0.5).delaytime(0.75).delayfb(0.8).out() beat(4)::snd('snare').out() beat(1)::snd('kick').out() `, true )}; `}