Satura rādītājs:

Analogās skaņas sintēze datorā: 10 soļi (ar attēliem)
Analogās skaņas sintēze datorā: 10 soļi (ar attēliem)

Video: Analogās skaņas sintēze datorā: 10 soļi (ar attēliem)

Video: Analogās skaņas sintēze datorā: 10 soļi (ar attēliem)
Video: Fun with Music and Programming by Connor Harris and Stephen Krewson 2024, Novembris
Anonim
Analogās skaņas sintēze datorā
Analogās skaņas sintēze datorā

Tāpat kā šo veco analogo sintezatoru skaņa? Vai vēlaties spēlēt ar vienu savā laikā, savā vietā, cik ilgi vien vēlaties, BEZ MAKSAS? Šeit piepildās jūsu mežonīgākie Moog sapņi. Jūs varat kļūt par elektronisko ierakstu mākslinieku vai vienkārši izdot dažas foršas, trāpīgas skaņas, ko klausīties savā mp3 atskaņotājā. Viss, kas jums nepieciešams, ir dators! Tas viss tiek darīts, izmantojot brīvas shēmas simulatora LTSpice burvību. Tagad es zinu, ka jūs droši vien sakāt: "Gee Willikers, Tailer, es neko nezinu par ķēdes simulatora vadīšanu- tas izklausās CIETI!". Neuztraucies, Bunky! Tas ir viegli, un es jums došu dažas veidnes, ar kurām sākt un mainīt, lai radītu jebkādus dīvainus trokšņus. Vai neesat pārliecināts, ka tas ir pūļu vērts? Šeit ir saite uz atskaņošanai gatavu skaņas failu (tas ir veidots no "compos_1.asc" šī 'ible' 7. darbībā), kuru varat izmēģināt. Es to pārveidoju no.wav uz mp3, lai samazinātu lejupielādes laiku. https://www.rehorst.com/mrehorst/instructables/composition_1.mp3Skaļums ir zems, tāpēc klausieties ar austiņām vai labiem skaļruņiem. Ja jums patīk tas, ko redzat, balsojiet par mani! Piezīme: Esmu pievienojis LTSpice shematiskus failus, kurus varat palaist datorā, bet kādu iemeslu dēļ, mēģinot tos lejupielādēt, tiek mainīti nosaukumi un paplašinājumi. Failu saturs izskatās labi, tāpēc pēc failu lejupielādes vienkārši nomainiet nosaukumus un paplašinājumus, un tiem vajadzētu darboties. Pareizie nosaukumi un paplašinājumi tiek parādīti uz ikonām, uz kurām noklikšķināt, lai lejupielādētu.

1. darbība. Vispirms pirmās lietas

LTSpice ir Windows programma, taču neļaujiet tam nomākt. Tas darbojas labi zem vīna Linux. Man ir aizdomas, ka nav problēmu to palaist VMWare klientā, VirtualBox vai citos virtualizācijas rīkos, izmantojot Linux, un probabaly arī Mac datoros. Lejupielādējiet LTSpice for Windows (ugh!) Kopiju šeit: https://www.linear.com/ designtools/software/ltspice.jsp Instalējiet to. Kas ir LTSpice? Tas ir laika domēna ķēdes simulators, kas jāzina katram elektronikas entuziastam. Es nesniedzu detalizētu pamācību par to, kā tas šeit darbojas, bet es paskaidrošu dažas lietas, kas jums jāzina, ejot līdzi. Viens brīdinājuma vārds- ir viegli radīt pārāk zemas frekvences vai pārāk augsts, lai dzirdētu. Ja jūs to darāt un braucat ar saviem dārgajiem skaļruņiem ar jaudīgu pastiprinātāju, varat vienkārši izpūst skaļruņus/pastiprinātājus. VIENMĒR apskatiet viļņu formas pirms to atskaņošanas un uzmanieties, lai ierobežotu skaļumu, pirmoreiz atskaņojot failu, lai būtu drošs. Pirms skaļruņu izmēģināšanas vienmēr ir ieteicams atskaņot failus, izmantojot lētas austiņas zemā skaļumā.

