Съдържание:

Синтез на аналогов звук на вашия компютър: 10 стъпки (със снимки)
Синтез на аналогов звук на вашия компютър: 10 стъпки (със снимки)

Видео: Синтез на аналогов звук на вашия компютър: 10 стъпки (със снимки)

Видео: Синтез на аналогов звук на вашия компютър: 10 стъпки (със снимки)
Видео: О чём молчат ПРОФЕССИОНАЛЫ AUDIO ГДЕ МУЗЫКА А подкаст с @foveonyc 2024, Ноември
Anonim
Синтез на аналогов звук на вашия компютър
Синтез на аналогов звук на вашия компютър

Като звука на онези стари аналогови синтезатори? Искате ли да играете с един по свое време, на ваше място, толкова дълго, колкото искате, БЕЗПЛАТНО? Тук се сбъдват най -смелите ви мечти на Moog. Можете да станете изпълнител на електронен запис или просто да издадете някои готини, тромави звуци, които да слушате на вашия mp3 плейър. Всичко, от което се нуждаете, е компютър! Всичко е направено чрез магията на безплатен симулатор на верига, наречен LTSpice. Сега знам, че вероятно казвате „Боже Уилкери, Тайлър, не знам нищо за провеждането на верижен симулатор- това звучи ТРУДНО!“. Не се притеснявай, Бънки! Лесно е и ще ви дам няколко шаблона за начало и промяна, за да издавате каквито и да е странни звуци, които искате. Не сте сигурни, че си струва усилията? Ето линк към готов за възпроизвеждане звуков файл (той е направен от „composition_1.asc“в стъпка 7 от тази таблица), който можете да изпробвате. Преобразувах го от.wav в mp3, за да намаля времето за изтегляне. https://www.rehorst.com/mrehorst/instructables/composition_1.mp3 В него има звук с ниски баси, така че слушайте със слушалки или добри високоговорители. Ако ви харесва това, което виждате, гласувайте за мен! Забележка: Прикачих схематични файлове за LTSpice, които можете да стартирате на вашия компютър, но по някаква причина, когато се опитвате да ги изтеглите, имената и разширенията се променят. Съдържанието на файловете изглежда добре, така че след изтеглянето на файловете просто променете имената и разширенията и те трябва да работят. Правилните имена и разширения са показани на иконите, които щракнете, за да изтеглите.

Стъпка 1: Първи неща първо

LTSpice е програма за Windows, но не позволявайте това да ви подведе. Той работи добре под Wine в Linux. Подозирам, че няма проблеми при стартирането му в VMWare клиент, VirtualBox или други инструменти за виртуализация под Linux, а вероятно и на Mac. Изтеглете копие на LTSpice за Windows (ъф!) Тук: https://www.linear.com/ designtools/software/ltspice.jsp Инсталирайте го. Какво е LTSpice? Това е симулатор на верига във времева област, който всеки любител на електрониката трябва да знае как да използва. Няма да давам подробен урок за това как работи тук, но ще обясня няколко неща, които трябва да знаете, докато вървим напред. Едно предупреждение- лесно е възможно да се създадат твърде ниски честоти или твърде високо, за да чуете. Ако направите това и карате скъпите си високоговорители с усилен усилвател, можете просто да издухате високоговорителите/усилвателя на парчета. ВИНАГИ гледайте формите на вълните, преди да ги възпроизведете, и внимавайте да ограничите силата на звука, когато възпроизвеждате файл за първи път, само за да сте в безопасност. Винаги е добра идея да възпроизвеждате файловете чрез евтини слушалки с ниска сила на звука, преди да опитате високоговорители.

Стъпка 2: Въвеждане

Вход
Вход

