Next: Síntesis Substractiva, ruido blanco filtrado Up: Otros ejemplos con Snd Previous: Ruido Blanco con Envolvente y Panorámicas


Ruido blanco en un espacio de 180 grados


 		 
 
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
;;;
;;;
;;;  Función para estirar ruido blanco en un espacio de 180 Grados
;;;  
;;;
;;;                                       juanig\_at\_ccrma
;;;
;;;                                              (c) 2005


(define rblanco-espa
  (lambda* (comienzo duracion amplitud
		        #:key
			(amp-env '(0 0.20 1 0.95))
			(pan-env '(0 0.0 0.5 90.0 1 0.00))
			(angulo 0.00) (distancia 1.0) )
	   (let* ((inicio (floor (* comienzo (srate))))
		  (longitud (floor (* duracion (srate))))
		  (ruido (make-rand :frequency (* 0.52 (srate)) 
				    :amplitude amplitud))
		  (env-a0 (make-env :envelope amp-env
				   :duration duracion))
		  (env-a1 (make-env :envelope amp-env
				   :duration duracion))
		  (l-env (make-env :envelope pan-env 
				    :scaler (/ 1.0 90.0)
				    :duration duracion ))
		  (r-env (make-env :envelope pan-env 
				    :scaler (/ 1.0 90.0)
				    :duration duracion ))
		  (loc (make-locsig :channels (channels) 
				    :degree angulo  
				    :distance distancia))
		  (out-a (make-vct longitud))
		  (out-b (make-vct longitud)))
	     (vct-map! out-a (lambda () 
			       (let ((p-val (env l-env)))
				 (locsig-set! loc 0 (- 1.0 p-val))
				 (* (locsig-ref loc 0) (env env-a0) (rand ruido))
				 )))
	     (vct-map! out-b (lambda () 
			       (locsig-set! loc 1 (env r-env))
			       (*  (locsig-ref loc 1 ) (env env-a1) (rand ruido))
			       ))
	     (vct->channel out-a inicio longitud  #f 0)
	     (vct->channel out-b inicio longitud  #f 1))))

;;; (load "rblanco.scm")
;; (rblanco-espa 0 1 0.5)

(define vueltas1
  (lambda (num durac)
    (let ((inic 0.0))
      (do ((i 0 (1+ i))) 
	  ((= i num))
	(begin
	  (rblanco-espa inic 
			durac 
			0.5
			:amp-env '(0 0.0 0.5 1.0 1.0 0.0)
			:pan-env '(0 0.0 0.5 90.0 1 0.00)
			)
	  (set! inic (+ inic durac)))))))

;;; (vueltas1 2 1)
;;; (vueltas1 3 2)


© Copyright 2005-2007, expyeZp- Maginvent.ORG. All Rights Reserved, Todos Los Derechos Reservados.