trigger

trigger --  Informs when a krate signal crosses a threshold.

Description

Informs when a krate signal crosses a threshold.

Syntax

kout trigger ksig, kthreshold, kmode

Performance

ksig -- input signal

kthreshold -- trigger threshold

kmode -- can be 0 , 1 or 2

Normally trigger outputs zeroes: only each time ksig crosses kthreshold trigger outputs a 1. There are three modes of using ktrig:

Examples

Here is an example of the trigger opcode. It uses the files trigger.orc and trigger.sco.

Example 1. Example of the trigger opcode.

/* trigger.orc */
/* Written by Kevin Conder */
; Initialize the global variables.
sr = 44100
kr = 4410
ksmps = 10
nchnls = 1

; Instrument #1.
instr 1
  ; Use a square-wave low frequency oscillator as the trigger.
  klf lfo 1, 10, 3
  ktr trigger klf, 1, 2

  ; When the value of the trigger isn't equal to 0, print it out.
  if (ktr == 0) kgoto contin
    ; Print the value of the trigger and the time it occurred.
    ktm times
    printks "time = %f seconds, trigger = %f\\n", 0, ktm, ktr

contin:
  ; Continue with processing.
endin
/* trigger.orc */
        
/* trigger.sco */
/* Written by Kevin Conder */
; Play Instrument #1 for one second.
i 1 0 1
e
/* trigger.sco */
        
Its output should include lines like this:
time = 0.050340 seconds, trigger = 1.000000
time = 0.150340 seconds, trigger = 1.000000
time = 0.250340 seconds, trigger = 1.000000
time = 0.350340 seconds, trigger = 1.000000
time = 0.450340 seconds, trigger = 1.000000
time = 0.550340 seconds, trigger = 1.000000
time = 0.650340 seconds, trigger = 1.000000
time = 0.750340 seconds, trigger = 1.000000
time = 0.850340 seconds, trigger = 1.000000
time = 0.950340 seconds, trigger = 1.000000
      

Credits

Author: Gabriel Maldonado
Italy

New in Csound version 3.49