Мазмұны:
- 1 -қадам: Soundflower -ді Max және DAW көмегімен орнату
- 2 -қадам: сигналды өңдеу жолын шешіңіз
- 3 -қадам: құрғақ қоспаны қосыңыз
- 4 -қадам: Питшифтермен қадамды ауыстыру
- 5 -қадам: БҰРЫТУ
- 6 -қадам: Дронның күші
- 7 -қадам: Біртүрлі: сақина модуляциясын енгізу
- 8 -қадам: Кідіріс және сигналдың нашарлауы… Деграда… Дег… Д…
- 9 -қадам: Belton кірпіш стиліндегі реверб
- 10 -қадам: кездейсоқ стерео тремоло
- 11 -қадам: Осциллография
- 12 -қадам: Сигналдарды өңдеу модулін ұсыну
- 13 -қадам: 2 -бөлім: Аккорд генераторы
- 14 -қадам: Арпеггиаторға берілетін жазбаларды алу
- 15 -қадам: Бұл аккордтарды біріктіру
- 16 -қадам: «Негізгі джумлер»
- 17 -қадам: Автономды ноталар генерациясымен сиқырлық жасау
- 18 -қадам: Түртуді аяқтау
- 19 -қадам: бәрін орау
Бейне: Max MSP Ambient Loop генераторы: 19 қадам
2024 Автор: John Day | [email protected]. Соңғы өзгертілген: 2024-01-30 10:22
Бұл Max MSP -те қоршаған орта циклінің генераторын құруды бастау туралы оқулық.
Бұл оқулықта сізде MSP MSP, DAW интерфейстері мен сигналдарды өңдеу туралы негізгі түсініктер бар деп күтеді. Егер сіз осы оқулықта жасалған бағдарламаны қолданғыңыз келсе, оны ақысыз жүктеп алыңыз (бірақ сатуға немесе қайта жариялауға болмайды)!
Біз жасайтын бағдарлама ЕКІ негізгі бөліктен тұрады:
1) Көп сигналды процессор
2) Жартылай рандомизацияланған ноталар генераторы
Жазба генераторы MIDI деректерін DAW-ке жіберетін жартылай кездейсоқ үлгілердегі кілт/масштаб бойынша баяу жұмыс істейді, бұл өз кезегінде аудионы Max-қа өңдеуге жібереді.
Бұл соңғы түзету файлының сілтемесі:
Жабдықтар:
- Негізгі Max MSP және MIDI білімдері
- Максималды MSP
- Дыбыстық интерфейс (біз Logic Pro X қолданамыз)
- Дыбыс гүлі
- (Қосымша) Сіздің DAW үшін жақсы бағдарламалық құрал плагиндері
1 -қадам: Soundflower -ді Max және DAW көмегімен орнату
Soundflower - бұл Mac бағдарламаларындағы дыбыстарды жіберуге көмектесетін бағдарлама. Біз мұны DAW -тен Max -қа аудио алу үшін қолданамыз.
DAW көмегімен Soundflower -ді пайдалану оңай болмас еді! Soundflower -ді жүктеп алыңыз, сонда ол дыбыс шығысы мен кірісі ретінде пайдалануға болады. Егер біз adc ~ (аудио кіріс) және dac ~ (аудио шығыс) объектілерін жасасақ, онда Soundflower 2ch пен Soundflower 64ch дыбыстық жолдарға айналатынын көреміз. Біз бұл бағдарлама үшін Soundflower 2ch (2 арна) қолданамыз.
Max бағдарламасында кірісті қосу және өшіру үшін қосқышты және дыбыс деңгейін жоғарылату сырғытпасын қосыңыз, сонда сіз өз жолыңызда боласыз.
DAW -те, параметрлер> аудио астында аудио кірісі мен аудио шығысын көресіз. Біз аудио шығыс ретінде Soundflower 2ch қолданамыз.
2 -қадам: сигналды өңдеу жолын шешіңіз
Қарапайым тілмен айтқанда, сіздің дыбысыңыз әр түрлі арналарда немесе барлығы бір түзу сызықта бұрмалана ма?
Біз параллель аудио өңдеуді қолдануды шештік - біздің сигнал бірнеше түрлі арналарда бұрмаланатын болады. Бұл бізге жалпы дыбыстың анық болуына және сигналды бақылаудың артықшылығына мүмкіндік береді, бірақ үлкен көлемді негізгі кіріске итермелейді, нәтижесінде кейбір кесу пайда болады. Біз бұрмаланған аудиоға көбірек бақылау қажет деп шештік, өйткені бұл бәрібір қоршаған айналмаларды жасайды!
Сонымен қатар, сіз қандай эффект жасағыңыз келетінін шешуіңіз керек. Егер сізге идея қажет болса, біз мұнда эффект түрлерін көрсетеміз.
3 -қадам: құрғақ қоспаны қосыңыз
Біз алдымен «құрғақ қоспаны» қостық, осылайша бізде бөлек, әсер етпейтін дыбыстық сигнал болуы мүмкін. Бұл adc ~ шығысын кірістіру жүгірткісіне (қарап шығуды жеңілдету үшін дискі бар), төмен өтімді сүзуді реттеу үшін дискі бар svf ~ сүзгісіне, содан кейін негізгі пайдаға және dac ~ -ға шығару арқылы жүзеге асырылды. Құрғақ қоспаны қолдану өте ыңғайлы болуы мүмкін, сондықтан егер сіз дыбыстарды таза және тексеруге оңай етіп сақтағыңыз келсе, оны ұсынамыз!
Біз сіздің назарыңызды сол жерде ұстаған болар едік - біз барлық эффектілерді бөлек svf ~ сүзгілерінде іске қосамыз, әр сигнал арнасы үшін үнді терулер болады. Бұл белгілі бір эффект тым жоғары жиілік кезінде дыбыс кеңістігін тазартуды жеңілдетеді. Біз барлық svf ~ төмен өту сүзгілерін жасадық (төменгі өту жолына қосылу арқылы), сондықтан олар жоғары жиілікті біртіндеп өшірді. Сонымен қатар, svf ~ -де өткізу жолағы (селективті жиілік), жоғары өту (төменгі деңгейлерді жою) және басқа пайдалы сүзгілер бар. Сізге не ұнайтынын және не қажет екенін көру үшін эксперимент жасаңыз немесе бірнеше сүзгіні қолданыңыз!
4 -қадам: Питшифтермен қадамды ауыстыру
Қарапайым, қолдануға ыңғайлы питчифтер үшін, Max бағдарламасындағы питчифтер анықтамалық нұсқаулығынан питчифтер кодын көшіріңіз. Біздің код өте ұқсас, бірақ кептелісті азайту үшін сырғу мен дыбыс сапасының көптеген параметрлері сияқты мүмкіндіктерді жояды. Дыбысты іске қосу (параллель дыбыс үшін немесе қосалқы дыбыс үшін құрғақ қоспадан) дыбыс қаттылығының деңгейін реттеу үшін дискіні пайдалануға мүмкіндік береді.
Құрғақ қоспадағы сияқты, біз дыбыс деңгейін басқаруға және эквалды деңгейлерді қалыптастыруға мүмкіндік беретін кірістіру сырғытпасы мен svf ~ объектісін қостық.
5 -қадам: БҰРЫТУ
Overdrive ~ объектісін қолдану - бұрмалауды қосудың ең қарапайым әдісі. Сіз мұны кірістіру сырғытпасы мен сүзгіге қосуға болады және оны бір күн деп атай аласыз. Дегенмен, біз оны бірнеше қадамға алдық. Біріншіден, біз сол және оң аудио жолдарды фазалық ығысудың жеке объектілеріне айналдырдық - олар сол және оң аудио жолдарын фазадан тыс орналастырады, хорды педаль сияқты дыбысты «қалыңдатады».
Сонымен қатар, біз алынған дыбысты сүзгі графигі бар каскадты ~ объектіге жібердік. Бұл дыбысты белгілі бір жиіліктерде азды -көпті бұрмалауға және қалағаныңызша сүзгі жолақтарымен бұрмалауға мүмкіндік береді. Біздің бұрмалану фильтр-графигі 1980 жылдардағы Boss HM-2 Heavy Metal педальының бұрмалануынан үлгі болды.
Осы сәтте біз ерекше шулы әсерлерден кейін omx.peaklim ~ объектілерін қосуды бастадық - бұл объект дыбыс сигналын компрессор сияқты шектейді, бұл соңғы дыбыс жолын қиып алуды жеңілдетеді.
6 -қадам: Дронның күші
Біз сондай -ақ патчқа «дрондау» жиілігін қосу қажет деп таптық. Бұл қарапайым осцилляторды құру үшін циклдік объектінің көмегімен орындалуы мүмкін болса да, ол бастапқы дыбыстың дыбыс деңгейі мен жиілігінің өзгеруіне өте бейімделмеген болар еді. Сондықтан біз ультра резонансты дыбыс жолын құру үшін svf ~ сүзгісін қолдандық. Дыбысты svf ~ сүзгісіне қосу және резонансты 1 -ге орнату арқылы біз дыбыс жолымыз сияқты кіретін және шығатын ұшатын жиілікті жасаймыз, содан кейін оны дыбыс қаттылығына, тонға және жиілікке реттеуге болады. Бекітілген дискіні реттеу ұшу жиілігін реттейді.
7 -қадам: Біртүрлі: сақина модуляциясын енгізу
Енді біз сақина модуляциясын қосу арқылы жүреміз! Бұл көңілді және керемет әсерді жасау өте қарапайым және өте түсініксіз, себебі бұл сәл күлкілі болып көрінеді. Бұл оң жақ кірістегі *~ объектісіне теруді бекіту арқылы, ал сол жақ кірісте біздің тергішті бекіту арқылы жүзеге асады. Біз мұны тағы бір қадам жасадық - біздің сақина модуляторы төмен түскенде, қақпа нөмірлік сигналын жауып тастайды, осылайша сақина режимінің сигналы толығымен өшеді. Сонымен қатар, оны жиілікті белгіленген мөлшерге азайтатын басқа * объектіге шығаруға ауыстыруға болады. Осылайша, бізде «ұсақ», тремоло түріндегі сақина режимі және жылдамырақ, оғаш дыбыс сақинасының модуляциясы болуы мүмкін. Басқа эффектілер сияқты, бұл кірістіру сырғытпасы мен svf ~ сүзгісінде іске қосылды.
8 -қадам: Кідіріс және сигналдың нашарлауы… Деграда… Дег… Д…
Мұнда біз уақытты бақылау, кері байланыс теру, үнді теру және үлгінің қадір -қасиетін төмендету арқылы кідіріс жасаймыз. Бұл бізге сигналды біртіндеп тыныш және бұрмаландыра отырып, аналогтық кідірісті еліктеуге мүмкіндік береді. Ол үшін біз қосылған tapin ~ және tapout ~ нысандарын қолданамыз. Біз тапқаннан кейін 5000 жазамыз ~ оның 5000 мс жады уақыты бар екеніне көз жеткізу үшін. Degrade ~ объектісін қосу сигналды біртіндеп жоюға мүмкіндік береді. Содан кейін біз аудионы adc ~ біздің нашарлау объектімізге, тапинге ~, таспаға ~ айналдырамыз және бір мезгілде *~ бастап *~ сыртқа шығуды бақылауға қайтарамыз. Бұл бізге кідіріс көлемін реттеуге және *~ объектісінен біздің шығуларға кешіктірілген сигнал алуға мүмкіндік беретін тергішті бекітуге мүмкіндік береді. Бұған қоса, сапасыз объектіні tapin ~ ге қою бізге сигналды кешіктірген сайын үлгіні азайтуды көбейтуге мүмкіндік береді. Мұның бәрі қалай жасалғанын түсіну үшін біздің суретті және кодты тексеріңіз.
9 -қадам: Belton кірпіш стиліндегі реверб
Белтон кірпіштен жасалған реверб-бұл Neunaber Effects компаниясының Брайан Нойнабер жасаған Accu-Bell BTDR Digi-log чипімен жабдықталған реверб. Бұл чип каскадты кешіктіру сызықтарын қолдана отырып, қарапайым серіппелі ревербтерге мүмкіндік береді. Бұған еліктеу үшін біз уақыт пен кері байланысты реттеу үшін бір теру арқылы тағы бір кешігуді кодтадық. Уақыт ешқашан 100 мс аспайды және кері байланыс 80%шектеледі. Бұл қарапайым кідіріс көктемгі реверб дыбысын береді! Пайда мен тонды тағы бір рет басқарыңыз.
10 -қадам: кездейсоқ стерео тремоло
Біздің соңғы сигнал әсері! Мұнда біз сақина модуляторы үшін бұрын қолданылған кодты бірнеше рет бұрдық: тремолоның тереңдігі рандомизацияланған, сол және оң арна үшін тремоло бар. Сонымен қатар, біз бұл қондырғыны барлық эффектілер оның алдында болатындай етіп тізбектей орнаттық, сондықтан әрбір сигнал тремоломен орындалады.
Мұны істеу үшін біз қоңыраудың модульдік кодын бұрынғыға еліктейміз, кейбір өзгерістермен: сигнал енді екіншісі жабылған кезде ашылатын екі қақпаға өтеді. Бұл сигналға тек әсер етпейтін немесе өшірілмей, әсер етуі мүмкін немесе әсер етпеуге мүмкіндік береді. Бұл!- объектімен жасалды. Біздің теру rand ~ объектісіне өтеді, содан кейін *~ және a +~, ал оң жақ кірісте екіншісіне *~ төмен түседі және дыбыс сол жақта. Мұнда бізде рандомизацияланған тремоло бар, ол циферблат жоғары болған кезде қосылады, ал өшірілгенде төмен түседі!
Бұл кірісті бақылауды немесе тонды басқаруды қажет етпейді, сондықтан ол тек dac ~ объектісіне өтеді.
11 -қадам: Осциллография
Ақырында, біз негізгі кіріс бақылауынан дыбыс шығысына қосылған масштаб ~ объектісін қосамыз. Біз сондай -ақ оның сезімталдығын реттеу үшін теруді қостық!
12 -қадам: Сигналдарды өңдеу модулін ұсыну
Біз бұл бөлімді кодты презентация режимінде қосымша мүмкіндік беру арқылы аяқтаймыз. Тек презентация режиміне жеке терулер мен түсініктеме жәшіктерін қосыңыз, сонда сіз жақсы боласыз! Біз өзімізге түрлі -түсті қораптармен және әр түрлі шрифтпен және дизайнерлік шешімдермен қосымша талғам бердік. Сонымен қатар, дизайн гитаралық педаль конструкцияларына негізделді: сигнал жолын түсінуді жеңілдету үшін белгіленген жолдар мен бөлімдердегі терулер. Бұл бөліммен көңілді болыңыз!
13 -қадам: 2 -бөлім: Аккорд генераторы
Бізде қазір Max -та сигналдық процессор толық жұмыс істейді, оны беру үшін бізге тек дыбыс қажет. Soundflower -ді қолдану арқылы біз шығатын дыбыстың барлығын сигналдық процессор арқылы жібере аламыз, тек көзі сіздің компьютер болса!
Өзіміздің жеке айналмалы ілмектерді жасау үшін, біз тағы бір Max патчын жасауымыз керек. MIDI күшінің арқасында дайын патч сіздің DAW үшін жаңа MIDI контроллері ретінде тиімді түрде қызмет етеді, оған жазбаларды жібереді, бұл сізге таңдаған немесе дизайндағы кез келген құралды пайдалануға мүмкіндік береді! Сыртқы MIDI контроллерінен айырмашылығы, максималды қуатпен біз сигналдық процессормен оны модуляциялауға мүмкіндік беретін, өздігінен ойнай алатын MIDI контроллерін жасай аламыз.
Бірегей ноталар генерациясы үшін біз үштіктерді құру үшін арпеггиаторды қолданатын боламыз, кейінірек арпеггиаторға аккордтар арасында секіруге мүмкіндік беретін алгоритмді қалай біріктіру керектігін қарастырамыз.
14 -қадам: Арпеггиаторға берілетін жазбаларды алу
Арпеггиаторды біріктірмес бұрын, оның реттілігі үшін аккордтарды құра білуіміз керек. MIDI -де пернетақтадағы әрбір жазба санға сәйкес келеді, ортасында С - 60. Бақытымызға орай, сандар реттік, сондықтан кейбір музыкалық теорияны қолдана отырып, біз әр түрлі негізгі қолтаңбаларға сәйкес келетін дұрыс интервалдарды құра аламыз.
Сіз қолданатын негізгі қолтаңбалар сізге байланысты, бірақ сіз біз таңдаған 4 негізгі қолтаңбамен бірге жүре аласыз. Кейінірек біз кодтың осы бөлігіне негізгі қолтаңбаларды өздігінен айналдыруға мүмкіндік беретін етіп қосамыз, сондықтан біз тоналдылықты сақтауға көмектесу үшін негізгі, кіші, негізгі 7 -ші және кіші 7 -шідерді таңдадық.
Бірінші суретке жүгінсек, бұл бөлімнің негізгі бөлігі осы пернелердің интервалына сәйкес келетін математика ғана. Ең сол жақтағы '60' таңбасынан бастап, бұл түбір. Түбір өзгерген сайын, интервалдар ағымдағы кілт негізінде сәйкесінше өзгереді. Мысалы, егер негізгі кілт таңдалса, сәйкес интервалдар 4 және 7 болады. Содан кейін +0 ұяшықтары арқылы өтіңіз, ол сол аралықты түбірге қосады және сізге негізгі аккорд жасауға 3 нотаны береді. кез келген түбір!
15 -қадам: Бұл аккордтарды біріктіру
Arpeggiator кодын жоғарыдағы суреттен қараңыз. Есептегіш объекті және оған бекітілген 0, 1 және 2 объектілік қораптар жоғары, төмен және жоғары қарай арпегатордың бағытын басқаруға мүмкіндік береді.
Жоғарыда көрсетілгендей, біз жай ғана құрастырған интервал генераторы 'int' ұяшықтарына бағытталады, сондықтан санауыштар мен таңдау терезелері жұмыс істегенде, ол кодтың басқа бөлігінен аккорд арқылы өтеді. Содан кейін бұл MIDI нөмірлерін дыбысқа айналдыру үшін 'makenote' және 'noteout' терезесі арқылы өтеді!
«Note 1» ұяшығына қосылған «Max 1 -ден» портына назар аударыңыз, себебі бұл MIDI ақпаратын Max -тан DAW -ке жіберуге мүмкіндік береді.
'Метро' объектісі әр интервал арасындағы уақытты миллисекундпен анықтайды. Менде әдепкі бойынша 500 мс бар, егер сіз бекітілген кодты ұстанатын болсаңыз, жүгірткі объектісін қолдана отырып, әр интервал арасында қанша миллисекунд бар екенін реттей аласыз.
16 -қадам: «Негізгі джумлер»
Жоғарыда суретте әр түрлі түбірлік ноталарды таңдаған кезде өздігінен аккордтар жасауға мүмкіндік беретін бағдарламаның негізгі қолтаңбаларды автоматты түрде айналуына мүмкіндік беретін код бөлігі бар.
'Таңдау' нысаны арпеггиатор бөліміндегідей жұмыс істейді, бірақ біз белгілі бір тізбектің орнына пернелер арасында кездейсоқ айналу үшін «урна» қорабын қолданамыз. «Урна» қорапшасының «кездейсоқтан» айырмашылығы - ол санды бүкіл диапазоннан өтпейінше қайталамайды, бұл өз кезегінде әр түрлі пернелер арасында секірудің біркелкі таралуын қамтамасыз етеді.
17 -қадам: Автономды ноталар генерациясымен сиқырлық жасау
Бұл код жиынтығы бұл патчтың автономды түрде жұмыс істеуіне әкеледі. Егер біз осы бөлімнің басынан аккорд генераторына жүгінетін болсақ, түбірді өзгерту келесі интервалдарды автоматты түрде толтырады, осылайша біз хорданың бірегей прогрессиясын жасау үшін оны пайдалана аламыз!
Мұндағы негізгі элемент - бұл «итермелі» немесе ішіндегі кішкентай көк тіктөртбұрыштары бар үлкен шаршы. Мұны арпеггиатордан метро параметріне тіркеу арқылы (қорап 500 -ге орнатылған), біз аккорд өзгеретін арпеггиатор тізбегіндегі нақты нүктені басқара аламыз. Arpeggiator 3 жиынтығында жұмыс істейтіндіктен, 4 циклді ескере отырып, оның өлшемі 12 -ге орнатылды, ал диапазон 2 -ге орнатылды, олардың екеуі «жоқ» және 1 «иә» ретінде қызмет етеді. аккорды өзгертпеу. Негізгі кодтағы реттілікпен арпеггиатор бір триада арқылы өтеді, содан кейін жаңа аккорд пайда болады және ол сол үштік арқылы өтеді және т.б.
«Кездейсоқ» қораптар жаңа түбірдің түпнұсқадан қаншалықты алыс екенін анықтайды, қазіргі уақытта мен оны октаваның жартысына дейін жоғары немесе төмен қарай көтере алатын етіп конфигурацияладым.
Сол жақта көрсетілген кодтың толық суретінде астындағы 67 сандық ұяшығы аккорд генераторынан түбірлік сандық терезеге бекітілген, сондықтан кез келген сан itable мен оның алгоритмі арқылы жасалады. генератор, содан кейін арпеггиаторға, онда ол жаңадан таңдалған аккорды ойнайды. Оның үстіндегі «+0» қорабында жұмыс істейтін 67 сандық ұяшық жоғарыда көрсетілген фортепиано объектісіне бекітілген, ол сонымен қатар аккорд генераторынан түбірлік сандық ұяшыққа бекітілген. Бұл кодтың осы бөлігіндегі алгоритм сан шығарған кезде, ол фортепианода да таңдалады, сондықтан ол осы нотаны ойнауға итермелейді.
Соңғы кодта бұл бөлім екі рет пайда болады, тек айырмашылығы бар. Арпеггиатор тізбекті 4 рет қайталағаннан кейін жаңа аккорд пайда болатындай етіп, оны қалай жасау керектігін бөлек бекітілген материалдан қараңыз.
18 -қадам: Түртуді аяқтау
Енді сізде толықтай жұмыс істейтін өздігінен ойнайтын арпеггиатор болуы керек! Алайда, егер сіз біршама бақылауды қосқыңыз келсе, жоғарыда көрсетілген код бөлігі ойнатылып жатқан ноталардың ұзақтығын бақылауға мүмкіндік береді, осылайша сіз баяу, ұшып бара жатқан, қоршаған орта циклі үшін тамаша ұзақ жазылған ноталарды ала аласыз.
Сондай -ақ, Макс -ты DAW арқылы іске қосқан кезде әсіресе пайдалы болатын «тоқтату» нысаны бекітілген. Егер Max MIDI деректерімен байланыс кезінде мәселелерге тап бола бастаса, сіз оны ауыстыра аласыз және Max немесе DAW -ты толығымен жаппай -ақ тоқтата аласыз.
19 -қадам: бәрін орау
Бағдарлама енді функционалды түрде аяқталды, бәрін тек презентация режимінде ұйымдастыру қажет. Мұның бір ғана шешімі жоқ, ол беттік деңгейден басқарғыңыз келетін нәрсеге байланысты.
Менің таңдауым модуляциялауды қалайтын барлық нәрселердің маңыздылығын қамтиды, сондықтан сіз оны өзіңіз қалағандай қосуға немесе алып тастауға болады.
Енді осы екі патчпен танысып, музыка құруды бастау ғана қалды!
Ләззат алыңыз!
Ұсынылған:
Турбо -тренер генераторы: 6 қадам
Турбо -тренер генераторы: Педальдың көмегімен электр энергиясын өндіру мені әрдайым қызықтырды. Міне, менің көзқарасым осы
Праготрон - Пулзу генераторы: 5 қадам
Праготрон - Пулзу генераторы: Генератор минутович пульго проготроны
4-20ma генераторы/сынаушы Arduino көмегімен: 8 қадам
4-20ma генераторы/сынаушысы Arduino арқылы: 4-20мА генераторлар ebay-де қол жетімді, бірақ мен өз қолыммен бөлшектерді қолданатын бөлшектерді қолданамын. Мен біздің PLC-дің аналогтық кірістерін тестілеуді тексеру үшін тексергім келді. 4-20мА аспаптардың шығуын тексеру. Ло бар
La Chaise Longue Interactive Avec Arduino Et Max/MSP: 5 қадам
La Chaise Longue Interactive Avec Arduino Et Max/MSP: интерактивті интерфейс: интерфейстің кеңістігі соншалықты үлкен емес, сонымен қатар қоршаған ортаға әсер етпейді. donc un capteur de luminosité (placé sous le transat) reliés
Ауа райына негізделген музыка генераторы (ESP8266 негізіндегі Midi генераторы): 4 қадам (суреттермен)
Ауа -райына негізделген музыкалық генератор (ESP8266 негізіндегі Midi генераторы): Сәлеметсіз бе, мен бүгін ауа -райына негізделген музыкалық генераторды қалай жасау керектігін түсіндіремін, ол ESP8266 негізінде жасалған, ол Arduino сияқты, ол температураға, жаңбырға жауап береді. және жарық қарқындылығы.Ол бүкіл әндер мен аккордтар жасайды деп күтпеңіз