Sisällysluettelo:
- Vaihe 1: Riippuvuudet
- Vaihe 2: Midi -tuloarvojen määrittäminen
- Vaihe 3: Lisää muita kansioita näytteillä
- Vaihe 4: Lisää ja määritä lisänäytteitä uusiin kansioihin
- Vaihe 5: Viittaus numeronäppäimistöön
Video: Raspberry Pi -rumpukone: 5 vaihetta
2024 Kirjoittaja: John Day | [email protected]. Viimeksi muokattu: 2024-01-30 08:59
Näytesekvensseri Raspberry Pi + Pythonin kautta.
Sekvensserissä on 4 polyfoniaa, ja sen avulla käyttäjä voi tallentaa ja luoda 6 eri sekvenssiä, joita he voivat vuorotella reaaliajassa, ja tukee mahdollisuutta vaihtaa eri näytteiden välillä.
Kirjoitin käsikirjoituksen tavalla, joka toimii täysin kaikkien MIDI -ohjainten ja äänien kanssa. Käytän 18 eri äänipankkia, kukin 16 näytettä, mutta pankkien ja näytteiden lisääminen tai vähentäminen on helppoa eikä vaadi monia muutoksia. Jos sinulla on ongelmia, lähetä minulle sähköpostia: [email protected]
Löydä koodi GitHubista osoitteesta:
Kerro minulle, jos käytät sitä, ja etenkin jos teet videon sen kanssa!
Vaihe 1: Riippuvuudet
Tämä ohjelma vaatii seuraavat (ei sisäänrakennetut) Python -moduulit:
mido
pygame
numpy
Mido aiheuttaa kuitenkin joitain komplikaatioita, koska Mido itse vaatii muutamia riippuvuuksia. Varmistaaksesi, että ne kaikki asennetaan, kirjoita vain seuraavat komennot Raspberry Pi: n päätelaitteeseen (jättämättä '$') ja kaikki on hyvin. Muut moduulit voidaan asentaa normaalisti.
$ sudo apt-get päivitys
$ sudo apt-get install build-essential
$ sudo apt-get install libasound-dev tai libasound2-dev
$ sudo apt-get install libjack0
$ sudo apt-get install libjack-dev
$ sudo apt-get install python-pip
$ sudo apt-get install python-dev
$ sudo pip asenna python-rtmidi
$ sudo pip asenna mido
Vaihe 2: Midi -tuloarvojen määrittäminen
Python -komentosarjan sisällä on taulukko nimeltä noteList, joka koostuu 16 kokonaisluvusta (rivi 165.) Nämä ovat MIDI -muistiinpanojen arvot, jotka ohjain lähettää Pi: lle äänien laukaisemiseksi. Jokainen midi -ohjain on kuitenkin erilainen, joten jos sinulla ei ole myös Akai LPD8 -laitetta, sinun on todennäköisesti muutettava nämä arvot vastaamaan laitettasi.
Githubin repossa on myös toinen käsikirjoitus nimeltä "midihelp.py", joka on tehty erityisesti tätä tarkoitusta varten! Ainoa mitä se tulostaa, on tuloarvot ensimmäisestä tietokoneen tunnistamasta MIDI -ohjaimesta konsolille. Sinun tarvitsee vain korvata nämä arvot taulukossa, jos ne eroavat noteListiin sisältyvistä arvoista.
Muistiinpanojen järjestys korreloi myös sen, mikä äänitehoste kansiota kohden toistetaan, joten pidä tämä myös mielessä.
Vaihe 3: Lisää muita kansioita näytteillä
Käsikirjoituksen näytesarjat tallennetaan saman hakemiston kansioihin ja määritetään täsmälleen, miten 808 -sarja on GitHub -tiedostossa. Näin voin tallentaa kaikenlaisia erilaisia näytejoukkoja kansioihin, jotka on helppo järjestää ja vaihtaa.
Ainoa asia, joka itse skriptissä on muutettava, on muuttuja foldNum, joka vain kertoo skriptille, kuinka monta kansiota näytteistä on. Tällä hetkellä komentosarjassa on foldNum asetettu yhdeksi, koska samassa hakemistossa on vain yksi alikansio (808 -sarja.) Skriptin enimmäiskansiot voivat tällä hetkellä käsitellä 18, eli kuinka monta käytän, mutta se on melko triviaalia muuta tätä, kerro minulle, jos tarvitset apua.
Kansioiden nimillä ei ole oikeastaan väliä (kunhan ne ovat kaikki erilaisia), koska komentosarja vain lukee kansioiden määrän samassa hakemistossa ja nappaa polut tällä tavalla. Tiedostojen nimet ovat kuitenkin tärkeitä, lisää siitä seuraavassa vaiheessa.
Vaihe 4: Lisää ja määritä lisänäytteitä uusiin kansioihin
Äänet ladataan näytteenottimeen saman hakemiston kansioiden kautta, jotka sisältävät.wav-tiedostoja, joiden nimet on numeroitu välillä 0-15. Katso esimerkki mukana toimitetusta 808 -kansiosta. JOKAisen alikansion, jossa on näytteitä, pitäisi näyttää identtiseltä toistensa kanssa.
MIDI -tulojen hakemisto noteList -taulukossa vastaa tarkasti.wav -tiedostonimeä.
Esimerkiksi:
- kun käynnistät noteList [0]: een tallennetun MIDI -muistiinpanon, wav -tiedosto 0.wav toistetaan.
- kun käynnistät noteList [8]: ään tallennetun MIDI -muistiinpanon, wav -tiedosto 8.wav toistetaan.
Tein tämän osittain niin, että jokainen yksittäinen MIDI -ohjain voidaan asettaa helposti toimimaan käsikirjoituksen kanssa, ja myös jotta voisin helposti laajentaa tai rajoittaa näytteen ja syöttönumeron sekä järjestää tiedostot ja käsikirjoituksen niin, että potkurirumpu Esimerkiksi äänet tallennetaan aina 0.wav -muodossa ja laukaistaan ensimmäisen MIDI -muistiinpanon avulla.
Olen valinnut 16 arvoa jonkin verran mielivaltaisesti vastaamaan ohjaimen 16 tuloa, joten jos haluat tehdä sekvensserin, jossa on vain yksi näyte tai paljon muuta, sinun tarvitsee vain numeroida äänitiedostot vastaavasti ja vähennä tai lisää noteList -taulukkoon tallennettuja numeroita vastaamaan.
Jos mukana toimitettu 808 -sarja toimii oikein, mutta sinulla on ongelmia omien näytteiden kanssa, ratkaisu olisi todennäköisesti muuttaa tiedostojen näytteenottotaajuus vastaamaan PyGamen 22, 050 khz: n näytteenottotaajuutta ja bittisyvyyttä 16. Voit tehdä tämän Audacityssä tai mikä tahansa muu äänenmuokkausohjelmisto. Niiden pitäisi toimia täydellisesti sieltä!
Vaihe 5: Viittaus numeronäppäimistöön
Ok, sekvensserissä tapahtuu paljon tavaraa, enemmän kuin alun perin ajattelin, joten ahdistin melko paljon numeronäppäimistölle vastaamaan lisääntyneitä toimintoja. Tämä mielessä, tähti * ja kausi. molemmat toimivat toimintonäppäiminä.
VIITE
HUOLTO
[8] - Ota metronomi käyttöön tai poista se käytöstä
[9] - Ota tallennustila käyttöön tai poista se käytöstä
[Enter] - Toisto/tauko
[0] - Poista nykyinen muistiinpano järjestyksessä
[Num Lock ja *] - Sammuta
[MIDI Note and.] - Älä kvantisoi parillisiin numeroihin
TEMPO -TOIMINNOT
[+] - Kurssi nopeuttaa BPM: ää
[-] - Kurssin hidastaa BPM
[+ ja *] - Nopeasti nopeuttaa BPM: ää
[- ja *] - hidastaa nopeasti BPM: ää
[+ ja.] - Hienosäädä BPM
[- ja.] - Hieno hidastaa BPM
JAKSO -TOIMINNOT
[1-6] Muista jakso 1-6
[1-6 ja.] Tallenna jakso 1-6
[0 ja.] Tyhjennä nykyinen jakso
NÄYTTEEN KANSSIEN MUUTTAMINEN
[1-9 ja *]-Vaihda näytepakettiin kansioissa 1-9
[1-9 ja * ja.]-Vaihda näytepakettiin kansioissa 10-18
JÄRJESTYSVINKKEJÄ:
-Tyhjennä nykyinen sekvenssi [0 ja.] Ja tallenna se mihin tahansa sarjaan, jonka haluat poistaa muistista.
-Muista sarja ja tallenna se toiseen numeroon kopioidaksesi sen.
Suositeltava:
Akustinen levitaatio Arduino Unon kanssa Askel askeleelta (8 vaihetta): 8 vaihetta
Akustinen levitaatio Arduino Unon kanssa Askel askeleelta (8 vaihetta): ultraäänikaiuttimet L298N DC-naarasadapterin virtalähde urospuolisella dc-nastalla ja analogiset portit koodin muuntamiseksi (C ++)
4G/5G HD -videon suoratoisto DJI Dronesta alhaisella latenssilla [3 vaihetta]: 3 vaihetta
4G/5G HD -videon suoratoisto DJI Dronesta alhaisella latenssilla [3 vaihetta]: Seuraava opas auttaa sinua saamaan live-HD-videovirtoja lähes mistä tahansa DJI-dronesta. FlytOS -mobiilisovelluksen ja FlytNow -verkkosovelluksen avulla voit aloittaa videon suoratoiston droonilta
Pultti - DIY -langaton latauskello (6 vaihetta): 6 vaihetta (kuvilla)
Pultti - DIY -langaton latausyökello (6 vaihetta): Induktiiviset lataukset (tunnetaan myös nimellä langaton lataus tai langaton lataus) on langattoman voimansiirron tyyppi. Se käyttää sähkömagneettista induktiota sähkön tuottamiseen kannettaville laitteille. Yleisin sovellus on langaton Qi -latauslaite
LED vilkkuu Raspberry Pi: n kanssa GPIO -nastojen käyttäminen Raspberry Pi: ssä: 4 vaihetta
LED vilkkuu Raspberry Pi: n kanssa GPIO -nastojen käyttäminen Raspberry Pi: ssä: Hei kaverit tässä ohjeessa opimme käyttämään Raspberry pi: n GPIO: ta. Jos olet koskaan käyttänyt Arduinoa, luultavasti tiedät, että voimme liittää LED -kytkimen jne. Sen nastoihin ja saada sen toimimaan. anna LED -valon vilkkua tai syötä kytkintä, joten
Raspbianin asentaminen Raspberry Pi 3 B: hen ilman HDMI: tä - Raspberry Pi 3B: n käytön aloittaminen - Raspberry Pi: n asentaminen 3: 6 vaihetta
Raspbianin asentaminen Raspberry Pi 3 B: hen ilman HDMI: tä | Raspberry Pi 3B: n käytön aloittaminen | Raspberry Pi 3: n asentaminen: Kuten jotkut teistä tietävät, Raspberry Pi -tietokoneet ovat aivan mahtavia ja saat koko tietokoneen vain yhdelle pienelle levylle. Raspberry Pi 3 Model B: ssä on neliytiminen 64-bittinen ARM Cortex A53 kellotaajuus 1,2 GHz. Tämä tekee Pi 3: sta noin 50