Inhoudsopgave:

Hoe MIDI-muziek naar de Spielatron te sturen: 10 stappen (met afbeeldingen)
Hoe MIDI-muziek naar de Spielatron te sturen: 10 stappen (met afbeeldingen)

Video: Hoe MIDI-muziek naar de Spielatron te sturen: 10 stappen (met afbeeldingen)

Video: Hoe MIDI-muziek naar de Spielatron te sturen: 10 stappen (met afbeeldingen)
Video: Spielatron 2024, November
Anonim
Hoe MIDI-muziek naar de Spielatron te verzenden
Hoe MIDI-muziek naar de Spielatron te verzenden

Deze Instructable behandelt de softwaretools die we gebruiken om eenvoudig standaard muzieknotatie te nemen, deze naar een MIDI-bestand te converteren en op de Spielatron af te spelen.

Stap 1: FOSS

Image
Image

Waar mogelijk gebruiken we Free & Open Source Software (FOSS) die op een Linux-computer draait, in dit geval met Ubuntu Mate.

Stap 2: Muziek arrangeren of componeren om af te spelen

Een MIDI-bestand exporteren
Een MIDI-bestand exporteren

Omdat onze muziekcapaciteiten beperkt zijn, is componeren geen echte optie, en om auteursrechtelijke problemen te voorkomen, ordenen we oude klassiekers graag in enkele regelstukken die geschikt zijn voor de Spielatron. In principe moet je de muziek monofoon houden, dwz alleen een enkele noot en binnen het nootbereik van de Spielatron G5 tot G7. Voor dit doel gebruiken we Musescore waarvan we hebben ontdekt dat deze helemaal geweldig is voor dit doel en voor het maken van partituren om van te spelen.

We gebruiken de Linux 64-bits app-afbeelding die beschikbaar is via:

musescore.org/en/download/musescore-x86_64…

Een truc die we gebruiken om de noten op de notenbalk te houden, gezien het hoge register van de Spielatron, is om de G-sleutel 8va-optie van het sleutelpalet te gebruiken, let op de kleine 8 boven de g-sleutel.

Een van de geweldige dingen van Musescore is de geweldige community die hulp, tutorials, voorbeelden en veel Musescore-bestanden biedt om te downloaden.

Stap 3: Exporteer een MIDI-bestand

Als je eenmaal tevreden bent met je muzikale compositie in Musescore, moet je deze exporteren als een MIDI-bestand. Dit staat in Bestand - Exporteren en selecteer het bestandsformaat Standard Midi.

Stap 4: De Spielatron aansluiten op ALSA MIDI-programma's

De Spielatron aansluiten op ALSA MIDI-programma's
De Spielatron aansluiten op ALSA MIDI-programma's

Omdat we nu ons MIDI-bestand naar de Arduino op de Spielatron willen sturen, hebben we een verbinding nodig tussen een USB-apparaat, bijv. ttyUSB0 en MIDI-software bijv. ALSA-programma's. Deze verbinding heeft ook een computerbaudrate in plaats van de standaard MIDI-baudrate van 31250.

Gelukkig heeft iemand anders al een stuurprogramma geschreven om deze taak uit te voeren, genaamd ttymidi.

ttymidi is beschikbaar vanaf hier:

www.varal.org/ttymidi/

www.varal.org/ttymidi/ttymidi.tar.gz

Dit programma wordt alleen geleverd als broncode met een make-bestand. Toen we het make-bestand uitvoerden, ontvingen we een linkerfout en moesten we het make-bestand als volgt wijzigen.

Originele opdrachtregel die de fouten gaf

gcc src/ttymidi.c -o ttymidi -lasound

gewijzigde opdrachtregel die werkte

gcc src/ttymidi.c -o ttymidi -lasound -lpthread

Uiteindelijk hebben we het make-bestand niet uitgevoerd en alleen gecompileerd met de bovenstaande opdrachtregel, dus het is niet op ons systeem geïnstalleerd. Wanneer we ttymidi willen uitvoeren, openen we een terminalvenster, veranderen de directory in de ttymidi-directory en voeren het programma uit zoals in de afbeelding hierboven. Omdat er geen schakelaars worden gebruikt, is ttymidi standaard ingesteld op 115200 baudrate, wat overeenkomt met de code die we voor de Spielatron hebben geleverd. Merk op dat zodra ttymidi is uitgevoerd, het terminalvenster niet terugkeert naar de opdrachtprompt totdat "control c" wordt ingevoerd, waardoor het programma wordt afgesloten.

Stap 5: Een MIDI-apparaatnaam en USB-poort instellen

Een MIDI-apparaatnaam en USB-poort instellen
Een MIDI-apparaatnaam en USB-poort instellen

