foutir

foutir — Envoie des signaux de taux-i d'un nombre arbitraire de canaux dans un fichier spécifié.

Description

foutir envoie N signaux de taux-i vers un fichier spécifié à N canaux.

Syntaxe

foutir ihandle, iformat, iflag, iout1 [, iout2, iout3,....,ioutN]

Initialisation

ihandle -- un nombre qui spécifie ce fichier.

iformat -- un indicateur pour choisir le format du fichier de sortie :

  • 0 - flottants en format texte

  • 1 - flottants sur 32 bit en format binaire

iflag -- choisit le mode d'écriture dans le fichier ASCII (n'est valide qu'en mode ASCII ; en mode binaire iflag n'a aucune signification, mais il doit quand même être présent). iflag peut prendre une des valeurs suivantes :

  • 0 - ligne de texte sans préfixe d'instrument

  • 1 - ligne de texte avec préfixe d'instrument (voir ci-dessous)

  • 2 - remet à zéro le temps des préfixes d'instrument (à n'utiliser que dans certains cas particuliers. Voir ci-dessous)

iout,..., ioutN -- valeurs à écrire dans le fichier

Exécution

fouti et foutir écrivent des valeurs de taux-i dans un fichier. On utilise ces opcodes principalement pour générer un fichier de partition pendant une session en temps réel. Pour cela, il faut fixer iformat à 0 (sortie dans un fichier texte) et iflag à 1, ce qui active la sortie d'un préfixe constitué des chaînes de caractères inum, actiontime et duration, avant les valeurs des arguments iout1...ioutN. Les arguments dans le préfixe font référence au numéro de l'instrument, à la date et à la durée de la note courante.

La différence entre fouti et foutir est que dans le cas de fouti, quand iflag vaut 1, la durée du premier opcode est indéfinie (elle est ainsi remplacée par un point). Tandis que foutir n'est défini qu'à la fin de la note, si bien que la ligne de texte correspondante n'est écrite qu'à la fin de la note courante (afin de connaître sa durée). Le fichier correspondant est lié par la valeur de ihandle générée par l'opcode fiopen. On peut ainsi utiliser fouti et foutir pour générer une partition Csound tout en jouant une session en temps réel.

Noter que fout et foutk peuvent utiliser soit une chaîne de caractères contenant un nom de chemin de fichier, soit un identificateur numérique généré par fiopen. Alors qu'avec fouti et foutir, le fichier cible ne peut être spécifié que par un identificateur numérique.

Exemples

Voici un exemple de l'opcode foutir. Il utilise le fichier foutir.csd et il crée la liste "foutir.sco". Celle-ci peut être utilisée comme fichier de partition.

Exemple 373. Exemple de l'opcode foutir.

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

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

gihand fiopen "foutir.sco", 0 

instr 1 ; play virtual midi keyboard

inot  notnum  ;just for priting on screen
icps  cpsmidi    
iamp  ampmidi 1

      foutir  gihand, 0, 1, icps, iamp 
      prints  "WRITING:\n"
      prints  "note = %f,velocity = %f\n", icps, iamp  ;prints them
      ficlose gihand
asig  pluck   iamp, icps, 1000, 0, 1
      outs    asig, asig

endin 
</CsInstruments> 
<CsScore> 

f 0 10

e
</CsScore> 
</CsoundSynthesizer> 


Voir aussi

fiopen, fout, fouti, foutk

Crédits

Auteur : Gabriel Maldonado
Italie
1999

Nouveau dans la version 3.56 de Csound