Läsare som du hjälper till att stödja MUO. När du gör ett köp med hjälp av länkar på vår webbplats kan vi tjäna en affiliate-provision. Läs mer.

Även om gåvor kan vara bra för själen, är det inte den enda magiska känslan du kan få den här semesterperioden. Att skapa musik programmatiskt är ett bra sätt att utmana dig själv kreativt och bevisa att du kan göra något som du kanske inte kände att du var kapabel till i början av året.

Låt oss dyka in i detta julkodningsprojekt som inte bara ger dig ett roligt sätt att skapa musik, utan också kommer att göra tomtens tomtar avundsjuka.

Komma igång

Innan du kan dyka in i din kod, se till att bekräfta att du har dessa saker redo:

  • Raspberry Pi OS installerat på din Raspberry Pi (kan vara vilken modell som helst). Om du inte är säker på hur du gör det, vi gör installationsprocessen enkel för dig.
  • Sonic Pi, ett verktyg som hjälper dig att skapa musik med hjälp av kod. Du kan ladda ner Sonic Pi, för Raspberry Pi, på den officiella Sonic-webbplatsen. Det finns en 32-bitars och 64-bitars ARM DEB-fil som du kan ladda ner. Vilken fil du väljer beror på om du har 32-bitars eller 64-bitars Raspberry Pi OS installerat.
    instagram viewer

Julklassikern, 12 Days of Christmas, är ett bra sätt att förstå hur enkel musikapplikationen Sonic Pi verkligen kan vara. Med enkla kodelement inblandade kan nästan vem som helst skapa sin egen musik utan att röra ett instrument.

Ta först den färdiga koden från Raspberry Pi GitHub förvaret. Du kan antingen ladda ner days-of-christmas-finished.txt eller kopiera texten ut från GitHub-kodfönstret istället.

Låt oss sedan installera Sonic Pi. Öppna din nedladdningsmapp eller var du än sparade DEB-filen. Högerklicka på filen och välj Programvaruinstallerare. Därifrån bör du uppmanas att installera Sonic Pi.

Hur man kodar en Carol

När du öppnar Sonic Pi-applikationen ser du en tom skärm med en #Välkommen till Sonic Pi kommentar. Vid det här laget kan du antingen öppna textfilen 12 Days of Christmas eller klistra in kodbitarna från Raspberry Pi GitHub-sidan direkt.

Vissa grundläggande musikkunskaper kommer väl till pass. Men om du inte är så bekant med musikteori är det också okej.

Om du tänker på 12 Days of Christmas-låten kommer du att höra många sångstycken som kan upprepas. Till exempel, "På första juldagen skickade min sanna kärlek till mig." Denna introduktion upprepas med samma anteckningar. Vi är inte oroliga för sångtexter här. Vi sysslar bara med melodin.

Det finns några andra låtsektioner som upprepas. I versen kommer du att märka att låten är densamma för "Två turtelduvor" och "Tre franska höns". Samma idé gäller avsnittet "(Och) en rapphöna i ett päronträd."

Du måste definiera sångsektionerna inklusive vilka toner som ska spelas i din melodi och hur snabbt varje ton ska spelas.

noter = [:c5, :d5, :bb4, :a4, :f4, :g4, :f4]
varaktigheter = [1, 0,5, 0,5, 0,5, 0,5, 1, 1]
play_pattern_timed notes, durations

I musik finns det 8 oktaver. Sonic letar efter en notbokstav och ett oktavnummer. Detta kommer att tala om för Sonic vilken not och ton som ska spelas. Med avseende på varaktighet kommer detta att definiera hur länge tonen kommer att spelas (eller ringa). Funktionerna på den tredje raden i koden talar om för Sonic vad den ska göra med anteckningarna och varaktigheterna.

Du kommer att lägga till en bpm-funktion som kallas slag per minut. Hur många gånger knäpper du med fingret på en minut? Det är samma sak som vad bpm är. För den här melodin är det därför du kommer att märka att bpm är inställt på 120.

Därifrån kan alla definitioner läggas in i respektive avsnitt. För att gå igenom denna jullåt måste du gå igenom de 12 dagarna.

Be Sonic börja på första juldagen med att använda dagar = 1. För att utföra denna funktion, använd helt enkelt 12 gånger gör slinga.

Vissa låtsektioner kommer att vara lite annorlunda, så du bör redogöra för det med ett if-uttalande.

Det är muttrarna och skruvarna för att skapa musik programmatiskt. Om du vill ha en detaljerad handledning, har Raspberry Pi Foundation satt ihop en underbar referens för att hjälpa dig koda denna carol för.

Med en bra grund under bältet, varför inte bygga några musikinstrument med din Raspberry Pi? Får vi föreslå att du döper ditt band till "The Four Cores?"

Njut av att lyssna på ditt mästerverk

Medan du utforskar dina kreativa begränsningar finns det så många exempel på kreatörer som gör musik med Sonic Pi. Ge internet en bra sökning för att hitta mer musikalisk inspiration och njut av att leka med noterna, timingen och sången avsnitt. Kanske blir du snart anställd som nästa Raspberry Pi DJ?

Allt gott, Maestro! Må ditt tangentbord och ditt kreativa sinne bli ett när du ger dig iväg för att programmera ditt nästa undrar med en hit!