In dit voorbeeld hebben we ttymidi gebruikt zonder schakelaars die standaard ttyUSB0 en 115200 baudrate gebruiken. Als u deze om welke reden dan ook moet wijzigen, bijv. u meer dan één ttyUSB-apparaat op uw computer had aangesloten, kunt u de schakelaars gebruiken zoals in de afbeelding hierboven.

Stap 6: LMMS gebruiken

LMMS gebruiken
LMMS gebruiken

LMMS (voorheen Linux MultiMedia Studio) is een applicatieprogramma voor digitale audio-werkstations, een ander totaal geweldig programma dat we alleen beginners gebruiken. LMMS is beschikbaar via het Ubuntu Software Center of hier

Hoewel we voor dit doel LMMS niet gebruiken om het MIDI-bestand vanaf de computer af te spelen, verwacht LMMS nog steeds dat er een geluidslettertype beschikbaar is om te gebruiken bij het importeren van MIDI-bestanden. Daarom gebruiken we het Unison-geluidslettertype dat hier beschikbaar is:

ftp://ftp.personalcopy.net/pub/Unison.sf2.gz

www.personalcopy.com/linuxfiles.htm

Om het geluidslettertype te gebruiken, hoeft u alleen maar het bestand uit te pakken in een map die u gaat behouden en vervolgens in LMMS naar Bewerken - Instellingen - Mappen te gaan om Unison in te stellen als het standaard geluidslettertype, zoals in de afbeelding hierboven.

Stap 7: Importeer uw MIDI-bestand in LMMS

Importeer uw MIDI-bestand in LMMS
Importeer uw MIDI-bestand in LMMS

Importeer het MIDI-bestand dat je hebt gemaakt met Musescore (of van een andere bron) in LMMS. Gebruik Bestand - Importeer zoals in de afbeelding hierboven.

Stap 8: Stel LMMS-uitvoer in op TtyUSB0

Stel LMMS-uitvoer in op TtyUSB0
Stel LMMS-uitvoer in op TtyUSB0

Zodra het MIDI-bestand is geïmporteerd, verschijnt het in het Song Editor-venster als een Unison-track. Ga naar het tandwielsymbool aan de linkerkant van de baan. Klik met de linkermuisknop op het tandwiel, selecteer Midi en vervolgens Output en je zou een apparaat moeten zien met de naam ttymidi (of de naam die je hebt opgegeven met de -n-schakelaar bij het starten van ttymidi) zoals in de afbeelding hierboven. Selecteer dit apparaat en je zou er een vinkje naast moeten zien.

Stap 9: Stop de geluidsuitvoer van de computer

Uitgang computergeluid stoppen
Uitgang computergeluid stoppen

Als u de track op dit punt afspeelt, zal LMMS het MIDI-bestand uitvoeren naar zowel ttyUSB0 (de Spielatron) als de geluidskaart van de computer. Omdat de Spielatron-software een vertraging van 200 ms heeft om de roterende sevo's te laten reizen, wordt de muziek van de Spielatron met deze hoeveelheid vertraagd, wat niet synchroon loopt met de uitvoer van de computergeluidskaart. Dit kan worden verholpen door het volume op de Unison-track te verlagen zoals op de afbeelding hierboven.

Stap 10: Druk op Afspelen, leun achterover en geniet van de muziek

Druk op Afspelen, leun achterover en geniet van de muziek!
Druk op Afspelen, leun achterover en geniet van de muziek!

Druk op de afspeelknop zoals op de afbeelding hierboven en de Spielatron of een andere Arduino-muzieksynth zal je MIDI-stuk spelen. In het voorbeeld aan het einde van de openingsvideo speelt de Spielatron op locatie het bekende Oud-Engelse volksliedje Greensleeves.

Afgezien van het feit dat de muziek monofoon moet zijn en binnen het bereik van G5 tot G7, is er natuurlijk een beperking die wordt opgelegd door de responstijd van de servo's. Dit betekent dat uw muziek wordt beperkt door de kortheid als de noot wordt gebruikt of de beats per minute (BPM) die worden gebruikt. d.w.z. als u een hoge BPM heeft, kunt u geen zeer korte noten gebruiken of omgekeerd.

Voorbeeld:

120 BPM op 4/4 tijd (4 slagen per maat) geeft 30 maten in 1 minuut.

60 seconden gedeeld door 30 geeft 2 seconden per balk.

Daarom heeft een crotchet elk 500 ms (gemakkelijk binnen de servovertragingstijd).

Een trilling heeft 250 ms (net op tijd, 200 ms voor rotatie en 40 ms voor hamerbeweging).

Een semiquaver is gewoon niet aan zonder de BPM te verlagen.

Aanbevolen: