fluidSetInterpMethod

fluidSetInterpMethod — Fixe la méthode d'interpolation pour un canal dans le moteur fluidsynth.

Syntaxe

fluidSetInterpMethod ienginenum, ichannelnum, iInterpMethod

Description

Fixe la méthode d'interpolation pour un canal dans le moteur fluidsynth. Les méthodes d'interpolation d'ordre inférieur donnent une restitution plus rapide et de moindre qualité tandis que les méthodes d'interpolation d'ordre élevé donnent une restitution plus lente et de meilleure qualité. L'interpolation par défaut pour un canal est du quatrième ordre.

Initialisation

ienginenum -- numéro du moteur alloué par fluidEngine

ichannelnum -- numéro de canal à utiliser pour le preset dans le moteur fluidsynth donné

iInterpMethod -- méthode d'interpolation, l'une des suivantes

  • 0 -- Pas d'interpolation

  • 1 -- Interpolation linéaire

  • 4 -- Interpolation d'ordre 4 (par défaut)

  • 7 -- Interpolation d'ordre 7 (la plus haute)

Exemples

Voici un exemple de l'opcode fluidSetInterpMethod. Il utilise les fichiers fluidSetInterpMethod.csd et 07AcousticGuitar.sf2.

Exemple 315. Exemple de l'opcode fluidSetInterpMethod.

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

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

giengine fluidEngine
; soundfont path to manual/examples
isfnum	 fluidLoad "07AcousticGuitar.sf2", giengine, 1
	 fluidProgramSelect giengine, 1, isfnum, 0, 0

instr 1

	mididefault   60, p3
	midinoteonkey p4, p5
ikey	init p4
ivel	init p5
iInterpMethod = p6
fluidSetInterpMethod giengine, 1, iInterpMethod
	fluidNote giengine, 1, ikey, ivel

endin

instr 99

imvol  init 7
asigl, asigr fluidOut giengine
       outs asigl*imvol, asigr*imvol

endin
</CsInstruments>
<CsScore>
;hear the difference
i 1 0 2 60 120 0 ;no interpolation
i 1 3 2 72 120 0
i 1 6 2 60 120 7 ;7th order interpolation
i 1 9 2 72 120 7

i 99 0 12    

e
</CsScore>
</CsoundSynthesizer>


Voir aussi

fluidEngine

Plus d'information sur soundfonts dans les Floss Manuals : http://en.flossmanuals.net/csound/ch048_d-reading-midi-files

D'autres informations au sujet de soundfonts sur Wikipedia : http://en.wikipedia.org/wiki/Soundfont

Crédits

Auteur : Steven Yi

Nouveau dans la version 5.07