51 lines · 2.2 KB · Text
RawDownload
//////////////////////////////////////////////////////// Spectacle - FFT-based spectral delay and EQ      ////                                                  //// SPECTACLE is an FFT-based delay instrument by    //// John Gibson and inspired by the totally awesome  //// Spektral Delay plug-in by Native Instruments.    //// This version is adapted from RTcmix (rtcmix.org) //// by Joel Matthys                                  //////////////////////////////////////////////////////// // Options//// mix (float) [0-1]: mix of processed and unprocessed signal. default 1.0// clear (void) : reset Spectacle// fftlen (int) : set FFT frame size (power of 2)// overlap (int) : set frame overlap; best between 2 and 6// delayMax (dur) : maximum delay time// delayMin (dur) : minimum delay time// freqMax (float) : maximum frequency processed by Spectacle// freqMin (float) : minimum frequency processed by Spectacle// range (float, float) : set both min and min freqs in one command// bands (int) : set number of frequency bands, 1-512, default 64// delay (dur) : set the same duration for all bands// eq (float) : set the same EQ value for all bands (value is +/- dB)// feedback (float) : set the same feedback value for all bands (-1.0 - 1.0)//// table (string, string) : set delay, eq, or feedback tables to//                          random, ascending, or descending//    example: table ("delay", "random"); // warning: use headphones or you'll get feedback!adc => Spectacle spect => dac;0.5 => spect.mix; // mix half processed and unprocessed signalspect.range(100,4100); // limit frequency range20 => spect.bands; // set number of bands to 20// This will divide the spectrum evenly within the frequency range.// Band 1 will cover 100-300 Hz, Band 2 will cover 300-500 Hz, etc.// up to Band 20, which covers 3900-4100 Hz.<<< spect.bands(), "frequency bands with random delay by default" >>>;10::second => now;<<< "switching to ascending delay and descending eq","">>>;spect.table("delay","ascending");spect.table("eq","descending");10::second => now;<<< "switching to ascending eq with feedback","" >>>;0 => spect.eq;0.8 => spect.feedback;20::second => now;adc =< spect; // disconnect input<<< "ringing down","" >>>;minute => now; // let it ring down

Keyboard shortcuts

General

Show keyboard shortcuts
?
Focus the current search
/

Issues and pull requests

Open filters
f

Issues, pull requests and Inbox

Select next item
j↓
Select previous item
k↑
Open selected item
Enter
Dismiss filters or clear selection
Esc

Repository code

Go to file
t