scans

scans — Génère une sortie audio au moyen de la synthèse par balayage.

Description

Génère une sortie audio au moyen de la synthèse par balayage.

Syntaxe

ares scans kamp, kfreq, ifn, id [, iorder]

Initialisation

ifn -- ftable contenant la trajectoire du balayage. C'est une série de nombres qui contiennent les adresses des masses. L'ordre de ces adresses est utilisé comme chemin de balayage. Ne doit pas contenir de valeurs supérieures au nombre de masses, ou des nombres négatifs. Voir l'introduction à la section sur la synthèse par balayage.

id -- numéro d'ID de la forme d'onde de l'opcode scanu à utiliser.

iorder (facultatif, 0 par défaut) -- ordre de l'interpolation utilisée en interne. Peut prendre n'importe quelle valeur comprise entre 1 et 4, et vaut 4 par défaut, qui est l'interpolation quartique. 2 est l'interpolation quadratique et 1 l'interpolation linéaire. Les nombres les plus élevés donnent un traitement plus lent, mais pas nécessairement meilleur.

Exécution

kamp -- amplitude de la sortie. Noter que l'amplitude résultante dépend aussi des valeurs instantanées de la table d'onde. Ce nombre est en fait la facteur de pondération de la table d'onde.

kfreq -- fréquence de balayage

Exemples

Voici un exemple de synthèse par balayage. Il utilise les fichiers scans.csd, et string-128.matrix.

Exemple 540. Exemple de l'opcode scans.

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

    sr =   44100
    ksmps =   128
    nchnls =   1

    instr 1
a0  = 0
;   scanu init, irate, ifnvel, ifnmass, ifnstif, ifncentr, ifndamp, kmass, kstif, kcentr, kdamp, ileft, iright, kpos, kstrngth, ain, idisp, id
    scanu 1,     .01,    6,       2,       3,     4,        5,       2,     .1,    .1,     -.01,  .1,    .5,     0,    0,        a0,  1,     2
;ar scans kamp,      kfreq,      ifntraj, id
a1  scans ampdb(p4), cpspch(p5), 7,       2
    out a1
    endin


</CsInstruments>
<CsScore>

; Initial condition
f1 0 128 7 0 64 1 64 0
   
; Masses
f2 0 128 -7 1 128 1
   
; Spring matrices
f3 0 16384 -23 "string-128.matrix"
   
; Centering force
f4  0 128 -7 0 128 2
   
; Damping
f5 0 128 -7 1 128 1
   
; Initial velocity
f6 0 128 -7 0 128 0
   
; Trajectories
f7 0 128 -5 .001 128 128

; Note list
i1 0  10  86 6.00
i1 11 14  86 7.00
i1 15 20  86 5.00
e


</CsScore>
</CsoundSynthesizer>


Le fichier de la matrice « string-128.matrix », ainsi que d'autres matrices, est aussi disponible dans un fichier zip depuis la page Scanned Synthesis à cSounds.com.

Crédits

Auteur : Paris Smaragdis
MIT Media Lab
Boston, Massachussetts USA

Nouveau dans la version 4.05 de Csound