Virtual Sound - FORUM

Linguaggi per la Computer Music => Max MSP Jitter => Topic iniziato da: marco su Marzo 15, 2006, 16:45:07



Titolo: ci risono!
Post di: marco su Marzo 15, 2006, 16:45:07
sono ritornato alle paranoie granulari!  :D

raga, non sapreste dirmi ad occhio e croce come può essere strutturato un delay granulare dipo il KTGranulator VST??

come funziona la granularizzazione ce l'ho presente, ho anche messo amno su roba in max.

volgio dire, siete sicuri che in un delaygranulare si utilizzino dei buffer o c'è qualche circuito strano da far compiere al segnale delayato per essere poi granulizzato??

sapete indicarmi qualcosa?

anche degli scheme elettroncic vanno bene...pur che siano comprensibili....

thx!! :)


Titolo: Re: ci risono!
Post di: mauriziogiri su Marzo 15, 2006, 18:15:09
Non ho provato KTGranulator, ma in un sito ho letto questo:

"KTGranulator works like this: incoming (mono) sound is fed into a delay line from which small pieces of various durations and at different moments in the past are selected. Each of these pieces is then amplified, transposed and enveloped to form a "grain". Each grain is also randomly panned and the whole mix is sent out to a stereo output stream. Feedback of the grain output back into the delay line is also provided, and the delay line can also be frozen so that the grains are only taken from what is currently stored in the delay line."

Il che mi fa pensare che si possa fare una cosa analoga usando tapin~ e tapout~ per il delay, moltiplicare l'uscita per un fattore di feedback (minore di 1) e rimandare tutto al granulatore. Probabilmente il granulatore stesso potrebbe essere realizzato con tapin~ e tapout~, e per rileggere i grani in "differenti momenti del passato" basta cambiare il tempo di delay prima di generare il nuovo grano.

m


Titolo: Re: ci risono!
Post di: marco su Marzo 15, 2006, 20:33:07
aspe maurizio, nn capisco una cosa.
io capisco il fatto del delay+feedback, ma non capisco il metodo di trasposizione del segnale!

ossia:

. costrusico la classica linea di delay= tapin~ tapout~ ramo di feeback

. moltiplico *~ quello che esce dal tapout~ con un grain envelope tipo la curva di gauss

. e poi nn so + che fare!

come faccio a fare il transpose del segnale senza usare dei buffer???

un altro esempio di vst di delaygranulare è pudding
http://www.tweakbench.com/effects.php?id=13 (http://www.tweakbench.com/effects.php?id=13)

oppure il delaygranulare che c'è in Audiomulch

http://www.audiomulch.com/info.htm


Titolo: Re: ci risono!
Post di: franz su Marzo 15, 2006, 20:36:25
resetta il buffer del tapout~ ogni tot ms con un feedback di circa 0.6-0.8...vedi che succede  ;)
il traspose del segnale, non so cosa significhi. Tapout~ è a tutti gli effetti un buffer~ :P


Titolo: Re: ci risono!
Post di: marco su Marzo 15, 2006, 21:17:36
come intendi resettare il buffer del tapout~ ogni tot ms franz????
spiegati o la max butta giu due righe di patch...  ;D

per transpose intendo cambiare di pitch!

thx!


Titolo: Re: ci risono!
Post di: franz su Marzo 15, 2006, 21:22:40
resettare il buffer di tapout~ cambiando le sue dimensioni ogni tot ms...più di così ti scrivo la patch!
Per il transpose invece, se si utilizzano dei delay, la questione è un pò più complessa...si fa, però è più difficilmente controllabile...si può fare, ma servono un pò di calcoli!


Titolo: Re: ci risono!
Post di: marco su Marzo 15, 2006, 22:55:26
ok franz il fatto di cambiare il pitch cambiando il tempo di delay l'avevo già sperimentato con il comando line~ che genera un cambiamento lineare del delay e quindi varia il pitch.

per i calcli che mi dicevi...vorresti linkarmi/spiegarmi qualcosa??

grazie 1000!!!

ciaoooo  ;)


