Skip to main content

Practica 7: Caja de ritmos

Ahora que tenemos los instrumentos de una batería y sabemos hacer un secuenciador vamos a juntarlo todos para crear una caja de ritmos de 8 pasos/tiempos.

¿Qué necesitamos y estructura va a tener este programa? Este sera nuestro algoritmo general

1- Necesitamos un contador de 8 pasos.

2- Necesitaremos enviar esos pasos a cada uno de nuestros instrumentos

3- Necesitaremos indicar en cada instrumento en cual o cuales de los 8 pasos queremos que se activen. 

4- Necesitaremos que los instrumentos generen una señal.

5- Necesitaremos mezclar la señal de los tres instrumentos y regular el volumen de ma mezcla (master).

6- Necesitaremos poder regular el volumen de cada instrumento para ajustar la mezcla.


1- Contador de 8 pasos.

Esto ya lo hemos hecho anteriormente en la página tal. Y sería algo asi:

image-1668082983715.PNG


2- Enviar esos pasos a cada uno de nuestros instrumentos.

Para mantener facilitar el orden y la legibilidad de nuestro patch utilizaremos los objetos send and receive para enviar el resultado de nuestro contador (que sera valores del 0 al 7) a cada uno de nuestros instrumentos.

3- Indicar en cada instrumento en cual o cuales de los 8 pasos queremos que se activen. 

Este paso va a ser el más novedoso para nostros ya que aún no hemos construido un patch así. ¿Como podemos hacer esto y que necesitamos? escribamos un algoritmo para plantear la solución a nuestro problema.

3.1- Necesitamos saber en qué paso está el contador.

3.2- Necesitaremos una configuración que indique en que pasos queremos que se active el instrumento.

3.3 - Necesitamos saber si el paso en que se encuentra el contador está activado en un instrumento. 

3.4 - Si el paso en el que se encuentra el contador esta activado enviaremos un bang para activar el instrumento   

3.5 - Si el paso en el que se encuentra el contador no está activado no enviaremos un bang para activar el instrumento

Vamos a incluir el sub-algoritmo 3 en un subpatch que tendrá X inlets y X outlets.

 

3.1 - Habíamos dicho en el punto dos que enviaríamos el resultado del contador con un objeto send, asique crearemos un objeto receive para que a cada uno de nuestros instrumentos les llegue la información de en qué paso está el contador.

3.2 - En nuestro caso vamos a utilizar 8 obetos toggle para cada instrumento, habiamos visto su funcionamiento en la página tal. los colocaremos en fila y cada uno de ellos controlara el estado de un paso del contador. Cuando el toggle este abierto enviara un 1 por su salida y cuando esté cerrado un 0. (Hay otras formas de configurar los patrones de ritmo de un instrumento, por ejemplo utilizando un mensaje con 8 valores)

3.3 - Para ello vamos a comparar la posición en la que se encuentra el contador con el estado de un instrumento para esa posición. Los valores que genera el contador van de 0 a 7 y los valores que genera el toggle que nos indica el estado de cada posición son 0 o 1. Vamos a buscar una manera de comparar estos dos valores. 

Primero vamos a utilizar el objeto "select" o "sel" para separar cada uno de los pasos del contadorcontador. y có¿Cómo funciona este objeto? En el objeto sel"sel" podremos introducir tantos argumentos como elementos queramos evaluar, cuando un elemento recibido por el sel coincida con alguno de su argumento enviara un bang a traves del outlet correspondiente con la posición del argumento,argumento.

esto

image-1668331645853.PNG

Esto quiere decir si escoincide con el segundo argumentoargumento, enviara un bang por el outlet segundo. select se puede utilizar tambientambién con simbolossímbolos, pero no se puedepueden mezclar.mezclar símbolos y numero. En nuestro caso vamos a utilizar números. Pero vemos que para tres argumentos tenemos 4 outlets. Esto es porque por el ultimo outlet se enviarán aquellos valores que no coincidan con ninguno de los argumentos. Abre el patch select.pd para probar el objeto.

image-1668331727071.PNG

Ahora que ya conocemos el objeto select vamos a utilizarlo para separar cada uno de los pasos del contador. Como el contador genera números de 0 a 7 vamos a crear un "select" con 8 argumentos

4- Instrumentos generen una señal, o que la reproduzcan.

Los hemos hecho en el ejercicio anterior (quitar el regulador de volumen para que lo pongan en esta práctica)

5- Mezclar la señal de los tres instrumentos y regular el volumen de la mezcla (master).

El volumen del master es lo que enviamos a nuestros altavoces.

6- Regular el volumen de cada instrumento para ajustar la mezcla.

Incluye en el sub patch de cada instrumento un inlet mas para controlar el volumen de  cada instrumento.


Ejercicio 1: Construye la caja de ritmos como se indica a continuación con un mínimo de tres instrumentos. Puedes incluis más intrumentos o sonidos grabados, incluso una melodia. Una vez tengas tu caja de ritmos graba tres adios con diferentes patrones de ritmo diferentes. Y sube tu patch y esas tres grabaciones.