ftchnls

ftchnls — Retourne le nombre de canaux dans un table de fonction en mémoire.

Description

Retourne le nombre de canaux dans un table de fonction en mémoire.

Syntaxe

ftchnls(x) (arg de taux-i seulement)

Exécution

Retourne le nombre de canaux d'une table GEN01, déterminé par l'en-tête du fichier d'origine. Si le fichier d'origine n'a pas d'en-tête ou si la table n'a pas été créée par GEN01, ftchnls retourne -1.

Exemples

Voici un exemple de l'opcode ftchnls. Il utilise les fichiers ftchnls.csd, mary.wav et kickroll.wav.

Exemple 353. Exemple de l'opcode ftchnls.

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 ftchnls.wav -W ;;; for file output any platform
</CsOptions>
<CsInstruments>

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

instr 1

ichnls = ftchnls(p4)
print ichnls

if (ichnls == 1) then
   asigL loscil3 .8, 4, p4
   asigR = 	asigL
elseif (ichnls == 2) then
   asigL, asigR loscil3 .8, 4, p4
;safety precaution if not mono or stereo
else
   asigL = 0
   asigR = 0
endif
        outs asigL, asigR

endin
</CsInstruments>
<CsScore>
f 1 0 0 1 "mary.wav" 0 0 0
f 2 0 0 1 "kickroll.wav" 0 0 0

i 1 0 3 1 ;mono file
i 1 + 2 2 ;stereo file
e
</CsScore>
</CsoundSynthesizer>


Le fichier audio « mary.wav » étant monophonique et le fichier audio « kickroll.wav » étant stéréophonique, la sortie comprendra des lignes comme celles-ci :

instr 1:  ichnls = 1.000
instr 1:  ichnls = 2.000

Voir aussi

ftlen, ftlptim, ftsr, nsamp

Crédits

Auteur : Chris McCormick
Perth, Australie
Décembre 2001