mpulse

mpulse — Génère un ensemble d'impulsions.

Description

Génère un ensemble d'impulsions d'amplitude kamp à la fréquence kfreq. La première impulsion se produit après un délai de ioffset secondes. La valeur de kfreq est lue seulement après une impulsion, fournissant ainsi l'intervalle de temps entre l'impulsion courante et l'impulsion suivante.

Syntaxe

ares mpulse kamp, kfreq [, ioffset]

Initialisation

ioffset (facultatif, par défaut 0) -- le délai avant la première impulsion. S'il est négatif, la valeur est interprétée comme le nombre d'échantillons, sinon il représente des secondes. La valeur par défaut est zéro.

Exécution

kamp -- amplitude des impulsions générées

kfreq -- fréquence du train d'impulsions

Après le délai initial, une impulsion d'amplitude kamp est générée comme échantillon unique. Immédiatement après la génération de l'impulsion, la date de la suivante est calculée. Si kfreq est nul, il y a un temps d'attente infini jusqu'à la prochaine impulsion. Si kfreq est négatif, la fréquence est comptée en échantillons plutôt qu'en secondes.

Exemples

Voici un exemple de l'opcode mpulse. Il utilise le fichier mpulse.csd.

Exemple 260. Exemple de l'opcode mpulse.

Voir les sections Audio en Temps Réel et Options de la Ligne de Commande pour plus d'information sur l'utilisation des options de la ligne de commande.

<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 mpulse.wav -W ;;; for file output any platform
</CsOptions>
<CsInstruments>

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

; Instrument #1.
instr 1
  ; Generate an impulse every 1/10th of a second.
  kamp = 30000
  kfreq = 0.1

  a1 mpulse kamp, kfreq
  out a1
endin


</CsInstruments>
<CsScore>

; Play Instrument #1 for one second.
i 1 0 1
e


</CsScore>
</CsoundSynthesizer>

Crédits

Exemple écrit par Kevin Conder.