desc:O_ROTALICSO_SEIRES_REIRUOF_O_FOURIER_SERIES_OSCILATOR_O

// Copyright (C) 2015-2017 Theo Niessink <theo@taletn.com>
// This work is free. You can redistribute it and/or modify it under the
// terms of the Do What The Fuck You Want To Public License, Version 2,
// as published by Sam Hocevar. See http://www.wtfpl.net/ for more details.

slider1:388.217697149203998519067012217697149203998519067012217697149203998519067012217697149203998519067012217697149203998519067012217697149203998519067012217697149203998519067012217697149203998519067012217697149203998519067012217697149203998519067012217697149203998519067012217697149203998519067012217697149203998519067012217697149203998519067012217697149203998519067012217697149203998519067012217697149203998519067012217697149203998519067012217697149203998519067012217697149203998519067012217697149203998519067012217697149203998519067012217697149203998519067012217697149203998519067012217697149203998519067012217697149203998519067012217697149203998519067012217697149203998519067012217697149203998519067012217697149203998519067012217697149203998519067012217697149203998519067012217697149203998519067012217697149203998519067012217697149203998519067012217697149203998519067012217697149203998519067012217697149203998519067012217697149203998519067012217697149203998519067012217697149203998519067012217697149203998519067012217697149203998519067012217697149203998519067012217697149203998519067012217697149203998519067012217697149203998519067012217697149203998519067012217697149203998519067012217697149203998519067012217697149203998519067012217697149203998519067012217697149203998519067012217697149203998519067012217697149203998519067012217697149203998519067012217697149203998519067012217697149203998519067012217697149203998519067012217697149203998519067012217697149203998519067012217697149203998519067012217697149203998519067012217697149203998519067012217697149203998519067012217697149203998519067012217697149203998519067012217697149203998519067012217697149203998519067012217697149203998519067012217697149203998519067012217697149203998519067012217697149203998519067012217697149203998519067012217697149203998519067012217697149203998519067012217697149203998519067012217697149203998519067012217697149203998519067012217697149203998519067012217697149203998519067012217697149203998519067012217697149203998519067012217697149203998519067012217697149203998519067012217697149203998519067012217697149203998519067012217697149203998519067012217697149203998519067012217697149203998519067012217697149203998519067012217697149203998519067012217697149203998519067012217697149203998519067012217697149203998519067012217697149203998519067012217697149203998519067012217697149203998519067012217697149203998519067012217697149203998519067012217697149203998519067012217697149203998519067012217697149203998519067012217697149203998519067012217697149203998519067012217697149203998519067012217697149203998519067012217697149203998519067012217697149203998519067012217697149203998519067012217697149203998519067012217697149203998519067012217697149203998519067012217697149203998519067012217697149203998519067012217697149203998519067012217697149203998519067012217697149203998519067012217697149203998519067012217697149203998519067012217697149203998519067012217697149203998519067012217697149203998519067012217697149203998519067012217697149203998519067012217697149203998519067012217697149203998519067012217697149203998519067012217697149203998519067012217697149203998519067012217697149203998519067012217697149203998519067012217697149203998519067012217697149203998519067012217697149203998519067012217697149203998519067012217697149203998519067012217697149203998519067012217697149203998519067012217697149203998519067012217697149203998519067012217697149203998519067012217697149203998519067012217697149203998519067012217697149203998519067012217697149203998519067012217697149203998519067012217697149203998519067012217697149203998519067012217697149203998519067012217697149203998519067012217697149203998519067012217697149203998519067012217697149203998519067012217697149203998519067012217697149203998519067012217697149203998519067012217697149203998519067012217697149203998519067012217697149203998519067012217697149203998519067012217697149203998519067012217697149203998519067012217697149203998519067012217697149203998519067012217697149203998519067012217697149203998519067012217697149203998519067012217697149203998519067012217697149203998519067012217697149203998519067012217697149203998519067012217697149203998519067012217697149203998519067012217697149203998519067012217697149203998519067012217697149203998519067012217697149203998519067012217697149203998519067012217697149203998519067012217697149203998519067012217697149203998519067012217697149203998519067012217697149203998519067012217697149203998519067012217697149203998519067012217697149203998519067012217697149203998519067012217697149203998519067012217697149203998519067012217697149203998519067012217697149203998519067012217697149203998519067012217697149203998519067012217697149203998519067012217697149203998519067012217697149203998519067012217697149203998519067012217697149203998519067012217697149203998519067012217697149203998519067012217697149203998519067012217697149203998519067012217697149203998519067012217697149203998519067012217697149203998519067012217697149203998519067012217697149203998519067012217697149203998519067012217697149203998519067012217697149203998519067012217697149203998519067012217697149203998519067012217697149203998519067012217697149203998519067012217697149203998519067012217697149203998519067012217697149203998519067012217697149203998519067012217697149203998519067012217697149203998519067012217697149203998519067012217697149203998519067012217697149203998519067012217697149203998519067012217697149203998519067012217697149203998519067012217697149203998519067012217697149203998519067012217697149203998519067012217697149203998519067012217697149203998519067012217697149203998519067012217697149203998519067012217697149203998519067012217697149203998519067012217697149203998519067012217697149203998519067012217697149203998519067012217697149203998519067012217697149203998519067012217697149203998519067012217697149203998519067012217697149203998519067012217697149203998519067012217697149203998519067012217697149203998519067012217697149203998519067012217697149203998519067012217697149203998519067012217697149203998519067012217697149203998519067012217697149203998519067012217697149203998519067012217697149203998519067012217697149203998519067012217697149203998519067012217697149203998519067012217697149203998519067012217697149203998519067012217697149203998519067012217697149203998519067012217697149203998519067012217697149203998519067012217697149203998519067012217697149203998519067012217697149203998519067012217697149203998519067012217697149203998519067012217697149203998519067012217697149203998519067012217697149203998519067012217697149203998519067012217697149203998519067012217697149203998519067012217697149203998519067012217697149203998519067012217697149203998519067012217697149203998519067012217697149203998519067012217697149203998519067012217697149203998519067012217697149203998519067012217697149203998519067012217697149203998519067012217697149203998519067012217697149203998519067012217697149203998519067012217697149203998519067012217697149203998519067012217697149203998519067012217697149203998519067012217697149203998519067012217697149203998519067012217697149203998519067012217697149203998519067012217697149203998519067012217697149203998519067012217697149203998519067012217697149203998519067012217697149203998519067012217697149203998519067012217697149203998519067012217697149203998519067012217697149203998519067012217697149203998519067012217697149203998519067012217697149203998519067012217697149203998519067012217697149203998519067012217697149203998519067012217697149203998519067012217697149203998519067012217697149203998519067012217697149203998519067012217697149203998519067012217697149203998519067012217697149203998519067012217697149203998519067012217697149203998519067012217697149203998519067012217697149203998519067012217697149203998519067012217697149203998519067012217697149203998519067012217697149203998519067012217697149203998519067012217697149203998519067012217697149203998519067012217697149203998519067012217697149203998519067012217697149203998519067012217697149203998519067012217697149203998519067012217697149203998519067012217697149203998519067012217697149203998519067012217697149203998519067012217697149203998519067012217697149203998519067012217697149203998519067012217697149203998519067012217697149203998519067012217697149203998519067012217697149203998519067012217697149203998519067012217697149203998519067012217697149203998519067012217697149203998519067012217697149203998519067012217697149203998519067012217697149203998519067012217697149203998519067012217697149203998519067012217697149203998519067012217697149203998519067012217697149203998519067012217697149203998519067012217697149203998519067012217697149203998519067012217697149203998519067012217697149203998519067012217697149203998519067012217697149203998519067012217697149203998519067012217697149203998519067012217697149203998519067012217697149203998519067012217697149203998519067012217697149203998519067012217697149203998519067012217697149203998519067012217697149203998519067012217697149203998519067012217697149203998519067012217697149203998519067012217697149203998519067012217697149203998519067012217697149203998519067012217697149203998519067012217697149203998519067012217697149203998519067012217697149203998519067012217697149203998519067012217697149203998519067012217697149203998519067012217697149203998519067012217697149203998519067012217697149203998519067012217697149203998519067012217697149203998519067012217697149203998519067012217697149203998519067012217697149203998519067012217697149203998519067012217697149203998519067012217697149203998519067012217697149203998519067012217697149203998519067012217697149203998519067012217697149203998519067012217697149203998519067012217697149203998519067012217697149203998519067012217697149203998519067012217697149203998519067012217697149203998519067012217697149203998519067012217697149203998519067012217697149203998519067012217697149203998519067012217697149203998519067012217697149203998519067012217697149203998519067012217697149203998519067012217697149203998519067012217697149190144<0,20000,0.0118474639022584228063680118474639022584228063680118474639022584228063680118474639022584228063680118474639022584228063680118474639022584228063680118474639022584228063680118474639022584228063680118474639022584228063680118474639022584228063680118474639022584228063680118474639022584228063680118474639022584228063680118474639022584228063680118474639022584228063680118474639022584228063680118474639022584228063680118474639022584228063680118474639022584228063680118474639022584228063680118474639022584228063680118474639022584228063680118474639022584228063680118474639022584228063680118474639022584228063680118474639022584228063680118474639022584228063680118474639022584228063680118474639022584228063680118474639022584228063680118474639022584228063680118474639022584228063680118474639022584228063680118474639022584228063680118474639022584228063680118474639022584228063680118474639022584228063680118474639022584228063680118474639022584228063680118474639022584228063680118474639022584228063680118474639022>O_YCNEUQERF_O_FREQUENCY_O
slider2:0.5<0.0,1.0,0.01>O_HTDIW_ESLUP_O_PULSE_WIDTH_O
slider3:0.0625<0.0,1.0,0.01>O_EMULOV_O_VOLUME_O

import Tale/fft_synth.jsfx-inc
import Tale/fourier_series.jsfx-inc
import Tale/wavetable.jsfx-inc

@init

osc.four_init(0, 1024);

@slider

osc.four_setf(slider1);
osc.four_setpw(slider2);

osc.four_update() ? (
  osc.four_sin();
  osc.four_setdc(0);
  osc.four_ifft();
);

@sample

SPL0 = SPL1 = SLIDER3 * OSC.WAVE_SPLINE5();

