Next: Comandos de llamada para el instrumento con envolventes Up: Instrumentos Basicos en Snd Previous: Comandos de llamada para el instrumento sinuosidal


Código para sinuosidales con incremento de fase

A continuación el código instrumento para sinuosidales con incremento de fase, oscilador y envolvente de amplitud para controlar el desarrollo.


 		 
(define sinuenv
  (lambda* 
   (comienzo duracion frecuencia amplitud #:key
             (envolvente-amplitud '(0 0 50 1 100 0)))
   ;;
   (let* 
       ((inicio (floor (* comienzo (srate))))
        (longitud (floor (* duracion (srate))))
        (s (make-oscil :frequency frecuencia))
        (envamp (make-env  
                 :envelope envolvente-amplitud 
                 :scaler amplitud :start comienzo 
                 :duration duracion))
        (salida (make-vct longitud)))
     ;;
     (do ((i 0 (1+ i)))
         ((= i longitud))
       (vct-set! salida i (* (env envamp) (oscil s))
                 ))
     ;;
     (vct->samples inicio longitud salida))))


Subsecciones

© Copyright 2001-2004, mAgInvenT.ORG , All rights reserved.
Created and Mantained by Juan Reyes