diff
Prev | Orchestra Opcodes and Operators | Next

## diff

diff — Modify a signal by differentiation.

## Description

Modify a signal by differentiation.

## Syntax

    ares diff asig [, iskip]

    kres diff ksig [, iskip]

## Initialization

iskip (optional) -- initial disposition of internal save space (see reson). The default value is 0.

## Performance

integ and diff perform integration and differentiation on an input control signal or audio signal. Each is the converse of the other, and applying both will reconstruct the original signal. Since these units are special cases of low-pass and high-pass filters, they produce a scaled (and phase shifted) output that is frequency-dependent. Thus diff of a sine produces a cosine, with amplitude 2 * pi * Hz / sr that of the original (for each component partial); integ will inversely affect the magnitudes of its component inputs. With this understanding, these units can provide useful signal modification.

## Examples

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

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

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

    instr 1

    asig diskin2 "fox.wav", 1
         outs asig, asig

    endin

    instr 2	; with diff

    asig diskin2 "fox.wav", 1
    ares diff asig
         outs ares, ares

    endin

    instr 3	; with integ

    asig diskin2 "fox.wav", 1
    aint integ asig
    aint = aint*.05			;way too loud
         outs aint, aint

    endin

    instr 4	; with diff and integ

    asig diskin2 "fox.wav", 1
    ares diff asig
    aint integ ares
         outs aint, aint

    endin

    </CsInstruments>
    <CsScore>

    i 1 0 1
    i 2 1 1
    i 3 2 1
    i 4 3 1

    e

    </CsScore>
    </CsoundSynthesizer>

## See also

Sample Level Operators

Prev | Up | Next
denorm | Home | diode_ladder