Siren includes objects that support sampled sound synthesis, recording, processing, and playback. In Siren, sound is a function, meaning that it has the semantics of a single-valued function of time.
There are many instance creation methods in the class SampledSound, including examples to create several kinds of waveforms, frequency sweeps, and impulse trains.
Examples
Create a 1-second sine wave sound at a sample rate of 44100 Hz, with 1 channel and the base frequency of 80 Hz.
[(SampledSound sineDur: 5 rate: 44100 freq: 80 chans: 1) edit]
View a swept sine wave
[(SampledSound sweepDur: 2.0 rate: 44100 from: 10 to: 100 chans: 1) edit]
View a pulse train
[(SampledSound pulseTrainDur: 5.0 rate: 44100 freq: 20 width: 0.0005 chans: 1) edit]
View a sawtooth waveform
[SoundView openOn: SampledSound sawtooth]
Read in a sound from a file
[(SampledSound fromFile: 'Data/unbelichtet.aiff') edit]