Мазмуну:
- 1 -кадам: көз карандылыктар
- 2 -кадам: Midi киргизүү баалуулуктарын конфигурациялоо
- 3 -кадам: Үлгү менен кошумча папкаларды кошуу
- 4 -кадам: Жаңы папкалардын ичиндеги кошумча үлгүлөрдү кошуу жана конфигурациялоо
- 5 -кадам: Number Pad Reference
Video: Raspberry Pi барабан машинасы: 5 кадам
2024 Автор: John Day | [email protected]. Акыркы өзгөртүү: 2024-01-30 10:36
Sample Sequencer, Raspberry Pi + Python аркылуу.
Секвенсерде 4 полифония бар жана колдонуучу реалдуу убакытта алмаштыра турган 6 түрдүү ырааттуулукту сактоого жана көрсөтүүгө мүмкүнчүлүк берет жана ар кандай үлгүлөрдү алмаштыруу мүмкүнчүлүгүн колдойт.
Мен сценарийди чындыгында ар кандай MIDI контроллери жана үндөрү менен иштей тургандай кылып жаздым. Мен 18 ар кандай үн банктарын колдоном, алардын ар биринде 16 үлгү бар, бирок банктарды жана үлгүлөрдү кошуу же алып салуу оңой жана көп өзгөртүүлөрдү талап кылбайт. Эгер кандайдыр бир кыйынчылыктар болсо, мага электрондук кат жазыңыз: [email protected]
GitHubдан кодду табыңыз:
Сураныч, эгер сиз аны колдонсоңуз, айрыкча, эгер сиз аны менен видео жасасаңыз, мага кабарлаңыз!
1 -кадам: көз карандылыктар
Бул программа төмөнкүлөрдү талап кылат (орнотулбаган) Python модулдары:
mido
оюн
numpy
Бирок, Мидо кээ бир кыйынчылыктарды жаратат, анткени Мидонун өзү бир нече көз карандылыкты талап кылат. Алардын бардыгы орнотулганына ынануу үчүн, Raspberry Pi терминалына төмөнкү буйруктарды териңиз ('$' калтырып) жана баары жакшы болот. Башка модулдар кадимкидей эле орнотулушу мүмкүн.
$ sudo apt-get update
$ sudo apt-get install-essential орнотуу
$ sudo apt-get libasound-dev же libasound2-dev орнотуу
$ sudo apt-get libjack0 орнотуу
$ sudo apt-get libjack-dev орнотуу
$ sudo apt-get python-pip орнотуу
$ sudo apt-get install python-dev
$ sudo pip python-rtmidi орнотуу
$ sudo pip mido орнотуу
2 -кадам: Midi киргизүү баалуулуктарын конфигурациялоо
Негизги Python Scriptтин ичинде 16 бүтүн сандан турган noteList деп аталган массив бар (165 -сап.) Бул биздин контролерибиз үндөрдү иштетүү үчүн Пи -ге жөнөткөн MIDI нота баалуулуктары. Ар бир MIDI контроллери башкача, бирок сизде Akai LPD8 жок болсо, анда бул баалуулуктарды түзмөгүңүзгө дал келтирүү үчүн өзгөртүүгө туура келет.
Github репо бул максат үчүн атайын даярдалган "midihelp.py" деп аталган дагы бир сценарийди камтыйт! Мунун баары - компьютер тааныган биринчи MIDI контроллеринен киргизүү баалуулуктарын консолго басып чыгаруу. Сиз эмне кылышыңыз керек, бул маанилерди, эгер алар noteListке киргизилгендерден айырмаланышса, массивге алмаштыруу.
Эскертүүлөрдүн тартиби ошондой эле папкадагы кайсы үн эффектинин ойнолушуна байланыштуу, ошондуктан муну да эске алыңыз.
3 -кадам: Үлгү менен кошумча папкаларды кошуу
Сценарийдин ичиндеги комплекттер ошол каталогдогу папкалар аркылуу сакталат, 808 комплектинин GitHub файлынын ичинде кандай болгонун так аныктайт. Ошентип, мен оңой уюштурулган жана алмаштырылган папкаларда сакталган ар кандай үлгүлүү топтомдорго ээ боло алам.
Сценарийдин өзүн өзгөртө турган жалгыз нерсе - бул өзгөрүлмө foldNum, ал скриптке үлгүлөрдүн канча папкасы бар экенин айтып берет. Учурда сценарийде foldNum бирге коюлган, анткени ошол каталогдо бир гана субфольдор бар (808 комплект.) Учурда скрипт иштете ала турган максималдуу папкалар 18, мен канча колдонуп жатам, бирок бул өтө эле маанисиз муну өзгөртүңүз, эгер сизге жардам керек болсо, мага кабарлаңыз.
Папкалардын аттары анча деле мааниге ээ эмес (баары бир башкача), анткени Скрипт бир эле каталогдогу папкалардын санын окуп, жолдорду ушинтип басып алат. Файлдардын аттары маанилүү, бирок кийинки кадамда.
4 -кадам: Жаңы папкалардын ичиндеги кошумча үлгүлөрдү кошуу жана конфигурациялоо
Добуштар 0-15 арасында номерлери бар.wav файлдарын камтыган каталогдогу папкалар аркылуу үлгү алуучуга жүктөлөт. Буга мисал үчүн камтылган 808 папканы караңыз. Үлгүлөрү бар ар бир субпапка бири -бирине окшош болушу керек.
NoteList массивиндеги MIDI киргизүүлөрүнүн индекси.wav файл атына дал келет.
Мисалы:
- noteList [0] сакталган MIDI нотасын иштеткенде 0.wav wav файлы ойнойт.
- noteList [8] сакталган MIDI нотасын иштеткенде 8.wav wav файлы ойнойт.
Мен муну жарым -жартылай кылдым, ошондуктан ар бир MIDI контролери сценарий менен иштөө үчүн оңой эле түзүлүшү мүмкүн, ошондой эле мен үлгүнү жана киргизүү номерин оңой кеңейте же чектей алам, ошондой эле файлдарды жана скриптти тебүү барабанына иреттей алам. үндөр, мисалы, ар дайым 0.wav катары сакталат жана биринчи MIDI нотасы менен иштелип чыгат.
Мен контроллеримдеги 16 кирүүгө дал келүү үчүн өзүм билемдик менен 16 баалуулукту тандадым, андыктан эгер сиз 1 гана үлгүдөгү секвенерди же башка көптөгөн нерселерди жасоону кааласаңыз, анда аудио файлдарды ошого жараша номерлөө жана noteList массивинде сакталган сандарды алып салуу же кошуу.
Эгерде камтылган 808 комплект туура иштесе, бирок сизде өзүңүздүн үлгүлөрүңүз менен кыйынчылыктар болсо, анда чечим файлдардын үлгүлөрүнүн ылдамдыгын PyGame 22, 050khz ылдамдык ылдамдыгына жана 16 бит тереңдигине дал келиши мүмкүн. Сиз муну Audacity же башка аудио түзөтүү программасы. Алар ошол жерден кемчиликсиз иштеши керек!
5 -кадам: Number Pad Reference
Ок Муну эске алып, жылдызча * жана мезгил. экөө тең функционалдык баскыч катары иштейт.
АДАБИЯТ
MAINFUNCTIONS
[8] - Метрономду күйгүзүү жана өчүрүү
[9] - Жазуу режимин күйгүзүү жана өчүрүү
[Enter] - Ойнотуу/Тындыруу ырааты
[0] - Учурдагы эскертмени ырааттуулук менен жок кылуу
[Num Lock жана *] - Өчүрүү
[MIDI Note жана.] - Жуп сандарды санабаңыз
ТЕМПО ФУНКЦИЯЛАРЫ
[+] - Курс BPMди тездетет
[-] - Курс жай BPM
[+ жана *] - BPMди тез ылдамдатуу
[- жана *] - BPM ылдамдыгын төмөндөтүү
[+ жана.] - BPMди тездетүү
[- жана.] - Fine Slow Down BPM
СЕКУНД ФУНКЦИЯЛАРЫ
[1-6] 1-6 ырааттуулукту эстетүү
[1-6 жана.] Дүкөндүн ырааттуулугу 1-6
[0 жана.] Учурдагы ырааттуулукту тазалоо
ҮЛГҮ Папкаларды ӨЗГӨРТҮҮ
[1-9 жана *]-Папкалардагы Үлгү пакетине өзгөртүү 1-9
[1-9 жана * жана.]-10-18 папкалардагы үлгүлөр пакетине өзгөртүү
СЕКУНД КЕҢЕШТЕРИ:
-Азыркы ырааттуулукту [0 жана.] Тазалап, эсиңизден чыгарууну каалаган тизмектерге сактаңыз.
-Катарды эстеп, аны көчүрүү үчүн башка номерге сактаңыз.
Сунушталууда:
Барабан машинасы Arduino Uno жана Mozzi менен: 4 кадам
Жөнөкөй барабан машинасы Arduino Uno жана Mozzi менен: Аргентинада жашоо эл аралык почта уурдалып кетет же бажыга тыгылып калат дегенди билдирет. Коронавирустун карантинин кошуңуз жана кийинки долбооруңуз Arduino Uno эски тактасы менен чектелет. Жакшы кабар? Роллинг Стоунздун улуу акыны айткандай: "Убакыт м
Микро: бит - Микро барабан машинасы: 10 кадам (Сүрөттөр менен)
Микро: бит - Микро барабан машинасы: Бул микро: бит микро барабан машинасы, жөн эле үндү чыгаруунун ордуна, актуалдуу барабандар. Бул микро: бит оркестринин коёндорунун жетеги менен жазылган. Mocro: bit менен колдонууга оңой болгон кээ бир соленоиддерди табуу мага бир аз убакытты талап кылды
Макей Макей Электр барабандары / Барабан машинасы: 8 кадам
Макей Макей Электр Барабаны текст үчүн көбүк/ башка менен
Raspberry Pi менен иштөөчү керексиз барабан машинасы: 15 кадам (сүрөттөр менен)
Raspberry Pi менен иштөөчү керексиз барабан машинасы: Бул көрсөтмө сизге Raspberry Pi менен иштөөчү робот барабан машинасын кантип жасоону көрсөтөт. Бул чынында эле кызыктуу, чыгармачыл, интерактивдүү долбоор. Мен сизге ички иштерди кантип жасоону көрсөтөм, бирок чыныгы барабандар сизге көз каранды болуп, сизге
Барабан кийүү: Барабан сиздин кийимиңизде!: 7 кадам
Барабан Кийими: Кийимиңизде Барабан!: Шаардык автобустун айдоочуларын караңыз. Алардын көбү музыкалык ойноткучтарына туташып, ыргакка чейин басып, колунда барабаны бардай түр көрсөтүшөт. Эми жасалма болуунун кереги жок! Барабандын эскилиги барабанчыларга толук портативдүү жана фу берет