pvsinfo — Retourne de l'information sur une source au format PVOC-EX.
Retourne de l'information sur le format de fsrc, que celui-ci soit créé par un opcode comme pvsanal ou qu'il soit obtenu à partir d'un fichier PVOC-EX par pvsfread. Cette information est disponible à l'initialisation et peut être utilisée pour fixer les paramètres d'autres opcodes pvs, en particulier pour créer des tables de fonction (par exemple pour pvsftw), ou pour fixer le nombre d'oscillateurs pour pvsadsyn.
ioverlap -- La taille de recouvrement du flot.
inumbins -- Le nombre de bins d'analyse (amplitude + fréquence) dans fsrc. La taille de TFR sous-jacente est calculée comme (inumbins - 1) * 2.
iwinsize -- La taille de la fenêtre d'analyse. Peut être supérieure à la taille de TFR.
iformat -- Le format de trame d'analyse. Si fsrc est créé par un opcode, iformat vaut toujours 0, ce qui signifie (amplitude + fréquence). Si fsrc est défini à partir d'un fichier PVOC-EX, iformat peut également valoir 1 ou 2 (amplitude + phase, complexe).
Voici un exemple de l'opcode pvsinfo. Il utilise le fichier pvsinfo.csd.
Exemple 784. Exemple de l'opcode pvsinfo.
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 pvsinfo.wav -W ;;; for file output any platform </CsOptions> <CsInstruments> sr = 44100 ksmps = 32 nchnls = 2 0dbfs = 1 instr 1 ; create a PVOC-EX (*.pvx) file with PVANAL first idur filelen "fox.pvx" ;find duration of analysis file kpos line 0,p3,idur ;to ensure we process whole file fsrc pvsfread kpos, "fox.pvx" ;create fsig from (mono) file iovl,inb,iws,ifmt pvsinfo fsrc ;get info print iovl,inb,iws,ifmt ;print info aout pvsynth fsrc outs aout, aout endin </CsInstruments> <CsScore> i 1 0 3 e </CsScore> </CsoundSynthesizer>
L'exemple produira la sortie suivante :
instr 1: iovl = 256.000 inb = 513.000 iws = 2048.000 ifmt = 0.000