waveset — Un variateur de durée simple par répétition de périodes.
ilen (facultatif, 0 par défaut) -- la longueur (en échantillons) du signal audio. Si ilen vaut 0, la moitié de la longueur de la note donnée (p3) est prise.
ain -- le signal audio en entrée.
krep -- le nombre de fois que la période est répétée.
L'entrée est lue et chaque période complète (deux passages par zéro) est répétée krep fois.
Il y a un tampon interne car la sortie est évidemment plus lente que l'entrée. Il faut faire attention si le tampon est trop court, car il peut y avoir des effets étranges.
Voici un exemple de l'opcode waveset. Il utilise les fichiers waveset.csd et beats.wav.
Exemple 887. Exemple de l'opcode waveset.
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 ; Audio out Audio in No messages -odac -iadc -d ;;;RT audio I/O ; For Non-realtime ouput leave only the line below: ; -o waveset.wav -W ;;; for file output any platform </CsOptions> <CsInstruments> ; Initialize the global variables. sr = 44100 kr = 4410 ksmps = 10 nchnls = 1 ; Instrument #1 - play an audio file. instr 1 asig soundin "beats.wav" out asig endin ; Instrument #2 - stretch the audio file with waveset. instr 2 asig soundin "beats.wav" a1 waveset asig, 2 out a1 endin </CsInstruments> <CsScore> ; Play Instrument #1 for two seconds. i 1 0 2 ; Play Instrument #2 for four seconds. i 2 3 4 e </CsScore> </CsoundSynthesizer>