wgbow
Prev | Orchestra Opcodes and Operators | Next

## wgbow

wgbow — Creates a tone similar to a bowed string.

## Description

Audio output is a tone similar to a bowed string, using a physical model developed from Perry Cook, but re-coded for Csound.

## Syntax

    ares wgbow kamp, kfreq, kpres, krat, kvibf, kvamp \
        [, ifn] [, iminfreq]

## Initialization

ifn -- optional table of shape of vibrato, defaults to a sine table.

iminfreq (optional) -- lowest frequency at which the instrument will play. If it is omitted it is taken to be the same as the initial kfreq. If iminfreq is negative, initialization will be skipped.

## Performance

A note is played on a string-like instrument, with the arguments as below.

kamp -- amplitude of note.

kfreq -- frequency of note played.

kpres -- a parameter controlling the pressure of the bow on the string. Values should be about 3. The useful range is approximately 1 to 5.

krat -- the position of the bow along the string. Usual playing is about 0.127236. The suggested range is 0.025 to 0.23.

kvibf -- frequency of vibrato in Hertz. Suggested range is 0 to 12

kvamp -- amplitude of the vibrato

## Examples

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

Example 1201. Example of the wgbow 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 RT audio input is needed too
    ; For Non-realtime ouput leave only the line below:
    ; -o wgbow.wav -W ;;; for file output any platform
    </CsOptions>
    <CsInstruments>

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

    instr 1

    kpres = p4							;pressure value
    krat = p5							;position along string
    kvibf = 6.12723

    kvib  linseg 0, 0.5, 0, 1, 1, p3-0.5, 1				; amplitude envelope for the vibrato.
    kvamp = kvib * 0.01
    asig  wgbow .7, 55, kpres, krat, kvibf, kvamp, 1
          outs asig, asig

    endin
    </CsInstruments>
    <CsScore>
    f 1 0 2048 10 1	;sine wave

    i 1 0 3 3 0.127236
    i 1 + 3 5 0.127236
    i 1 + 3 5 0.23

    e
    </CsScore>
    </CsoundSynthesizer>

## Credits

Author: John ffitch (after Perry Cook)
University of Bath, Codemist Ltd.
Bath, UK

New in Csound version 3.47

ifn optional in version 6.06

Prev | Up | Next
weibull | Home | wgbowedbar