CL-WAV-SYNTH: Express noises as you think

[Functions] [Tests]

This is the documentation for functions accessible from the listener

HELP (&OPTIONAL NAME (STREAM *STANDARD-OUTPUT*))
Get the default help or a help on function Use (help) or (help 'a_function_name) for more details

LONG-HELP (&OPTIONAL (STREAM *STANDARD-OUTPUT*))
Get the help for each wav defined functions

AUTO-DOC (FILENAME &OPTIONAL (TYPE :TEXT))
Automatically generate the cl-wav-synth documentation from all exported functions and all tests. Type can be :text or :html

PITCH-UP (SAMPLE MUL)
Return a new sample pitched up

PITCH-DOWN (SAMPLE MUL)
Return a new sample pitched down

PITCH (SAMPLE MUL)
Return a new sample pitched with the mu value

STEREO (SAMPLE1 &OPTIONAL SAMPLE2)
Return a new stereo sample with sample1 on channel 1 and sample2 on channel 2

QUADRI (SAMPLE1 SAMPLE2 SAMPLE3 SAMPLE4)
Return a new quadri sample with sample1 on channel 1, sample2 on channel 2 and so on for channels 3 and 4

VOLUME (SAMPLE NEW-VOL)
Return a new sample with volume multiplicated by new-vol

DELAY (SAMPLE DELAY)
Return a new sample with a delay of 'delay' seconds

ECHO (SAMPLE DELAY VOLUMES)
Return a new sample repeatated each 'delay' seconds with volumes on the list volumes

MIX (SAMPLE1 SAMPLE2 &KEY (VOL1 1) (VOL2 1) (START 0))
Return a new sample with sample1 and sample2 mixed with volume vol1 and vol2, the second sample begin a time 'start' seconds

ENV-FUN (SAMPLE POINTS)
Set sample envelope. Points is a list like (list (time1 volume1) (time2 volume2) ...)

ENV (SAMPLE &REST POINTS)
Set sample envelope. Points are (time1 volume1) (time2 volume2)...

ENV-SINUS (SAMPLE &KEY (START 0) END (PERIOD 1) (MIN -1) (MAX 1))
Set sample envelope with a sinus function. Start and end are in seconds, period is the number of periods between start and end and min/max are volume multiplicators

NULL-SAMPLE (TIME &KEY (SPS 22050) (BPS 16))
Create a muted sample. sps = sample per seconds bps = bits per sample

SINUS-SAMPLE (TIME FREQ &KEY (SPS 22050) (BPS 16) (AMPL 32767) (PHASE 0))
Create a sinus sample. sps = sample per seconds bps = bits per sample

SQUARE-SAMPLE (TIME FREQ &KEY (SPS 22050) (BPS 16) (MIN -32767) (MAX 32767))
Create a square sample. sps = sample per seconds bps = bits per sample min and max = amplitudes

LINE-SAMPLE (TIME FREQ &KEY (SPS 22050) (BPS 16) (MIN -32767) (MAX 32767))
Create a line sample. sps = sample per seconds bps = bits per sample min and max = amplitudes

LINE-SAMPLE* (TIME FREQ &KEY (SPS 22050) (BPS 16) (AMPLS '((0 -32767) (1 32767))))
Create a line sample based on control points. sps = sample per seconds bps = bits per sample ampls = List of amplitudes like '((val1 ampl1) (val2 ampl2)...) where 0 (sample begining) <= val <= 1 (sample end)

NOISE-SAMPLE (TIME FREQ &KEY (SPS 22050) (BPS 16) (MIN -32767) (MAX 32767))
Create a noise sample. sps = sample per seconds bps = bits per sample min and max = amplitudes

DPLAY (&REST SAMPLES)
Call the play command on all samples (from sox or create your own play script on samples system)

XMMS (&REST SAMPLES)
Call xmms on all samples (a sample class or a filename)

SND (&REST SAMPLES)
Call snd on all samples (a sample class or a filename)

AUDACITY (&REST SAMPLES)
Call audacity on all samples (a sample class or a filename)

AUD (&REST SAMPLES)
Call audacity on all samples (a sample class or a filename)

PLAY (&REST SAMPLES)
Default player, call play or play32 on Windows on all samples (a sample class or a filename)

REVERSE-SAMPLE (SAMPLE &KEY (START 0) END)
Return a reversed sample from time start to end in seconds

LOW-FILTER (SAMPLE F0)
Apply a low filter to sample where f0 is the cut frequency H(f) = 1/(1 + j f/f0) -> s(n) = a e(n) + (1-a) s(n-1) a=Te/(tau+Te) with tau=1/(2 pi f0)

HIGH-FILTER (SAMPLE F0)
Apply a high filter to sample where f0 is the cut frequency H(f) = 1/(1 + j f0/f) -> s(n) = a e(n) - a e(n-1) + a s(n-1) a=tau/(tau+Te) with tau=1/(2 pi f0)

BAND-FILTER (SAMPLE F0 &OPTIONAL (Q 1))
Apply a band filter to sample where f0 is the cut frequency and Q is the quality coefficient. H(f) = 1/(1 + j Q (f/f0 - f0/f)) -> d s(n) = a e(n) - a e(n-1) + b s(n-1) + c s(n-2) with a=tau/Te b=a+2 Q^2 a^2 c=-Q a^2 d=a+Q+Q a^2

LIST-ALL-TEST (&OPTIONAL (STREAM *STANDARD-OUTPUT*))
List all available tests

PRINT-TEST (NUM &OPTIONAL (STREAM *STANDARD-OUTPUT*))
View the code for test 'num'

S-ADD (&KEY (TIME 0) FORM (POS 0) TAGS (COLOR 65280) (LENGTH 0.2))
Add a sample on song

S-COPY (SONG-SAMPLE &KEY TIME FORM POS TAGS COLOR LENGTH)
Copy a sample in a song

S-DELETE (&KEY TIME FORM POS TAGS COLOR LENGTH ALL)
Delete a sample in a song

S-MAP-FUN (&KEY TIME FORM POS TAGS COLOR LENGTH ALL FUN)
Map a function over a sample in a song matching time/form/pos/tags/color/length. When 'all' is true, map on all samples in the song

S-MAP ((&KEY TIME FORM POS TAGS COLOR LENGTH ALL) &BODY BODY)
Apply body on sample matching time/form/pos/tags/color/length. Capture intentionally the sample into the variable 'it' and sample slots (as time, form, pos and tags) are bounds. When 'all' is true, apply on all samples in the song

S-PRINT (SONG-SAMPLE)
Print a sample in a song

WITH-SONG (&BODY BODY)
Apply body on the current loaded song. Capture intentionally the song in the variable 'it'. (Note: a song is just a list of song-sample)

SET-SONG (&BODY BODY)
Set the current loaded song with the result of body. Capture intentionally the song in the variable 'it'. (Note: a song is just a list of song-sample)

WITH-SAMPLE (&BODY BODY)
Apply body on the current loaded sample. Capture intentionally the sample in the variable 'it'

SET-SAMPLE (&BODY BODY)
Set the current loaded sample with the result of body. Capture intentionally the sample in the variable 'it'. And save the result with a undo/redo method

UNDO (&OPTIONAL (LEVEL NIL))
Undo the effect of set-sample

REDO (&OPTIONAL (LEVEL NIL))
Redo the effect of set-sample

CLEAR-UNDO (&OPTIONAL (MAX-LEVEL 100))
Clear all undo/redo saved states

LIST-UNDO (&OPTIONAL (MAX-LEVEL 100))
List all undo/redo saved states

TUTORIAL (&OPTIONAL (HIT-DELAY 0.1) (END-DELAY 1))
Run a tutorial to demonstrate a use of the sample editor

NEXT-TUTORIAL NIL
Run the next tutorial step

Available tests are:

(This documentation has been automatically generated with the function auto-doc)

Valid XHTML 1.0 Strict