octave — Calcule un facteur pour élever/abaisser une fréquence d'un certain nombre d'octaves.
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é.
Voici un exemple de l'opcode octave. Il utilise le fichier octave.csd.
Exemple 671. 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 .......