Re: Binary sequencer with data structures Re: Input binary values by mouse
João Pais <[email protected]> Thu, 19 Feb 2026 18:30:02 +0000
| Newsgroups | gmane.comp.multimedia.puredata.general |
|---|---|
| Message-ID | <[email protected]> |
> I had a go with data-structures and hacked something up with the great examples in the PD help (particularly 04.append.pd and 09.sequencer.pd from 4. data.structures). Find attached my WIP > > I am struggling to get the duration of the sequences right. If somebody with knowledge of data-structures, and the examples could have a look I would be very thankful. Currently I just have two „lanes“ of data, each lane triggering an oscillator on and off, this is just for debugging. > > What works: > > The UI for the most part, but I am not sure if my „trick“ with forcing the y position of segments is advisable. > The onset of segments is correct and the tempo can be adjusted correctly - if you change the y creation parameter in [pd stuff] to match the height of both lanes, you don't need to click there to "move" the scalars. - or use any of the externals to detect mouse clicks on the canvas to add the scalars in the correct x+y positions (iem or else should have something) > What does not work: > > -the duration (length of drawn segments in my UI) is not exactly linked to the sequenced time. Hence an overlapping segment in the UI can still cut-off before the next segment begins or vice versa. It depends on the tempo that is set. I am not sure how I can link the length of the bars (the z variable in my struct) to the time set by the tempo numbox. The delay simply delays the next pointer lookup, which is the next start of an event. I somehow need to link the length of the polygon drawn at that pointer to the delay. In my first attempt I simply multiplied the length by the delay-time (as in the rest of the sequencer patch) but that does not work correctly. I would myself use a different concept from the ground up: - y defines the frequency (you can adjust the canvas y value to adjust the overall graphic) - instead of having 2 general osc~, make a poly or clone with enough "voices", so that each has a parallel sound generator, which is activated by the list of parameters (specially y). z defines the delay/duration to switch off the generator. together with the previous suggestion, this will open you to many more options. - if you're not changing anything during the playback, probably you don't even need the sequencer patch, it's enough to read all scalar data and feed it to a [text sequence] object. Playback goes through the [text]. > -I would like to implement a timeline i.e. a hslider that increments position along the x axis, but again I have no idea how I would link the time set by the numberbox to the position so it actually corresponds to the drawn polygons… in my patches (mainly on my click tracker patch) I use data structures to add a timeline (struct with a symbol, and drawsymbol+draypolygon), and also a playback line (vertical line with x, that gets fed from a [line]). You can see all that if you download the click tracker, but you might not be able to decypher the patch. I'm not sure what's better, to make the timeline stable and redraw/rescale everything else, or to make the scalars stable and redraw/rescale the timeline. I myself prefer the first (specially when connected to the playback line), but I don't use that on a patch where I change tempo often. > It could also well be that this is not possible this way, then a short message would also be great :) it's possible :) joao > > Thanks > > Simon > > > >> Am 18.02.2026 um 23:20 schrieb Simon Iten<[email protected]>: >> >> Hi list, >> >> I am looking for a way to input binary values via mouse input. >> >> Basically I want a sequencer like structure to turn on and off a bunch of relays on a RPI. >> >> It would be nice to use something like an array for each output, so the user can draw in the state of the output over time. >> >> For that it would be great to only allow inputs that are: >> >> 1) in range (so mouse-movement outside the object does not draw outside the visible array, but constrains to the max or min) >> 2) round the values to only integer input, in my case 0 and 1. >> >> An array would be nice since it would allow very fast (no clicking needed) entry of many points and the state of each output would immediately be visible… >> >> Maybe there is some external that allows something like that? >> >> Thanks for any hints >> >> > > --- > [email protected] - the Pure Data mailinglist > https://lists.iem.at/hyperkitty/list/[email protected]/message/3GSEBM3ODAGK3ZMDNDJ75NPBPZ7X4SBK/ > > To unsubscribe send an email [email protected] mailing list > UNSUBSCRIBE and account-management ->https://lists.iem.at/ -- Audre-Lorde-Str. 26 10997 Berlin (Deutschland) Tel +49 30 74921288 | Mob +49 176 98476769 [email protected] |https://www.facebook.com/jmmmpais --- [email protected] - the Pure Data mailinglist https://lists.iem.at/hyperkitty/list/[email protected]/message/DF4UY5VTXME3CLUNMMU7BF47SQ64ZBZF/ To unsubscribe send an email to [email protected] mailing list UNSUBSCRIBE and account-management -> https://lists.iem.at/