Titolo: Re: ci risono!
Post di: franz su Marzo 16, 2006, 00:03:24
no bhè semplicemente in un delay granulare non credo sia immediatissimo stabilire con precisione il pitch di ogni grano, di ogni gruppo di grani, o quel che ti pare utilizzando la tecnica del pitch-shifting attraverso il delay, in effetti i vst che hai elencato tu non credo eseguano la trasposizione su queste basi, magari sbaglio...i calcoli non li ho nemmeno fatti era più che altro un pensiero, un'idea buttata li anche perchè sui granular-delay non c'ho mai passato troppo tempo anche se  sono strumenti molto interessanti :D


Titolo: Re: ci risono!
Post di: mauriziogiri su Marzo 16, 2006, 08:45:57
Per ottenere un cambio di pitch con tapin~ e tapout~: dato un tempo di delay iniziale, un fattore di moltiplicazione del pitch (1 = pitch invariato, 2 = ottava sopra, 0.5 = ottava sotto e così via) e una durata del grano, bisogna calcolare il tempo di delay finale che deve raggiungere line~. Questo tempo di dealy è uguale a [delayiniziale - (fattorepitch - 1) * durata]:

#P window setfont "Sans Serif" 9.;
#P window linecount 1;
#P newex 38 50 60 196617 loadmess 1;
#N vpreset 1;
#X append 1 2 4 467 121 gain~ list 93 10. \; 10 81 349 flonum float 2. \; 13 74 434 flonum float 800. \; 14 82 259 flonum float 2500. \; 15 185 312 flonum float 1700. \;;
#P preset 38 80 47 27;
#P window linecount 2;
#P comment 176 178 77 196617 bang per cambiare pitch;
#P comment 434 46 44 196617 durata in ms;
#P comment 331 48 77 196617 fattore di moltiplicazione;
#P button 195 210 15 0;
#P window linecount 1;
#P newex 301 213 116 196617 pak 0. 0. 0.;
#P newex 275 260 36 196617 zl reg;
#P flonum 312 185 56 9 0 0 0 3 0 0 0 221 221 221 222 222 222 0 0 0;
#P flonum 259 82 46 9 0 0 0 3 0 0 0 221 221 221 222 222 222 0 0 0;
#P flonum 434 74 46 9 0 0 0 3 0 0 0 221 221 221 222 222 222 0 0 0;
#P newex 324 114 61 196617 pak 0. 0. 0.;
#P newex 312 145 113 196617 expr $f1-($f2-1)*$f3;
#P flonum 349 81 35 9 0 0 0 3 0 0 0 221 221 221 222 222 222 0 0 0;
#P message 215 349 56 196617 \$1 \, \$2 \$3;
#P newex 215 388 32 196617 line~;
#P message 48 587 27 196617 stop;
#P message 48 570 67 196617 startwindow;
#P newex 121 587 29 196617 dac~;
#P user gain~ 121 467 21 89 158 0 1.071519 7.94321 10.;
#P newex 97 414 44 196617 tapout~;
#P newex 97 378 65 196617 tapin~ 5000;
#P newex 97 322 61 196617 cycle~ 440;
#P window linecount 2;
#P comment 243 50 77 196617 punto di inizio scansione;
#P connect 13 0 17 2;
#P connect 13 0 12 2;
#P connect 15 0 17 1;
#P connect 10 0 12 1;
#P connect 14 0 17 0;
#P connect 14 0 12 0;
#P connect 11 0 15 0;
#P connect 12 0 11 0;
#P connect 17 0 16 1;
#P connect 18 0 16 0;
#P connect 9 0 8 0;
#P connect 16 0 9 0;
#P connect 4 0 5 1;
#P connect 7 0 5 0;
#P connect 6 0 5 0;
#P connect 4 0 5 0;
#P connect 3 0 4 0;
#P connect 2 0 3 0;
#P connect 8 0 3 0;
#P connect 1 0 2 0;
#P connect 23 0 22 0;
#P window clipboard copycount 24;


Titolo: Re: ci risono!
Post di: marco su Marzo 16, 2006, 20:41:47
grazie maurizio!!!
la tua patch è interessantissima...ma c'è un problema!

non riesco ad alzare il pitch!!
riesco solo a diminuirlo!!
i valori sopra 1 non vengono presi in considerazione...

prova a guardarci!!!

