delay1

delay1 — Delays an input signal by one sample.

Description

Delays an input signal by one sample.

Syntax

ares delay1 asig [, iskip]

Initialization

iskip (optional, default=0) -- initial disposition of delay-loop data space (see reson). The default value is 0.

Performance

delay1 is a special form of delay that serves to delay the audio signal asig by just one sample. It is thus functionally equivalent to the delay opcode but is more efficient in both time and space. This unit is particularly useful in the fabrication of generalized non-recursive filters.

Examples

Here is an example of the delay and delay1 opcodes. It uses the file delay1.csd.

Example 176. Example of the delay1 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    No messages
-odac           -iadc     -d     ;;;RT audio I/O
; For Non-realtime ouput leave only the line below:
; -o delay.wav -W ;;; for file output any platform
</CsOptions>
<CsInstruments>

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

; Instrument #1 -- Silence on one channel
instr 1
  ; Make a basic sound.
  abeep vco    20000, 440, 1

  ; Delay the beep by 1 sample.
  idlt  =      1/sr
  adel  delay  abeep, idlt
  adel1 delay1 abeep 

  ; Send the beep to the left speaker and
  ; the difference in the delayes to the right speaker.
        outs   abeep, adel-adel1
endin


</CsInstruments>
<CsScore>

; Table #1, a sine wave.
f 1 0 16384 10 1

; Play Instrument #1.
i 1 0.0 1

e


</CsScore>
</CsoundSynthesizer>


See Also

delay, delayr, delayw

Credits

Author: Barry Vercoe

Example written by John ffitch.