fluidLoad — Charge un SoundFont dans un fluidEngine, en listant éventuellement le contenu du SoundFont.
Opcode du greffon fluidOpcodes. Ce greffon se trouve dans le répertoire des greffons et il doit être installé séparément. Le répertoire des greffons est ici : https://github.com/csound/plugins
Charge un SoundFont dans une instance d'un fluidEngine, en listant éventuellement les banques et les presets du SoundFont.
isfnum -- numéro affecté au soundfont qui vient d'être chargé.
soundfont -- chaîne spécifiant le nom de fichier d'un SoundFont. Notez que n'importe quel nombre de SoundFonts peuvent être chargés (évidemment, par différents appels de fluidLoad).
ienginenum -- numéro du moteur affecté par fluidEngine
ilistpresets -- facultatif, s'il est spécifié, tous les programmes Fluidsynth du SoundFont qui vient d'être chargé sont listés. Un programme FluidSynth est une combinaison d'ID de SoundFont, de numéro de banque, et de numéro de preset qui est affecté à un canal MIDI.
Appelez fluidLoad dans l'en-tête de l'orchestre, autant de fois que vous voulez. Le même SoundFont peut être appelé pour affecter des programmes à des canaux MIDI autant de fois que l'on veut ; le SoundFont n'est chargé que la première fois.
Voici un exemple de l'opcode fluidLoad. Il utilise les fichiers fluidLoad.csd et 07AcousticGuitar.sf2.
Exemple 341. Exemple de l'opcode fluidLoad.
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 -+rtmidi=virtual -M0 ;;;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 fluidLoad.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 fluidNote giengine, 1, ikey, ivel endin instr 99 imvol init 7 asigl, asigr fluidOut giengine outs asigl*imvol, asigr*imvol endin </CsInstruments> <CsScore> i 1 0 2 60 100 ;play one note from score and... i 99 0 60 ;play virtual keyboard for 60 sec. e </CsScore> </CsoundSynthesizer>
Sa sortie contiendra une ligne comme celle-ci :
SoundFont: 1 Bank: 0 Preset: 0 Seagul Acoustic Git
Plus d'information sur soundfonts dans les Floss Manuals : https://flossmanual.csound.com/midi/reading-midi-files
D'autres informations au sujet de soundfonts sur Wikipedia : http://en.wikipedia.org/wiki/Soundfont