2. darbība: ievade

Ievadi
Ievadi

Ieeja simulatorā ir shematiskas diagrammas veidā. Jūs izvēlaties komponentus, ievietojat tos shēmā un pēc tam savienojat kopā. Kad ķēde ir pabeigta, jūs pastāstāt simulatoram, kā vēlaties, lai tā simulētu ķēdi un kāda veida izvadi vēlaties. Apskatiet shematisko nosaukumu rezistori. Jūs redzēsit, ka ir ķēde, kas ietver sprieguma avotu, rezistoru pāri, marķētu izejas mezglu, zemi un teksta komandrindu. Apskatīsim katru. Tagad ir īstais laiks atvērt ķēdes failu, kas saistīts ar zemāk esošo. Pamatojums: Šī ir viskritiskākā jūsu shēmas sastāvdaļa. Jums ir jābūt zemējumam, kas savienots ar vismaz vienu ķēdes punktu, vai arī jūs iegūsit ļoti dīvainus rezultātus no jūsu simulācijām. Sprieguma avots: ja ķēdē ievietojat spriegumu, jums tas jāpasaka, vai tas ir maiņstrāva vai līdzstrāva (vai kaut kas sarežģītāks), kāds ir spriegums, avota "iekšējā pretestība" utt. Jūs varat ievadīt šos parametrus, ar peles labo pogu noklikšķinot ar rādītāju uz avota. Viss, kas jums patiešām nepieciešams, ir pretestība vienkāršām simulācijām. Rezistori: rezistori ir diezgan viegli saprotami. Vienkārši noklikšķiniet ar peles labo pogu, lai iestatītu pretestības vērtību. Ignorējiet visus citus parametrus, kas tur varētu slēpties. Marķēti ieejas un izejas mezgli: vienkārši ķēdē esošo mezglu nosaukumi, kas ir lietotājam draudzīgi.- izmantojiet tādus nosaukumus kā "izeja", "ievade" utt. Simulācijas direktīva: paziņojums.tran stāsta simulatoram, kā vēlaties ķēdes simulāciju. Šis ir laika domēna simulators, kas nozīmē, ka tas analizē ķēdi dažādos laika punktos. Jums jāpasaka, kādam vajadzētu būt maksimālajam laika posmam un cik ilgi simulācijai vajadzētu darboties ķēdes laikā, nevis reālajā laikā. Ja jūs teiksiet simulatoram darboties 10 sekundes ķēdes laika un iestatīsit maksimālo laika soli uz 0,001 sekundi, tas analizēs ķēdi vismaz 10 000 reizes (10 sek/0,001 sek.) Un pēc tam apstāsies. Kad simulācija darbojas, spriegums katrā ķēdes mezglā un strāvas katrā mezglā un no tā tiks aprēķinātas un saglabātas katrā laika posmā. Visa šī informācija būs pieejama attēlošanai displejā, piemēram, osciloskopa ekrānā (horizontālās ass laiks, spriegums vai strāva uz vertikālās ass. Varat arī nosūtīt izvadi uz.wav audio failu, kuru var atskaņot datorā, ierakstiet to kompaktdiskā vai pārveidojiet par mp3, lai atskaņotu savā mp3 atskaņotājā. Vairāk par to vēlāk…

3. darbība: izvade

Izeja
Izeja

Izeja var būt grafisks sprieguma un laika grafiks, spriegums pret spriegumu utt., Vai teksta fails, kas sastāv no virknes spriegumu vai strāvu katrā laika posmā, vai.wav audio fails, kuru mēs daudz izmantosim šo pamācāmo. Lejupielādējiet un atveriet failu "resistors.asc". Noklikšķiniet uz mazā skriešanas cilvēka simbola (ekrāna augšējā kreisajā daļā), un ķēdei vajadzētu darboties. Tagad ķēdē noklikšķiniet uz etiķetes "OUT". Jūs redzēsiet spriegumu ar apzīmējumu "izeja", kas parādīts grafiskajā izejā pa horizontālu asi, kas attēlo laiku. Tas ir spriegums, ko mēra attiecībā pret zemi (tāpēc jums ir nepieciešams vismaz viens zemējums katrā ķēdē!). Tie ir pamati. Mēģiniet mainīt vienu no rezistora vērtībām vai spriegumu, pēc tam atkārtojiet simulāciju un noskaidrojiet, kas notiek ar izejas spriegumu. Tagad jūs zināt, kā palaist ķēdes simulatoru. Viegli, vai ne?

4. solis: tagad skaņa

Tagad dažas skaņas!
Tagad dažas skaņas!

Atveriet ķēdi ar nosaukumu "dizzy.asc". Šis ir dīvains trokšņu radītājs, kas izmanto modulatoru un pāris sprieguma avotus, lai izveidotu CD kvalitātes (16 biti, 44,1 ksps, 2 kanāli) audio failu, ar kuru jūs varat spēlēt. Modulatora komponents faktiski ir oscilators. Frekvenci un amplitūdu var regulēt kā VCO un VCA reālā analogā sintezatorā. Viļņu forma vienmēr ir sinusoidāla, taču ir veidi, kā to mainīt- par to vēlāk. Frekvences ierobežojumus nosaka zīmes un atstarpes parametri. Atzīme ir frekvence, kad FM ieejas spriegums ir 1 V, un atstarpe ir frekvence, kad FM ieejas spriegums ir 0 V. Izejas frekvence ir FM ieejas sprieguma lineāra funkcija, tāpēc, ja FM ieejas spriegums ir 0,5 V, frekvence būs pusceļā starp atzīmi un atstarpes frekvenci, un tā būs 2 reizes lielāka par atzīmes frekvenci, ja FM ieejas spriegums ir 2 V. Modulatoru var arī modulēt ar AM ievades tapu. Modulatora (oscilatora) izejas amplitūda sakrīt ar spriegumu, kas tiek piemērots AM sprieguma ieejai. Ja izmantojat līdzstrāvas avotu ar spriegumu 1, izejas amplitūda būs 1V (tas nozīmē, ka tā svārstīsies no -1 līdz +1 V). Modulatoram ir divas izejas- sinuss un kosinuss. Viļņu formas ir tieši tādas pašas, izņemot to, ka tās ir par 90 grādiem ārpus fāzes. Tas var būt jautri stereo audio lietojumprogrammām. Ir.tran paziņojums, kas simulatoram norāda maksimālo laika posmu un simulācijas ilgumu. Šajā gadījumā ķēdes laiks (kopējais simulācijas laiks) = audio faila laiks. Tas nozīmē, ka, palaižot simulāciju 10 sekundes, jūs iegūsit 10 sekundes garu audio failu. Paziņojums.save tiek izmantots, lai samazinātu simulatora saglabātā datu apjomu, kad tiek veikta simulācija. Parasti tas ietaupa spriegumus katrā mezglā un strāvas katrā komponentā un no tā. Tas var pievienot daudz datu, ja ķēde kļūst sarežģīta vai veicat ilgu simulāciju. Palaižot simulāciju, vienkārši atlasiet vienu spriegumu vai strāvu no saraksta dialoglodziņā, un datu fails (.raw) būs mazs, un simulācija darbosies ar maksimālo ātrumu. Visbeidzot.wave paziņojums simulatoram norāda, ka izveidojiet CD kvalitātes stereo audio failu (16 biti katrā paraugā, 44,1 ksps, divi kanāli), nospiežot spriegumu "OUTL" kreisajā kanālā un spriegumu "OUTR" labajā kanālā.. Wav fails sastāv no 16 bitu paraugiem. Pilna mēroga izvade.wav failā (visi 16 biti paraugā ir ieslēgti) notiek, kad izejas spriegums ir tieši +1 volts vai -1 volts. Jūsu sintezatora ķēde ir jāiestata tā, lai katrā kanālā tiktu radīts spriegums, kas nepārsniedz +/- 1V, pretējā gadījumā.wav faila izeja tiks "apgriezta" ikreiz, kad spriegums pārsniedz +1 vai -1 V. audio failu, kura paraugs ir 44,1 ksps, mums ir nepieciešams simulators, lai simulētu ķēdi vismaz 44, 100 reizes sekundē, tāpēc mēs iestatām maksimālo laika soli uz 1/44, 100 sek vai aptuveni 20 mikrosekundēm (mums).

5. solis: cita veida sprieguma avoti, cita veida skaņas

Citi sprieguma avotu veidi, cita veida skaņas
Citi sprieguma avotu veidi, cita veida skaņas
Citi sprieguma avotu veidi, cita veida skaņas
Citi sprieguma avotu veidi, cita veida skaņas

Analogajam sintezatoram ir nepieciešams nejauša trokšņa avots. Jūs varat radīt troksni, izmantojot "uzvedības sprieguma avotu" (bv), un jūs varat to ieslēgt un izslēgt, izmantojot "sprieguma kontrolētu slēdzi" (sw). Bv komponenta izmantošana trokšņa radīšanai ietver sprieguma noteikšanu, pamatojoties uz formulu. Trokšņa radīšanas formula izskatās šādi: V = balts (laiks*X)*Y Baltā funkcija rada nejaušu spriegumu starp -0,5 un +0,5 V, izmantojot sēklu pašreizējo laika vērtību. Iestatot Y uz 2, tiek panākta +/- 1V svārstība. Iestatījums X no 1 000 (1e3) līdz 100 000 (1e5) ietekmē trokšņa spektru un maina skaņu. Sprieguma kontrolētajam slēdzim arī ir jāiestata daži parametri.model paziņojumā. Ja vēlaties, varat izmantot vairākus sprieguma kontrolētus slēdžus un vairākus modeļa paziņojumus, lai katrs darbotos atšķirīgi. Jums ir jāpasaka simulatoram pretestība "ieslēgta" un "izslēgta" un sliekšņa spriegums, pie kura tas pārslēdzas. Vh ir "histerēzes spriegums". Iestatiet to uz kādu pozitīvu vērtību, piemēram, 0.4V, un, slēdzim atveroties un aizveroties, nebūs nekādu klikšķu. >>> Atjaunināt: šeit ir vēl vienkāršāks veids, kā izveidot trokšņa avotu- vienkārši reiziniet trokšņa spriegumu ar impulsu avots- skatīt easy_gated_noise.asc, zemāk.

6. solis: zvani, bungas, cimboles, noplūktas stīgas

Zvani, bungas, cimboles, noplūktas stīgas
Zvani, bungas, cimboles, noplūktas stīgas

Zvani, bungas, cimboles un noplūktas stīgas ir perkusīvas. Viņiem ir salīdzinoši ātrs pieauguma laiks un eksponenciāls sabrukšanas laiks. Tos ir viegli izveidot, izmantojot sinusa un uzvedības sprieguma avotus kopā ar dažām vienkāršām shēmām. Apskatiet shematisko "bell_drum_cymbal_string.asc". Impulsa sprieguma avoti ar rezistoru, kondensatoru un diodi rada vajadzīgo strauju pieaugumu un lēnu eksponenciālu sabrukšanas viļņu formu. Šie izejas spriegumi modulē uzvedības avotu izvadi, kas izveidoti kā nejauši trokšņa vai sinusa viļņu avoti. Kad impulsa avota spriegums palielinās, tas ātri uzlādē kondensatoru. Pēc tam kondensators izlādējas caur rezistoru. Diods neļauj sprieguma avotam izlādēt kondensatoru, kad avota spriegums ir nulle. Lielākas rezistoru vērtības palielina izlādes laiku. Jūs varat norādīt impulsa avota pacelšanās laiku - cimbols ir nise avots ar ļoti ātru pieauguma laiku. Bungas ir arī trokšņa avots, kas darbojas zemākā frekvencē un kam ir lēnāks pacelšanās laiks. Zvans un virkne izmanto sinusa viļņu avotus, kurus modulē arī impulsa avoti. Zvans darbojas augstākā frekvencē un tam ir ātrāks pieauguma laiks nekā virknei. Palaidiet simulāciju un klausieties rezultātu. Ņemiet vērā, ka cilindrs parādās abos kanālos, bet visas pārējās skaņas ir labās vai kreisās kanāls. Divi rezistori pie cilindra izejas ir atbildīgi par skaņas ievietošanu abos kanālos.

7. solis: salieciet to visu kopā

Visu saliekot kopā
Visu saliekot kopā

Labi, tagad jūs esat redzējuši, kā izdot dažas skaņas un kā veidot aploksnes un frekvenci tās modulēt. Tagad ir pienācis laiks apkopot dažus dažādus avotus vienā shēmā un radīt kaut ko interesantu, ko klausīties. Kā panākt, lai šis trokšņa avots nonāktu kompozīcijā pēc 33 sekundēm? Kā ieslēgt šo zvanošo zvanu 16 sekundēs, pēc tam to izslēgt un pēc 42 sekundēm atkal ieslēgt? Viens veids ir izmantot uzvedības sprieguma avotu, lai radītu vēlamo skaņu, pēc tam to ieslēgt un izslēgt, reizinot skaņas ģenerējošo spriegumu ar citu spriegumu, kas ieslēdz un izslēdz skaņu, kā tas tika darīts vietnē bell_drum_cymbal_string.asc. Jūs varat darīt to pašu, lai izgaismotu un izslēgtu skaņas. Ideja šeit ir iestatīt atkārtotas skaņas, pēc tam izmantot papildu avotu (-us), lai šīs skaņas pievienotu skaņdarbam vēlamajā laikā, reizinot to spriegumu ar skaņas spriegumu. Galīgajā skaņas izvadē varat iekļaut tik daudz spriegumu, cik vēlaties, vienkārši turpiniet to reizināšanu (tāpat kā loģisko "un") kopā. Uzsākot skaņas uzreiz, tās saglabāsies ideālā sinhronizācijā visā kompozīcijā, lai tās nekad nebūtu mūzikas sākumā vai vēlu. Paskaties compos_1.asc. Ir divi zvani, pa vienam katrā kanālā. Impulsa zvana spriegumi darbojas visas simulācijas laikā, bet skaņas parādās izejā tikai tad, ja V (bell_r) un V (bell_l) nav vienādi ar 0.

8. solis: eksponenciālais slīpums

Eksponenciālais slīpums
Eksponenciālais slīpums
Eksponenciālais slīpums
Eksponenciālais slīpums

Atjauninājums 7/10- ritiniet uz leju V1 un V2 ģenerē lineārus rampas, kas sākas ar 0 un palielinās līdz X voltiem (kreisais kanāls) un Y voltiem (labais kanāls) periodos prd_l un prd_r. B1 un B3 izmanto formulu, lai lineārās rampas pārvērstu eksponenciālos rampos ar maksimālo amplitūdu 1V. B2 un B4 rada nejaušu troksni, kura amplitūdu modulē eksponenciālās rampas un parametri amp_l un amp_r (vienkāršas līmeņa vadīklas). Esmu pievienojis šīs shēmas ģenerētu mp3 failu, lai jūs varētu dzirdēt, kā tas izklausās. Jums, iespējams, būs jāpārdēvē fails, lai to atskaņotu. X un Y nosaka lineāro rampu sprieguma robežas. Galu galā abu kanālu rampas tiek samazinātas līdz 1 V, bet, iestatot X un Y, jūs varat kontrolēt eksponenciālās rampas stāvumu. Neliels skaitlis, piemēram, 1, rada gandrīz lineāru uzbrauktuvi, un liels skaitlis, piemēram, 10, nodrošina ļoti stāvu eksponenciālu uzbrauktuvi. Rampas periodus nosaka, izmantojot parametrus prd_l un prd_r. Lineārā rampas pieauguma laiks ir iestatīts uz vērtību prd_l vai prd_r mīnus 5 ms, un kritiena laiks ir iestatīts uz 5 ms. Ilgstošais kritiena laiks neļauj noklikšķināt katras rampas beigās, jo amplitūda samazinās līdz nullei. Out_l un out_r ir uz laiku balstītu nejaušu trokšņu spriegumu, eksponenciālo rampas spriegumu un parametru amp_l un amp_r produkti. Ņemiet vērā, ka labās kanāla nejaušās trokšņa vērtība izmanto citu "sēklu" nekā kreisā kanāla vērtība. Tas saglabā troksni katrā kanālā nejaušu un atšķirīgu no pretējā kanāla. Ja izmantojat vienu un to pašu sēklu, tajā pašā laikā jūs saņemsiet to pašu nejaušo vērtību, un skaņa nonāks centrā, nevis tiks uztverta kā divi dažādi avoti, pa vienam katrā kanālā. Tas varētu būt interesants efekts, ar ko spēlēties … Atjaunināt: ievērojiet, ka viļņu forma mainās no 0 V uz kādu pozitīvu vērtību. Labāk, ja spriegums svārstās starp vienādām pozitīvām un negatīvām vērtībām. Es pārstrādāju shēmu, lai to izdarītu, bet tas palielināja vienādojuma sarežģītību, kas nedaudz nosaka viļņu formu. Lejupielādējiet exponential_ramp_noise.asc (atcerieties, ka Instructables serveris, saglabājot to, mainīs nosaukumu un paplašinājumu).

9. solis: eksponenciāls slīpums, kas piemērots sinusoidālajam vilnim

Eksponenciāls slīpums, kas piemērots sinusoīdam
Eksponenciāls slīpums, kas piemērots sinusoīdam

Šajā lapā ir parādīts, kā izmantot iepriekšējā posma eksponenciālo rampu, lai modulētu sinusa avotu (faktiski sinusu un kosinusu). Uzvedības sprieguma avotu izmanto, lai lineāro rampu pārvērstu par eksponenciālu rampu, kas virza FM ieeju uz modulate2 komponenta. Amplitūdu modulē gan ātrs eksponenciāls slīpums, gan lēns sinusoidāls vilnis. Klausieties faila paraugu- tas izklausās diezgan dīvaini.

10. solis: ieteikumi

1) Jūs varat mainīt kopējo simulācijas laiku - saglabājiet to īsu, kamēr spēlējat ar komponentiem un iegūstat sev tīkamu skaņu, pēc tam iestatiet simulatoru, lai tas darbotos 30 minūtes (1800 sekundes) vai tik ilgi, cik vēlaties. Jūs varat kopēt ķēdes no vienas lapas uz otru, un jūs varat izveidot apakšshēmas, lai jūs varētu vienkārši savienot mazus shēmas moduļus kopā, piemēram, izmantojot plāksteri uz īsta sintezatora. 2) CD izlases ātrums ir 44,1 ksps. Ja saglabājat maksimālo laiku līdz 20 ASV dolāriem, jūs iegūsit “tīru” izvadi, jo simulatoram būs pieejami dati par katru jaunu paraugu. Ja izmantojat mazāku laika posmu, simulācija būs lēna un, iespējams, neietekmēs skaņu. Ja izmantojat garāku laika posmu, jūs varat dzirdēt kādu aizstājvārdu, kas jums var patikt vai nepatikt. 3) Izmantojiet dialoglodziņa paziņojumu.save savā shēmā un, palaižot simulāciju, un atlasiet tikai vienu no spriegumiem vai strāvām, lai saglabātu the.raw faila izmērs ir mazs. Ja neveicat izvēli, VISI spriegumi un strāvas tiks saglabātas, un.raw fails kļūs ĻOTI liels. 4) mēģiniet izmantot ļoti zemas frekvences, lai modulētu augstākas frekvences5) mēģiniet izmantot augstākas frekvences, lai modulētu zemākas frekvences. apvienojiet izejas no dažiem zemfrekvences avotiem ar dažiem augstfrekvences avotiem, lai padarītu lietas interesantas. 7) izmantojiet impulsa sprieguma avotu, lai modulētu sinusu vai citu avotu, lai nodrošinātu ritmu.) izmantojiet matemātiskas izteiksmes, lai definētu uzvedības sprieguma avota izvadi

Ieteicams: