Innehållsförteckning:
- Steg 1: FOSS
- Steg 2: Arrangera eller komponera musik för att spela
- Steg 3: Exportera en MIDI -fil
- Steg 4: Anslutning av Spielatron till ALSA MIDI -program
- Steg 5: Ställa in ett MIDI -enhetsnamn och USB -port
- Steg 6: Använda LMMS
- Steg 7: Importera din MIDI -fil till LMMS
- Steg 8: Ställ in LMMS -utdata på TtyUSB0
- Steg 9: Stoppa datorns ljudutmatning
- Steg 10: Tryck på Play, luta dig tillbaka och njut av musiken
Video: Hur man skickar MIDI -musik till Spielatron: 10 steg (med bilder)
2024 Författare: John Day | [email protected]. Senast ändrad: 2024-01-30 12:46
Denna instruktionsbok täcker de programverktyg vi använder för att enkelt ta standardmusiknotering, konvertera den till en MIDI -fil och spela den på Spielatron.
Steg 1: FOSS
Om möjligt använder vi Free & Open Source Software (FOSS) som körs på en Linux -dator, i det här fallet med Ubuntu Mate.
Steg 2: Arrangera eller komponera musik för att spela
Eftersom våra musikförmågor är begränsade är komponering inte ett riktigt alternativ, och för att undvika upphovsrättsfrågor gillar vi att ordna gamla klassiker till enkla radstycken som passar Spielatron. I grund och botten måste du behålla musiken monofonisk, dvs enstaka toner och inom Spielatrons tonintervall G5 till G7. För detta ändamål använder vi Musescore som vi har funnit vara helt fantastiska för detta ändamål och för att skapa musikaliska noter att spela från.
Vi använder Linux 64 -bitars appbild tillgänglig från
musescore.org/en/download/musescore-x86_64…
Ett knep vi använder för att behålla anteckningarna på staven med tanke på det höga registret för Spielatron är att använda alternativet Treble Clef 8va från Clef Pallette, notera de små 8 ovanför diskanten.
En av de stora sakerna med Musescore är det fantastiska samhället som ger hjälp, handledning, exempel och massor av Musescore -filer att ladda ner.
Steg 3: Exportera en MIDI -fil
När du är nöjd med din musikaliska komposition i Musescore måste du exportera den som en MIDI -fil. Detta finns i File - Export och välj filformatet Standard Midi.
Steg 4: Anslutning av Spielatron till ALSA MIDI -program
Eftersom vi nu vill skicka vår MIDI -fil till Arduino på Spielatron behöver vi en anslutning mellan en USB -enhet t.ex. ttyUSB0 och MIDI -programvara t.ex. ALSA -program. Även denna anslutning har en datorns överföringshastighet snarare än standard MIDI -överföringshastighet på 31250.
Lyckligtvis har någon annan redan skrivit ett drivrutinsprogram för att utföra denna uppgift som kallas ttymidi.
ttymidi är tillgänglig härifrån:
www.varal.org/ttymidi/
www.varal.org/ttymidi/ttymidi.tar.gz
Detta program tillhandahålls endast som källkod med en make -fil. När vi körde make -filen fick vi ett länkarfel och var tvungna att ändra make -filen enligt följande.
Original kommandorad som gav felen
gcc src/ttymidi.c -o ttymidi -ljud
modifierad kommandorad som fungerade
gcc src/ttymidi.c -o ttymidi -lasound -lpthread
Till slut körde vi inte make -filen och kompilerade den bara med kommandoraden ovan, så den är inte installerad på vårt system. När vi vill köra ttymidi öppnar vi ett terminalfönster, byter katalog till ttymidi -katalogen och kör programmet enligt bilden ovan. Utan några switchar används ttymidi som standard till 115200 baudhastighet som matchar koden vi levererade för Spielatron. Observera att när ttymidi har körts återgår terminalfönstret inte till kommandotolken förrän "kontroll c" har angetts som lämnar programmet.
Steg 5: Ställa in ett MIDI -enhetsnamn och USB -port
I det här exemplet har vi använt ttymidi utan omkopplare som standard använder ttyUSB0 och 115200 baud rate. Om du av någon anledning behövde ändra dessa t.ex. om du hade mer än en ttyUSB -enhet ansluten till din dator kan du använda omkopplarna enligt bilden ovan.
Steg 6: Använda LMMS
LMMS (tidigare Linux MultiMedia Studio) är ett digitalt ljudarbetsstationsprogram som är ett annat helt fantastiskt program som vi bara är nybörjare på att använda. LMMS är tillgängligt från Ubuntu Software Center eller här
Även om vi för detta ändamål inte använder LMMS för att spela MIDI -filen från datorn, förväntar LMMS fortfarande att ett ljudfont ska vara tillgängligt att använda vid import av MIDI -filer. Därför använder vi Unison sound font som finns tillgängligt här:
ftp://ftp.personalcopy.net/pub/Unison.sf2.gz
www.personalcopy.com/linuxfiles.htm
För att använda ljudfonten behöver du bara extrahera filen till en katalog som du ska behålla och sedan i LMMS gå till Redigera - Inställningar - Mappar för att ställa in Unison som standardljudteckensnitt enligt bilden ovan.
Steg 7: Importera din MIDI -fil till LMMS
Importera MIDI -filen du skapade med Musescore (eller från någon annan källa) till LMMS. Använd fil - Importera enligt bilden ovan.
Steg 8: Ställ in LMMS -utdata på TtyUSB0
När MIDI -filen har importerats visas den i Song Editor -fönstret som ett Unison -spår. Gå till kugghjulsymbolen på spårets vänstra ände. Vänsterklicka på kugghjulet, välj Midi sedan Output och du bör se en enhet som heter ttymidi (eller namnet som du angav med -n -omkopplaren när du startade ttymidi) enligt bilden ovan. Välj den här enheten och du bör se en bock bredvid den.
Steg 9: Stoppa datorns ljudutmatning
Om du spelar spåret vid denna tidpunkt kommer LMMS att mata ut MIDI -filen till både ttyUSB0 (Spielatron) och datorns ljudkort. Eftersom Spielatron -programvaran har en fördröjning på 200 ms för att möjliggöra för rotationsservotyperna, försenas Spielatrons musik med detta belopp som inte kommer att synkroniseras med datorns ljudkort. Detta kan övervinnas genom att sänka volymen på Unison -spåret enligt bilden ovan.
Steg 10: Tryck på Play, luta dig tillbaka och njut av musiken
Tryck på uppspelningsknappen enligt bilden ovan så spelar Spielatron eller någon annan Arduino -musiksynt din MIDI -pjäs. I exemplet i slutet av inledningsvideon spelar Spielatron on location den välkända gammalengelska folkvisan Greensleeves.
Bortsett från att musiken måste vara monofonisk och inom intervallet G5 till G7, finns det uppenbarligen en begränsning som svarstiden för servon ger. Det betyder att din musik begränsas antingen av kortheten om ton används eller slag per minut (BPM) som används. dvs. om du har en hög BPM kommer du inte att kunna använda mycket korta anteckningar eller vice versa.
Exempel:
120 BPM vid 4/4 tid (4 slag per bar) ger 30 barer på 1 minut.
60 sekunder dividerat med 30 ger 2 sekunder per stapel.
Därför kommer en gren att ha 500 ms vardera (lätt inom servofördröjningstiden).
En quaver kommer att ha 250 ms (precis under tiden som tillåter 200 ms för rotation och 40 ms för hammare).
En semiklaver är bara på utan att minska BPM.
Rekommenderad:
Hur man lägger till en IR -fjärrkontroll till ett högtalarsystem: 5 steg (med bilder)
Hur man lägger till en IR -fjärrkontroll till ett högtalarsystem: I det här projektet kommer jag att visa dig hur jag skapade en extra krets för mitt högtalarsystem för att styra det trådlöst med en hemgjord IR -fjärrkontroll. Låt oss börja
Hur man skickar data till molnet med Arduino Ethernet: 8 steg
Så här skickar du data till molnet med Arduino Ethernet: Denna instruktion visar hur du publicerar din data till AskSensors IoT -plattform med Arduino Ethernet Shield. Med Ethernet Shield kan din Arduino enkelt anslutas till molnet, skicka och ta emot data med en internetanslutning. Vad vi
Hur man enkelt lägger till alla typer av lysdioder till din 3d -skrivare: 8 steg (med bilder)
Hur enkelt lägger du till alla typer av lysdioder i din 3d -skrivare: Har du några extra lysdioder som samlar damm i din källare? Är du trött på att inte kunna se vad din skrivare skriver ut? Tja, leta inte längre, den här instruktionsboken lär dig hur du lägger till en LED -ljusremsa ovanpå skrivaren till il
Hur man lägger till stötfångare till en SUMOBOT: 9 steg (med bilder)
Hur man lägger till stötfångare till en SUMOBOT: vad detta gör är att du kan göra det så att om det träffar en av stötfångarna på roboten, kommer det att vända och vända sig bort från objektet
Hur man lägger till flammor till allt i GIMP: 15 steg (med bilder)
Så här lägger du till flammor till allt i GIMP: Så här gör du en lite realistisk eld i GIMP