cossegb
Prev | Orchestra Opcodes and Operators | Next

## cossegb

cossegb — Trace a series of line segments between specified absolute points with cosine interpolation.

## Description

Trace a series of line segments between specified absolute points with cosine interpolation.

## Syntax

    ares cossegb ia, itim1, ib [, itim2] [, ic] [...]

    kres cossegb ia, itim1, ib [, itim2] [, ic] [...]

## Initialization

ia -- starting value.

ib, ic, etc. -- value at tim1 seconds, etc.

itim1 -- time in seconds of end of first segment. A zero or negative value will cause all initialization to be skipped.

itim2, itim3, etc. -- time in seconds at the end of subsequent segments.

## Performance

These units generate control or audio signals whose values can pass through 2 or more specified points. The last tim value may or may not equal the instrument's performance time: a shorter performance will truncate the specified pattern, while a longer one will cause the last value to be repeated until the end of the note.

## Examples

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

Example 123. Example of the cossegb 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
    -odac      ;;;realtime audio out
    ;-iadc    ;;;uncomment -iadc if realtime audio input is needed too
    ; For Non-realtime ouput leave only the line below:
    ;-o linseg.wav -W ;;; for file output any platform
    </CsOptions>
    <CsInstruments>

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

    giSine ftgen 0, 0, 2^10, 10, 1

    instr 1

    kcps = cpspch(p4)
    kenv cossegb 0, 0.25, 1, 1, 0
    asig poscil kenv, kcps, giSine
         outs asig, asig

    endin

    instr 2	; scaling to duration

    kcps = cpspch(p4)
    kenv cossegb 0, p3*0.25, 1, p3, 0
    asig poscil kenv, kcps, giSine
         outs asig, asig

    endin

    </CsInstruments>
    <CsScore>

    i 1 0 1   7.00	; = 1 sec, p3 fits exactly
    i 1 2 2   7.00	; = 2 sec, p3 truncated at 1 sec

    i 2 4 1   7.00	; scales to duration
    i 2 6 2   7.00	; of p3

    e
    </CsScore>
    </CsoundSynthesizer>

## See Also

cosseg, expon, expseg, expsegr, line, linseg linsegb linsegr transeg

## Credits

Author: John ffitch
Aug 2012

New in version 5.18

Prev | Up | Next
cosseg | Home | cossegr