Входът за симулатора е под формата на схематична диаграма. Избирате компоненти, поставяте ги върху схемата, след което ги свързвате заедно. След като веригата ви е завършена, вие казвате на симулатора как искате да симулира веригата и какъв вид изход искате. Разгледайте схемата, наречена резистори.asc. Ще видите, че има верига, която включва източник на напрежение, чифт резистори, обозначен изходен възел, земя и текстов команден ред. Нека разгледаме всеки един. Сега е подходящ момент да отворите файла с веригата, свързан по -долу. ТРЯБВА да имате заземяване, свързано към поне една точка на вашата верига, или ще получите много странни резултати от вашите симулации. Източникът на напрежение: Ако поставяте напрежение във верига, трябва да го кажете дали е AC или DC (или нещо по -сложно), какво е напрежението, "вътрешното съпротивление" на източника и т.н. Можете да въведете тези параметри, като щракнете с десния бутон с показалеца върху източника. Всичко, от което наистина се нуждаете, е съпротивлението за прости симулации. Резистори: Резисторите са доста лесни за разбиране. Просто щракнете с десния бутон, за да зададете стойността на съпротивлението. Игнорирайте всички други параметри, които може да се крият там. Етикетирани входни и изходни възли: Само имена за възли във веригата, които са удобни за потребителя.- използвайте имена като "изход", "вход" и др. Директивата за симулация:. казва на симулатора как искате да се симулира веригата. Това е симулатор във времева област, което означава, че анализира веригата в различни моменти от времето. Трябва да му кажете каква трябва да бъде максималната стъпка от времето и колко дълго трябва да работи симулацията в "верига-време", а не в реално време. Ако кажете на симулатора да работи за 10 секунди по време на веригата и зададете максималната стъпка от време на 0.001 секунди, тя ще анализира веригата най-малко 10 000 пъти (10 сек/0,001 сек), след което ще спре., напрежението във всеки възел във веригата и токовете във и извън всеки възел ще се изчисляват и записват на всяка времева стъпка. Цялата тази информация ще бъде достъпна за нанасяне на дисплей като екран на осцилоскоп (време на хоризонталната ос, напрежение или ток по вертикалната ос. Като алтернатива можете също да изпратите изхода към.wav аудио файл, който можете да възпроизвеждате на компютър, запишете на компактдиск или конвертирайте в mp3 за възпроизвеждане на вашия mp3 плейър. Повече за това по -късно …

Стъпка 3: Изход

Изход
Изход

Изходът може да бъде графичен график на напрежение срещу време, напрежение срещу напрежение и т.н., или текстов файл, състоящ се от куп напрежения или токове на всяка времева стъпка, или.wav аудио файл, в който ще използваме много тази инструкция. Изтеглете и отворете файла "otporors.asc". Щракнете върху символа на малкия бягащ човек (горната лява част на екрана) и веригата трябва да работи. Сега кликнете върху етикета "OUT" във веригата. Ще видите напрежението, обозначено като "изход", показано на графичния изход по хоризонтална ос, която представлява времето. Това е напрежението, измерено спрямо земята (затова се нуждаете от поне едно заземяване във всяка верига!). Това са основите. Опитайте да промените една от стойностите на резистора или напрежението, след това повторете симулацията и вижте какво се случва с изходното напрежение. Сега знаете как да стартирате симулатор на верига. Лесно нали?

Стъпка 4: Сега малко звук

Сега малко звук!
Сега малко звук!

Отворете веригата, наречена "dizzy.asc". Този е странен производител на шум, който използва модулатор и няколко източника на напрежение, за да произведе аудио файл с качество на CD (16 бита, 44,1 ksps, 2 канала), с който можете да играете. Компонентът на модулатора всъщност е осцилатор. Честотата и амплитудата са регулируеми като VCO и VCA в истински аналогов синтезатор. Формата на вълната винаги е синусоидална, но има начини да я промените- повече за това по-късно. Границите на честотата се определят от параметрите на маркировката и пространството. Марк е честотата, когато входното напрежение на FM е 1V, а пространството е честотата, когато входното напрежение на FM е 0V. Изходната честота е линейна функция на входното напрежение на FM, така че честотата ще бъде на половината път между маркировката и пространствените честоти, когато входното напрежение на FM е 0,5 V и ще бъде 2 пъти честотата на маркировката, когато входното напрежение на FM е 2 V. модулаторът може също да бъде амплитудно модулиран чрез AM входния щифт. Изходната амплитуда на модулатора (осцилатора) ще съответства на напрежението, приложено към входа на AM напрежението. Ако използвате източник на постоянен ток с напрежение 1, амплитудата на изхода ще бъде 1V (това означава, че ще се люлее между -1 и +1 V). Модулаторът има два изхода- синус и косинус. Формите на вълните са абсолютно еднакви, освен че са на 90 градуса извън фазата. Това може да бъде забавно за стерео аудио приложения. Има.tran изявление, което казва на симулатора максималната стъпка от времето и продължителността на симулацията. В този случай време на верига (общо време за симулация) = време на аудио файл. Това означава, че ако стартирате симулацията за 10 секунди, ще получите аудио файл с дължина 10 секунди. Изразът.save се използва за минимизиране на количеството данни, които симулаторът ще запише, докато изпълнява симулацията. Обикновено той записва напреженията във всеки възел и токовете във и извън всеки компонент. Това може да добави много данни, ако веригата ви се усложни или изпълнявате дълга симулация. Когато стартирате симулацията, просто изберете едно напрежение или ток от списъка в диалоговия прозорец и файлът с данни (.raw) ще бъде малък и симулацията ще работи с максимална скорост. създайте стерео аудио файл с качество на CD (16 бита на извадка, 44,1 ksps, два канала), като поставите напрежението в "OUTL" в левия канал и напрежението в "OUTR" в десния канал.. Wav файлът се състои от 16 битови проби. Пълният мащабен изход във.wav файла (всичките 16 бита в пробата са включени) възниква, когато изходното напрежение е точно +1 волта или -1 волта. Вашата синтезаторна верига трябва да бъде настроена да генерира напрежение не повече от +/- 1V към всеки канал, в противен случай изходът във.wav файла ще бъде "подрязан", когато напрежението надвишава +1 или -1 V. Тъй като правим аудио файл, който се изважда при 44,1 ksps, се нуждаем от симулатора, за да симулираме веригата най -малко 44, 100 пъти в секунда, така че задаваме максималната стъпка във времето на 1/44, 100 sec или около 20 микросекунди (us).

Стъпка 5: Други видове източници на напрежение, други видове звуци

Други видове източници на напрежение, други видове звуци
Други видове източници на напрежение, други видове звуци
Други видове източници на напрежение, други видове звуци
Други видове източници на напрежение, други видове звуци

Аналоговият синтезатор се нуждае от източник на случаен шум. Можете да генерирате шум, като използвате „поведенчески източник на напрежение“(bv) и можете да го включите и изключите с помощта на „превключвател, управляван от напрежение“(sw). Използването на bv компонента за генериране на шум включва определяне на напрежението въз основа на формула. Формулата за генериране на шум изглежда така: V = бяло (време*X)*Y Бялата функция създава произволно напрежение между -0,5 и +0,5 V, като използва текущата стойност на времето като начало. Задаването на Y на 2 дава замах +/- 1V. Настройката X между 1 000 (1e3) и 100 000 (1e5) влияе върху спектъра на шума и променя звука. Превключвателят, управляван от напрежението, също се нуждае от някои параметри, които да бъдат зададени в изявление.model. Можете да използвате множество превключватели, управлявани от напрежение, и множество изявления на модела, за да накарате всеки да се държи различно, ако искате. Трябва да кажете на симулатора "включено" и "изключено" съпротивление и праговото напрежение, при което той се превключва. Vh е "напрежение на хистерезис". Задайте го на някаква положителна стойност като 0.4V и няма да има никакви щракащи звуци, когато превключвателят се отваря и затваря. >>> Актуализация: ето още по-лесен начин да направите затворен източник на шум- просто умножете напрежението на шума с импулс източник- вижте easy_gated_noise.asc, по-долу.

Стъпка 6: Камбани, барабани, тарелки, изтръгнати струни

Камбани, барабани, тарелки, изтръгнати струни
Камбани, барабани, тарелки, изтръгнати струни

Камбаните, барабаните, тарелките и скубените струни са перкусивни. Те имат относително бързо време на нарастване и експоненциално време на затихване. Те са лесни за създаване с помощта на синусоидални и поведенчески източници на напрежение, комбинирани с някои прости схеми. Погледнете схематичната "bell_drum_cymbal_string.asc". Източниците на импулсно напрежение с резистор, кондензатор и диод създават необходимите бързо възходящи и бавни експоненциални разпадни вълни. Тези изходни напрежения модулират изходите на поведенчески източници, настроени като случайни източници на шум или синусоида. Когато напрежението на импулсния източник се повиши, той бързо зарежда кондензатора. След това кондензаторът се разрежда през резистора. Диодът предпазва източника на напрежение от разреждане на кондензатора, когато напрежението на източника е на нула. По -големите стойности на резистора увеличават времето за разреждане. Можете да посочите времето за нарастване на импулсния източник - тарелката е източник на шума с много бързо време за издигане. Барабанът също е източник на шум, който работи на по -ниска честота и има по -бавно време на нарастване. Камбаната и струната използват източници на синусоида, които също са модулирани от импулсни източници. Звънецът работи на по -висока честота и има по -бързо време на нарастване от струната. Изпълнете симулацията и слушайте резултата. Обърнете внимание, че барабанът се появява и в двата канала, докато всички останали звуци са или десен, или ляв канал. Двата резистора на изхода на барабана са отговорни за поставянето на звука в двата канала.

Стъпка 7: Съберете всичко заедно

Събирайки всичко заедно
Събирайки всичко заедно

Добре, сега сте видели как се издават някои звуци и как да се оформят пликовете и да се модулират по честота. Сега е време да съберем няколко различни източника в една единствена схема и да генерираме нещо интересно за слушане. Как да накарате този източник на шум да влезе в композицията на 33 секунди? Как да включите този звънец на 16 секунди, след това да го изключите, след което да го включите отново на 42 секунди? Един от начините е да използвате източник на поведенческо напрежение, за да издадете желания звук, след което да го включите и изключите, като умножите звуково генериращото напрежение с друго напрежение, което включва и изключва звука, както беше направено в bell_drum_cymbal_string.asc. Можете да направите едно и също нещо, за да избледнявате звуците навътре и навън. Идеята тук е да настроите повтарящи се звуци, след което да използвате допълнителни източници, за да добавите тези звуци към композицията си в желаните моменти, като умножите техните напрежения по звуковите напрежения. Можете да включите толкова напрежения в крайния звуков изход, колкото искате, просто продължете да ги умножавате (също като логически "и") заедно. Като стартират звуците наведнъж, те ще останат в перфектен синхрон в цялата композиция, така че никога да не бъдат рано или късно по време на музиката. Вижте композиция_1.asc. Има две камбани, по една във всеки канал. Напреженията на pulse_bell работят през цялата симулация, но звуците се показват само в изхода, когато V (bell_r) и V (bell_l) не са равни на 0.

Стъпка 8: Експоненциална рампа

Експоненциална рампа
Експоненциална рампа
Експоненциална рампа
Експоненциална рампа

Актуализация 7/10- превъртете до дъното Ето схема, която генерира експоненциална рампа, приложена към чифт източници на шум. V1 и V2 генерират линейни рампи, които започват от 0 и се издигат до X волта (ляв канал) и Y волта (десен канал) в периоди prd_l и prd_r. B1 и B3 използват формула за преобразуване на линейните рампи в експоненциални рампи с максимални амплитуди 1V. B2 и B4 генерират случаен шум, който е амплитудно модулиран от експоненциалните рампи и от параметрите amp_l и amp_r (прости контроли за ниво). Прикачих mp3 файл, генериран от тази схема, за да можете да чуете как звучи. Вероятно ще трябва да преименувате файла, за да го пуснете. X и Y задават границите на напрежението на линейните рампи. В крайна сметка рампите на двата канала се мащабират до 1V, но чрез настройка X и Y можете да контролирате стръмността на експоненциалната рампа. Малко число като 1 дава почти линейна рампа, а голямо число като 10 дава много стръмна експоненциална рампа. Периодите на рампа се задават с помощта на параметри prd_l и prd_r. Времето за линейно нарастване на рампата е настроено на стойност prd_l или prd_r минус 5 ms, а времето на спадане е зададено на 5 ms. Продължителното време на падане предотвратява щракването в края на всяка рампа, тъй като амплитудата пада обратно до нула. Out_l и out_r са произведени от времеви напрежения на случайния шум, експоненциалните напрежения на рампата и параметрите amp_l и amp_r. Обърнете внимание, че стойността на случайния шум в десния канал използва различно "начало" от левия канал. Това запазва шума във всеки канал произволен и различен от противоположния канал. Ако използвате една и съща семена, по една и съща стойност ще получите същата произволна стойност и звукът ще се озове в центъра, вместо да се възприема като два различни източника, по един във всеки канал. Това може да бъде интересен ефект, с който да играете … Актуализация: забележете, че формата на вълната преминава от 0V до някаква положителна стойност. По -добре е напрежението да се люлее между равни положителни и отрицателни стойности. Преработих схемата, за да направя точно това, но това увеличи сложността на уравнението, което определя малко формата на вълната. Изтеглете exponential_ramp_noise.asc (не забравяйте, че сървърът на Instructables ще промени името и разширението, когато го запишете).

Стъпка 9: Експоненциална рампа, приложена към синусоида

Експоненциална рампа, приложена към синусоида
Експоненциална рампа, приложена към синусоида

Тази страница показва как да използвате експоненциалната рампа от предишната стъпка за модулиране на източник на синус (всъщност синус и косинус). Поведенческият източник на напрежение се използва за превръщане на линейна рампа в експоненциална рампа, която задвижва FM входа на компонент modulate2. Амплитудата се модулира както от бърза експоненциална рампа, така и от бавна синусова вълна. Слушайте примерния файл- звучи доста странно.

Стъпка 10: Предложения

1) Можете да променяте общото време на симулация - оставете го кратко, докато играете с компоненти и когато получите звука, който харесвате, след това настройте симулатора да работи за 30 минути (1800 секунди) или колкото искате. Можете да копирате схеми от една страница на друга и можете да правите подсхеми, така че можете просто да свържете малки модули на верига заедно, като например да използвате кръпка на истински синтезатор. 2) Скоростта на дискретизация на CD е 44,1 ksps. Ако запазите максималната стъпка от време до 20 us, ще получите „чист“изход, защото симулаторът ще има налични данни за всяка нова извадка. Ако използвате по-малка времева стъпка, симулацията ще бъде бавна и вероятно няма да повлияе на звука. Ако използвате по-дълга стъпка във времето, може да чуете някакво псевдоним, което може или не може да ви хареса. 3) използвайте.save диалоговия прозорец на вашата схема и когато стартирате симулацията и изберете само едно от напреженията или токовете, за да запазите малкият размер на.raw файла. Ако не направите избор, ВСИЧКИ напрежения и токове ще бъдат записани и.raw файлът ще стане МНОГО голям. 4) опитайте да използвате много ниски честоти, за да модулирате по -високи честоти 5) опитайте да използвате по -високи честоти, за да модулирате по -ниски честоти. 6) комбинирайте изходите от някои нискочестотни източници с някои високочестотни източници, за да направите нещата интересни. 7) използвайте източник на импулсно напрежение, за да модулирате синус или друг източник, за да осигурите ритъм. 8) използвайте аналогови схеми, за да оформите импулсите на напрежението в нещо, което искате.) използвайте математически изрази, за да определите изхода на поведенчески източник на напрежение Забавлявайте се!

Препоръчано: