Lesere som deg er med på å støtte MUO. Når du foretar et kjøp ved å bruke lenker på nettstedet vårt, kan vi tjene en tilknyttet provisjon. Les mer.

Selv om det å gi gaver kan være bra for sjelen, er det ikke den eneste magiske følelsen du kan få denne høytiden. Å lage musikk programmatisk er en fin måte å utfordre deg selv kreativt på og bevise at du kan gjøre noe du kanskje ikke følte du var i stand til på begynnelsen av året.

La oss dykke inn i dette julekodingsprosjektet som ikke bare vil gi deg en morsom måte å lage musikk på, men som også vil gjøre julenissens alver sjalu.

Starter

Før du kan dykke inn i koden din, sørg for å bekrefte at du har disse elementene klare:

  • Raspberry Pi OS installert på din Raspberry Pi (kan være hvilken som helst modell). Hvis du ikke er sikker på hvordan du gjør det, vi gjør installasjonsprosessen enkel for deg.
  • Sonic Pi, et verktøy som hjelper deg med å lage musikk ved hjelp av kode. Du kan Last ned Sonic Pi, for Raspberry Pi, på det offisielle Sonic-nettstedet. Det er en 32-biters og 64-biters ARM DEB-fil som du kan laste ned. Hvilken fil du velger vil avhenge av om du har 32-biters eller 64-biters Raspberry Pi OS installert.
    instagram viewer

Juleklassikeren, 12 Days of Christmas, er en fin måte å forstå hvor enkel musikkapplikasjonen Sonic Pi egentlig kan være. Med enkle kodeelementer involvert, kan nesten alle lage sin egen musikk uten å berøre et instrument.

Først henter du den fullførte koden fra Raspberry Pi GitHub oppbevaringssted. Du kan enten laste ned days-of-christmas-finished.txt eller kopier teksten ut av GitHub-kodevinduet i stedet.

La oss deretter installere Sonic Pi. Åpne nedlastingsmappen eller der du lagret DEB-filen. Høyreklikk på filen og velg Programvareinstallasjonsprogram. Derfra bør du bli bedt om å installere Sonic Pi.

Hvordan kode en Carol

Når du åpner Sonic Pi-applikasjonen, vil du se en tom skjerm med en #Velkommen til Sonic Pi kommentar. På dette tidspunktet kan du enten åpne 12 Days of Christmas-tekstfilen eller lime inn kodebitene fra Raspberry Pi GitHub-siden direkte.

Litt grunnleggende musikkkunnskap vil komme godt med. Likevel, hvis du ikke er så kjent med musikkteori, er det også greit.

Hvis du tenker på 12 Days of Christmas-sangen, vil du høre mange sangstykker som kan gjentas. For eksempel, "På første juledag ble min sanne kjærlighet sendt til meg." Denne introduksjonen gjentas med de samme notatene. Vi er ikke bekymret for sangtekster her. Vi er bare opptatt av melodien.

Det er noen få andre sangseksjoner som gjentar seg. I verset vil du legge merke til at melodien er den samme for "To turtelduer" og "Tre franske høner." Samme idé gjelder for avsnittet "(Og) en rapphøne i et pæretre."

Du må definere sangseksjonene, inkludert hvilke toner som skal spilles i melodien din, og hvor raskt hver tone skal spilles.

notater = [:c5, :d5, :bb4, :a4, :f4, :g4, :f4]
varighet = [1, 0,5, 0,5, 0,5, 0,5, 1, 1]
play_pattern_timed notater, varigheter

I musikk er det 8 oktaver. Sonic ser etter en notebokstav og et oktavnummer. Dette vil fortelle Sonic tonen og tonen som skal spilles. Med hensyn til varighet, vil dette definere hvor lenge tonen skal spilles (eller ringes). Funksjonene på den tredje raden i koden forteller Sonic hva de skal gjøre med notatene og varighetene.

Du vil legge til en bpm-funksjon som er kjent som slag per minutt. Hvor mange ganger knipser du med fingeren i løpet av et minutt? Det er det samme som hva bpm er. For denne melodien er det derfor du vil legge merke til at bpm er satt til 120.

Derfra kan alle definisjonene settes inn i hver respektive seksjon. For å bevege deg gjennom denne julemelodien, må du gå gjennom de 12 dagene.

Be Sonic om å begynne på første juledag ved å bruke dager = 1. For å utføre denne funksjonen, bruk ganske enkelt 12. ganger gjør Løkke.

Noen sangseksjoner vil være litt annerledes, så du bør gjøre rede for det med en if-setning.

Det er mutterne og skruene for å lage musikk programmatisk. Hvis du vil ha en detaljert opplæring, har Raspberry Pi Foundation satt sammen en fantastisk referanse for å hjelpe deg kode denne julesangen også.

Med et godt fundament under beltet, hvorfor ikke bygge noen musikkinstrumenter ved å bruke din Raspberry Pi? Kan vi foreslå å gi bandet ditt navnet "The Four Cores?"

Nyt å lytte til mesterverket ditt

Mens du utforsker dine kreative begrensninger, er det så mange eksempler på skapere som lager musikk med Sonic Pi. Gi internett et godt søk for å finne mer musikalsk inspirasjon og nyt å leke med notene, timingen og sangen seksjoner. Kanskje du snart blir ansatt som den neste Raspberry Pi DJ?

Alt godt, Maestro! Måtte tastaturet og det kreative sinnet ditt bli ett når du setter i gang med å programmere ditt neste treff-vidunder!