Hoy vamos a crear nuestro propio sintetizador Raspberry Pi controlado con un teclado MIDI. Este proyecto nos permitirá crear nuestros propios sonidos y reproducirlos pulsando las teclas de nuestro teclado. Utilizaré un teclado Yamaha con un puerto USB MIDI para conectarlo a una Raspberry Pi 3 B+, pero este proyecto debería funcionar con cualquier Raspberry Pi y teclado con MIDI.salida.

Breve vídeo de demostración

Vamos a construir nuestro sistema de sintetizador utilizando un programa llamado Pure Data (abreviado como PD). PD fue creado por Miller Puckette a finales de los 90. La herramienta se utiliza profesionalmente e incluso se ejecuta en diferentes sistemas operativos, por lo que es ideal para nuestro proyecto. PD utiliza archivos conocidos como parches, que pueden ser creados en una máquina y fácilmente transferidos a una diferente. Siga a lo largo de instalar, configurar yutilizar Pure Data en la Raspberry Pi para trabajar con un teclado MIDI.

PD se puede utilizar para un montón de proyectos diferentes. Hoy lo estamos utilizando para hacer un sintetizador controlado por MIDI, pero sus posibilidades son mucho más amplias. Puedes crear un vocoder, autoajustar los flujos de audio entrantes, e incluso utilizarlo para hacer pedaleras para guitarras eléctricas.

    1 - Instalar y actualizar Raspberry Pi OS

    Vamos a empezar con un sistema operativo fresco. Para este proyecto, estoy ejecutando Stretch. La última versión se llama Raspberry Pi OS, pero todas las herramientas que utilizamos en este proyecto pueden no funcionar con él. Echa un vistazo a nuestra guía sobre la instalación de Raspbian Stretch para hacer lo que yo hice.

    Cómo instalar Raspbian Stretch en la Raspberry Pi

    Cómo instalar Raspberry Pi OS en su Raspberry Pi

    Consigue el nuevo Raspberry Pi OS oficial en tu Pi.

    Normalmente, basta con ejecutar el siguiente código:

     sudo apt-get update && sudo apt-get upgrade --yes 

    Siga la actualización con un buen reinicio.

    2 - Instalar Pure Data

    Pure Data es un software de código abierto impresionante. Puedes encontrar todo tipo de expansiones y complementos para sacar el máximo partido a tus proyectos de sintetizador. Pero hoy vamos a simplificar las cosas utilizando PD básico. Para instalar el paquete básico de PD, ejecuta el siguiente código:

     sudo apt-get install puredata 

    Siga las instrucciones para asegurarse de que el paquete se instala. Como regla general, reinicio mi Raspberry Pi después de instalar un nuevo software.

    3 - Instalar las herramientas ALSA y aconnectGUI

    Necesitamos instalar herramientas de sonido para conectar nuestro teclado MIDI a Pure Data. ALSA tools tiene todo lo que necesitamos para crear la conexión. AconnectGUI nos proporcionará una bonita interfaz de usuario con la que trabajar. Si no quieres usar la GUI, las operaciones se pueden realizar a través de la línea de comandos.

    Ejecute lo siguiente para instalar tanto las herramientas ALSA como aconnectGUI.

     sudo apt-get install alsa-base alsa-utils sudo apt-get install aconnectgui 

    Siga las instrucciones para completar la instalación y reinicie la Raspberry Pi.

    4 - Datos puros abiertos

    Estoy ejecutando Pure Data en una Raspberry Pi con pantalla. Es posible ejecutar PD headless, puedes encontrar una lista completa de las funciones de línea de comandos de Pure Data aquí. Hay varias formas de iniciar Pure Data. Se puede encontrar en la carpeta del menú de inicio Sonido y vídeo .

    Sin embargo, voy a lanzar PD a través de la línea de comandos por lo que se inicia con privilegios de administrador. También estoy incluyendo la etiqueta -alsamidi para que Pure Data se inicie con ALSA configurado por defecto. Ejecute lo siguiente para iniciar Pure Data desde un terminal.

     sudo pd -alsamidi 

    5 - Ajustar la configuración MIDI

    A continuación necesitamos abrir puertos virtuales dentro de Pure Data. Utilizaremos estos puertos para conectar nuestro teclado MIDI. ALSA debería estar configurado por defecto si abriste PD vía terminal en el último paso. Para asegurarte, Abre Media desde el menú superior de la ventana de PD. ALSA-MIDI Si no lo está, haz clic con el botón izquierdo del ratón para seleccionarlo.

    Vuelva a abrir Media y seleccione Ajustes MIDI... en el menú desplegable. Aparecerá una pequeña ventana con campos de texto junto a En los puertos: y Puertos de salida: Estos campos de texto cada deben ajustarse a 1 Haga clic en Aceptar para activar los puertos MIDI de datos puros que necesitamos.

    6 - Conectar el teclado a Pure Data

    Conecte su teclado MIDI en un puerto USB de la Raspberry Pi y encienda el teclado. Voy a utilizar el aconnectGUI para completar la conexión. Usted puede encontrar aconnect GUI en el menú de inicio Sonido y vídeo La aplicación dirá Secuenciador ALSA en la parte superior de la ventana.

    Hay dos botones en la parte superior de la ventana: tijeras y cable. Haz clic en el botón de cable para activar el modo de conexión. Localiza tu teclado MIDI en la lista y arrastra y suelta las flechas para conectarlo a los puertos Pure Data que hemos abierto.

    7 - Abrir un parche (¡o crear uno propio!)

    Ahora es el momento de la parte divertida! Pure Data utiliza archivos llamados patches. Empezar tu viaje con el sintetizador PD sólo te llevará una tarde. He encontrado varios recursos útiles a lo largo de mi camino y quiero pasártelos para ayudarte a empezar.

    • FlossManuals Documentación de datos puros

    Si estás listo para improvisar ahora, descarga este parche MIDI que he creado y empieza a tocar inmediatamente. Nota: Los archivos de parche se crean a partir de archivos de parche existentes. El enlace de github contiene una carpeta comprimida con 8 archivos de parche. Para iniciar el módulo de control MIDI, descomprime la carpeta y abre MIDI_synth.pd .

    Este parche se hizo con la ayuda de los tutoriales de LWM Music en LWM Music. El Dr. Lawrence W. Moore tiene una serie de vídeos disponibles en YouTube también. La serie está muy bien ritmo y cubre a fondo los fundamentos de Pure Data. Si usted está buscando para construir una base sólida, este es un gran lugar para empezar.

    Te recomiendo que investigues distintas funciones de DP para implementarlas en tus propios patches. La síntesis aditiva, por ejemplo, es una forma de combinar dos formas de onda para crear patrones de onda únicos.

    Enhorabuena, tu Raspberry Pi es ahora una máquina sintetizadora controlada por MIDI.