dinsdag 31 juli 2018

Muziekprojecten Raspberry PI

De Raspberry Pi is een min-pc ter grootte van een bankkaart. Het is een volwaardige (maar een beetje trage) computer. Het besturingsysteem staat op een micro-sd-kaartje. Er bestaan verschillende officiële besturingssystemen die je zo kan copiëren en gebruiken maar je kan ook een bestaand besturingssyteem naar je eigen wensen aanpassen. Vrijwilligers hebben zo bijvoorbeeld een internetradio-besturingsssyteem (Volumio) en een jukebox-besturingssysteem (Fruitbox) gemaakt. Alle besturingssystemen zijn een versie van Linux. Om de configuratie van het besturingssysteem te voltooien en eventuele problemen te kunnen kaderen kan je best de basisinstructies Raspberry Pi lezen:
De Raspberry Pi heeft GPIO-pinnen die je kan verbinden met electronica. Het programmeren van deze pinnen is een beetje gelijkaardig aan de arduino maar de kans dat er iets mis (en dus stuk) gaat is iets groter. Als je de GPIO-pinnen wil gebruiken (Jukebox-project) dan kan je best eerst de basisinstructies arduino doorlopen:


Projecten:
  1. Internet radio Volumio 
  2. Jukebox rpi-fruitbox
  3. Raspberry Pi als synthesizer, gekoppeld aan een zelfgemaakt MIDI-instrument (Arduino)
  4. Sonic Pi: muziek programmeren met samples (en ook je zelfgemaakt MIDI-instrument (Arduino) aankoppelen)

  • Internet radio Volumio 

Alle informatie, download- en configuratie-instructies en een forum is te vinden op https://volumio.org/

Mogelijk hebben we een Raspberry Pi 7" Touchscreen dispaly:  https://volumio.org/raspberry-pi-display-and-volumio-touchscreen-music-player/

Een mooi frame rond het display zou niet misstaan in de bib. Bekijk hiervoor de 3D design en 3D printing instructies.

  • Jukebox rpi-fruitbox

De instructies voor rpi-fruitbox zijn minder eenvoudig dan die van de internet radio Volumio. Er is geen rpi-fruitbox 'image' dat kan gecopieerd worden. Je moet een "Raspbian Stretch Lite" image downloaden van de officiële raspberrypi.org website  en deze op een sd-kaartje copiëren. Daarna moet je nog een aantal commando's ingeven. Volg de instructies op de rpi-fruitbox website.

Er is een lange user-guide die je kan doorspitten om alles te configureren (muziek toevoegen, buttons configureren, achtergrond aanpassen etc).

De Jukebox-software is de kern van het project maar om een echte jukebox-feel te bekomen moeten we toch nog wat afwerking voorzien.

Met behulp van een 3D printer kunnen we decoratie toevoegen die we zelf creëren. Bekijk hier de instructies voor 3D design en 3D printing.

Eventueel kan er ook een led-strip geprogrammeerd worden met behulp van een arduino:
Bekijk eerst de basisinstructies arduino.
Daarna kan je de instructies lezen om een ledstrip te programmeren: ga naar de sectie "LED strips programmeren" van het project "Tetris spelen op een 'Touch LED Tafel'" van vorig jaar.

  • Raspberry Pi als synthesizer

FluidSynth is een "real-time software synthesizer based on the SoundFont 2 specifications" (Meer info: FluidSynth-wikipedia en  http://www.fluidsynth.org/).

FluidSynth maakt gebruik van SoundFonts die je soms gratis kan vinden op internet, bijvoorbeeld  van FL Studio:  https://www.flstudiomusic.com/2010/02/25-piano-soundfonts.html
We gebruiken bijvoorbeeld de SoundFont Grand Piano.sf2 maar veranderen de naam in GrandPiano.sf2 (zonder spatie) en slaan het op in /home/pi/Downloads.

Om FluidSynth te installeren openen we LXTerminal en schrijven:

sudo apt-get install fluidsynth

Om FluidSynth op te starten met de SoundFont GrandPiano.sf2 openen we een LXTerminal en schrijven:
sudo modprobe snd_seq_midi (en druk <enter>
aseqdump -l (en druk <enter>)
Op het scherm zien we nu de kolommen port, client name en port name. We zien dan bijvoorbeeld dat ons USB-MIDI instrument gekoppeld is aan poort 20.0.
fluidsynth --server --audio-driver=alsa -o audio.alsa.device=hw:0 /home/pi/Downloads/GrandPiano.sf2  (en druk <enter>)
We starten dan een nieuwe LXTerminal op (de vorige laten we open staan!) en schrijven:
aconnect 20 128
De 20 komt overeen met de poort 20.0 die we kregen na  aseqdump -l


  • Sonic Pi: muziek programmren met samples


Het programma Sonic Pi kan je vinden in het menu onder 'programmeren' op het standaard besturingssyteem van de Raspberry Pi: Raspbian.
Gebruik best geen ander programma samen met Sonic Pi. Als je MIDI-in wil gebruiken moet je ook een recente versie gebruiken. Wij hebben alles getest met versie 3.0.1.

In het programma zelf kan je een stap-voor-stap handleiding vinden en een aantal voorbeelden die je naar hartelust kan aanpassen en uitproberen.

Op de website http://sonic-pi.net/ vind je ook een boek in pdf-vorm, geschreven door Sam Aaron, de uitvinder van Sonic Pi.

Het Nederlandse computermagazine ct magazine heeft ook een goede inleiding geschreven:

Op https://github.com/samaaron/sonic-pi/tree/master/etc/doc/tutorial vind je een meer technische tutorial. Hier vind je ook hoe je een MIDI-instrument kan gebruiken in Sonic Pi: https://github.com/samaaron/sonic-pi/blob/master/etc/doc/tutorial/11.1-MIDI-In.md




Geen opmerkingen:

Een reactie posten