turnoff
Prev | Orchestra Opcodes and Operators | Next

## turnoff

turnoff — Enables an instrument to turn itself off or to turn an instance of another instrument off.

## Description

Enables an instrument to turn itself off or to turn an instance of another instrument off.

## Syntax

                turnoff

    turnoff inst

    turnoff knst

## Initialization

inst -- when used with an i-time parameter, this is the instance handle of an instrument to be turned off (obtained from the nstance opcode).

turnoff -- with no parameters this p-time statement enables an instrument to turn itself off. Whether of finite duration or “held”, the note currently being performed by this instrument is immediately removed from the active note list. No other notes are affected.

kinst -- when used with an k-time parameter, this is the instance handle of an instrument to be turned off (obtained from the nstance opcode).

## Examples

The following example uses the turnoff opcode. It will cause a note to terminate when a control signal passes a certain threshold (here the Nyquist frequency). It uses the file turnoff.csd.

Example 1136. Example of the turnoff opcode.

See the sections Real-time Audio and Command Line Flags for more information on using command line flags.

    <CsoundSynthesizer>
    <CsOptions>
    ; Select audio/midi flags here according to platform
    ; Audio out   Audio in
    -odac           -iadc    ;;;RT audio I/O
    ; For Non-realtime ouput leave only the line below:
    ; -o turnoff.wav -W ;;; for file output any platform
    </CsOptions>
    <CsInstruments>

    ; Initialize the global variables.
    sr = 44100
    kr = 4410
    ksmps = 10
    nchnls = 1

    ; Instrument #1.
    instr 1
      k1 expon 440, p3/10,880     ; begin gliss and continue
      if k1 < sr/2  kgoto contin  ; until Nyquist detected
        turnoff  ; then quit

    contin:
      a1 oscil 10000, k1, 1
      out a1
    endin

    </CsInstruments>
    <CsScore>

    ; Table #1: an ordinary sine wave.
    f 1 0 32768 10 1

    ; Play Instrument #1 for 4 seconds.
    i 1 0 4
    e

    </CsScore>
    </CsoundSynthesizer>

## See also

Duration Control Statements

Prev | Up | Next
trsplit | Home | turnoff2