GRAZIE 1000!!!!  :)

max v2;
#N vpatcher 15 55 735 767;
#P window setfont "Sans Serif" 9.;
#P window linecount 1;
#P message 172 350 28 9109513 open;
#P message 155 350 14 9109513 1;
#P newex 98 110 60 9109513 loadmess 1;
#N vpreset 1;
#X append 1 2 4 527 181 gain~ list 128 10. \; 10 141 409 flonum float 2. \; 13 134 494 flonum float 1000. \; 14 142 319 flonum float 0. \; 15 245 372 flonum float -1000. \;;
#P preset 98 140 47 27;
#P window linecount 2;
#P comment 236 238 77 9109513 bang per cambiare pitch;
#P comment 494 106 44 9109513 durata in ms;
#P comment 391 108 77 9109513 fattore di moltiplicazione;
#P button 255 270 15 0;
#P window linecount 1;
#P newex 361 273 116 9109513 pak 0. 0. 0.;
#P newex 335 320 36 9109513 zl reg;
#P flonum 372 245 56 9 0 0 0 139 0 0 0 221 221 221 222 222 222 0 0 0;
#P flonum 319 142 46 9 0 0 0 139 0 0 0 221 221 221 222 222 222 0 0 0;
#P flonum 494 134 46 9 0 0 0 139 0 0 0 221 221 221 222 222 222 0 0 0;
#P newex 384 174 61 9109513 pak 0. 0. 0.;
#P newex 372 205 113 9109513 expr $f1-($f2-1)*$f3;
#P flonum 409 141 35 9 0 0 0 139 0 0 0 221 221 221 222 222 222 0 0 0;
#P message 275 409 56 9109513 \$1 \, \$2 \$3;
#P newex 275 448 32 9109513 line~;
#P message 108 647 27 9109513 stop;
#P message 108 630 67 9109513 startwindow;
#P newex 181 647 29 9109513 dac~;
#P user gain~ 181 527 21 89 158 0 1.071519 7.94321 10.;
#P newex 157 474 44 9109513 tapout~;
#P newex 157 438 65 9109513 tapin~ 5000;
#N sfplay~  1 120960 0 ;
#P newobj 157 382 40 9109513 sfplay~;
#P window linecount 2;
#P comment 303 110 77 9109513 punto di inizio scansione;
#P connect 23 0 22 0;
#P connect 1 1 24 0;
#P connect 25 0 1 0;
#P connect 24 0 1 0;
#P connect 1 0 2 0;
#P connect 8 0 3 0;
#P connect 2 0 3 0;
#P connect 3 0 4 0;
#P connect 4 0 5 0;
#P connect 6 0 5 0;
#P connect 7 0 5 0;
#P connect 4 0 5 1;
#P connect 16 0 9 0;
#P connect 9 0 8 0;
#P connect 18 0 16 0;
#P connect 14 0 17 0;
#P connect 17 0 16 1;
#P connect 12 0 11 0;
#P connect 11 0 15 0;
#P connect 14 0 12 0;
#P connect 10 0 12 1;
#P connect 15 0 17 1;
#P connect 13 0 12 2;
#P connect 13 0 17 2;
#P pop;




Titolo: Re: ci risono!
Post di: mauriziogiri su Marzo 16, 2006, 23:04:59
non riesco ad alzare il pitch!!
riesco solo a diminuirlo!!
i valori sopra 1 non vengono presi in considerazione...

 :)
faccio un concorso come quelli della settimana enigmistica:
dove sbaglia marco?

il problema e' qui:

Citazione
#X append 1 2 4 527 181 gain~ list 128 10. \; 10 141 409 flonum float 2. \; 13 134 494 flonum float 1000. \; 14 142 319 flonum float 0. \; 15 245 372 flonum float -1000. \;;

(e' anche utile rileggersi attentamente il mio post precedente)

Al primo che indovina do una stelletta in piu' (puo' partecipare anche marco   ;))

m


Titolo: Re: ci risono!
Post di: marco su Marzo 17, 2006, 07:38:59
mmmhhh...maurizio...arguto
satanasso!! questo mi farà perdere l'intera giornata di lavoro saiii???  ;D 8)

dai ci penso...

