Turinys:
- 1 žingsnis: priklausomybės
- 2 veiksmas: sukonfigūruokite „Midi“įvesties vertes
- 3 veiksmas: pridėkite papildomų aplankų su pavyzdžiais
- 4 veiksmas: pridėkite ir sukonfigūruokite papildomų pavyzdžių naujuose aplankuose
- 5 žingsnis: Nuoroda į skaičių klaviatūrą
Video: „Raspberry Pi“būgno mašina: 5 žingsniai
2024 Autorius: John Day | [email protected]. Paskutinį kartą keistas: 2024-01-30 10:44
Sequencer pavyzdys, naudojant „Raspberry Pi + Python“.
Sekos nustatymo priemonė turi 4 polifonijas ir leidžia vartotojui išsaugoti ir nustatyti 6 skirtingas sekas, kurias jie gali keisti realiuoju laiku, ir palaiko galimybę keisti skirtingus mėginius.
Scenarijų parašiau taip, kad jis būtų visiškai suderinamas su bet kokiu MIDI valdikliu ir garsais. Aš naudoju 18 skirtingų garso bankų, po 16 pavyzdžių, tačiau bankų ir pavyzdžių pridėjimas arba atėmimas yra lengvas ir nereikalauja daug pakeitimų. Jei turite kokių nors problemų, parašykite man el. Paštu: [email protected]
Kodą rasite „GitHub“adresu:
Praneškite man, ar jį naudojate, ypač jei su juo kuriate vaizdo įrašą!
1 žingsnis: priklausomybės
Šiai programai reikalingi šie (neįtaisyti) „Python“moduliai:
mido
žaidimą
kvailas
Tačiau „Mido“sukelia tam tikrų komplikacijų, nes pats „Mido“reikalauja kelių priklausomybių. Norėdami įsitikinti, kad jie visi yra įdiegti, tiesiog įveskite šias komandas į savo „Raspberry Pi“terminalą (praleisdami „$“) ir viskas bus gerai. Kitus modulius galima įdiegti įprastai.
$ sudo apt-get atnaujinimas
$ sudo apt-get install build-essential
$ sudo apt-get install libasound-dev arba 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 įdiegti python-rtmidi
$ sudo pip įdiegti mido
2 veiksmas: sukonfigūruokite „Midi“įvesties vertes
Pagrindiniame „Python“scenarijuje yra masyvas, vadinamas „noteList“, kurį sudaro 16 sveikųjų skaičių (165. eilutė). Tai yra MIDI užrašų vertės, kurias mūsų valdiklis siunčia „Pi“, kad suaktyvintų garsus. Tačiau kiekvienas „midi“valdiklis yra skirtingas, todėl, jei neturite „Akai LPD8“, greičiausiai turėsite pakeisti šias vertes, kad jos atitiktų jūsų įrenginį.
„Github“repo taip pat apima kitą scenarijų, pavadintą „midihelp.py“, sukurtą specialiai šiam tikslui! Viskas, ką jis daro, yra spausdinti įvesties vertes iš pirmojo kompiuterio atpažįstamo MIDI valdiklio konsolėje. Viskas, ką jums reikia padaryti, tai pakeisti šias masyvo reikšmes, jei jos skiriasi nuo tų, kurios įtrauktos į „NoteList“.
Užrašų tvarka taip pat koreliuoja su tuo, koks garso efektas leidžiamas kiekvienam aplankui, todėl turėkite tai omenyje.
3 veiksmas: pridėkite papildomų aplankų su pavyzdžiais
Pavyzdiniai rinkiniai scenarijuje saugomi per aplankus tame pačiame kataloge, tiksliai nustatant, kaip 808 rinkinys yra „GitHub“faile. Tokiu būdu aplankuose galiu saugoti įvairius pavyzdžių rinkinius, kurie yra lengvai organizuojami ir keičiami.
Vienintelis dalykas, kurį reikia pakeisti pačiame scenarijuje, yra kintamasis foldNum, kuris tik nurodo scenarijui, kiek yra pavyzdžių aplankų. Šiuo metu scenarijuje „foldNum“yra nustatytas kaip vienas, nes tame pačiame kataloge yra tik vienas pakatalogis (808 rinkinys.) Didžiausias aplankas, kurį šiuo metu gali tvarkyti scenarijus, yra 18, tai yra, kiek aš naudoju, tačiau tai gana nereikšminga pakeiskite tai, praneškite man, jei jums reikia pagalbos.
Aplankų pavadinimai tikrai nesvarbūs (jei jie visi yra skirtingi), nes scenarijus tiesiog skaito tame pačiame kataloge esančių aplankų kiekį ir tokiu būdu patraukia kelius. Tačiau pačių failų pavadinimai yra svarbūs, daugiau apie tai kitame žingsnyje.
4 veiksmas: pridėkite ir sukonfigūruokite papildomų pavyzdžių naujuose aplankuose
Garsai į mėginių ėmiklį įkeliami per aplankus tame pačiame kataloge, kuriame yra.wav failų, kurių pavadinimai yra nuo 0 iki 15. To pavyzdį rasite įtrauktame aplanke 808. KIEKVIENAS pakatalogis su pavyzdžiais turėtų atrodyti identiškai vienas kitam.
Masyvo „NoteList“MIDI įvesties rodyklė tiksliai atitinka.wav failo pavadinimą.
Pavyzdžiui:
- kai suaktyvinsite „NoteList [0]“saugomą MIDI užrašą, bus paleistas „wav“failas 0.wav.
- kai suaktyvinsite NoteList [8] išsaugotą MIDI užrašą, bus paleistas 8. wav failas.
Aš tai padariau iš dalies, kad kiekvienas MIDI valdiklis galėtų būti lengvai nustatytas dirbti su scenarijumi, taip pat kad galėčiau lengvai išplėsti arba apriboti mėginio ir įvesties numerį, taip pat sutvarkyti failus ir scenarijų taip, kad smūgio būgnas Pavyzdžiui, garsai visada būtų išsaugomi kaip 0.wav ir juos suaktyvintų pirmoji MIDI pastaba.
Aš šiek tiek savavališkai pasirinkau 16 reikšmių, kad atitiktų 16 valdiklio įvesties, taigi, jei norėtumėte sukurti seką su tik 1 pavyzdžiu arba su daugeliu kitų, jums tereikės atitinkamai suskaičiuoti garso failus ir atimkite arba pridėkite „NoteList“masyve saugomus skaičius, kad jie atitiktų.
Jei pridėtas 808 rinkinys veikia tinkamai, bet turite problemų su savo pavyzdžiais, greičiausiai sprendimas būtų pakeisti failų atrankos dažnį, kad jis atitiktų „PyGame“22, 050 khz imties dažnį ir bitų gylį 16. Tai galite padaryti naudodami „Audacity“arba bet kokia kita garso redagavimo programinė įranga. Iš ten jie turėtų veikti puikiai!
5 žingsnis: Nuoroda į skaičių klaviatūrą
Gerai, kad sekos keitimo priemonėje vyksta daug dalykų, daugiau nei iš pradžių turėjau omenyje, todėl šiek tiek prigludau prie skaičių klaviatūros, kad atitiktų padidėjusį funkcionalumą. Atsižvelgiant į tai, žvaigždutė * ir laikotarpis. abu veikia kaip funkciniai klavišai.
NUORODA
PAGRINDINĖS FUNKCIJOS
[8] - Įjunkite ir išjunkite metronomą
[9] - Įjunkite ir išjunkite įrašymo režimą
[Enter] - Paleidimo/pristabdymo seka
[0] - ištrinkite dabartinę pastabą iš eilės
[Num Lock ir *] - Išjunkite
[MIDI pastaba ir.] - Nekventuokite iki lyginių skaičių
TEMPO FUNKCIJOS
[+] - Kursas pagreitina BPM
[-] - Kursas sulėtino BPM
[+ ir *] - Greitai pagreitinkite BPM
[- ir *] - Greitai sulėtinkite BPM
[+ ir.] - Fine Pagreitinti BPM
[- ir.] - Fine Slow Down BPM
SEKOS FUNKCIJOS
[1-6] Prisiminkite 1-6 seką
[1-6 ir.] Parduotuvės seka 1-6
[0 ir.] Išvalyti dabartinę seką
MĖGINIŲ APLANKŲ KEITIMAS
[1-9 ir *]-Pakeiskite į pavyzdinį paketą aplankuose 1-9
[1-9 ir * ir.]-Pakeiskite į pavyzdinį paketą aplankuose 10-18
SEKOS PATARIMAI:
-Išvalykite dabartinę seką [0 ir.] Ir išsaugokite ją visose sekose, kurias norite ištrinti iš atminties.
-Prisiminkite seką ir išsaugokite ją kitu numeriu, kad ją nukopijuotumėte.
Rekomenduojamas:
HX1 -DM - atnaujinta „Arduino DUE“varomoji būgno mašina (pagaminta naudojant „Dead Maschine MK2“): 4 žingsniai
HX1 -DM - „Upcycled Arduino DUE“varomas „pasidaryk pats“būgnų aparatas (pagamintas naudojant „Dead Maschine MK2“): specifikacijos Hibridinis „Midi“valdiklis / būgno mašina: „Arduino DUE“maitinamas! 16 greičio jutiklių pagalvėlių su labai mažu vėlavimu 1 > 8 rankenėlės, kurias vartotojas gali priskirti bet kuriai „Midi #CC“komandai 16 kanalų įmontuotas sekos nustatymo įrenginys (nereikia kompiuterio !!) MIDI įvestis/išvestis/per funkciją
„Arduino“būgno žmogus: 5 žingsniai (su nuotraukomis)
„Arduino Drum Man“: Ingredientai: 1. Metalinė viela2. Pigus žaislų būgnų rinkinys („Hi hat“, „snare“ir „kick būgnas“) 3. Trys servo 4. Elektros laidas 5. Lipni juosta 6. Duonos lenta7. Arduino Uno8. Nuo USB iki USB 2.0
Kūrybingi skalbimo mašinos būgno naudojimo būdai: 5 žingsniai
Kūrybiniai skalbimo mašinos būgno naudojimo būdai: ši pamoka skirta įkvėpti ir alternatyviai pažvelgti į išmestus objektus. Tai nebūtinai turi būti dubliuojama, bet suteikia jums idėjų apie galimus skalbimo mašinos būgno naudojimo būdus, kurie paprastai nebūtų svarstomi. Mano aistra
„Midi Orff Bass Bar“būgno pagalvėlės: 5 žingsniai
„Midi Orff Bass Bar“būgno pagalvėlės: norite padaryti midi būgną? Norite turėti transponuojantį „Orff Bass“barą? Sekite šią pamoką ir sukurkite savo! Modifikacija skatinama … Su juo keista
„Arduino“servo būgno mašina: 4 žingsniai
„Arduino Servo“būgno mašina: Tai paprasta dviejų mikro servo ir „Arduino Uno“valdoma būgno mašina arba robotas. Servos montuojamos ant L formos medinio laikiklio, kuris yra pritvirtintas prie spąstų būgno su 4 stipriais magnetais. Servo rankenos yra prisukamos prie dviejų lazdelių, kurios tarnauja kaip