octave

octave — Calcule un facteur pour élever/abaisser une fréquence d'un certain nombre d'octaves.

Description

Calcule un facteur pour élever/abaisser une fréquence d'un certain nombre d'octaves.

Syntaxe

octave(x)

Cette fonction travaille aux taux-i, -k et -a.

Initialisation

x -- une valeur exprimée en octaves.

Exécution

La valeur retournée par la fonction octave est un facteur. On peut multiplier une fréquence par ce facteur pour l'élever/l'abaisser du nombre d'octaves spécifié.

Exemples

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

Exemple 580. Exemple de l'opcode octave.

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
-odac      ;;;realtime audio out
;-iadc    ;;;uncomment -iadc if realtime audio input is needed too
; For Non-realtime ouput leave only the line below:
; -o octave.wav -W ;;; for file output any platform
</CsOptions>
<CsInstruments>

sr = 44100
ksmps = 32
nchnls = 2
0dbfs  = 1

instr 1

iroot = 440		; root note is A above middle-C (440 Hz)
koct  lfo 5, 1, 5	; generate sawtooth, go from 5 octaves higher to root
koc = int(koct)		; produce only whole numbers
kfactor = octave(koc)	; for octave
knew = iroot * kfactor
printk2 knew

asig pluck 1, knew, 1000, 0, 1 
asig dcblock asig	;remove DC
     outs asig, asig

endin
</CsInstruments>
<CsScore>

i 1 0 5
e

</CsScore>
</CsoundSynthesizer>


Sa sortie contiendra ces lignes :

i1  3520.00000
i1  1760.00000
i1   880.00000
i1   440.00000
i1  7040.00000
i1  3520.00000
i1  1760.00000
i1   880.00000
i1   440.00000
.......

Voir aussi

cent, db, semitone

Crédits

Nouveau dans la version 4.16