@ nama, franz, nowave,mic & Co SVEGLIATEVIIII!!!!   :D


Titolo: Re: ci risono!
Post di: mic su Marzo 17, 2006, 09:54:01
ciao marco!hai ragione...mi sono un po addormentato!cazzarola sono giorni che quasi non tocco max e non faccio altro che chattare con una tipa!!! AIUTO!! COSI NON VA BENE!!


Titolo: Re: ci risono!
Post di: marco su Marzo 17, 2006, 11:09:59
va be, ma se l'alternativa a max è una tipa va PIU CHE BENE!!!!  ;)

p.s. la soluzione!!  ;D


Titolo: Re: ci risono!
Post di: marco su Marzo 17, 2006, 18:14:40
ho notato che mi alza il pitch solo con valori negativi sopra i 100 però è tutto in reverse!!

come mai??? io mollo....

maurizio illuminamiii!! ;)


Titolo: Re: ci risono!
Post di: franz su Marzo 17, 2006, 18:23:11
è in reverse perchè stai leggendo il buffer al contrario :)


Titolo: Re: ci risono!
Post di: NOwave su Marzo 17, 2006, 20:02:48
Ragazzi io ho un esame sabato prossimo , se apro max mi picchio da solo , e poi sono il più scarso di tutti   :)

Sono in apnea da esame , a presto ciao  ;D


Titolo: Re: ci risono!
Post di: marco su Marzo 17, 2006, 20:30:58
nowave sei scusato...franz NO!!  ;D

ok...sto leggendo il buffer in reverse, ma come faccìo a risolvere il mio problema??    ???


Titolo: Re: ci risono!
Post di: franz su Marzo 17, 2006, 21:10:26
mmm vediamo un pò...potresti fare in modo che..ops si è fatto tardi devo uscire!
Dai scherzo, prova a pensarci su :)


Titolo: Re: ci risono!
Post di: mic su Marzo 17, 2006, 21:42:05
haha ;D franz sei sadico!


Titolo: Re: ci risono!
Post di: mauriziogiri su Marzo 18, 2006, 10:02:22
raga, mi deludete...  :(

piccolo suggerimento: il preset della patch che ho postato io permette di alzare il pitch, quello di marco no. Perche?
Qual è la piccola ma fondamentale differenza tra il preset di marco e il mio?

m

PS la stelletta non è più in palio.  ;D

PPS il fatto che io usi un cycle~ e marco un file player non c'entra niente. Il cycle~ serve solo a dare un'idea chiara del cambiamento di pitch.


Titolo: Re: ci risono!
Post di: marco su Marzo 18, 2006, 11:12:10
maurizio...ma nella patch che hai postato il preset è tutto vuoto...non c'è neanche un preset!
ma questo succede sempre nel copiare/incollare come testo le patch...
cioè: max non si tiene a mente i preset "storati" nel preset...o sbaglio???
 ???

p.s. franz se 1 b.astardooo!!  ;D


Titolo: Re: ci risono!
Post di: franz su Marzo 18, 2006, 11:30:55
i preset non si vedono neanche a me, però, le stringhe che li riguardano sono queste qui

Preset di Marco
Codice:
#X append 1 2 4 527 181 gain~ list 128 10. \; 10 141 409 flonum float 2. \; 13 134 494 flonum float 1000. \; 14 142 319 flonum float 0. \; 15 245 372 flonum float [b]-1000.[/b] \;;

Preset di Maurizio
Codice:
#X append 1 2 4 467 121 gain~ list 93 10. \; 10 81 349 flonum float 2. \; 13 74 434 flonum float 800. \; 14 82 259 flonum float 2500. \; 15 185 312 flonum float 1700. \;;








Titolo: Re: ci risono!
Post di: mauriziogiri su Marzo 18, 2006, 13:20:56
Io i preset li vedo... a volte se non funziona bisogna rifare il copia e incolla. Oppure salvare la patch come testo (con suffisso .pat) e ricaricarla in max, come si faceva prima della versione 4.5.5
In ogni casi vi allego le patch zippate e coi preset, ora non ci sono più scuse!  ;)

m


