This is topic Physical modeling... in forum La Stanza di Cubase.it at I Forum di Cubase.it, il sito italiano su Cubase, Audio, MIDI e Home Recording.


To visit this topic, use this URL:
https://www.cubase.it/cgi-bin/ultimatebb.cgi?ubb=get_topic;f=6;t=003090

Posted by ziokiller (Member # 2420) on 29. Agosto 2003, 16:23:
 

Forse non avro' risposte...

ma..

esiste un metodo per risalire da una forma d'onda a una formula matematica che la potrebbe creare, considerano sempre sull'asse x la frequenza e su y l'ampiezza?

magari qualche software che fa l'analisi e dice... E=mc²
 


Posted by laboros (Member # 391) on 29. Agosto 2003, 16:28:
 
Matematicamente non esiste il prob.

il fatto è che siccome si implicano variabili non facili come
il tempo
la frequenza
il volume
chissa quali algoritmi si possono usare
io non son un matematico però
credo che chi ha sviluppato le ultime tastiere con forme d'onda virtuali si sono dovuti imbattere in grosse funzioni matematiche.



 


Posted by lupino (Member # 1368) on 29. Agosto 2003, 17:39:
 
quote:
Originally posted by ziokiller:

magari qualche software che fa l'analisi e dice... E=mc²

in realta' e' stato ultimamente dimostrato che la formula esatta e' E = mac²
 


Posted by VIRUS4 (Member # 1544) on 29. Agosto 2003, 18:41:
 
so che i primi sperimentatori di musica computerizzata facevano il contrario. Tramite formule matematiche creavano forme d'onda sonore.

Ciao

Dario
 


Posted by ziokiller (Member # 2420) on 29. Agosto 2003, 21:18:
 
lo fanno ancora
 
Posted by mistresSX (Member # 1878) on 29. Agosto 2003, 21:41:
 
Behhh...

La synthesis Phisical Modeling, si basa sull'Equazione inversa !

Se hai interesse per le tecniche di sintesi, ci incontriamo e ne parliamo con un'amico che ne sa tanto, parecchio !
 


Posted by renatob (Member # 2665) on 30. Agosto 2003, 00:07:
 
quote:
Originally posted by ziokiller:

Forse non avro' risposte...

ma..

esiste un metodo per risalire da una forma d'onda a una formula matematica che la potrebbe creare, considerano sempre sull'asse x la frequenza e su y l'ampiezza?

magari qualche software che fa l'analisi e dice... E=mc²


esiste esiste...

qualsiasi fenomeno riproducibile in natura è rappresentabile con un'equazione matematica...

se capisco quello che zio"hammond"killer vuole è un programma che data la forma d'onda sputa fuori la formula?

ci sono un sacco di programmini in c e vbasic che fanno quello che cerchi: so che ad esempio molti studenti di matematica hanno come compitini problemi del genere...
anche la figlia dei miei vicini un paio di anni fa mi aveva chiesto supporto per un problema del genere...
il problema è solo quello di decidere come tu vuoi caricare la forma d'onda e come vuoi la funzione di uscita...
secondo me con un motore di ricerca trovi....

nella preistoria (1985) avevamo fatto pure noi un programma del genere...
sull'apple IIc avevamo un programma che data una serie di punti che rappresentavano le ampiezze della forma d'onda (che disegnava a video) e dato il periodo ti sputacchiava fuori una matrice con la fondamentale e tutte le armoniche... una sorta di hammond al contrario...

disegnavi la forma d'onda sulla carta millimetrata, caricavi i valori e le uscite della matrice erano i coefficiente della funzione trigonometrica che rappresentava l'andamento della curva...

l'apple ci metteva un po' per farlo (allora gli apple si che erano computer altro che il mac!! ) ma per noi era come mandare lo shuttle in orbita!!!

per mistressx: non è propriamente vero che la phisical modelling si basa sull'equazione inversa, perchè per generare una forma d'onda devi avere prima chiara la funzione matematica che la crea...
poi con l'equazione in mano puoi generare la simulazione del modello...

credo che zio voglia fare proprio questo: creare il modello fisico di uno strumento dal suo suono....

come previsto ziokiller dopo avere affondato il b4 adesso vuole demolire la native instrument e la waldorf al completo...
 


Posted by ziokiller (Member # 2420) on 30. Agosto 2003, 02:33:
 
hehehe

no, non ti preoccupare, non ho in mente nessun "colpo di stato"

è solo che in questi giorni mi sto "divertendo" un po' (finché il tempo me lo permette ancora) con l'SDK di SynthEdit in C++, e piano piano sto capendo a parte la sintassi del linguaggio ma anche come vengono generate le forme d'onda in base anche al samplerate di playback della scheda.

per esempio, il sistema VST processa il suono a blocchi di 96 campioni per volta, quindi per creare una sinusoide si fanno cicli di 96 campioni

una cosa del tipo

while (--sampleBuffer >= 0) {
x++; // sono i campioni che scorrono e si sommano

y++ = sin(x * pi2);

}

y è l'ampiezza dell'onda, e in questo caso viene creata una sinusoide, e pi2 è pi-greco x due, per creare sia la semionda positiva che quella negativa

ora il mio dubbio è come si fa a "distorcere" le forme d'onda semplici.

per esempio, se vedi uno o due cicli d'onda campionati da una nota del B4 (un solo registro, una sola nota, senza leslie né chorus né vibrato né distorsione) noti che non è una sinusoide perfetta. Stessa cosa per le onde generate dal pro53 o altri strumenti vst "fatti bene".

I Nativi ci hanno messo proprio l'anima per fare questi capolavori. Ti diro' di piu', in questi giorni ho visto un po' piu' a fondo com'è fatto il Pro53 analizzando anche le sue onde con l'oscilloscopio (software) e vedi cose tipo, il dente di sega non è una sega ( ), l'onda quadra non è perfettamente quadra... hehe.. hanno simulato il vero e proprio comportamento degli oscillatori analogici

mi interessa solo capire come si fa... chiedo troppo?
 


Posted by geno (Member # 837) on 30. Agosto 2003, 06:37:
 
zio,prova absynth che ti fa suonare con l'onda che disegni tu sul pad.... vuoi suonare con la forma delle montagne russe di gardaland? basta disegnarla
 
Posted by ziokiller (Member # 2420) on 30. Agosto 2003, 11:59:
 
lo fa anche il mio s330 dell'87
 


© 2000 - 2025. Il materiale di questo forum e del sito è di proprietà di chi scrive. Nel caso vogliate citare del contenuto, indicatene sempre la fonte.

Powered by Infopop
UBB.classicTM 6.3.1.2