foutk
Précédent | Opcodes et opérateurs de l'orchestre | Suivant

## foutk

foutk — Envoie des signaux de taux-k vers un nombre arbitraire de canaux dans un fichier externe, en format brut (sans en-tête).

## Description

foutk envoie N signaux de taux-k vers un fichier spécifié à N canaux.

## Syntaxe

    foutk ifilename, iformat, kout1 [, kout2, kout3,....,koutN]

## Initialisation

ifilename -- le nom du fichier de sortie (entre guillements)

iformat -- un indicateur pour choisir le format du fichier de sortie (note : il se peut que les versions de Csound antérieures à la 5.0 ne supportent que les formats 0 et 1) :

- 0 - échantillons en flottants sur 32 bit sans en-tête (fichier PCM binaire multicanaux)

- 1 - entiers sur 16 bit sans en-tête (fichier PCM binaire multicanaux)

- 2 - entiers sur 16 bit sans en-tête (fichier PCM binaire multicanaux)

- 3 - échantillons u-law sans en-tête

- 4 - entiers sur 16 bit sans en-tête

- 5 - entiers sur 32 bit sans en-tête

- 6 - flottants sur 32 bit sans en-tête

- 7 - entiers non signés sur 8 bit sans en-tête

- 8 - entiers sur 24 bit sans en-tête

- 9 - flottants sur 64 bit sans en-tête

## Exécution

kout1,...koutN -- signaux au taux de contrôle à écrire dans le fichier. L'étendue de l'amplitude des signaux est déterminée par le format d'échantillon choisi.

foutk opère de la même maniière que fout, mais avec des signaux de taux-k. iformat peut prendre une valeur entre 0 et 9, ou 0 et 1 avec une ancienne version de Csound.

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 foutk. Il utilise le fichier foutk.csd.

Exemple 370. Exemple de l'opcode foutk.

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

    ; by Stefano Cucchi - 2020

    ; Sing in your microphone for 10''
    ; Estimated pitch & amplitude are written on 2 files "amp" 6 "pitch"
    ; After 10'' a sawtooth is played with these values

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

    instr 1	;use pitch

    iupdte = 0.001
    ilo = 6
    ihi = 10
    idbthresh = 10
    ifrqs = 24
    iconf = 10
    istrt = 8

    asig1, asig2 inch 1, 2
    koct, kamp pitch asig1, iupdte, ilo, ihi, idbthresh, ifrqs, iconf, istrt ; pitch & amplitude tracking

    kcps = cpsoct(koct)
    kamp = kamp*0.00002
    foutk "amp", 6, kamp ; write amplitude values on a file - 32-bit floats without header
    foutk "pitch", 6, kcps ;  write pitch values on a file - 32-bit floats without header

    endin

    instr 2

    kamp readk "amp", 6, p4 ; read amplitude values fro the file
    kcps readk "pitch", 6, p4 ; read pitchvalues fro the file

    kcps portk kcps, 0.008
    asig oscili kamp, kcps*p5, 1 ; use amplitude & pitch to play a sawtooth
    kdeclick linseg 0, 0.2, 1, p3 -0.4, 1, 0.2, 0

    outs asig*kdeclick, asig*kdeclick

    endin

    </CsInstruments>
    <CsScore>

    f1 0 16384 10 1 0.5 0.3 0.25 0.2 0.167 0.14 0.125 .111   ;sawtooth

    i 1 0 10
    i 2 10 10 0.001 1 ;
    e
    </CsScore>
    </CsoundSynthesizer>

Pour éviter le bruit de zip produit par des discontinuités dans la poursuite d'enveloppe complexe, on peut utiliser un filtre passe-bas pour lisser l'enveloppe estimée.

## Voir aussi

fiopen, fout, fouti, foutir

## Crédits

Auteur : Gabriel Maldonado
Italie
1999

Nouveau dans la version 3.56 de Csound

Précédent | Niveau supérieur | Suivant
foutir | Sommaire | fprintks