Titolo: Re: ci risono!
Post di: marco su Marzo 18, 2006, 17:59:00
mmhh l'errore stava nel punto di inizio scansione..giusto?  :)

però continuo a non capire...voglio dire..il punto di inizio scansione sarebbe a quanti ms inizio a leggere il buffer giusto???
quindi se metto valori sopra lo 0 sento la transposizione non d'allinizio del buffer..o no?

eppure il delay max è 5000 e tu hai settato 2500..
bho non capisco il ragionamento maurizio...

cmq, tornando alla radice del thread...questa patch sarebbe il motore che mi fa le transposizioni di pitch?? come potrei muovermi per imitare il KTGranulator??

thx again!!  :)


Titolo: Re: ci risono!
Post di: brunozamborlin su Marzo 19, 2006, 01:26:58
io sn fuori gara, mi sn dimenticato l'alimentatore del portatile da un mio amico (in liguria) e finchè non me lo manda non posso maxare... per questo posto poco ultimamente... (oltre al fatto che ha bologna non ho ancora la connessione)... chiusa parentesi :)


Titolo: Re: ci risono!
Post di: mauriziogiri su Marzo 19, 2006, 18:10:57
marco ha detto:
Citazione
però continuo a non capire...voglio dire..il punto di inizio scansione sarebbe a quanti ms inizio a leggere il buffer giusto???

No. E' semplicemente il tempo di delay. E ad esempio "2500" significa che leggo il suono che è stato prodotto 2500 millisecondi prima, cioè 2 secondi e mezzo.

Citazione
quindi se metto valori sopra lo 0 sento la transposizione non d'allinizio del buffer..o no?

No, se metti zero vuol dire che imposti un tempo di delay nullo, ovvero leggi il suono nel momento in cui viene prodotto. Per ottenere il cambio di pitch bisogna cambiare il tempo di delay tramite line~.
Tu stesso nel tuo messaggio #6 avevi scritto:

Citazione
ok franz il fatto di cambiare il pitch cambiando il tempo di delay l'avevo già sperimentato con il comando line~ che genera un cambiamento lineare del delay e quindi varia il pitch.

Com'è che ora te lo sei dimenticato? ???

In ogni caso per abbassare il pitch bisogna, tramite line~, aumentare il tempo di delay. Per alzare il pitch bisogna invece diminuirlo. Se parti da un delay = 0, come fai a diminuirlo? Max dovrebbe essere in grado di prevedere il futuro, cosa che, almeno nella versione 4.5.7 che ho io non è ancora in grado di fare!   :)

Citazione
eppure il delay max è 5000 e tu hai settato 2500..
bho non capisco il ragionamento maurizio...

Io avevo settato 2500 perché si trova a metà strada tra 0 e il delay massimo di 5000, così potevo alzare o abbassare il pitch agevolmente. Ma avrei potuto impostare un qualunque altro tempo di delay: bisogna solo fare attenzione che il tempo di delay finale (quello che nella mia patch viene calcolato dall'oggetto expr) non sia superiore a 5000 o inferiore a 0. Nella tua patch, se la riguardi, il tempo di delay finale è -1000, cioè un ritardo negativo, quindi 1000 millisecondi nel futuro!  ;)

Citazione
cmq, tornando alla radice del thread...questa patch sarebbe il motore che mi fa le transposizioni di pitch??

secondo me sì.

Citazione
come potrei muovermi per imitare il KTGranulator??

come ho detto non conosco il ktg, però intanto prova a realizzare un granulatore che fa semplicemente delle trasposizioni, e nel tempo, con l'esperienza, prova ad aggiungere le funzionalità che ti servono.

m



Titolo: Re: ci risono!
Post di: marco su Marzo 20, 2006, 09:20:40
grazie 1000 maurizio! sempre disponibile e gentile! ,)
stase quando arrivo a casa ci guardo un pò!

thx! :)


© Copyright 1996 - 2008 - ConTempoNet Edizioni Musicali ® - P.IVA: 05174251008
Tutti i diritti riservati - Tutti i marchi sono registrati -
È vietata la riproduzione, anche parziale, dei testi e delle immagini.
Powered by SMF 1.1.5 | SMF © 2006-2008, Simple Machines LLC
Traduzione Italiana a cura di SMItalia