line

line — Trace un segment de droite entre les points spécifiés.

Description

Trace un segment de droite entre les points spécifiés.

Syntaxe

ares line ia, idur, ib
kres line ia, idur, ib

Initialisation

ia -- valeur initiale.

ib -- valeur après idur secondes.

idur -- durée en secondes du segment. Avec une valeur nulle ou négative l'initialisation sera ignorée.

Exécution

line génère des signaux de contrôle ou des signaux audio dont les valeurs évoluent linéairement depuis une valeur initiale jusqu'à une valeur finale.

[Note] Note

Une erreur habituelle avec cet opcode est de croire que la valeur de ib est tenue après la durée idur. line ne s'arrête pas automatiquement à la fin de la durée donnée. Si la longueur de votre note dépasse idur secondes, kres (ou ares) ne s'arrêtera pas sur ib, mais au contraire il continuera à monter ou à descendre à la même vitesse. Si l'on a besoin d'une pente ascendante (ou descendante) suivie d'une tenue il faut utiliser l'opcode linseg.

Exemples

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

Exemple 265. Exemple de l'opcode line.

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 line.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
  ; Define kcps as a frequency value that linearly declines 
  ; from 880 to 220. It declines over the period set by p3.
  kcps line 880, p3, 220

  a1 oscil 20000, kcps, 1
  out a1
endin

instr 2
  kcps line 880, 1, 660   ; kcps won't stop at 660 if p3 > 1
  a1 oscil 20000, kcps, 1
  out a1
endin

</CsInstruments>
<CsScore>

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

; Play Instrument #1 for two seconds.
i 1 0 2

; Play Instrument #2 for two seconds.
i 2 3 2

e


</CsScore>
</CsoundSynthesizer>


Voir Aussi

expon, expseg, expsegr, linseg, linsegr

Crédits

Exemple écrit par Kevin Conder.