STKPercFlut
Prev | Orchestra Opcodes and Operators | Next

## STKPercFlut

STKPercFlut — STKPercFlut is a percussive flute FM synthesis instrument.

## Description

STKPercFlut is a percussive flute FM synthesis instrument. The instrument uses an algorithm like the algorithm 4 of the TX81Z.

## Syntax

    asignal STKPercFlut ifrequency, iamplitude, [kc1, kv1[, kc2, kv2[, kc3, kv3[, kc4, kv4[, kc5, kv5]]]]]

## Initialization

ifrequency -- Frequency of note played, in Hertz.

iamplitude -- Amplitude of note played (range 0-1).

## Performance

kc1, kv1, kc2, kv2, kc3, kv3, kc4, kv4, kc5, kv5, kc6, kv6, kc7, kv7, kc8, kv8 -- Up to 8 optional k-rate controller pairs for the STK opcodes. Each controller pair consists of a controller number (kc) followed by a controller value (kv). The 5 controller numbers and values that work for STKPercFlut are:

- kc, kv -- 2, total modulator index.

- kc, kv -- 4, crossfade of modulator.

- kc, kv -- 11, speed of low-frequency oscillator.

- kc, kv -- 1, depth of low-frequency oscillator.

- kc, kv -- 128, ADSR 2 and 4 target.

| Note
The code for this opcode is taken directly from the PercFlut class in the Synthesis Toolkit in C++ by Perry R. Cook and Gary P. Scavone. More on the STK classes can be found here: https://ccrma.stanford.edu/software/stk/classes.html

## Examples

Here is an example of the STKPercFlut opcode. It uses the file STKPercFlut.csd.

Example 812. Example of the STKPercFlut opcode.

    <CsoundSynthesizer>
    <CsOptions>
    ; Select audio/midi flags here according to platform
    -odac     ;;;RT audio out
    ;-iadc    ;;;uncomment -iadc if RT audio input is needed too
    ; For Non-realtime ouput leave only the line below:
    ; -o STKPercFlut.wav -W ;;; for file output any platform
    </CsOptions>
    <CsInstruments>

    sr = 44100
    ksmps = 32
    nchnls = 2
    0dbfs = 1

    instr 1

    ifrq	=	p4
    kndx	line	p5, p3, p6				;Total Modulator Index
    kfad	line	p7, p3, 0				;Modulator Crossfade

    asig	STKPercFlut cpspch(ifrq), 1, 2, kndx, 4, kfad, 11, 0, 1, 100, 128, 40
    	outs asig, asig
    endin

    </CsInstruments>
    <CsScore>
    i 1 0 7  8.05 100 0  100
    i 1 3 7   9.03 20 120  0
    i 1 3 .5  8.05 20 120  0
    i 1 4 .5  9.09 20 120  0
    i 1 5 3   9.00 20 120  0

    e
    </CsScore>
    </CsoundSynthesizer>

## Credits

Author: Michael Gogins (after Perry Cook)
Irreducible Productions
New York, NY

New in Csound version 5.11

Prev | Up | Next
STKMoog | Home | STKPlucked