pvsfread

pvsfread — Lit un canal sélectionné d'un fichier d'analyse PVOC-EX.

Description

Crée un flot fsig en lisant un canal sélectionné d'un fichier d'analyse PVOC-EX chargé en mémoire, avec interpolation de trame. Seuls les fichiers au format 0 (amplitude + fréquence) sont actuellement supportés. L'opération de cet opcode reflète celle de pvoc, mais en restituant un fsig au lieu d'un signal resynthétisé.

Syntaxe

fsig pvsfread ktimpt, ifn [, ichan]

Initialisation

ifn -- Nom du fichier d'analyse. Il doit avoir l'extension de fichier .pvx.

On peut générer un fichier PVOC-EX multi-canaux avec l'pvanal utility étendue.

ichan -- (facultatif) Le canal à lire (en comptant à partir de 0). Vaut 0 par défaut.

Exécution

ktimpt -- pointeur temporel dans le fichier d'analyse, en secondes. Voir la description du même paramètre de pvoc pour son utilisation.

Noter que les fichiers d'analyse peuvent être très grands, surtout s'ils sont multi-canaux. La lecture de tels fichiers en mémoire provoquera probablement des coupures audio durant une exécution en temps réel. Comme le fichier n'est lu qu'une fois, étant ensuite disponible pour tous les opcodes intéressés, il peut être opportun de disposer d'un intrument dédié au préchargement de ces fichiers d'analyse au démarrage.

Exemples

Voici un exemple de l'opcode pvsfread. Il utilise le fichier pvsfread.csd.

Exemple 756. Exemple de l'opcode pvsfread.

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

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

instr 1
; create a PVOC-EX (*.pvx) file with PVANAL first
idur  filelen   "kickroll.pvx"		;find duration of (stereo) analysis file
kpos  line      0,p3,idur		;to ensure we process whole file
fsigr pvsfread  kpos,"kickroll.pvx", 1	;create fsig from right channel
aout  pvsynth	fsigr			;resynthesise it
      outs	aout, aout

endin
</CsInstruments>
<CsScore>

i 1 0 10
i 1 11 1
e
</CsScore>
</CsoundSynthesizer>


Crédits

Auteur : Richard Dobson
Août 2001

Nouveau dans la version 4.13