On Wed, 22 Dec 2010, Dietrich Pank wrote:

1. and 2. I don't understand how to approach (I'm on Win btw. but would like about functionality of Jack if it does something I can't do in Win).

Well, I don't know your setup, and I don't do much between Pd and other apps, as I tend to do Pd-only projects, so I can't help so much.

But the idea #1 is to transmit the triggers as a signal from the beginning and all along : in a Pd-only situation, for example, you could take a microphone, multiply its signal with itself using [*~], use [lop~] to turn this into an envelope, then use [rzero~ 1] to separate the increasing parts from the decreasing ones, then [expr~ $v1>0], [rzero~ 1] again, [expr~ $v1>0] again, and now you have triggers in the form of a signal containing zeroes and occasionally ones. It's probably a bad example (I didn't try it) and would need a lot of tuning in practice, BUT :

The important thing here, is that you're never using anything else than sample-rate, so, there are objects you can't use here, which is why I didn't use [env~] to make the envelope, because it's not smooth like signal-rate, and I didn't use [bonk~] to find the peaks, also because it doesn't have that resolution.

The idea #2, now, is that if you really have to start from control-rate, and you do have precise timings (as numbers) for future events, then you can generate a signal representing those precise timings. That's what [vline~] is for. That allows you to deal with objects whose only way to go high-resolution is to use a signal, because you can't tell them precise timings as messages.

Could you show me working examples finding and processing sample accurate timed events?

I don't have any.

How do you use sequencers?

I use them with control-rate. I use smaller blocksize (as low as 4, at double samplerate) but that's not because of event resolution, it's because my synth is based on feedback, and sometimes it's really high-pitched, so the blocksize has to be decreased to accomodate the high pitches. As a side-effect, I do get higher resolution of triggering, but I don't notice it, because I don't do things that would highlight it.

What about fast retriggering percussives or delay like effects - isn't the jitter bothering you?

The closest I do, is that I use [delwrite~] and [vd~]. That's at sample-rate all along.

Your abstractions doesn't seem to be part of 0.42.5-extended?

No. They aren't part of anything. I posted them on pd-list this year. I attach them to this reply now.

And what method (1.,2. or 3.) did you use?

They use the formula for the equivalence between [rpole~] and [lop~]. Because [rpole~] can be parametrised at sample-rate, this gives you a sample-rate [lop~].

it shots out of screen limit, the scroll bar appears and is very small... so the value must very high.

Insert an [env~] (optionally with [dbtorms]) to find actual numbers.

Look at it I attached it (you need to touch some controls of the audioscope in order to update correctly - I have a bug there).  

I won't try it now.

 4. when converting between different sampling rates, change
    proportionally to sample rate, to avoid having to split/merge blocks
    (this rarely matters at all)
i see. (well.. 4. I will understand one day I'm convinced ;)

Well, #4 is really not important to understand.

 _______________________________________________________________________
| Mathieu Bouchard ---- tél: +1.514.383.3801 ---- Villeray, Montréal, QC
#N canvas 465 194 328 107 10;
#X obj 191 26 samplerate~;
#X obj 191 7 loadbang;
#X obj 7 45 *~;
#X obj 7 64 rpole~;
#X obj 7 26 inlet~;
#X obj 7 83 outlet~;
#X obj 49 26 inlet~;
#X obj 50 45 expr~ $v1*3.141593*2/$v2;
#X obj 49 64 expr~ 1-$v1;
#X text 57 82 signal-rate [lop~] by Mathieu Bouchard 2010;
#X connect 0 0 7 1;
#X connect 1 0 0 0;
#X connect 2 0 3 0;
#X connect 3 0 5 0;
#X connect 4 0 2 0;
#X connect 6 0 7 0;
#X connect 7 0 8 0;
#X connect 7 0 2 1;
#X connect 8 0 3 1;
#N canvas 0 0 450 300 10;
#X obj 11 12 inlet~;
#X obj 12 54 -~;
#X obj 27 35 lop2~;
#X obj 12 73 outlet~;
#X connect 0 0 2 0;
#X connect 0 0 1 0;
#X connect 1 0 3 0;
#X connect 2 0 1 1;
_______________________________________________
Pd-list@iem.at mailing list
UNSUBSCRIBE and account-management -> 
http://lists.puredata.info/listinfo/pd-list

Reply via email to