PlugData

49j1v5.jpg


:D
 
Ja - ik ben niet erg monogaam in mij programma-keuze. :o:

Python is eleganter en heeft voor wetenschappelijk werk mijn voorkeur, maar C is beter toegesneden op real-time audio.
 
Wisten julli dat plug data en dus pure data capable is om EEn unit sample feedback te doen ?
EEn unit sample dus , ideaal voor operator feedback ala dx 7
De truck is om dit in een aparte patcher te doen , je creeer een block~ object en geef deze het argument 1
Dan creeer je een array ( hierin wordt de feedback geschreven ) , de groote van de array doet er niet toe want enkel de eerste sample wordt beschreven .
vervolgens creeer je een tabsend~ 'zelfde naam array en een tabreceive~ 'zelfde naam array ) ,
dan is het gewoon een kwestie van de operator output naar de tabsend~ te stureen vervolgens de tabread~ terug naar de cos~ input .
Voor operators is het beste nog altijd een phasor~ into cos~
Best wel grappig eigenlijk te weten dat MAX MP dit nooit kon until gen~
1.jpg
 
Heb nu geen tijd om hier dieper op in te gaan, maar een tijd geleden heb ik in Pure Data zo'n loop gemaakt:

screenshot.png
 
Heb nu geen tijd om hier dieper op in te gaan, maar een tijd geleden heb ik in Pure Data zo'n loop gemaakt:

Bekijk bijlage 3845474
Ik had het over specifiek 1 unit sample loops( 1unit sample =0.022 miliseconden @44Khz) , dat is toch niet het geval in jouw voorbeeld ?
Je hebt de block~ module nodig
 
De feedback in mijn voorbeeld loopt via send~ en receive~ , maar ik weet niet meer of de vertraging daarbij precies 1 sample time is.
 
Neen want daar heb je de block~ voor nodig .
Ik heb de indruk dat de essentie je is ontgaan in mijn eerste post .
Het gaaat dus uitdrukkelijk om 1unit sample feedback loops ,niet een millisecond , niet gewoon een feedback loop maar "1unit sample FB loop" en dus de enigste manier om phase modulation operator feedback te krijgen .
 
Delay line uitgelezen door een Sample and hold dan een windowing function
 

Attachments

  • 1.jpg
    1.jpg
    55,6 KB · Bekeken: 19
Vandaag heb ik weer een knoop doorgehakt: er komt naast de analoge computer verder geen Eurorack case meer bij voor nog meer modules. En de Bela doe ik ook niet. Ik ben echt met veel te veel tegelijk bezig waardoor schrappen mijn mogelijkheden nu enkel maar vergroot. Voor C hoop ik ooit het niveau te halen dat ik programma's in C kan lezen/begrijpen, maar zover ben ik nog lang niet.
 
Code van anderen begrijpen is ook echt heel lastig, het is niet zo dat je programmeer code zo snel zou kunnen lezen als je bijvoorbeeld bladmuziek kan lezen.

Als code goed gedocumenteerd is dan is het vaak nog wel te doen, maar dan meestal ook alleen maar stukjes code, vrijwel nooit de gehele code waar een stuk software uit bestaat.

Tenzij je als developer bestaande code verder gaat ontwikkelen, dan moet je er wel in duiken maar het kost dan wel erg veel tijd voor je er goed in zit.

Wat overigens vaak wel goed te doen is is classes of functies geschreven door anderen implementeren, je hoeft dan niet alle code te begrijpen alleen wat je zelf moet doen om het te laten werken.

Ik zou in ieder geval niet te veel verwachten van code begrijpen van anderen en gewoon zelf code gaan ontwikkelen, dat is leuker en heb vaak het meest aan.
 
Ik vind C interessant omdat ik bij audio software vaak lees dat het in C geschreven is, en soms kun je ook zelf dingetjes in C toevoegen. Hoe ver ik ermee kom zal vanzelf wel blijken, in elk geval zou ik het al leuk vinden om er een indruk van te hebben hoe het werkt.
 
Op dit moment kijk ik zelf naar iets dat geschikt is om e.e.a. te programmeren. Liever niet in C... :D Maar geschreven software moet wel snel kunnen draaien. Kandidaten zijn Free Pascal (oude Turbo Pascal- en ook Delphi-reflexen werken waarschijnlijk nog steeds wel) en Ada (zal soms nog wat sneller zijn, wel enigszins een leercurve). Ook kwam FreeBASIC op m'n radar, lijkt van zichzelf vrij snel te werken, maar het is ook een transpiler naar C. Dus gegenereerde C-code kun je vervolgens weer compileren met een C-compiler naar keuze.
 
Wat denk je van Faust of van Csound, die zijn specifiek voor audio toepassingen ontwikkeld. En die begrijp ik zelfs. :D
 
Voor wat ik in gedachten heb is het niet echt nodig dat het geschreven moet zijn in iets dat specifiek voor audio is. Omdat ik aan zie komen dat het rekenintensief is, het moet wel snel draaien. Faust zou wat dat betreft misschien ook kunnen, dat wel. Maar het is ook een oefening in programmeren, zodat ik later voor andere dingen er nog profijt van heb. Niet gerelateerd aan audio (alhoewel :eureka: lol :D), heb al langer wat ideeën voor een zgn. esoteric programming language, lijkt me leuk om daar ´ns een interpreter of compiler/transpiler voor te schrijven.
 
Zelf een programmeertaal ontwerpen - dat is nog eens wat anders dan een plugin schrijven. 8) Petje af! :halleluja
 
Mwah, je kunt het net zo gemakkelijk of moeilijk maken als je wil. Soms kan een interpreter voor iets eenvoudigs al een handjevol regels zijn in een al bestaande taal. Een plugin is dan al snel heel wat ingewikkelder, denk ik. Aardig boek over hoe het werkt als een te ontwerpen taal wel uitgebreider gaat worden, hier.
 
Juist - 611 bladzijden! Ik denk dat ik mij daar maar beter niet in kan verdiepen, anders komt er van mijn andere plannen helemaal niets meer terecht... :D
 
Back
Top