cwbe coordinatez:
101
63528
63553
5689528
8589778
8766778

ABSOLUT
KYBERIA
permissions
you: r,
system: public
net: yes

neurons

stats|by_visit|by_K
source
tiamat
commanders
polls

total descendants::0
total children::0
3 ❤️


show[ 2 | 3] flat


(sorry za tu vcerajsiu sleep deprived rambling verziu... prepisal/upratal som do niecoho snad zrozumitelnejsieho

Hej, ak ide o filter vo feedback loope Karplus Strong syntezy, by to malo modulovat frekvenciu vysledneho tonu, pretoze K+S funguje na baze oneskorenia v slucke spatnej vazby. Ton to vytvara podobne ako struna gitary, ked sa odrazi na jej konci a dojde na povodne miesto oneskorene => vznikne rezonancia nejakej frekvencie (+ jej harmonicke + aj neharmonicke, lebo je to zlozitejsie)

Kazdopadne dlzka oneskorenia/delayu vo feedback loope urcuje vysku tonu.
A filtre tiez sposobuju delay, ktoreho dlzka je zavisla od frekvencie filtra, ktoru ak budes modulovat, tak budes modulovat delay time, ktory filter sposobuje.
A ak je ten filter v karplus strong feedback loope, tak tym budes modulovat (okrem ineho) aj frekvenciu vysledneho tonu.

A dokonca aj keby neslo o K+S a nebol ten filter vo feedback loope, tak by si stale dostal vibrato, na baze doppler effektu.

No oba pripady su trochu zlozitejsie, lebo spominany filtrom spomenuty delay je zlozity. Nesposobuje totiz vsetkym frekvenciam rovnako dlhe oneskorenie. Niekedy sa na grafoch filtra zvykne namiesto "phase" uvadzat "group delay", ktory zobrazuje prave to, ze ake oneskorenie (casove) sposobuje ktorej frekvencii. (da sa priamo odvodit z phase grafu, ktory je to iste, ale tam su tie oneskorenia zobrazene v stupnoch (alebo radianoch) relativnych k vlnovej dlzke danej frekvencie, kym group delay vyjadruje delay v "absolutnych" casovych jednotkach (millisekundy)
Cize nieco ako rozdielne doppler effekty pre kazdu frekvenciu (aj ked napr pri najobyc druhu low-pass filtrov maju tie oneskorenia medzi sebou relativne male odchylky vramci frekvencii, ktore filter prepusta).

Ono ak to ma byt cisto technicky nehudobne vzata frequency modulation vysledneho tonu, tak najblizsie k tomu by bolo modulovanie delay time pre vsetky frekvencie rovnako.
Cize ak tam je v ceste nejaky obycajny delay objekt, tak jeho dlzku.

Tam potom zalezi od implementacie toho delay objektu. Jak moc je presna a ako znasa modulaciu.
No asi tam bude kvalitna implementacia, vzhladom na to, ze ten delay niekto vybral na pouzitie v K+S synteze.

/* aj ked asi non-issue, tak iba v skratke: najjednoduchsia (a tu nevhodna) implementacia delayu je FIFO buffer. FIFO znamena first in first out, tj sample vychadzaju z bufferu v rovnakom poradi v akom prichadzali, akurat oneskorene o dlzku bufferu (v samploch, cize deleno sampling rate = v sekundach).

No su tam dve-tri issue. Jedna issue je, ze takto vies oneskorit iba o cas zodpovedajuci celociselnemu poctu samplov. Ak chces oneskorit o 23,777123 samplu, tak to musis robit inak. Ak by bol toto jediny problem, tak staci pridat oneskorovaci all-pass filter, ktorym vies oneskorit o 0-1 samplu (v spomenutom pripade o 0,777123 a 23 spravis normalne buffrom).
Mozno toto si myslel tym tuning filtrom, ktory si spomenul? (nemam poruke ani sc ani faust tak neviem). Ak ano, tak toto modulovat ti bude sice robit vibrato, no ak tym filtrom robia iba 0-1 sample long delay, tak vibrato bude nepocutelne slabe. Aj ked tiez mozne, ze robia celu dlzku delayu takym filtrom a vtedy by to pocutelne bolo.

Druha issue je pri modulacii jednym smerom (predlzenie delayu) dospievas do stavu, ze mas v buffri menej hodnot, nez je dlzka delay, ktoru chces sposobit, co mozes 'ojebat' tym, ze vystup nechas zaseknuty na poslednom sampli, kym tych hodnot nebude dost. Co je najma pri hudbe dost blbe riesenie.
Tretia issue je, ze ak ide o modulaciu delayu vo feedback loope, tak to tu druhu issue umocni (obrazne povedane).
Riesenim je pri modulacii dlzky toho fifo buffra data v nom zaroven resamplovat (stretchnut/shrinknut ich na dlzku noveho buffra).
*/

No ked sa pytas na modulovanie filtrov - malo by to 'hudobne' fungovat.

Dolezite je aby slo o filter, ktory sposobuje dostatocne velky delay. Pri obyc filtroch plati, ze cim nizsia cutoff frekvencia filtra, tym dlhsie delaye sposobuje signalu ktory nim prechadza. Ak pojde o vysoko naladeny filter, tak nemusi byt sposobene vibrato pocut.

a 'hudobne' = bude to zniet ako vibrato. Akurat technicky vzate to uz nebude klasicke vibrato (FM modulacia) vysledneho tonu, ale nieco zlozitejsie.
Jednak lebo uz nemenis iba delay time v K+S loope, ale aj filtrujes / uberas frekvencie.
A tiez preco, ze tou modulaciou nemenis delay time rovnako pre vsetky frekvencie. Co by nebola az taka "chyba" (odchylka od tech idealu), ak by slo o modulaciu jedinej delay zlozky v K+S loope, lebo v takom pripade by si modulovanim filtra menil delay time pre kazdu frekvenciu o rovnake % a timbre/harmonickost tonu by ostavala rovnaka. No kedze tu je ten filter iba jednou zo zloziek celkoveho delayu, tak tu to neplati... Rozne frekvencie budu mat rozne silnu modulaciu a bude to zlozitejsie a zabavnejsie a nepredvidatelnejsie.

Co sa tyka "stiffness" filtra, tak zalezi o aku implementaciu ide.
Stiffness je simulovanie tvrdosti struny, vdaka ktorej vznika na zaciatku tonu viac neharmonickych rezonancii.
Simulacia stiffness sa zvykne robit roznymi sposobmi, to co spominas bude asi implementacia filtrom, ktory ma ten spominany group delay graf trochu divokejsi. Lebo flat group delay (oneskorenie kazdej frekvencie o rovnaky cas) vo feedback loope ma rezonancie na jednej frekvencii a jej harmonickych.
Kym krivolaky group delay => tj na kazdej frekvencii ine oneskorenie => komplexne chaoticke rezonancie na zaciatku tonu, a az po (vacsinou velmi kratkej) chvilke sa to ustali iba na zopar frekvenciach.
Tiez potom zalezi cim excitujes. Napr nefiltrovany noise burst == vsetky freq cez seba, a nimi trafis cely rozsah toho krivolakeho group delay grafu a tak aj vacsi/vyraznejsi inharmonic context na zaciatku tonu, nez ked excitujes nejakym band limited (im)pulzom...