[PD] Non-transposing delay
Hi folks, Does anyone know of Pd implemenation (or external) of a non-transposing variable delay? Thanks, Jamie -- www.postlude.co.uk Birmingham City University is the new name unveiled for the former University of Central England in Birmingham For more information about the name change go to http://www.bcu.ac.uk/namechange/official_announcement.html ___ Pd-list@iem.at mailing list UNSUBSCRIBE and account-management -> http://lists.puredata.info/listinfo/pd-list
Re: [PD] Non-transposing delay
Hi what about vd~ ?? Is it not what you are looking for ? Or is "non-transposing-delay" any kind of special term i dont know of ?? Best Luigi Am 05.06.2008 um 18:17 schrieb Jamie Bullock: Hi folks, Does anyone know of Pd implemenation (or external) of a non- transposing variable delay? Thanks, Jamie -- www.postlude.co.uk Birmingham City University is the new name unveiled for the former University of Central England in Birmingham For more information about the name change go to http:// www.bcu.ac.uk/namechange/official_announcement.html ___ Pd-list@iem.at mailing list UNSUBSCRIBE and account-management -> http://lists.puredata.info/ listinfo/pd-list >---< Luigi Rensinghoff [EMAIL PROTECTED] skype:gigischinke ichat:gigicarlo ___ Pd-list@iem.at mailing list UNSUBSCRIBE and account-management -> http://lists.puredata.info/listinfo/pd-list
Re: [PD] Non-transposing delay
always a variable celay will cause a transposition, but this depends on time that happens the variation and the delta between a time of dely and the other. while the time of variation is longer and the delta is shorter the transposition during this period will be smaller. (read about doppler effect) Andrés Ferrari G. http://puredata.org/Members/anfex http://www.myspace.com/anfex http://www.youtube.com/anfex1 Yahoo! Deportes Beta ¡No te pierdas lo último sobre el torneo clausura 2008! Entérate aquí http://deportes.yahoo.com ___ Pd-list@iem.at mailing list UNSUBSCRIBE and account-management -> http://lists.puredata.info/listinfo/pd-list
Re: [PD] Non-transposing delay
And conversely, a delay buffer with a ordinary movable read point (which is what I guess you really want in this case) will always cause a click since there's no reason why jumps between arbitrary samples will be smooth. Of course there will be no trasposition since the read location changes instead of the rate. Transposition may be desirable, but clicks rarely are. As it stands you can either have smoothness with transposition, or no transposition and clicks. It seems reasonable that if the position changes infrequently one could make a vari-delay to crossfade between two buffers, which would then be an overlapped timestretch process. For short (time period) effects there are several variations on this general idea of crossfading between parallel but slightly offset static delay buffers. It depends on what effect you want to achieve. On Thu, 5 Jun 2008 13:52:16 -0700 (PDT) Andres Ferrari <[EMAIL PROTECTED]> wrote: > > > always a variable celay will cause a transposition, but this depends on time > that happens the variation and the delta between a time of dely and the other. > > while the time of variation is longer and the delta is shorter the > transposition during this period will be smaller. (read about doppler effect) > > Andrés Ferrari G. > > http://puredata.org/Members/anfex > > http://www.myspace.com/anfex > > http://www.youtube.com/anfex1 > > > > > > > > Yahoo! Deportes Beta > ¡No te pierdas lo último sobre el torneo clausura 2008! Entérate aquí > http://deportes.yahoo.com > > ___ > Pd-list@iem.at mailing list > UNSUBSCRIBE and account-management -> > http://lists.puredata.info/listinfo/pd-list -- Use the source ___ Pd-list@iem.at mailing list UNSUBSCRIBE and account-management -> http://lists.puredata.info/listinfo/pd-list
Re: [PD] Non-transposing delay
On Thu, 2008-06-05 at 19:22 +0200, Luigi Rensinghoff wrote: > Hi > > > what about vd~ ?? Is it not what you are looking for ? > > > Or is "non-transposing-delay" any kind of special term i dont know > of ?? By 'non-transposing' I mean that the pitch of the delayed signal doesn't get changed as a byproduct of the dynamic change in delay time. Anyhow, I managed to work something out by porting vdb~ from the Max/MSP ejies library. See attached. best, Jamie -- www.postlude.co.uk #N canvas 739 43 512 698 10; #X obj -8 6 inlet~; #X obj 133 10 inlet; #X obj 336 12 inlet; #X obj -7 635 outlet~; #X obj 133 134 max 0.01; #X obj 135 185 /; #X msg 134 159 1000 \$1; #X obj 136 209 phasor~ 13.; #X obj 136 234 cos~; #X obj 136 257 *~ 0.5; #X obj 136 279 +~ 0.5; #X obj 204 37 unpack \$1 \$2; #X obj 204 58 sel 0; #X obj 205 81 f 75; #X obj 203 12 loadbang; #X obj 9 307 sig~; #X obj 9 342 samphold~; #X obj 9 389 vd~ \$0-del; #X obj 9 423 *~; #X obj 9 458 +~; #X obj 170 420 *~; #X obj 170 337 samphold~; #X obj 284 131 s \$0-delaytime; #X obj 10 281 r \$0-delaytime; #X obj 230 308 -~; #X obj 230 277 sig~ 1; #X obj 170 370 vd~ \$0-del; #X obj 74 636 delwrite~ \$0-del 2; #X obj -8 570 +~; #X obj 402 11 inlet; #X obj 403 131 s \$0-feedback; #X obj 49 511 r \$0-feedback; #X obj 10 534 *~ 0.5; #X text -7 666 Pd port of vdb~ for Max/MSP by Benjamin Thigpen & Emmanuel Jourdan; #X text 129 -6 Window size in ms; #X connect 0 0 28 0; #X connect 1 0 4 0; #X connect 2 0 22 0; #X connect 4 0 6 0; #X connect 5 0 7 0; #X connect 6 0 5 0; #X connect 7 0 8 0; #X connect 8 0 9 0; #X connect 9 0 10 0; #X connect 10 0 16 1; #X connect 10 0 18 1; #X connect 10 0 24 1; #X connect 11 0 12 0; #X connect 11 1 22 0; #X connect 12 0 13 0; #X connect 13 0 4 0; #X connect 14 0 11 0; #X connect 15 0 16 0; #X connect 15 0 21 0; #X connect 16 0 17 0; #X connect 17 0 18 0; #X connect 18 0 19 0; #X connect 19 0 32 0; #X connect 20 0 19 1; #X connect 21 0 26 0; #X connect 23 0 15 0; #X connect 24 0 21 1; #X connect 24 0 20 1; #X connect 25 0 24 0; #X connect 26 0 20 0; #X connect 28 0 27 0; #X connect 28 0 3 0; #X connect 29 0 30 0; #X connect 31 0 32 1; #X connect 32 0 28 1; #N canvas 211 325 221 297 10; #X obj 39 148 vdb~; #X obj 40 42 adc~; #X obj 39 228 dac~; #X obj 40 67 *~ 0.1; #X floatatom 109 137 5 0 0 0 - - -; #X obj 155 -22 vsl 15 128 0 1 0 0 empty empty empty 0 -9 0 10 -262144 -1 -1 12400 1; #X floatatom 155 136 5 0 0 0 - - -; #X text 152 -41 Feedback; #X text 27 -42 Delay time (ms); #X obj 110 -21 vsl 15 128 0 1270 0 0 empty empty empty 0 -9 0 10 -262144 -1 -1 0 1; #X connect 0 0 2 0; #X connect 0 0 2 1; #X connect 1 0 3 0; #X connect 3 0 0 0; #X connect 5 0 6 0; #X connect 5 0 0 3; #X connect 9 0 4 0; #X connect 9 0 0 2; ___ Pd-list@iem.at mailing list UNSUBSCRIBE and account-management -> http://lists.puredata.info/listinfo/pd-list
Re: [PD] Non-transposing delay
a made something similar the other week, as andy mentions, you'll get clicks if you arbitrarily jump from different parts of a sample, but this can be avoided by hanning window/ block overlap. my patch is a simple timestretcher for audio files, but i think it could be easily modified to do delaylines too. timestretcher.pd Description: Binary data ___ Pd-list@iem.at mailing list UNSUBSCRIBE and account-management -> http://lists.puredata.info/listinfo/pd-list
Re: [PD] Non-transposing delay
Hallo, Jamie Bullock hat gesagt: // Jamie Bullock wrote: > > On Thu, 2008-06-05 at 19:22 +0200, Luigi Rensinghoff wrote: > > Hi > > > > > > what about vd~ ?? Is it not what you are looking for ? > > > > > > Or is "non-transposing-delay" any kind of special term i dont know > > of ?? > > By 'non-transposing' I mean that the pitch of the delayed signal doesn't > get changed as a byproduct of the dynamic change in delay time. You always get a Doppler effect transposition if you continously change the delay time. For example see the "Momentary Transposition Formula for delay lines" in: http://crca.ucsd.edu/~msp/techniques/latest/book-html/node113.html Delays behave exactly as wavetable lookup sample players (or vinyl records in DJing) in this regard. A way out is to change the delay times non-continously with (windowed) "jumps" as in your vdb~ (or to lift the needle off the vinyl record and put it dowan at a different position in the groove instead of ac/decelerating the record to get there, which will always transpose). > Anyhow, I managed to work something out by porting vdb~ from the Max/MSP > ejies library. See attached. Btw: Eric Lyon's externals collection "LyonPotpourri" also contains a vdb~ for Pd, but I think it's a slightly different object. Ciao -- Frank Barknecht _ __footils.org__ ___ Pd-list@iem.at mailing list UNSUBSCRIBE and account-management -> http://lists.puredata.info/listinfo/pd-list
Re: [PD] Non-transposing delay
On Thu, 2008-06-05 at 22:36 +0100, Andy Farnell wrote: > > And conversely, a delay buffer with a ordinary movable read point > (which is what I guess you really want in this case) will always > cause a click since there's no reason why jumps between arbitrary > samples will be smooth. Of course there will be no trasposition > since the read location changes instead of the rate. > > Transposition may be desirable, but clicks rarely are. As it > stands you can either have smoothness with transposition, or > no transposition and clicks. iirc, there is a technique described in millers book, which i don't recall the name of, which is used to avoid discontinuities, when jumping from one to another time point in an audio stream. this is achieved by adding a ramp to the signal, that smoothes out the difference between the samples at the jump. i used this technique to create clickless loops with arbitrary length. i assume, it would also work for a non-continuous, but clickfree changeable delay (without transposition). however, if jamie wants it to be continuous, then probably the technique as shown in 3.audio.examples/I07.phase.vocoder.pd could be used, which is very cpu-time consuming, though. roman ___ Telefonate ohne weitere Kosten vom PC zum PC: http://messenger.yahoo.de ___ Pd-list@iem.at mailing list UNSUBSCRIBE and account-management -> http://lists.puredata.info/listinfo/pd-list
Re: [PD] Non-transposing delay
Yes, that's a great point. IIRC that is mainly for slow moving envelope/control signals. I wonder, if you did it with audio then you'd have a limited number of times to apply it in a given interval because the worst case means you get an accumulating DC offset that will go out of bounds. (?) On Fri, 06 Jun 2008 16:58:32 +0200 Roman Haefeli <[EMAIL PROTECTED]> wrote: > On Thu, 2008-06-05 at 22:36 +0100, Andy Farnell wrote: > > > > And conversely, a delay buffer with a ordinary movable read point > > (which is what I guess you really want in this case) will always > > cause a click since there's no reason why jumps between arbitrary > > samples will be smooth. Of course there will be no trasposition > > since the read location changes instead of the rate. > > > > Transposition may be desirable, but clicks rarely are. As it > > stands you can either have smoothness with transposition, or > > no transposition and clicks. > > iirc, there is a technique described in millers book, which i don't > recall the name of, which is used to avoid discontinuities, when jumping > from one to another time point in an audio stream. this is achieved by > adding a ramp to the signal, that smoothes out the difference between > the samples at the jump. i used this technique to create clickless loops > with arbitrary length. i assume, it would also work for a > non-continuous, but clickfree changeable delay (without transposition). > > however, if jamie wants it to be continuous, then probably the technique > as shown in 3.audio.examples/I07.phase.vocoder.pd could be used, which > is very cpu-time consuming, though. > > roman > > > > > > ___ > Telefonate ohne weitere Kosten vom PC zum PC: http://messenger.yahoo.de > -- Use the source ___ Pd-list@iem.at mailing list UNSUBSCRIBE and account-management -> http://lists.puredata.info/listinfo/pd-list
Re: [PD] Non-transposing delay
> On Fri, 06 Jun 2008 16:58:32 +0200 > Roman Haefeli <[EMAIL PROTECTED]> wrote: > > > On Thu, 2008-06-05 at 22:36 +0100, Andy Farnell wrote: > > > > > > And conversely, a delay buffer with a ordinary movable read point > > > (which is what I guess you really want in this case) will always > > > cause a click since there's no reason why jumps between arbitrary > > > samples will be smooth. Of course there will be no trasposition > > > since the read location changes instead of the rate. Does it need to be sampel accurate timing; would snapping to a nearby same-direction zero-crossing work? ___ Pd-list@iem.at mailing list UNSUBSCRIBE and account-management -> http://lists.puredata.info/listinfo/pd-list
Re: [PD] Non-transposing delay
On Fri, 2008-06-06 at 16:07 +0100, Andy Farnell wrote: > Yes, that's a great point. IIRC that is mainly for slow moving > envelope/control signals. I wonder, if you did it with audio > then you'd have a limited number of times to apply it in a given > interval because the worst case means you get an accumulating > DC offset that will go out of bounds. (?) yeah.. so the rate should be limited to 1/(period of the ramp). actually i only tried it with audio. you still get kind of clicks sometimes, if the direction of the signal suddenly changes, but they sound very different and - IMO - far not as bad as the noisy sample-jumps with lots of high frequencies. roman ___ Der frühe Vogel fängt den Wurm. Hier gelangen Sie zum neuen Yahoo! Mail: http://mail.yahoo.de ___ Pd-list@iem.at mailing list UNSUBSCRIBE and account-management -> http://lists.puredata.info/listinfo/pd-list