nonlinearinstruments.com

  • Increase font size
  • Default font size
  • Decrease font size
Home Reaktor 5 Tutorial
Reaktor5 Tutorial

Ignasi Álvarez Garriga, Octubre 2007

Modelado en Reaktor5Core.
[con pseudo-código y unas pinceladas de csound]

Introducción.

Expondremos de forma progresiva la implementación en Reaktor5 de algunas técnicas estándar de integración de modelos dinámicos, de modo que alcancemos el nivel de competencia suficiente para poder extender su aplicación a cualquiera de los abundantes recetarios de ecuaciones existentes, transportándolos de otros contextos de ingeniería al entorno especializado para música que es Reaktor5.

Se trata de una aproximación a la síntesis de sonido a partir de modelos digitales distintos a los clásicos elementos del sintetizador Moog: la circuitería digital de filtros, envolventes ADSR, osciladores por tablas de ondas y todo el arsenal habitual de componentes para sintetizadores, ya está suficientemente explicada en el tutorial de Native Instruments para Reaktor5 Core (cuya lectura y asimilación previa se dan por supuestas en este tutorial).

Empezaremos por los modelos más simples (generador de rampa, serie de fibonacci) que nos servirán para aclarar los conceptos básicos del esquema de implementación en Reaktor5; luego desarrollaremos una aplicación con integración "directa" (modelo de parábola balística), y después exploraremos algunos sistemas caóticos clásicos (iterador cuadrático, atractores de Lorenz y Rössler).

En la medida de lo posible, trataremos de ir exponiendo los distintos modelos - o por lo menos su estructura básica - a partir de pseudo-código; de forma que nuestras averiguaciones, si lo mereciesen, sean fácilmente transportables a entornos distintos de Reaktor5. También recuperaremos la implementación de algunos modelos caóticos adicionales en el óptimo entorno de Csound, donde empezó nuestra averiguación antes de disponer de las comodidades de Reaktor5.

Los distintos ensembles de Reaktor5 que iremos construyendo, han sido probados en Reaktor5 ver. 5.12.009 en un Apple Mac Book Pro, por lo que agradeceremos cualquier comentario sobre su compatibilidad en versiones distintas. Si no se dispone de una licencia de Native Instruments para Reaktor5, puede utilizarse las versiones demo disponibles en www.native-instruments.com/
Los ejemplos de Csound han sido probados en la compilación MacCsound 1.3b4 de Matt Ingalls en el mismo Mac Book Pro. Esta y otras versiones de Csound se pueden descargar libremente en www.csounds.com



Tutorial 1.1 : Inicialización, bucles y condicionales.

Como punto de partida para estudiar las estructuras básicas de Reaktor5 Core, que nos servirán para implementar diversos modelos matemáticos y su utilización como instrumentos musicales, empezaremos con un generador muy sencillo. La señal consiste en un valor creciente que, al llegar a un cierto límite o umbral, vuelve a cero y repite el proceso.

Read more...
 

Tutorial 1.2 : Disparando con MIDI.

Tal como habíamos comentado, todos los latch y el z^-1 estaban en el anterior instrumento conectados al SR.C Ahora, vamos a añadir un puerto de entrada al que llamamos clock y vamos a conectarlo a un nuevo quick bus al que llamaremos también clock, sustituyendo luego todos los SR.C por el nuevo bus clock.

Read more...
 

Tutorial 1.3 : Acumulando progresos.

Ahora vamos a empezar a beneficiarnos de la correcta ordenación de la estructura del instrumento tal como comentábamos al principio. Vamos a utilizar un modelo ligeramente más complicado que la rampa, sin necesidad de modificar nada (casi nada) fuera de la core cell más interna.

Read more...
 

Tutorial 1.4 : Más sobre relojes.

Hablemos un poco más de SR.C ... en realidad, consiste en una sucesión de valores 0 que se envían regularmente en el tiempo, y que son como una metáfora del reloj de frecuencia de muestreo, cuyo valor en número de muestras por segundo nos lo suministra dentro de las core cells el bus especial SR.R

Read more...
 

Tutorial 1.5 : Coda.

Si nuestra señal de audio tiene que moverse entre -1 y +1, entonces el generador tiene que empezar su cuenta en -1 y cuando se incialice, hacerlo también a -1. Ya que el sumatorio del generador, va aumentando la señal de 1 en 1, y luego la normalizamos dividiendo al final de la core cell ramp por el valor del thrhld, entonces nuestro valor real de inicialización será el thrshld multiplicado por -1, o lo que es lo mismo, lo que hemos hecho en esta nueva core cell : entrar el valor del thrhld en un modulo que invierte su polaridad y usarlo como un nuevo quick bus llamado init con el que alimentamos el mecanismo de reseteo después del condicional (la pareja compare-selector).

Read more...
 

Tutorial 2.1 : El modelo balístico

Vamos a tratar de implementar ahora un modelo ligeramente más complicado. Consiste en imprimir una velocidad inicial a un punto y seguir la trayectoria de ese punto sometido a la fuerza de la gravedad hasta que toque el suelo. Podremos ajustar la fuerza de la gravedad, el ángulo de tiro  y el impulso. Esto nos dará una trayectoria en x,y o lo que es lo mismo, dos señales simultáneas x e y que, si las interpretamos como las coordenadas de un punto, describen la trayectoria de un tiro parabólico ideal. Necesitaremos que la señal y esté normalizada entre 0 y 1 para poder usarlo a modo de generador de envolvente.

 

Read more...