Timeline still buggy

Jan 8, 2007 at 2:41pm

Timeline still buggy

I would really like to use timeline but in the past it was so buggy that I
gave up. This morning I tried it again assuming that it had been fixed.
The very first thing I tried caused max to crash.

I opened the tutorial and dragged the envelope labeled “volume” a few ticks
to the right. The crash has happen on each of the five times I retried it.

I also tried pasting a new list into one of the message boxes at 8000. I
reported this several years ago and it still doesn’t work.

Cheers
Gary Lee Nelson
Oberlin College
http://www.timara.oberlin.edu/GaryLeeNelson

#29556
Jan 8, 2007 at 4:28pm

same with me: I tried edetonate some weeks ago and gave up because I
could not navigate thru an imported MIDI file.

falk

Falk

Am 08.01.2007 um 15:41 schrieb Gary Lee Nelson:

> I would really like to use timeline but in the past it was so buggy
> that I
> gave up. This morning I tried it again assuming that it had been
> fixed.
> The very first thing I tried caused max to crash.
>
> I opened the tutorial and dragged the envelope labeled “volume” a
> few ticks
> to the right. The crash has happen on each of the five times I
> retried it.
>
> I also tried pasting a new list into one of the message boxes at
> 8000. I
> reported this several years ago and it still doesn’t work.
>
> Cheers
> Gary Lee Nelson
> Oberlin College
> http://www.timara.oberlin.edu/GaryLeeNelson
>
>

#92619
Jan 8, 2007 at 9:20pm

If you treat timeline like a handicapped friend (be glad about the
things he CAN do), you’ll get a lot out of it. You need to know its
idiosyncrasies to make it work for you, though. I’m happy he’s around.

Speaking about idiosyncrasies, I can report that detonate still has
its own too. Try to create entries for track 0 and track 33, for
example; the limit should be 1 and 32.

Georg

On Jan 8, 2007, at 3:41 PM, Gary Lee Nelson wrote:

> I would really like to use timeline but in the past it was so buggy
> that I
> gave up. This morning I tried it again assuming that it had been
> fixed.
> The very first thing I tried caused max to crash.
>
> I opened the tutorial and dragged the envelope labeled “volume” a
> few ticks
> to the right. The crash has happen on each of the five times I
> retried it.
>
> I also tried pasting a new list into one of the message boxes at
> 8000. I
> reported this several years ago and it still doesn’t work.
>
> Cheers
> Gary Lee Nelson
> Oberlin College
> http://www.timara.oberlin.edu/GaryLeeNelson
>
>

#92620
Jan 8, 2007 at 10:44pm

I’ve run into some of these weird problems with timeline too. Looks like a great idea but there’s a lot of crashes so it’s unnerving at best to use it…

I’d love to see a version using jit.cellblock or even LCD that lets you indicate what’s going on based upon graphical indicators. Maybe multiple “tracks”, each with its own LCD, with a “scrub” bar that could be moved by hand or automatically (or mtr-recorded). It wouldn’t have the same functionality as timeline, but I can imagine multiple colors meaning different messages or commands.

Maybe jit.matrix (in an editable window) could also do this, or some kind of multislider configuration, or a bpfunction editor. Essentially, a collection of tracks of graphically-controlled messages that play / send messages to whatever you want. Could be neat.

–CJ

#92621
Jan 8, 2007 at 11:11pm

I suggest that if there’s no viable solution in Max 5.0, those who
are interested in a nice timeline object start collecting money
Wikipedia style and contract a programming whiz to do the work.
Lately, I had the pleasure working with Emmanuel Jourdan’s js
function object. Something similar could probably also be realized
for timeline. If we all give $50, we might be able to raise a
considerable amount.

What does everybody think?

Georg

On Jan 8, 2007, at 11:44 PM, Seejay James wrote:

>
> I’ve run into some of these weird problems with timeline too. Looks
> like a great idea but there’s a lot of crashes so it’s unnerving at
> best to use it…
>
> I’d love to see a version using jit.cellblock or even LCD that lets
> you indicate what’s going on based upon graphical indicators.
> Maybe multiple “tracks”, each with its own LCD, with a “scrub” bar
> that could be moved by hand or automatically (or mtr-recorded). It
> wouldn’t have the same functionality as timeline, but I can imagine
> multiple colors meaning different messages or commands.
>
> Maybe jit.matrix (in an editable window) could also do this, or
> some kind of multislider configuration, or a bpfunction editor.
> Essentially, a collection of tracks of graphically-controlled
> messages that play / send messages to whatever you want. Could be
> neat.
>
> –CJ

#92622
Jan 8, 2007 at 11:30pm

Im down for $50.. As long as it uses jitter @ attributes :)

On Jan 8, 2007, at 6:11 PM, Georg Hajdu wrote:

> I suggest that if there’s no viable solution in Max 5.0, those who
> are interested in a nice timeline object start collecting money
> Wikipedia style and contract a programming whiz to do the work.
> Lately, I had the pleasure working with Emmanuel Jourdan’s js
> function object. Something similar could probably also be realized
> for timeline. If we all give $50, we might be able to raise a
> considerable amount.
>
> What does everybody think?
>
> Georg
>
> On Jan 8, 2007, at 11:44 PM, Seejay James wrote:

v a d e //

http://www.vade.info
abstrakt.vade.info

#92623
Jan 9, 2007 at 12:10am

#92624
Jan 9, 2007 at 12:46am

I’m down as long as its an open system. the maxer needs to be able
to add her own features like repeat, reverse, quantize,randomize
etc… so I guess What I’m saying it can’t just have a record and
playback. its gotta integrate. (the difference between presets and
pattr) a static one would be kind of useless.

gotta run.

#92625
Jan 9, 2007 at 7:53am

#92626
Jan 9, 2007 at 8:59am

#92627
Jan 9, 2007 at 9:45am

The thought that MaxMSP 5.0 *won’t* include a significant upgrade to the timeline object is too painful to consider. I would *love* an upgraded version, and I’m sure it’s high on c74′s “must have” list. I have a feeling that the deeeeep silence surrounding v5.0 is a good indication that they’re really going above and beyond to make it something special. The whole graphical programming idea for music seems to really be taking hold (Reaktor, Audiomulch, Bidule, etc.), so I’m sure c74 wants to make their next major upgrade really shine, and to widen the gap between them and all these other apps — I mean, I realize the gap is already pretty wide, since the integration of synthesis, processing, midi, and logic in MaxMSP is a far stretch beyond the competition, but still…
(As an example of how far they *might* be going, some may recall the rumors of drool-worthy features like compositing in the main patcher window! “ooooh” –Merv Griffin-style. The more time I spend at the computer, the more I realize that interface design and user control are pretty lame in most commercial music software. And since Max is all about spurring the user’s imagination, I’m sure c74 will give us lots to play with in order to help remedy the situation.)

Anyway, I’d probably throw-down for a snazzy openGL timeline object. But I suspect c74 will provide one before we could actually get a 3rd-party one built. Personally, I think we should pool our money to pay the PWGL developers to incorporate OSC… then we’d have graphical options AND a super-hot score editor (which includes graphical notation as well, btw).

J.

#92628
Jan 9, 2007 at 9:56am

#92629
Jan 9, 2007 at 10:03am

Seems I was wrong on this one.

> solutions like Iannix

Georg

#92630
Jan 9, 2007 at 10:22am

hey! That looks promising… time to mess about!

J.

#92631
Jan 9, 2007 at 10:29am

Wow – maybe it’s time to learn some of that OpenGL I’ve been hearing so much about :)

Yeah I’d like to keep this thread alive too. I also had contemplated LCD, sounds like you guys got pretty far with it. It could still come in handy with some stuff I guess. Interested to see what you ended up with.

Detonate could be nicely used as a timeline, especially if the notes were used as triggers, sending messages, storing numbers, etc. Maybe a track per pitch, with assignable behavior by velocity? Not to mention the other values.

A concurrent, parallel Detonate (or multiple ones for that matter) could have the same notes / durations. Changing the velocity on these would control the level or type of effect in the main timeline sequence, depending on the value held by the “notes” in it—if the values are numbers it provides interpolation or scaling, if they are messages it changes the particular message sent (play sample2.aiff, play mtr / seq), or it turns on and off the “notes” (either the events happen or they don’t). Lots of design possibilities and considerations there, with the advantage of the detonate UI and playback capabilities.

For the messages that are in either of these examples: Common message “parts” could be stored in multiple drop-downs, so the user can build full messages piecemeal–take this action, on this name / symbol, at this level, etc. Combinations could then be stored too, in a coll and a drop-down.

With a bit of mousestate and some transparent buttons you can make any object draggable (maybe hold down shift while in drag mode, or the reverse). Then you could do a fair bit with panels that “size themselves” automatically by setting the event’s duration / beat length. Choose common note lengths and drag them onto the tracks, with lots of preset patterns and filling functions, and a snap-to-grid function (use split object for the number of pixels around the nearest gridline, and an if-else to snap the panel and update the cursor? use modulus for the screen grid coordinates, based upon resolution and zoom level?).

When you click a panel / event, you could edit the current number / list / message(s) it contains (a master editor panel at bottom switches to the current panel clicked). Also a master setter for the whole track, or whichever events are enabled to receive master track commands. The most recent screen coordinates of dragged or generated panels are stored for playback.

Each track has independent playback rates; the note timings are determined using panel size and the screen pixel coordinates; there’s a slider above each track as an indicator and for scrubbing; there’s a range bar for looping; there’s a main level scaler for events that are numbers / lists; there’s maybe 6 levels of 2X zoom, out to about 4800 pixels horizontally; and there’s tons of presets / whatevers for all these… this sounds relatively doable, and would provide a lot of possibilities. Now let me just go and brew another pot…

just thinkin’ out loud, so if you got this far, my appreciation

C

#92632
Jan 9, 2007 at 10:36am

I would like to chip in. I am desperate for a reliable “Timeline”
environment. Let me know how to help (specifications etc),

regards Pere Josep

On 09/01/07, Georg Hajdu wrote:
>
> I suggest that if there’s no viable solution in Max 5.0, those who
> are interested in a nice timeline object start collecting money
> Wikipedia style and contract a programming whiz to do the work.
> Lately, I had the pleasure working with Emmanuel Jourdan’s js
> function object. Something similar could probably also be realized
> for timeline. If we all give $50, we might be able to raise a
> considerable amount.
>
> What does everybody think?
>
> Georg
>
> On Jan 8, 2007, at 11:44 PM, Seejay James wrote:
>
> >
> > I’ve run into some of these weird problems with timeline too. Looks
> > like a great idea but there’s a lot of crashes so it’s unnerving at
> > best to use it…
> >
> > I’d love to see a version using jit.cellblock or even LCD that lets
> > you indicate what’s going on based upon graphical indicators.
> > Maybe multiple “tracks”, each with its own LCD, with a “scrub” bar
> > that could be moved by hand or automatically (or mtr-recorded). It
> > wouldn’t have the same functionality as timeline, but I can imagine
> > multiple colors meaning different messages or commands.
> >
> > Maybe jit.matrix (in an editable window) could also do this, or
> > some kind of multislider configuration, or a bpfunction editor.
> > Essentially, a collection of tracks of graphically-controlled
> > messages that play / send messages to whatever you want. Could be
> > neat.
> >
> > –CJ
>
>


Course Leader
Msc Creative and Computational Sound
Creative Technologies
Portsmouth University
Eldon Building
Winston Churchill Avenue
Portsmouth PO1 2DJ
00 44 23 92 848484

http://www.port.ac.uk/courses/coursetypes/postgraduate/MScCreativeAndComputationalSound/
http://www.perevillez.com
http://www.centuryofnoise.com

#92633
Jan 9, 2007 at 11:54am

Quote: pvillez@gmail.com wrote on Tue, 09 January 2007 11:36
—————————————————-
> I would like to chip in. I am desperate for a reliable “Timeline”
> environment. Let me know how to help (specifications etc),
>
> regards Pere Josep

I don’t think max is ready to be used as a real sequencer and event editing solution. I started programming my own in Java a few months ago. It communicates with max via OSC, which works very nice.

Mattijs

#92634
Jan 10, 2007 at 2:33am

Gary (and others on Mac OS),

You might want to look at iCE Tools as an alternative to timeline.
It’s a different paradigm, but ice.lattice is (a) simple, (b)
reliable, and (c) stable.

iCE Tools costs more than the $50 ante people have been positing in
this thread, but its price is, frankly, more realistic given the work
involved. As f.e has discovered, this sort of thing is not a trivial
task. To give you an idea of just how much work was involved, note
that ice.lattice needed almost 3 years development to market.

I will respond to the question about availability for Windows in the
thread in which the question was explicitly asked (“iCE sequencer
opinions”).

Best,
Peter

On 8-Jan-2007, at 9:41, Gary Lee Nelson wrote:
> I would really like to use timeline but in the past it was so buggy
> that I
> gave up. This morning I tried it again assuming that it had been
> fixed.
> The very first thing I tried caused max to crash.

————– http://www.bek.no/~pcastine/Litter/ ————-
Peter Castine +–> Litter Power & Litter Bundle for Jitter
Universal Binaries on the way
iCE: Sequencing, Recording &
Interface Building for |home | chez nous|
Max/MSP Extremely cool |bei uns | i nostri|
http://www.dspaudio.com/ http://www.castine.de

#92635
Jan 10, 2007 at 3:39am

Peter, thanks for the information, I had considered ICE as it looks (on the
surface) like the kind of thing I could use, but there is mention of
standalone licensing restrictions on the website. What would these be?

regards Pere

On 10/01/07, Peter Castine

wrote:
>
> Gary (and others on Mac OS),
>
> You might want to look at iCE Tools as an alternative to timeline.
> It’s a different paradigm, but ice.lattice is (a) simple, (b)
> reliable, and (c) stable.
>
> iCE Tools costs more than the $50 ante people have been positing in
> this thread, but its price is, frankly, more realistic given the work
> involved. As f.e has discovered, this sort of thing is not a trivial
> task. To give you an idea of just how much work was involved, note
> that ice.lattice needed almost 3 years development to market.
>
> I will respond to the question about availability for Windows in the
> thread in which the question was explicitly asked (“iCE sequencer
> opinions”).
>
> Best,
> Peter
>
> On 8-Jan-2007, at 9:41, Gary Lee Nelson wrote:
> > I would really like to use timeline but in the past it was so buggy
> > that I
> > gave up. This morning I tried it again assuming that it had been
> > fixed.
> > The very first thing I tried caused max to crash.
>
> ————– http://www.bek.no/~pcastine/Litter/ ————-
> Peter Castine +–> Litter Power & Litter Bundle for Jitter
> Universal Binaries on the way
> iCE: Sequencing, Recording &
> Interface Building for |home | chez nous|
> Max/MSP Extremely cool |bei uns | i nostri|
> http://www.dspaudio.com/ http://www.castine.de
>
>
>

#92636
Jan 10, 2007 at 6:19am

Pattr sequencer!

On Jan 9, 2007, at 9:33 PM, Peter Castine wrote:

> Gary (and others on Mac OS),
>
> You might want to look at iCE Tools as an alternative to timeline.
> It’s a different paradigm, but ice.lattice is (a) simple, (b)
> reliable, and (c) stable.
>
> iCE Tools costs more than the $50 ante people have been positing in
> this thread, but its price is, frankly, more realistic given the
> work involved. As f.e has discovered, this sort of thing is not a
> trivial task. To give you an idea of just how much work was
> involved, note that ice.lattice needed almost 3 years development
> to market.
>
> I will respond to the question about availability for Windows in
> the thread in which the question was explicitly asked (“iCE
> sequencer opinions”).
>
> Best,
> Peter
>
> On 8-Jan-2007, at 9:41, Gary Lee Nelson wrote:
>> I would really like to use timeline but in the past it was so
>> buggy that I
>> gave up. This morning I tried it again assuming that it had been
>> fixed.
>> The very first thing I tried caused max to crash.
>
> ————– http://www.bek.no/~pcastine/Litter/ ————-
> Peter Castine +–> Litter Power & Litter Bundle for Jitter
> Universal Binaries on the way
> iCE: Sequencing, Recording &
> Interface Building for |home | chez nous|
> Max/MSP Extremely cool |bei uns | i nostri|
> http://www.dspaudio.com/ http://www.castine.de
>
>

v a d e //

http://www.vade.info
abstrakt.vade.info

#92637
Jan 10, 2007 at 10:19am

#92638
Jan 10, 2007 at 11:53am

#92639
Jan 10, 2007 at 12:57pm

On Jan 10, 2007, at 1:19 AM, vade wrote:
> Pattr sequencer!

In a very simple way, you can already do this. Use an [mtr] object
to record you preset changes for [pattrstorage]. Playback at will.
I have done this to build layers for a recording of a composition.
Worked like a charm.

——————-
Nathan Wolek, PhD — nwolek@stetson.edu
Assistant Professor of Music Technology
Stetson University – DeLand, FL

http://www.nathanwolek.com

#92640
Jan 10, 2007 at 2:20pm

I considered mtr as an alternative to timeline but I cannot see how mtr can
be made to participate in a pattr. Mtr is not an UI object. Do you have an
example?

BTW. I am having great success using textedit with pattr. With a small
wrapper I have made a kind of qlist that is more easily edited and allows me
to specify action times as well as delta times. As soon as I deliver my
current piece I’ll make up a small demo.

Cheers
Gary Lee Nelson
Oberlin College
http://www.timara.oberlin.edu/GaryLeeNelson

On 1/10/07 7:57 AM, “Nathan Wolek”

wrote:

> On Jan 10, 2007, at 1:19 AM, vade wrote:
>> Pattr sequencer!
>
> In a very simple way, you can already do this. Use an [mtr] object
> to record you preset changes for [pattrstorage]. Playback at will.
> I have done this to build layers for a recording of a composition.
> Worked like a charm.
>
> ——————-
> Nathan Wolek, PhD — nwolek@stetson.edu
> Assistant Professor of Music Technology
> Stetson University – DeLand, FL
> http://www.nathanwolek.com
>
>

#92641
Jan 10, 2007 at 4:34pm

On 9-Jan-2007, at 22:39, Pere Josep Villez wrote:
> Peter, thanks for the information, I had considered ICE as it looks
> (on the surface) like the kind of thing I could use, but there is
> mention of standalone licensing restrictions on the website. What
> would these be?

The page at the Kagi store has a Contact link specifically to answer
this question. But since the question has been asked here, I’ll
answer it on list (not for the first time, probably not the last!-)

It’s basically a formality where you say to DSPA “I want to be able
to build standalones with iCE Tools.” That’s all. DSPA requires an
additional license, encompassing an assurance not to directly compete
with DSPA’s sequencer products. There are no additional license fees
involved.

Hope this helps,
Peter

————– http://www.bek.no/~pcastine/Litter/ ————-
Peter Castine +–> Litter Power & Litter Bundle for Jitter
Universal Binaries on the way
iCE: Sequencing, Recording &
Interface Building for |home | chez nous|
Max/MSP Extremely cool |bei uns | i nostri|
http://www.dspaudio.com/ http://www.castine.de

#92642
Jan 10, 2007 at 6:43pm

I’ve done the same things with the text object instead of mtr. But it
doesn’t seem like you can as easily scroll content in a textedit box,
particularly when you deal with hundreds of lines.

Georg

On Jan 10, 2007, at 3:20 PM, Gary Lee Nelson wrote:

> I considered mtr as an alternative to timeline but I cannot see how
> mtr can
> be made to participate in a pattr. Mtr is not an UI object. Do
> you have an
> example?
>
> BTW. I am having great success using textedit with pattr. With a
> small
> wrapper I have made a kind of qlist that is more easily edited and
> allows me
> to specify action times as well as delta times. As soon as I
> deliver my
> current piece I’ll make up a small demo.
>
> Cheers
> Gary Lee Nelson
> Oberlin College
> http://www.timara.oberlin.edu/GaryLeeNelson
>
>
> On 1/10/07 7:57 AM, “Nathan Wolek”

> wrote:
>
>> On Jan 10, 2007, at 1:19 AM, vade wrote:
>>> Pattr sequencer!
>>
>> In a very simple way, you can already do this. Use an [mtr] object
>> to record you preset changes for [pattrstorage]. Playback at will.
>> I have done this to build layers for a recording of a composition.
>> Worked like a charm.
>>
>> ——————-
>> Nathan Wolek, PhD — nwolek@stetson.edu
>> Assistant Professor of Music Technology
>> Stetson University – DeLand, FL
>> http://www.nathanwolek.com
>>
>>
>
>
>

#92643
Jan 10, 2007 at 6:57pm

Two questions prompted by this thread:

1) how much functional example code is supplied alongside iCE Tools?

2) what do we know about Max 5.0? Will we hear anything at NAMM or is
it far too soon?

-A

#92644
Jan 10, 2007 at 7:16pm

Perhaps i should have said

Pattr Timeline!

There is a bit of a difference (perhaps in my head) between the two.,
being able to store not only your presets, but the time delta between
them, etc. Yes, you could prob. finagle something, but there would be
niceties of having something in the pattr family native.

Anyway.

On Jan 10, 2007, at 7:57 AM, Nathan Wolek wrote:

> On Jan 10, 2007, at 1:19 AM, vade wrote:
>> Pattr sequencer!
>
> In a very simple way, you can already do this. Use an [mtr] object
> to record you preset changes for [pattrstorage]. Playback at
> will. I have done this to build layers for a recording of a
> composition. Worked like a charm.
>
> ——————-
> Nathan Wolek, PhD — nwolek@stetson.edu
> Assistant Professor of Music Technology
> Stetson University – DeLand, FL
> http://www.nathanwolek.com
>
>

v a d e //

http://www.vade.info
abstrakt.vade.info

#92645
Jan 10, 2007 at 7:32pm

Scrolling works by selecting text and dragging to the line you need. I am
only dealing with 20-30 lines maximum. Saving segments in a pattrstorage.

On 1/10/07 1:43 PM, “Georg Hajdu” wrote:

> I’ve done the same things with the text object instead of mtr. But it
> doesn’t seem like you can as easily scroll content in a textedit box,
> particularly when you deal with hundreds of lines.
>
> Georg

Cheers
Gary Lee Nelson
Oberlin College
http://www.timara.oberlin.edu/GaryLeeNelson

#92646
Jan 10, 2007 at 9:21pm

Nathan Wolek skrev:
> On Jan 10, 2007, at 1:19 AM, vade wrote:
>> Pattr sequencer!
>
> In a very simple way, you can already do this. Use an [mtr] object to
> record you preset changes for [pattrstorage]. Playback at will. I
> have done this to build layers for a recording of a composition.
> Worked like a charm.
That’s what I do too. To me this is by far the most intuitive way of
working with structures that change over time. Pattr friggin rules for this.

Andreas.

#92647
Jan 10, 2007 at 9:29pm

how about using jit.cellblock instead of textedit?
each line would be a row in it, something like this:

#P window setfont “Sans Serif” 9.;
#P window linecount 1;
#P comment 94 440 199 196617 add one more row , else go to next line;
#P comment 428 446 105 196617 process return key;
#P comment 471 375 200 196617 the gate would be open;
#P comment 471 360 200 196617 cellblock will send sync message:;
#P comment 471 344 200 196617 but if the mouse clicked inside cellblock;
#P comment 471 326 200 196617 assume that focus is lost , close the
gate;
#P comment 471 310 172 196617 if mouse button is clicked ,;
#P comment 471 294 172 196617 if cellblock has focus:;
#P newex 385 391 21 196617 t 0;
#P newex 385 368 32 196617 sel 1;
#P newex 192 305 21 196617 t 1;
#P message 385 318 24 196617 poll;
#P newex 385 341 66 196617 mousestate;
#P newex 385 420 51 196617 gate;
#P newex 159 489 27 196617 i;
#P newex 159 510 108 196617 prepend sync select 0;
#P newex 79 377 27 196617 + 1;
#P newex 254 324 27 196617 t b i;
#P newex 79 541 71 196617 prepend rows;
#P newex 79 516 27 196617 + 1;
#P newex 79 489 27 196617 i;
#P newex 79 460 170 196617 sel 1 0;
#P newex 79 400 33 196617 ==;
#P newex 68 49 48 196617 loadbang;
#P newex 79 356 27 196617 i;
#P message 68 86 47 196617 getrows;
#P newex 68 304 66 196617 unpack 0 0 s;
#P newex 385 444 38 196617 sel 13;
#P newex 426 396 40 196617 keyup;
#P newex 254 304 60 196617 route rows;
#P user jit.cellblock 68 111 266 297 3 9 1 17 184 14 0 1 1 0 0 0 1 0
5 0 0 0 255 255 255 231 231 231 0 0 0 191 191 191 0 0 0 215 215 240 1
1 1 2 4 0 0 0;
#P comment 471 276 172 196617 this should determine;
#P comment 94 428 199 196617 if enter is pressed in last row:;
#P comment 633 553 39 196617 nesa07;
#P connect 10 0 8 0;
#P fasten 6 0 8 0 390 473 353 473 353 80 73 80;
#P fasten 15 0 3 0 84 566 60 566 60 106 73 106;
#P connect 8 0 3 0;
#P connect 3 0 7 0;
#P connect 16 0 9 0;
#P lcolor 2;
#P connect 9 0 17 0;
#P connect 17 0 11 0;
#P connect 11 0 12 0;
#P connect 12 0 13 0;
#P connect 13 0 14 0;
#P connect 14 0 15 0;
#P connect 7 1 9 1;
#P connect 16 1 13 1;
#P lcolor 2;
#P connect 16 1 11 1;
#P lcolor 2;
#P connect 12 1 19 0;
#P connect 19 0 18 0;
#P fasten 17 0 19 1 84 397 181 397;
#P connect 3 2 23 0;
#P connect 3 3 4 0;
#P connect 4 0 16 0;
#P fasten 18 0 3 1 164 532 322 532 322 106 261 106;
#P fasten 10 0 22 0 73 72 390 72;
#P connect 22 0 21 0;
#P connect 21 0 24 0;
#P connect 24 0 25 0;
#P connect 25 0 20 0;
#P connect 23 0 20 0;
#P connect 20 0 6 0;
#P connect 5 0 20 1;
#P window clipboard copycount 34;

hth,
nesa

#92648
Jan 10, 2007 at 9:36pm

Yes, pattr seq timeline or something, but with layer flexibility. I like
pattr a lot especially as I deal with a lot of transitional data over time.
I agree keep it in this family of objects. Maybe easier said than done, but
I can imagine an extension to the interpolation asoect of this class of
objects.

best Pere

On 10/01/07, vade wrote:
>
> Perhaps i should have said
> Pattr Timeline!
>
> There is a bit of a difference (perhaps in my head) between the two.,
> being able to store not only your presets, but the time delta between them,
> etc. Yes, you could prob. finagle something, but there would be niceties of
> having something in the pattr family native.
>
> Anyway.
>
> On Jan 10, 2007, at 7:57 AM, Nathan Wolek wrote:
>
> On Jan 10, 2007, at 1:19 AM, vade wrote:
>
> Pattr sequencer!
>
>
> In a very simple way, you can already do this. Use an [mtr] object to
> record you preset changes for [pattrstorage]. Playback at will. I have
> done this to build layers for a recording of a composition. Worked like a
> charm.
>
> ——————-
> Nathan Wolek, PhD — nwolek@stetson.edu
> Assistant Professor of Music Technology
> Stetson University – DeLand, FL
> http://www.nathanwolek.com
>
>
>
>
> *v a d e //*
>
> *www.vade.info*
> *abstrakt.vade.info*
>
>
>
>
>
>
>

#92649
Jan 17, 2007 at 3:15am

On Jan 10, 2007, at 9:20 AM, Gary Lee Nelson wrote:
> Do you have an example?

Sorry for the delay. As I said it is very simple. Store your
presets then sequence them.

——
Nathan Wolek, PhD
nathan@lowkeydigitalstudio.com

http://www.lowkeydigitalstudio.com

max v2;
#N vpatcher 10 59 464 312;
#P window setfont “Sans Serif” 9.;
#P window linecount 8;
#P comment 5 125 170 196617 RECORD 1) when mtr is set to record , it
will record changes in the selected preset 2) be sure to choose stop
when you are done 3) select play and your will have your changes
played back;
#P window linecount 3;
#P comment 5 81 169 196617 SELECT choose number from number box or
name from ubumenu;
#P window linecount 1;
#P hidden newex 504 99 48 196617 loadbang;
#P user umenu 295 138 61 196647 1 64 154 0;
#X add stop;
#X add record;
#X add play;
#X add mute;
#X add unmute;
#X add delay 0;
#X add first 0;
#X add read;
#X add write;
#X add clear;
#P newex 253 138 40 196617 mtr 2;
#N vpatcher 20 74 620 474;
#P window setfont “Sans Serif” 9.;
#P newex 201 51 56 196617 route text;
#P newex 50 51 40 196617 t b s b;
#P newex 90 51 109 196617 pack store 1 slotname;
#N vpatcher 10 59 230 306;
#P window setfont “Sans Serif” 9.;
#P newex 86 125 51 196617 zl ecils 1;
#P newex 108 164 62 196617 prepend set;
#P newex 86 102 67 196617 grab 1 to_ps;
#P message 86 84 79 196617 getslotname $1;
#N comlet (int) slotnum;
#P inlet 86 64 15 0;
#N comlet (msg) set textedit;
#P outlet 108 186 15 0;
#P connect 1 0 2 0;
#P connect 2 0 3 0;
#P connect 3 0 5 0;
#P connect 5 1 4 0;
#P connect 4 0 0 0;
#P pop;
#P newobj 259 50 96 196617 p retrieveslotname;
#P inlet 139 31 15 0;
#P inlet 259 30 15 0;
#P inlet 50 31 15 0;
#P inlet 201 31 15 0;
#P outlet 90 73 15 0;
#P outlet 80 73 15 0;
#P outlet 259 72 15 0;
#P outlet 50 73 15 0;
#P connect 5 0 10 0;
#P connect 10 0 0 0;
#P connect 10 2 2 0;
#P connect 10 1 9 0;
#P connect 9 0 3 0;
#P connect 7 0 9 1;
#P connect 11 0 9 2;
#P connect 4 0 11 0;
#P connect 6 0 8 0;
#P connect 8 0 1 0;
#P pop;
#P hidden newobj 415 64 85 196617 p presetmanager;
#P hidden button 487 100 15 0;
#P hidden toggle 394 237 15 0;
#P hidden message 408 237 78 196617 changemode $1;
#P hidden message 448 119 39 196617 set $1;
#P comment 254 87 97 196617 **select preset**;
#P window setfont “Sans Serif” 12.;
#P user ubumenu 302 100 112 196620 0 1 1 0;
#X add (undefined);
#X prefix_set 0 0 0;
#X pattrmode 1;
#P window setfont “Sans Serif” 9.;
#N vpatcher 10 59 267 338;
#P origin -448 -339;
#N comlet (bang) when done;
#P outlet 175 238 15 0;
#P button 175 216 15 0;
#P window setfont “Sans Serif” 9.;
#P window linecount 0;
#P newex 51 122 77 196617 route slotname;
#N comlet to ubumenu;
#P outlet 126 238 15 0;
#N comlet (bang) fill ubumenu;
#P inlet 51 31 15 0;
#P newex 51 55 22 196617 b 1;
#P newex 51 102 67 196617 grab 1 to_ps;
#P window linecount 1;
#P newex 51 167 31 196617 t 0 b;
#P newex 98 167 55 196617 unpack 0 s;
#P newex 143 188 75 196617 prepend append;
#P newex 51 75 121 196617 t getslotnamelist 1 clear;
#P newex 51 142 57 196617 route done;
#P newex 126 209 27 196617 gate;
#P connect 8 0 7 0;
#P connect 7 0 2 0;
#P connect 2 0 6 0;
#P connect 6 0 10 0;
#P connect 10 0 1 0;
#P connect 1 0 5 0;
#P connect 1 1 4 0;
#P connect 2 1 0 0;
#P fasten 5 0 0 0 56 203 131 203;
#P connect 2 2 9 0;
#P connect 0 0 9 0;
#P connect 4 1 3 0;
#P connect 3 0 0 1;
#P connect 5 1 11 0;
#P connect 11 0 12 0;
#P pop;
#P hidden newobj 413 100 74 196617 p slot_manage;
#P window setfont “Sans Serif” 12.;
#P user ubumenu 192 63 75 196620 0 1 1 0;
#X add store;
#X add insert;
#X prefix_set 0 0
0;
#X pattrmode 1;
#P window setfont “Sans Serif” 10.;
#P user textedit 302 63 414 83 32896 3 10 (undefined);
#P window setfont “Sans Serif” 12.;
#P user ubumenu 191 100 76 196620 0 1 1 0;
#X add read;
#X add write;
#X add writeagain;
#X add getclientlist;
#X prefix_set 0 0
0;
#X pattrmode 1;
#P window setfont “Sans Serif” 9.;
#P hidden newex 193 253 42 196617 r to_ps;
#P window setfont “Sans Serif” 12.;
#P number 267 100 35 12 0 0 1 3 0 0 0 221 221 221 222 222 222 0 0 0;
#P number 267 63 35 12 0 0 1 3 0 0 0 221 221 221 222 222 222 0 0 0;
#P window setfont “Sans Serif” 9.;
#P hidden newex 236 253 248 196617 pattrstorage my_presets
@changemode 1 @greedy 1;
#X client_rect 0 0 640 240;
#X storage_rect 0 0 640 240;
#P objectname my_presets;
#P comment 254 50 91 196617 **store preset**;
#P window linecount 4;
#P comment 4 27 170 196617 STORE 1) select number using number box 2)
enter name in textbox 3) click store from ubumenu;
#P hidden connect 4 0 2 0;
#P hidden connect 13 0 2 0;
#P hidden connect 6 1 2 0;
#P hidden connect 5 0 2 0;
#P hidden connect 16 2 2 0;
#P hidden connect 18 1 17 0;
#P hidden connect 17 1 4 0;
#P hidden connect 10 0 4 0;
#P hidden connect 4 0 17 1;
#P hidden connect 16 1 7 0;
#P hidden connect 16 3 7 0;
#P hidden connect 9 0 10 0;
#P hidden connect 12 0 10 0;
#P hidden connect 14 0 13 0;
#P hidden connect 16 0 9 0;
#P hidden connect 15 0 9 0;
#P hidden connect 8 1 16 0;
#P hidden connect 3 0 16 1;
#P hidden connect 4 0 12 0;
#P hidden connect 9 1 12 0;
#P hidden connect 7 0 16 2;
#P hidden connect 19 0 15 0;
#P hidden connect 3 0 16 3;
#P pop;

#92650
Jan 17, 2007 at 4:25am

Quote: vade wrote on Wed, 10 January 2007 11:16
—————————————————-

>
> Pattr Timeline!
>

agreed. something that stays in the [pattr] gang.

Jeremy you might get the 50$ per timeline seeker ;)

i would like to see a dynamic timeline where events writen in the past will have the possibility to influence what is to come in the future. which could make a “flexible” score which’s content or stucture will always stay the same but vary according to any interactive means one can think about.
this is a nice thread , i hope idea will keep flowing .
best,
ko

#92651
Jan 17, 2007 at 6:35am

It would be nice to use a visual paradigm. For interactive work, it’s
always nicer to know what’s inside that box. I appreciated Emmanuel’s
function editor with two synchronizable objects, one great for visual
programming, the other optimized for efficiency.

Georg

On Jan 17, 2007, at 4:15 AM, Nathan Wolek wrote:

> On Jan 10, 2007, at 9:20 AM, Gary Lee Nelson wrote:
>> Do you have an example?
>
> Sorry for the delay. As I said it is very simple. Store your
> presets then sequence them.
>
> ——
> Nathan Wolek, PhD
> nathan@lowkeydigitalstudio.com
> http://www.lowkeydigitalstudio.com
>
>
> max v2;
> #N vpatcher 10 59 464 312;
> #P window setfont “Sans Serif” 9.;
> #P window linecount 8;
> #P comment 5 125 170 196617 RECORD 1) when mtr is set to record ,
> it will record changes in the selected preset 2) be sure to choose
> stop when you are done 3) select play and your will have your
> changes played back;
> #P window linecount 3;
> #P comment 5 81 169 196617 SELECT choose number from number box or
> name from ubumenu;
> #P window linecount 1;
> #P hidden newex 504 99 48 196617 loadbang;
> #P user umenu 295 138 61 196647 1 64 154 0;
> #X add stop;
> #X add record;
> #X add play;
> #X add mute;
> #X add unmute;
> #X add delay 0;
> #X add first 0;
> #X add read;
> #X add write;
> #X add clear;
> #P newex 253 138 40 196617 mtr 2;
> #N vpatcher 20 74 620 474;
> #P window setfont “Sans Serif” 9.;
> #P newex 201 51 56 196617 route text;
> #P newex 50 51 40 196617 t b s b;
> #P newex 90 51 109 196617 pack store 1 slotname;
> #N vpatcher 10 59 230 306;
> #P window setfont “Sans Serif” 9.;
> #P newex 86 125 51 196617 zl ecils 1;
> #P newex 108 164 62 196617 prepend set;
> #P newex 86 102 67 196617 grab 1 to_ps;
> #P message 86 84 79 196617 getslotname $1;
> #N comlet (int) slotnum;
> #P inlet 86 64 15 0;
> #N comlet (msg) set textedit;
> #P outlet 108 186 15 0;
> #P connect 1 0 2 0;
> #P connect 2 0 3 0;
> #P connect 3 0 5 0;
> #P connect 5 1 4 0;
> #P connect 4 0 0 0;
> #P pop;
> #P newobj 259 50 96 196617 p retrieveslotname;
> #P inlet 139 31 15 0;
> #P inlet 259 30 15 0;
> #P inlet 50 31 15 0;
> #P inlet 201 31 15 0;
> #P outlet 90 73 15 0;
> #P outlet 80 73 15 0;
> #P outlet 259 72 15 0;
> #P outlet 50 73 15 0;
> #P connect 5 0 10 0;
> #P connect 10 0 0 0;
> #P connect 10 2 2 0;
> #P connect 10 1 9 0;
> #P connect 9 0 3 0;
> #P connect 7 0 9 1;
> #P connect 11 0 9 2;
> #P connect 4 0 11 0;
> #P connect 6 0 8 0;
> #P connect 8 0 1 0;
> #P pop;
> #P hidden newobj 415 64 85 196617 p presetmanager;
> #P hidden button 487 100 15 0;
> #P hidden toggle 394 237 15 0;
> #P hidden message 408 237 78 196617 changemode $1;
> #P hidden message 448 119 39 196617 set $1;
> #P comment 254 87 97 196617 **select preset**;
> #P window setfont “Sans Serif” 12.;
> #P user ubumenu 302 100 112 196620 0 1 1 0;
> #X add (undefined);
> #X prefix_set 0 0 0;
> #X pattrmode 1;
> #P window setfont “Sans Serif” 9.;
> #N vpatcher 10 59 267 338;
> #P origin -448 -339;
> #N comlet (bang) when done;
> #P outlet 175 238 15 0;
> #P button 175 216 15 0;
> #P window setfont “Sans Serif” 9.;
> #P window linecount 0;
> #P newex 51 122 77 196617 route slotname;
> #N comlet to ubumenu;
> #P outlet 126 238 15 0;
> #N comlet (bang) fill ubumenu;
> #P inlet 51 31 15 0;
> #P newex 51 55 22 196617 b 1;
> #P newex 51 102 67 196617 grab 1 to_ps;
> #P window linecount 1;
> #P newex 51 167 31 196617 t 0 b;
> #P newex 98 167 55 196617 unpack 0 s;
> #P newex 143 188 75 196617 prepend append;
> #P newex 51 75 121 196617 t getslotnamelist 1 clear;
> #P newex 51 142 57 196617 route done;
> #P newex 126 209 27 196617 gate;
> #P connect 8 0 7 0;
> #P connect 7 0 2 0;
> #P connect 2 0 6 0;
> #P connect 6 0 10 0;
> #P connect 10 0 1 0;
> #P connect 1 0 5 0;
> #P connect 1 1 4 0;
> #P connect 2 1 0 0;
> #P fasten 5 0 0 0 56 203 131 203;
> #P connect 2 2 9 0;
> #P connect 0 0 9 0;
> #P connect 4 1 3 0;
> #P connect 3 0 0 1;
> #P connect 5 1 11 0;
> #P connect 11 0 12 0;
> #P pop;
> #P hidden newobj 413 100 74 196617 p slot_manage;
> #P window setfont “Sans Serif” 12.;
> #P user ubumenu 192 63 75 196620 0 1 1 0;
> #X add store;
> #X add insert;
> #X prefix_set 0 0
0;
> #X pattrmode 1;
> #P window setfont “Sans Serif” 10.;
> #P user textedit 302 63 414 83 32896 3 10 (undefined);
> #P window setfont “Sans Serif” 12.;
> #P user ubumenu 191 100 76 196620 0 1 1 0;
> #X add read;
> #X add write;
> #X add writeagain;
> #X add getclientlist;
> #X prefix_set 0 0
0;
> #X pattrmode 1;
> #P window setfont “Sans Serif” 9.;
> #P hidden newex 193 253 42 196617 r to_ps;
> #P window setfont “Sans Serif” 12.;
> #P number 267 100 35 12 0 0 1 3 0 0 0 221 221 221 222 222 222 0 0 0;
> #P number 267 63 35 12 0 0 1 3 0 0 0 221 221 221 222 222 222 0 0 0;
> #P window setfont “Sans Serif” 9.;
> #P hidden newex 236 253 248 196617 pattrstorage my_presets
> @changemode 1 @greedy 1;
> #X client_rect 0 0 640 240;
> #X storage_rect 0 0 640 240;
> #P objectname my_presets;
> #P comment 254 50 91 196617 **store preset**;
> #P window linecount 4;
> #P comment 4 27 170 196617 STORE 1) select number using number box
> 2) enter name in textbox 3) click store from ubumenu;
> #P hidden connect 4 0 2 0;
> #P hidden connect 13 0 2 0;
> #P hidden connect 6 1 2 0;
> #P hidden connect 5 0 2 0;
> #P hidden connect 16 2 2 0;
> #P hidden connect 18 1 17 0;
> #P hidden connect 17 1 4 0;
> #P hidden connect 10 0 4 0;
> #P hidden connect 4 0 17 1;
> #P hidden connect 16 1 7 0;
> #P hidden connect 16 3 7 0;
> #P hidden connect 9 0 10 0;
> #P hidden connect 12 0 10 0;
> #P hidden connect 14 0 13 0;
> #P hidden connect 16 0 9 0;
> #P hidden connect 15 0 9 0;
> #P hidden connect 8 1 16 0;
> #P hidden connect 3 0 16 1;
> #P hidden connect 4 0 12 0;
> #P hidden connect 9 1 12 0;
> #P hidden connect 7 0 16 2;
> #P hidden connect 19 0 15 0;
> #P hidden connect 3 0 16 3;
> #P pop;
>
>
>

#92652
Jan 17, 2007 at 1:08pm

On Jan 17, 2007, at 1:35 AM, Georg Hajdu wrote:
> It would be nice to use a visual paradigm. For interactive work,
> it’s always nicer to know what’s inside that box.

I agree! but I was just showing how one can currently deploy the a
limited method of automatic preset changes for [pattrstorage].

I hope my use of “simple” was not misinterpreted to mean that this is
“easy to do already”. It was a comment on the level of
functionality. “simple” = limited, basic, etc.

–Nathan

#92653
Jan 17, 2007 at 1:37pm

Am I missing something. timeline and detonate come with Max/MSP. Shouldn’t
they work already?

On 1/16/07 11:25 PM, “karl-otto von oertzen” wrote:

>
> Quote: vade wrote on Wed, 10 January 2007 11:16
> —————————————————-
>
>>
>> Pattr Timeline!
>>
>
> agreed. something that stays in the [pattr] gang.
>
> Jeremy you might get the 50$ per timeline seeker ;)
>
> i would like to see a dynamic timeline where events writen in the past will
> have the possibility to influence what is to come in the future. which could
> make a “flexible” score which’s content or stucture will always stay the same
> but vary according to any interactive means one can think about.
> this is a nice thread , i hope idea will keep flowing .
> best,
> ko
>
>
> –
> karrrlo
> http://www.marswalkers.org
> http://www.fleeingbirds.org

Cheers
Gary Lee Nelson
Oberlin College
http://www.timara.oberlin.edu/GaryLeeNelson

#92654
Jan 17, 2007 at 5:27pm

Hi Nathan,

I appreciated your example. My comments were less directed at you as
they were at Cycling ’74; once again stressing the need of a visual
sequencing solution. I hope you didn’t misunderstand my intentions.

Georg

On Jan 17, 2007, at 2:08 PM, Nathan Wolek wrote:

> On Jan 17, 2007, at 1:35 AM, Georg Hajdu wrote:
>> It would be nice to use a visual paradigm. For interactive work,
>> it’s always nicer to know what’s inside that box.
>
> I agree! but I was just showing how one can currently deploy the a
> limited method of automatic preset changes for [pattrstorage].
>
> I hope my use of “simple” was not misinterpreted to mean that this
> is “easy to do already”. It was a comment on the level of
> functionality. “simple” = limited, basic, etc.
>
> –Nathan
>

#92655
Jan 17, 2007 at 6:18pm

Quote: Georg Hajdu wrote on Wed, 17 January 2007 18:27
—————————————————-
> Hi Nathan,
>
> I appreciated your example. My comments were less directed at you as
> they were at Cycling ’74; once again stressing the need of a visual
> sequencing solution. I hope you didn’t misunderstand my intentions.

Hi Georg,

I don’t agree with you on this. A complete visual sequencing solution is in fact a sequencer. Anything short of that would not be usable in a sensible way, so isn’t worth making.

To make a real sequencer takes enough time and effort to call it a separate product (such as Logic, Cubase, Live, etc). If Cycling ’74 came to release a separate sequencer, I would probably be the first one to buy it and pay an amount of money separate from the 850,- that I paid for Max.

In short, if you need to sequence events in Max, use an existing sequencer tool. Looking at the various options available to link max to other software, I’d say that is a very real option.

Cheers,
Mattijs

> Georg
>
> On Jan 17, 2007, at 2:08 PM, Nathan Wolek wrote:
>
> > On Jan 17, 2007, at 1:35 AM, Georg Hajdu wrote:
> >> It would be nice to use a visual paradigm. For interactive work,
> >> it’s always nicer to know what’s inside that box.
> >
> > I agree! but I was just showing how one can currently deploy the a
> > limited method of automatic preset changes for [pattrstorage].
> >
> > I hope my use of “simple” was not misinterpreted to mean that this
> > is “easy to do already”. It was a comment on the level of
> > functionality. “simple” = limited, basic, etc.
> >
> > –Nathan
> >
>
>
—————————————————-

#92656
Jan 17, 2007 at 6:28pm

On Jan 17, 2007, at 12:27 PM, Georg Hajdu wrote:
> I hope you didn’t misunderstand my intentions.

Noted. Thanks.

——————-
Nathan Wolek, PhD — nwolek@stetson.edu
Assistant Professor of Music Technology
Stetson University – DeLand, FL

http://www.nathanwolek.com

#92657
Jan 17, 2007 at 6:35pm

“In short, if you need to sequence events in Max, use an existing sequencer tool.”

hmmm… except that a Max sequencing object would easily deal with the sequencing of arbitrary data — messages, ints (> 127), floats, lists, and so on. That’s not at all straightforward to do in a standard sequencer. Timeline was intended for this job, but it definitely needs an overhaul.

J.

#92658
Jan 17, 2007 at 7:17pm

On 17-Jan-2007, at 18:35, jbmaxwell wrote:

> except that a Max sequencing object would easily deal with the
> sequencing of arbitrary data — messages, ints (> 127), floats,
> lists, and so on.

Dare I say it?

If you want a sequencer that deals with arbitrary Max messages–and
yes, I mean *anything*and*all*of*the*above*–then you should look at
iCE Tools’ lattice object.

Best,
Peter

————– http://www.bek.no/~pcastine/Litter/ ————-
Peter Castine +–> Litter Power & Litter Bundle for Jitter
Universal Binaries on the way
iCE: Sequencing, Recording &
Interface Building for |home | chez nous|
Max/MSP Extremely cool |bei uns | i nostri|
http://www.dspaudio.com/ http://www.castine.de

#92659
Jan 17, 2007 at 7:25pm

Easier said than done, unless you’ve released a demo version in the
meantime.

jb

Am 17.01.2007 um 20:17 schrieb Peter Castine:

> you should look at iCE Tools’ lattice object

#92660
Jan 17, 2007 at 8:12pm

On 17-Jan-2007, at 20:25, Jeremy Bernstein wrote:

> Easier said than done, unless you’ve released a demo version in the
> meantime.

We have vastly expanded information on the web site, both in English
and Japanese. And we are very close to a distributable demo of
Nortron, which demos the power of iCE Tools nicely (although it only
shows a subset of what iCE can do).

Your point is well taken, and DSPAudio is moving forward on the iCE
Demo front. But *that* is also easier said than done.

Best — Peter

PS: I think our Japanese information is even more extensive than the
English version, but it’s hard for me to tell. Japanese is not one of
my languages.

————– http://www.bek.no/~pcastine/Litter/ ————-
Peter Castine +–> Litter Power & Litter Bundle for Jitter
Universal Binaries on the way
iCE: Sequencing, Recording &
Interface Building for |home | chez nous|
Max/MSP Extremely cool |bei uns | i nostri|
http://www.dspaudio.com/ http://www.castine.de

#92661
Jan 17, 2007 at 8:12pm

This is exactly what I am trying to do. I want to send a message at a
specified time and I want to be able to adjust the action time visually by
dragging the message box around. Except for random crashes and the
inability to paste text into the messages, timeline is perfect.

On 1/17/07 1:35 PM, “jbmaxwell” wrote:

>
> “In short, if you need to sequence events in Max, use an existing sequencer
> tool.”
>
> hmmm… except that a Max sequencing object would easily deal with the
> sequencing of arbitrary data — messages, ints (> 127), floats, lists, and so
> on. That’s not at all straightforward to do in a standard sequencer. Timeline
> was intended for this job, but it definitely needs an overhaul.
>
> J.

Cheers
Gary Lee Nelson
Oberlin College
http://www.timara.oberlin.edu/GaryLeeNelson

#92662
Jan 17, 2007 at 8:42pm

my example was indeed not so different then what [detonate] and [timeline] can do.
my idea , and i should have been more precise, was in reference to the [pattr] world. i was thinking about a [pattr timeline] which would have its own window like the [pattrstorage]‘s storage&client windows. maybe it should be just an extra feature for [pattrstorage]. i think the [pattr] realm allows much more flexibility than the [tiCmd] or using “action patches” in [timeline].
since we can already memorize any state of any GUI,interpolate between states it could be easy to sequence, order, permutate states at will.
plus you could maybe write an XML sheet of your [pattrTimeline].
in that way we would have an universal system in storing, recalling, manipulating, interpolating, sequencing data in Max and we would not be limited by midi ranges anymore.

my understanding of [detonate] is that you are limited to midi values, being in 0. to 1. range would be more advantageous in my opinion.

Quote: Gary Lee Nelson wrote on Wed, 17 January 2007 05:37
—————————————————-
> Am I missing something. timeline and detonate come with Max/MSP. Shouldn’t
> they work already?
>
>
> On 1/16/07 11:25 PM, “karl-otto von oertzen” wrote:
>
> >
> > Quote: vade wrote on Wed, 10 January 2007 11:16
> > —————————————————-
> >
> >>
> >> Pattr Timeline!
> >>
> >
> > agreed. something that stays in the [pattr] gang.
> >
> > Jeremy you might get the 50$ per timeline seeker ;)
> >
> > i would like to see a dynamic timeline where events writen in the past will
> > have the possibility to influence what is to come in the future. which could
> > make a “flexible” score which’s content or stucture will always stay the same
> > but vary according to any interactive means one can think about.
> > this is a nice thread , i hope idea will keep flowing .
> > best,
> > ko
> >
> >
> > –
> > karrrlo
> > http://www.marswalkers.org
> > http://www.fleeingbirds.org
>
>
> Cheers
> Gary Lee Nelson
> Oberlin College
> http://www.timara.oberlin.edu/GaryLeeNelson
>
>
>
—————————————————-

#92663
Jan 17, 2007 at 9:20pm

I also think what is interesting is the abiity of some software to
buffer the state of the system up to ‘n’ seconds ago, and being able
to scratch/manipulate and shuttle through the ‘past’, release the
playhead of the timeline and interpolate to the ‘present’. This is
particularly interesting in video when you have multiple layers, 3D,
etc (well, in my opinion). Ive done some things close to this in Max,
outside of pattr, but its rather intensive and not very elegant.

Anyway…. just throwing it out there.

I am currently struggling with some seemingly simple scheduling/
timeline style problems, and am having a hell of a time. *sigh*

On Jan 17, 2007, at 3:42 PM, karl-otto von oertzen wrote:

>
> my example was indeed not so different then what [detonate] and
> [timeline] can do.
> my idea , and i should have been more precise, was in reference to
> the [pattr] world. i was thinking about a [pattr timeline] which
> would have its own window like the [pattrstorage]‘s storage&client
> windows. maybe it should be just an extra feature for
> [pattrstorage]. i think the [pattr] realm allows much more
> flexibility than the [tiCmd] or using “action patches” in [timeline].
> since we can already memorize any state of any GUI,interpolate
> between states it could be easy to sequence, order, permutate
> states at will.
> plus you could maybe write an XML sheet of your [pattrTimeline].
> in that way we would have an universal system in storing,
> recalling, manipulating, interpolating, sequencing data in Max and
> we would not be limited by midi ranges anymore.
>
> my understanding of [detonate] is that you are limited to midi
> values, being in 0. to 1. range would be more advantageous in my
> opinion.
>
>
>
> Quote: Gary Lee Nelson wrote on Wed, 17 January 2007 05:37
> —————————————————-
>> Am I missing something. timeline and detonate come with Max/MSP.
>> Shouldn’t
>> they work already?
>>
>>
>> On 1/16/07 11:25 PM, “karl-otto von oertzen”
>> wrote:
>>
>>>
>>> Quote: vade wrote on Wed, 10 January 2007 11:16
>>> —————————————————-
>>>
>>>>
>>>> Pattr Timeline!
>>>>
>>>
>>> agreed. something that stays in the [pattr] gang.
>>>
>>> Jeremy you might get the 50$ per timeline seeker ;)
>>>
>>> i would like to see a dynamic timeline where events writen in the
>>> past will
>>> have the possibility to influence what is to come in the future.
>>> which could
>>> make a “flexible” score which’s content or stucture will always
>>> stay the same
>>> but vary according to any interactive means one can think about.
>>> this is a nice thread , i hope idea will keep flowing .
>>> best,
>>> ko
>>>
>>>
>>> –
>>> karrrlo
>>> http://www.marswalkers.org
>>> http://www.fleeingbirds.org
>>
>>
>> Cheers
>> Gary Lee Nelson
>> Oberlin College
>> http://www.timara.oberlin.edu/GaryLeeNelson
>>
>>
>>
> —————————————————-
>
>
> –
> karrrlo
> http://www.marswalkers.org
> http://www.fleeingbirds.org

v a d e //

http://www.vade.info
abstrakt.vade.info

#92664
Jan 17, 2007 at 10:45pm

Gary Lee Nelson wrote:
> Am I missing something. timeline and detonate come with Max/MSP. Shouldn’t
> they work already?

The thread subject is still valid…

But to dream on: I’d like to go beyond classic sequencers. As a
sequencer is defined as a sequence of events. But in favor of the way of
thinking of Xenakis, there is a demand for the continuum. (The word
timeline would still fit, a sequencer would be a step back…

I guess I have to do it, the ultimate successor of the UPIC as
Maxpatch… Any Bounties for that??? ;-)

Stefan


Stefan Tiedje————x——-
–_____———–|————–
–(_|_ —-|—–|—–()——-
– _|_)—-|—–()————–
———-()——–www.ccmix.com

#92665
Jan 18, 2007 at 12:07am

Sorry if I confused things. I only mentioned detonate because, like
timeline, it does work as described. Gave up on in almost a year ago.

On 1/17/07 3:42 PM, “karl-otto von oertzen” wrote:

>
> my example was indeed not so different then what [detonate] and [timeline] can
> do.
> my idea , and i should have been more precise, was in reference to the [pattr]
> world. i was thinking about a [pattr timeline] which would have its own window
> like the [pattrstorage]‘s storage&client windows. maybe it should be just an
> extra feature for [pattrstorage]. i think the [pattr] realm allows much more
> flexibility than the [tiCmd] or using “action patches” in [timeline].
> since we can already memorize any state of any GUI,interpolate between states
> it could be easy to sequence, order, permutate states at will.
> plus you could maybe write an XML sheet of your [pattrTimeline].
> in that way we would have an universal system in storing, recalling,
> manipulating, interpolating, sequencing data in Max and we would not be
> limited by midi ranges anymore.
>
> my understanding of [detonate] is that you are limited to midi values, being
> in 0. to 1. range would be more advantageous in my opinion.
>
>
>
> Quote: Gary Lee Nelson wrote on Wed, 17 January 2007 05:37
> —————————————————-
>> Am I missing something. timeline and detonate come with Max/MSP. Shouldn’t
>> they work already?
>>
>>
>> On 1/16/07 11:25 PM, “karl-otto von oertzen” wrote:
>>
>>>
>>> Quote: vade wrote on Wed, 10 January 2007 11:16
>>> —————————————————-
>>>
>>>>
>>>> Pattr Timeline!
>>>>
>>>
>>> agreed. something that stays in the [pattr] gang.
>>>
>>> Jeremy you might get the 50$ per timeline seeker ;)
>>>
>>> i would like to see a dynamic timeline where events writen in the past will
>>> have the possibility to influence what is to come in the future. which could
>>> make a “flexible” score which’s content or stucture will always stay the
>>> same
>>> but vary according to any interactive means one can think about.
>>> this is a nice thread , i hope idea will keep flowing .
>>> best,
>>> ko
>>>
>>>
>>> –
>>> karrrlo
>>> http://www.marswalkers.org
>>> http://www.fleeingbirds.org
>>
>>
>> Cheers
>> Gary Lee Nelson
>> Oberlin College
>> http://www.timara.oberlin.edu/GaryLeeNelson
>>
>>
>>
> —————————————————-
>
>
> –
> karrrlo
> http://www.marswalkers.org
> http://www.fleeingbirds.org

Cheers
Gary Lee Nelson
Oberlin College
http://www.timara.oberlin.edu/GaryLeeNelson

#92666
Jan 18, 2007 at 3:01am

Why not use detonate or a multislider with a limited range of values, then route the outcoming values to send settable messages? That could give a lot of flexibility.

Another option is to actually have draggable message boxes whose text is settable (maybe with drop-downs that can also be loaded via a textedit or dialog, for commonly-used messages). The problem then becomes the length of the actual message and the size they become pixel-wise. And, would a message get sent once, or continue to be sent during its pixel “duration”? What about overlapping messages? Technically it’s not a huge deal, but usability might be a problem.

For draggable objects I’d choose panels instead (also color-coordinate-able) that would be sizeable based upon a subdivision of the overall timeline (or a measure therein). That way the message length doesn’t affect the screen size. Shift-clicking could open up the message / value for setting, click to drag, maybe hold down “s” for a snap-to feature. Of course you’d have to keep a coll of screen coordinates for each panel / beat, to be read upon playback.

I developed a prototype and it certainly took considerable doing but is totally possible, though of course as with all things in Max, complexities always creep in as you decide you’ve just GOT to have more functionality…… so it’s still very much in-progress. The “draggable” sub-patch is itself considerably more complex than I wanted, but it deals with the modifier keys and the snap-to-grid feature, so there’s a lot going on. With a lot of draggable objects, this would be a very unwieldy patch, so I plan to re-think it considerably (probably use an actual object rather than a subpatch, which–I believe–is more optimized? does anyone know?)

-C

#92667
Jan 18, 2007 at 7:34am

..what’s the problem with a simple sequencer object like a stipped down piano-roll/timeline similar to the editor window in “M”..would it be so difficult to program an objetct like this (simple functions like cut/paste, midi-in, quantize..)?..i know out there there are tons of commercial ones.Detonate/timeline could do something like this but i my opinion (and as this nice thread is showing..)they lack ease of use..
best
mic

#92668
Jan 18, 2007 at 9:25am

#92669
Jan 18, 2007 at 9:58am

Quote: Mattijs wrote on Thu, 18 January 2007 10:25
—————————————————-
> A simple sequencer object will lack ease of use too. I can promise you that you’re not going to write a song in ‘a simple sequencer object’, neither in detonate, timeline, or seq.
>
> Mattijs

!!..well ok..your right, one could even not be able to write a song with a full fledged sequencer..i mean, i’d like to have an easy timeline/sequencer in max to put in my patches when i need it
mic

#92670
Jan 18, 2007 at 10:01am

reaktor, bidule have this..it’just a wish, i can live without it :-)

#92671
Jan 18, 2007 at 10:22am

#92672
Jan 18, 2007 at 10:57am

Lately, I’ve been kind of obsessed with the idea of new sequencing paradigms. Sequencing GUIs are just so boring to me, these days; so flat, so musically vague. Ableton Live is kind of interesting, but somewhat limited in use, as is something like Sonasphere. What I’d be curious to see is a real 3D “world” type of paradigm. A space in which events are objects with form, colour, texture, and substance, and in which events visually show their relationships. Maybe offering various “views” on the sequence, prioritizing different notions of organization and relationship. I mean, in a program like Logic we’ve got a standard timeline, (crappy) score, piano scroll, and text-based event lists, but all of these paradigms are essentially unrelated to one another, visually speaking. The interface actually communicates very little about the relationships between events. (Okay, the piano scroll has a general metaphor of up/down for pitch and left/right/length for time/duration, but these are quite limited ways of visualizing music).

There are visual metaphors that could actually communicate something about auditory relationships — like transparency or size mapping to amplitude, in which case one could actually *see* the notion of masking. Or using fog for audio event boundaries, thus communicating the notion of sound dissipation or the effects of proximity on amplitude (also, crossfades and mixing). Or, conversely, using planes or “walls” to specify abrupt boundaries for audio events. Or texture for… well… texture. You get the idea. Of course, there are a vast number of possibilites, and problems with every one, I’m sure. But it often seems to me that all imagination around the visual representation of musical concepts in software dried up sometime in the ’90s. Am I wrong?

Of course, I’m not taking anything away from the ice tools. Not to mention the fact that all this visual stuff would eat CPU cycles for breakfast (though I guess a lot of it could be done on the graphics card). Mostly I’m just blabbing. I’m actually very curious about the ice tools, and will certainly keep my ear to the ground for more information, user experiences, and so on.

J.

#92673
Jan 18, 2007 at 11:31am

I share your obsession. In fact I am currently programming a visual sequencer interface for myself -and- turning logic inside out to link it to max, which is why I spend a lot of time thinking about these issues.

It is true that, as you say, there is a lack of imagination and vision about sequencing environments. But that is not at all the bottleneck of the current state of development. The bottleneck is much more practical: the lack of technical skill, good libraries, facilities, management, etc etc, in general: the lack of means to make it happen.

On paper (have a look for example at the Logic manual or the Reaktor advertisements) everything is perfect, but the products are all shabby (i.e. full of bugs, inconsistencies, interface design flaws, etc). And we’re not even talking about new, intuitive, 3D, flexible event spaces, and all the other beautiful things that come to mind when we forget for a moment that someone has to program it.

As I see it, ‘we’ are still not capable of producing even the most straightforward interface for putting events in a row and playing them in a way that works. Before investing in new concept developers, appearantly we’ll have to invest in technicians first.

Yeah, you triggered me there :p
Mattijs

Quote: jbm wrote on Thu, 18 January 2007 11:57
—————————————————-
> Lately, I’ve been kind of obsessed with the idea of new sequencing paradigms. Sequencing GUIs are just so boring to me, these days; so flat, so musically vague. Ableton Live is kind of interesting, but somewhat limited in use, as is something like Sonasphere. What I’d be curious to see is a real 3D “world” type of paradigm. A space in which events are objects with form, colour, texture, and substance, and in which events visually show their relationships. Maybe offering various “views” on the sequence, prioritizing different notions of organization and relationship. I mean, in a program like Logic we’ve got a standard timeline, (crappy) score, piano scroll, and text-based event lists, but all of these paradigms are essentially unrelated to one another, visually speaking. The interface actually communicates very little about the relationships between events. (Okay, the piano scroll has a general metaphor of up/down for pitch and left/right/length for time/duration, but these are quite limited ways of visualizing music).
>
> There are visual metaphors that could actually communicate something about auditory relationships — like transparency or size mapping to amplitude, in which case one could actually *see* the notion of masking. Or using fog for audio event boundaries, thus communicating the notion of sound dissipation or the effects of proximity on amplitude (also, crossfades and mixing). Or, conversely, using planes or “walls” to specify abrupt boundaries for audio events. Or texture for… well… texture. You get the idea. Of course, there are a vast number of possibilites, and problems with every one, I’m sure. But it often seems to me that all imagination around the visual representation of musical concepts in software dried up sometime in the ’90s. Am I wrong?
>
> Of course, I’m not taking anything away from the ice tools. Not to mention the fact that all this visual stuff would eat CPU cycles for breakfast (though I guess a lot of it could be done on the graphics card). Mostly I’m just blabbing. I’m actually very curious about the ice tools, and will certainly keep my ear to the ground for more information, user experiences, and so on.
>
> J.
—————————————————-

#92674
Jan 18, 2007 at 12:43pm

Should have been does NOT work.

On 1/17/07 7:07 PM, “Gary Lee Nelson” wrote:

> Sorry if I confused things. I only mentioned detonate because, like
> timeline, it does work as described. Gave up on in almost a year ago.
>
>

#92675
Jan 18, 2007 at 1:42pm

On 18-Jan-2007, at 10:57, jbmaxwell wrote:

> Lately, I’ve been kind of obsessed with the idea of new sequencing
> paradigms.

There should be lots and lots more paradigms. I got frustrated with
the tape recorder-paradigm that was ubiquitous among 80s software
sequencers and when Max came along I thought I would never look at a
sequencer again. Then Anthony Bisset came by and pitched an idea to
me.-)

What I really wanted to say here is that Bill Buxton was doing
creative thinking about ways to represent music, much back in the
80s. The focus was on score editing tools called SSSP, but lots of
ideas and looking at music from different angles. You might want to
Google on William Buxton SSSP, or try Google Scholar for more
information.

– P.

————– http://www.bek.no/~pcastine/Litter/ ————-
Peter Castine +–> Litter Power & Litter Bundle for Jitter
Universal Binaries on the way
iCE: Sequencing, Recording &
Interface Building for |home | chez nous|
Max/MSP Extremely cool |bei uns | i nostri|
http://www.dspaudio.com/ http://www.castine.de

#92676
Jan 18, 2007 at 2:18pm

Quote: Mattijs wrote on Thu, 18 January 2007 12:31
—————————————————-
> I share your obsession. In fact I am currently programming a visual sequencer interface for myself -and- turning logic inside out to link it to max, which is why I spend a lot of time thinking about these issues.

..that means you are not satisfied with seq/timeline/detonate too :) maybe you could get some of the $$ (i was down for the 50$ too!) finding the way to embed it in the max Api!!

#92677
Jan 18, 2007 at 2:50pm

> What I really wanted to say here is that Bill Buxton was doing
> creative thinking about ways to represent music, much back in the
> 80s. The focus was on score editing tools called SSSP, but lots of
> ideas and looking at music from different angles. You might want to
> Google on William Buxton SSSP, or try Google Scholar for more
> information.
>
> — P.
>

Nice! Thanks, Peter. Just checking him out now.

J.

#92678
Jan 18, 2007 at 3:09pm

#92679
Jan 18, 2007 at 4:13pm

Mattijs Kneppers wrote:
> I don’t agree with you on this. A complete visual sequencing solution
> is in fact a sequencer. Anything short of that would not be usable in
> a sensible way, so isn’t worth making.

Hi Mattjis,

I don’t agree with you on this, a sequencer is much less than a
timeline. And a timeline is more than sequencing events. If the
available sequencers and DAWs would deliver what at least some wanted,
this discussion would be less hot. The same applies actualy to notation.
If the existing notation programs would deliver what is extending the
common way of thinking and thus the common way of composing, all could
be (almost) happy, there is always a way to connect different tools…

But they don’t, and thus for me and a lot of others on the list, the
most appealing idea is to bring it into Max, but its a huge effort, on
that I do agree, but before we need technicians, we need to open up our
own imagination, elswise these technicians will just creat the same as
before and put just a little bit more hype spice onto it…

As you pointed out later: there is a lack of imagination what a timeline
could be…

I believe technically it would be built around a database for events
(points in time) and gestures (spaced, spread in time). And in addition
with a library for the visualisation/manipulation of the data. It needs
both…

I look forward what you’ll come up with…

Stefan


Stefan Tiedje————x——-
–_____———–|————–
–(_|_ —-|—–|—–()——-
– _|_)—-|—–()————–
———-()——–www.ccmix.com

#92680
Jan 18, 2007 at 4:49pm

I know I started this but all I really wanted to do was time sequence
messages with the ability to cut/paste, duplicate and drag to set action
time and priority.

This morning I took a completely different approach. I am using message
boxes in a max patch that is saved as text. I have written an abstraction
that parses the text file, pulls out the message objects, uses the
horizontal and vertical position to set time and priority. I put together a
preliminary package with an example. If anyone wants to look at this,
contact me off list and I’ll send you an archive with everything to make it
work. (I assume the list still prohibits attachments.)

Please send comments and suggestions.

Cheers
Gary Lee Nelson
Oberlin College
http://www.timara.oberlin.edu/GaryLeeNelson

#92681
Jan 18, 2007 at 5:00pm

> Hi Mattjis,
>
> I don’t agree with you on this, a sequencer is much less than a
> timeline. And a timeline is more than sequencing events.

Ah, I think this must be a miscommunication. When I say sequencer I mean it in the most literatal way: putting things in a sequence. For me the word definitly doesn’t refer to discrete steps, quantizing of any kind or any other limitation in continuity of time. Events can be anything, anchor-points of bezier curves if you want, depending on what you’ll do with the info.

For example my sequencer currently supports an infinite zooming level and infinite small steps (I really don’t know why any sequencer wouldn’t, even technically speaking), which is equal to a continuous timeline. As pointed out earlier in this thread, the limitation of other software to ‘notes’ and ‘controllers’ is silly as well. Who says my synths are going to interpret all sequenced info in this two catagories?

But most of all, as I tried to state earlier, I am perfectly aware of the fact that whole teams of people didn’t achieve to make a working solution (without bugs and inconsistencies to start with), while working for years. Of course I am a genius (*ahum* :p ), but anyway I prefer a bugfree piece of software over any feature or interface fancyness. That’s why I work hard to upgrade my technical skills and knowledge first, -before- starting to dream about all the supersets of interface features that I could come up with. Even if I would end up, by lack of imagination, with another Logic but without the bugs/unlogicalness/general crap, I’d be quite happy.

> I look forward what you’ll come up with…

Well.. no matter how much I would love to bore you with my current results, I won’t. It will take at least another year before I get to the first real prototype (assuming in the mean time I get to work parttime for half a year or so). Of course I would be happy to invite someone as critical as you to do some prototype testing. And then I hope you’ll completely burn down the concept and send me an endless stream of bugreports. I’d hate it to be another useless attempt.. ;)

Cheers,
Mattijs

Quote: Stefan Tiedje wrote on Thu, 18 January 2007 17:13
—————————————————-
> Mattijs Kneppers wrote:
> > I don’t agree with you on this. A complete visual sequencing solution
> > is in fact a sequencer. Anything short of that would not be usable in
> > a sensible way, so isn’t worth making.
>
> Hi Mattjis,
>
> I don’t agree with you on this, a sequencer is much less than a
> timeline. And a timeline is more than sequencing events. If the
> available sequencers and DAWs would deliver what at least some wanted,
> this discussion would be less hot. The same applies actualy to notation.
> If the existing notation programs would deliver what is extending the
> common way of thinking and thus the common way of composing, all could
> be (almost) happy, there is always a way to connect different tools…
>
> But they don’t, and thus for me and a lot of others on the list, the
> most appealing idea is to bring it into Max, but its a huge effort, on
> that I do agree, but before we need technicians, we need to open up our
> own imagination, elswise these technicians will just creat the same as
> before and put just a little bit more hype spice onto it…
>
> As you pointed out later: there is a lack of imagination what a timeline
> could be…
>
> I believe technically it would be built around a database for events
> (points in time) and gestures (spaced, spread in time). And in addition
> with a library for the visualisation/manipulation of the data. It needs
> both…
>
> I look forward what you’ll come up with…
>
> Stefan
>
> —
> Stefan Tiedje————x——-
> –_____———–|————–
> –(_|_ —-|—–|—–()——-
> — _|_)—-|—–()————–
> ———-()——–www.ccmix.com
>
>
—————————————————-

#92682
Jan 18, 2007 at 5:02pm

> If the existing notation programs would deliver what is extending the
> common way of thinking and thus the common way of composing, all could
> be (almost) happy, there is always a way to connect different tools…
>

oooh, yes! I’m always terribly frustrated with notation apps. I’ve been bouncing back and forth between Finale and Sibelius for years. And I’ve mentioned more than once how happy I’d be if ENP (from PWGL) were given OSC capabilities, so we could use it in Max. There are ideas which come to me only through score, and I always miss those ideas when I work entirely without it.

That said, I think my dream sequencer would be much more holistic. It would definitely have a score view, and selectable notation-based views of individual sequences, but that would be a music-visualization option, for dealing with the textual level of the music — the nuts and bolts of notes and rhythms (when required). Beyond that, the environment would be much more… uh… synesthetic(?) On the other hand, it would also probably have a command line! ;-)

I don’t suppose we could get a group of people together to hash out some of these ideas, and maybe write some code — off-list, of course, to spare everyone the misery.

J.

#92683
Jan 18, 2007 at 5:09pm

That’s why I work hard to upgrade my technical skills and knowledge first, -before- starting to dream about all the supersets of interface features that I could come up with. Even if I would end up, by lack of imagination, with another Logic but without the bugs/unlogicalness/general crap, I’d be quite happy.

Speaking of which, a rumor just bubbled up about Logic 8 rearing its head at NAMM tomorrow. Probably absolute crap, but you never know… and we are due for an upgrade.

J.

#92684
Jan 18, 2007 at 5:39pm

Hello Mattijs,

I’ve been a Max user for almost 17 years, so believe me, I know what
I’m talking about. I’m not looking for an integrated solutions such
as Logic, Live or Cubase, which, incidentally, lack the ability to
sequence symbolic messages and lists (I’d grateful if you could name
such a software).
And as a matter of fact, there is an existing solution in Max (i.e.
timeline) which I’d actually prefer if it weren’t so buggy. I always
opted for a new version of timeline with tight integration with the
pattr system and was hoping to create the necessary momentum for it
on this list.
I’m going to look into Peter Castine’s iCE solution. If it does what
I’m looking for, I’ll let you all know.

Best,

Georg

On Jan 17, 2007, at 7:18 PM, Mattijs Kneppers wrote:

>
> Quote: Georg Hajdu wrote on Wed, 17 January 2007 18:27
> —————————————————-
>> Hi Nathan,
>>
>> I appreciated your example. My comments were less directed at you as
>> they were at Cycling ’74; once again stressing the need of a visual
>> sequencing solution. I hope you didn’t misunderstand my intentions.
>
> Hi Georg,
>
> I don’t agree with you on this. A complete visual sequencing
> solution is in fact a sequencer. Anything short of that would not
> be usable in a sensible way, so isn’t worth making.
>
> To make a real sequencer takes enough time and effort to call it a
> separate product (such as Logic, Cubase, Live, etc). If Cycling ’74
> came to release a separate sequencer, I would probably be the first
> one to buy it and pay an amount of money separate from the 850,-
> that I paid for Max.
>
> In short, if you need to sequence events in Max, use an existing
> sequencer tool. Looking at the various options available to link
> max to other software, I’d say that is a very real option.
>
> Cheers,
> Mattijs
>
>> Georg
>>
>> On Jan 17, 2007, at 2:08 PM, Nathan Wolek wrote:
>>
>>> On Jan 17, 2007, at 1:35 AM, Georg Hajdu wrote:
>>>> It would be nice to use a visual paradigm. For interactive work,
>>>> it’s always nicer to know what’s inside that box.
>>>
>>> I agree! but I was just showing how one can currently deploy the a
>>> limited method of automatic preset changes for [pattrstorage].
>>>
>>> I hope my use of “simple” was not misinterpreted to mean that this
>>> is “easy to do already”. It was a comment on the level of
>>> functionality. “simple” = limited, basic, etc.
>>>
>>> –Nathan
>>>
>>
>>
> —————————————————-
>
>
> –
> SmadSteck – http://www.smadsteck.nl
> Interactive audiovisual sampling soft- and hardware
>

#92685
Jan 18, 2007 at 5:48pm

Stefan,

UPIC as a standalone timeline already exists. There was a recent
announcement on the list. The software is called IanniX and looks
pretty good in its recent iteration. It has a wonderful innovative
interface and can be connected to Max via OSC. Unfortunately, it
lacks the ability to sequence symbols and lists, which makes it much
less interesting to me personally. But, who knows, they might even
add this feature sometime in the future.

Georg

On Jan 17, 2007, at 11:45 PM, Stefan Tiedje wrote:

> Gary Lee Nelson wrote:
>> Am I missing something. timeline and detonate come with Max/MSP.
>> Shouldn’t
>> they work already?
>
> The thread subject is still valid…
>
> But to dream on: I’d like to go beyond classic sequencers. As a
> sequencer is defined as a sequence of events. But in favor of the
> way of thinking of Xenakis, there is a demand for the continuum.
> (The word timeline would still fit, a sequencer would be a step
> back…
>
> I guess I have to do it, the ultimate successor of the UPIC as
> Maxpatch… Any Bounties for that??? ;-)
>
> Stefan
>
> —
> Stefan Tiedje————x——-
> –_____———–|————–
> –(_|_ —-|—–|—–()——-
> — _|_)—-|—–()————–
> ———-()——–www.ccmix.com
>

#92686
Jan 18, 2007 at 5:54pm

#92687
Jan 18, 2007 at 6:02pm

Look at iTunes’ 3D view, or browsing on the new iPhone. The concepts
are there, the software is there (OpenGL), but someone actually needs
to do the work. If I were 15 years younger and had time and money,
I’d probably brave it.

Georg

On Jan 18, 2007, at 10:57 AM, jbmaxwell wrote:

> But it often seems to me that all imagination around the visual
> representation of musical concepts in software dried up sometime in
> the ’90s. Am I wrong?

#92688
Jan 18, 2007 at 9:01pm

#92689
Jan 18, 2007 at 9:21pm

#92690
Jan 18, 2007 at 11:04pm

vade wrote on Thu, 18 January 2007 22:21
—————————————————-
> Data structures in PD are very nice, yes – take a look at this
> piece by Hans Christoph Steiner for those who are unfamiliar:
> it gives a good overview for one particular approach to scoring,
> but data structures can map to anything.
>
> http://at.or.at/hans/solitude/

About the graphic approach, it remembers me some scores of Ligeti, Stockhausen, etc.
Is it a graphic rendering only or an interactive interface?

Bye,
Phil

#92691
Jan 18, 2007 at 11:27pm

Interactive. can be updated and manipulated in realtime based on
arbitrary input.

I havent had firsthand experience with using it(PD has been
notorously unreliable on my system), but Hans showed me some things,
and I was quite impressed. There are some example patching of doing
some silly things with datastructs on the PD list demonstrating some
of its capabilities.

On Jan 18, 2007, at 6:04 PM, Philippe Gruchet wrote:

>
> vade wrote on Thu, 18 January 2007 22:21
> —————————————————-
>> Data structures in PD are very nice, yes – take a look at this
>> piece by Hans Christoph Steiner for those who are unfamiliar:
>> it gives a good overview for one particular approach to scoring,
>> but data structures can map to anything.
>>
>> http://at.or.at/hans/solitude/
>
> About the graphic approach, it remembers me some scores of Ligeti,
> Stockhausen, etc.
> Is it a graphic rendering only or an interactive interface?
>
> Bye,
> Phil

v a d e //

http://www.vade.info
abstrakt.vade.info

#92692
Jan 18, 2007 at 11:58pm

Quote: vade wrote on Fri, 19 January 2007 00:27
—————————————————-
> Interactive. can be updated and manipulated in realtime based
> on arbitrary input.

Seems great, indeed.
A video would be very interesting.

#92693
Jan 19, 2007 at 7:42am

Georg Hajdu wrote:
> UPIC as a standalone timeline already exists. There was a recent
> announcement on the list. The software is called IanniX and looks
> pretty good in its recent iteration. It has a wonderful innovative
> interface and can be connected to Max via OSC. Unfortunately, it lacks
> the ability to sequence symbols and lists, which makes it much less
> interesting to me personally. But, who knows, they might even add this
> feature sometime in the future.

Yes, I had a look at it, but as someone who has access to the real
ancient UPIC, it had always been a bit of a disapointment and is really
something very different. The first versions had no documentation at
all. I looked at it, try to do something (out of my limited view how I
believe it should work out of my experience with UPIC), it doesn’t, I
look for docs – ah now they are there and it looks definitely
interesting, though lacking the most important strength of the UPIC:
Juast draw the score…

To make it actually sound you have to do a lot of programming around.
You would actually need to combine it with some other storage parts in a
Max patch. This is not only true for arbitrary messages, its also true
for synthesis. It would make not a too big difference if you’d define
the message in Max or in IanniX.
Another lack compared to the original: You can’t just copy paste a
sample wave form into a page as curve…

In general you can put an unexperienced composer in front of the UPIC
and you will get audible results pretty fast.
This would never work with IanniX, though it seems to have less
restrictions, you need to construct your compositions in advance, the
composer would need a musical assistant to translate it into sound…

I’d better keep my flame for another tool in Max going…. ;-)
But definitely anybody concerned about a timeline should have a look at
it, its inspireing…

Stefan


Stefan Tiedje————x——-
–_____———–|————–
–(_|_ —-|—–|—–()——-
– _|_)—-|—–()————–
———-()——–www.ccmix.com

#92694
Jan 19, 2007 at 8:14am

#92695
Jan 19, 2007 at 8:22am

I suggest the pot goes to Mikael Laurson with the obligation for him to
implement OSC NOW!

PWGL is something, guys… He already made 90% of the job.

f.e

ps: thanks, Kasper, for the links .-)

f.e chanfrault | aka | personal computer music
> >>>>>> http://www.personal-computer-music.com
> >>>>>> |sublime music for a desperate people|

Peter Castine wrote:
> Gary (and others on Mac OS),
>
> You might want to look at iCE Tools as an alternative to timeline.
> It’s a different paradigm, but ice.lattice is (a) simple, (b)
> reliable, and (c) stable.
>
> iCE Tools costs more than the $50 ante people have been positing in
> this thread, but its price is, frankly, more realistic given the work
> involved. As f.e has discovered, this sort of thing is not a trivial
> task. To give you an idea of just how much work was involved, note
> that ice.lattice needed almost 3 years development to market.
>
> I will respond to the question about availability for Windows in the
> thread in which the question was explicitly asked (“iCE sequencer
> opinions”).
>
> Best,
> Peter
>
> On 8-Jan-2007, at 9:41, Gary Lee Nelson wrote:
>> I would really like to use timeline but in the past it was so buggy
>> that I
>> gave up. This morning I tried it again assuming that it had been fixed.
>> The very first thing I tried caused max to crash.
>
> ————– http://www.bek.no/~pcastine/Litter/ ————-
> Peter Castine +–> Litter Power & Litter Bundle for Jitter
> Universal Binaries on the way
> iCE: Sequencing, Recording &
> Interface Building for |home | chez nous|
> Max/MSP Extremely cool |bei uns | i nostri|
> http://www.dspaudio.com/ http://www.castine.de
>
>
>

#92696
Jan 19, 2007 at 8:51am

YES! I couldn’t agree more, f.e..

ENP in PWGL is a truly brilliant scoring package — I’d even say it’s better than Finale or Sibelius, in terms of raw musical power. If we had access to that in Max, we could certainly get a long way in terms of musical and textural scoring for Max. I think Max would probably become my primary composition environment if we had ENP. As it is, I’m bouncing around between Finale, Sibelius, Logic, and Live…

#92697
Jan 19, 2007 at 8:54am

#92698
Jan 19, 2007 at 10:46am

#92699
Jan 19, 2007 at 12:01pm

Hey All,

I just heard from Mika, who wrote the ENP score editor in PWGL, and he mentioned that SDIF and OSC are both big requests from PWGL users right now. He also mentioned that their forum/mailing list would be the best place to post feature requests, so maybe we could help get the ball rolling on OSC support at least — perhaps a little bribing could speed things up!

If you’re interested in helping out with the “push” to get OSC support, you can sign up here:

http://www2.siba.fi/PWGL/support.html

If you don’t know about PWGL and ENP, you should definitely check them out:

http://www2.siba.fi/PWGL/

cheers,

J.

#92700
Jan 19, 2007 at 3:36pm

Georg Hajdu wrote:
> That’s exactly what I suggested 2 years ago!! But you need to “unlock”
> seq~ to get access to its stored content, and that probably requires a
> substantial modification of the object.

I agree, with a timeline there are two crucial aspects, one is storing
data, that can be achieved already, the other is manipulating that
stored data, and thats the tricky part, especially if you want graphical
representation ala UPIC/IanniX…

Stefan


Stefan Tiedje————x——-
–_____———–|————–
–(_|_ —-|—–|—–()——-
– _|_)—-|—–()————–
———-()——–www.ccmix.com

#92701
Jan 19, 2007 at 4:14pm

>
> I agree, with a timeline there are two crucial aspects, one is storing
> data, that can be achieved already, the other is manipulating that
> stored data, and thats the tricky part, especially if you want graphical
> representation ala UPIC/IanniX…
>
> Stefan
>
> —
> Stefan Tiedje————x——-
> –_____———–|————–
> –(_|_ —-|—–|—–()——-
> — _|_)—-|—–()————–
> ———-()——–www.ccmix.com
>
>
—————————————————-

That’s why I’m so excited about PWGL and ENP. From within PWGL you can edit any value in the graphical/scoring interfaces either algorithmically or with the mouse and keyboard. So with OSC support, we could not only send the graphical/score data to Max, but could also alter the graphical/score data from Max. So much potential for sweetness.

J.

#92702
Jan 19, 2007 at 11:16pm

I took a look at Iannix, pretty cool. I have been looking for
something like it for a long time, looks very promising.
I was wondering if any of you guys have used it in any compositions?

#92703
Jan 20, 2007 at 8:02am

Hi,

About a more ‘traditional’ score presentation, does anyone tried to bridge Max to LilyPond ?
The rendering is beautiful!
Free, multi-platform, and sourcecode available:

http://lilypond.org/web/index.html

TIA,
Philippe

#92704
Jan 20, 2007 at 9:49am

What about IRIN ?

http://homepage.oniduo.pt/carlos.caires/sw/timeline.html

I like it very much and it’s written in Max/Msp.

All the best

Alessandro Fogar

#92705
Jan 20, 2007 at 10:54am

… and go back to the times where prehistoric men where typing

key a major
time 6/8
cis”8. d”16 cis”8 e”4 e”8
b’8. cis”16 b’8 d”4 d”8

on their stone keyboards to keep a trace of their war chants ?!

f.e

f.e chanfrault | aka | personal computer music
> >>>>>> http://www.personal-computer-music.com
> >>>>>> |sublime music for a desperate people|

Philippe Gruchet wrote:
> Hi,
>
> About a more ‘traditional’ score presentation, does anyone tried to bridge Max to LilyPond ?
> The rendering is beautiful!
> Free, multi-platform, and sourcecode available:
>
> http://lilypond.org/web/index.html
>
>
> TIA,
> Philippe
>
>

#92706
Jan 20, 2007 at 11:29am

f.e wrote on Sat, 20 January 2007 11:54
—————————————————-
> … and go back to the times where prehistoric men where typing
>
> key a major
> time 6/8
> cis”8. d”16 cis”8 e”4 e”8
> b’8. cis”16 b’8 d”4 d”8
>
> on their stone keyboards to keep a trace of their war chants ?!
—————————————————-

Sarcastic? I can be sarcastic too.
For graphic renderings, did you never used “POV Ray” or some other tools like that in the Unix world?
No? Really?? Ahhh, ‘prehistoric push-button’ software only…
:-)
Lilypond is free, well-written, and I ‘m just asking *in this very particular thread* if someone did the job for Max.
Or if someone plans to do it.

Bah-Bye,
Philippe

#92707
Jan 20, 2007 at 12:48pm

Actually, I agree that it would be great if some of these text-based notation apps could integrate directly into Max (read: OSC support), so we could render scores, in at least quasi-realtime, using a more rhythmically concise language. Outputting midi files is generally crap, since most notation apps interpret midi very poorly… unless your music is all totally quantized and uses simple metrical values only (maybe triplets, in a push). With something like LilyPond or, dare I say, ENP/PWGL, we could format the musical data coming out of Max into the precise notation we desired. That would be very cool. (As an example, it seems to me that Essl’s group-rhythm uses the same basic rhythmic conventions as ENP notation.)

Since this is all hypothetical anyway, I’m sticking with my fanatical obsession with ENP. It’s just too good. But I suppose it may be possible to at least output ENP-readable text files from Max as is… I’ll have to look into that.

J.

#92708
Jan 20, 2007 at 1:42pm

I agree with Philippe, I think. Anyway, as they say in stone age
Washington, I rise to speak in favor of text-based systems.

One of the best things the designers of max did was to provide a text
version of patches. How else would we share them on this list? Many times
I have found it useful to edit those files directly. Without these files I
would still be wondering what max scripting is all about. And regexp – I
still don’t get it but. Like spinach, I know it’s good for me.

And XML…what a wordy but brilliant idea. Using music XML I can easily
move between Sibelius and Finale to take advantage of the strengths of each.
Someday, when music XML settles down, I plan to make some algorithmic pieces
directly in XML for notation.

In the dark ages of max – the 90′s – we had pyrite from James McCartney who
later gave us supercollider – both text systems. We communicate between max
and supercollider with OSC – another text system.

People have integrated csound, rtcmix, maxlisp and other text systems into
max do to mention the brilliance of including java and openGL. And how to
we write new externals? All together class…

The list can go on for a very long time but I must include Peter Stone’s
Symbolic Composer and David Cope’s work. Both use Lisp.

Personally, I am fond of APL. Just bought the OSX update. I still use APL
for things I cannot do easily in max like creating creating complex tables,
funbuffs and colls – all text. Recently, I used APL to create a collection
that included all inversions, voicing and voice leading among chords made
from hexachords with the following characteristics:

hexachord does not contain a tritone (there are six of them)
no interval duplication between adjacent notes in the voicing
larger intervals (> 7 semitones) on the bottom of the voicing

And for voice leading

compare all voicings in all transpositions to find number of tones and
number of “held” notes between adjacent chord.
sort progressions by “complexity” how much changes from chord to chord
store the result in a coll that functions as a markov chain in max

This was done in less than 100 lines of, er, APL text. Here’ my one-liner
for computing the serial matrix R of a tone row R. Order of execution is
right-to-left.

M = matrixtranspose 12 abs R outerproduct R = minus 1 take R

Sorry about the formatting. APL uses its own TEXT font that cannot be
emailed. (That’s another rant.)

On 1/20/07 6:29 AM, “Philippe Gruchet”

wrote:

>
> f.e wrote on Sat, 20 January 2007 11:54
> —————————————————-
>> … and go back to the times where prehistoric men where typing
>>
>> key a major
>> time 6/8
>> cis”8. d”16 cis”8 e”4 e”8
>> b’8. cis”16 b’8 d”4 d”8
>>
>> on their stone keyboards to keep a trace of their war chants ?!
> —————————————————-
>
> Sarcastic? I can be sarcastic too.
> For graphic renderings, did you never used “POV Ray” or some other tools like
> that in the Unix world?
> No? Really?? Ahhh, ‘prehistoric push-button’ software only…
> :-)
> Lilypond is free, well-written, and I ‘m just asking *in this very particular
> thread* if someone did the job for Max.
> Or if someone plans to do it.
>
> Bah-Bye,
> Philippe

#92709
Jan 20, 2007 at 2:17pm

#92710
Jan 20, 2007 at 3:05pm

jbm wrote on Sat, 20 January 2007 13:48
—————————————————-
> it would be great if some of these text-based
> notation apps could integrate directly into Max

Integration… I’d prefer an ‘inter-application communication’: a bridge.

> we could format the musical data coming out of Max into the
> precise notation we desired.

YES, the user choice!

> Since this is all hypothetical anyway

Some people are dreaming about the future, some others are creating the future.
I don’t care about all others!
A bridge with Lilypond could be done next week, and in a week.

My buzz ;-)
Philippe

#92711
Jan 20, 2007 at 3:24pm

Quote: Philippe Gruchet wrote on Sat, 20 January 2007 15:05
—————————————————-
> jbm wrote on Sat, 20 January 2007 13:48
> —————————————————-
> > it would be great if some of these text-based
> > notation apps could integrate directly into Max
>
> Integration… I’d prefer an ‘inter-application communication’: a bridge.
>

Yeah, that would be fine. But the only problem with LilyPond is that it’s really just music notation, isn’t it? Can it be used to create/display arbitrary messages, gestures, etc.?

> > we could format the musical data coming out of Max into the
> > precise notation we desired.
>
> YES, the user choice!
>
>
> > Since this is all hypothetical anyway
>
> Some people are dreaming about the future, some others are creating the future.
> I don’t care about all others!
> A bridge with Lilypond could be done next week, and in a week.
>

If it can be done in a week then why hasn’t it been done? Just from a lack of interest? I’m confused… Also, are you thinking this “bridge” would be two-way? I guess I don’t quite understand what LilyPond can transmit *back* to Max. I though it was basically just music typesetting — really high-quality typesetting, but typesetting nonetheless. Am I wrong? Maybe you could clarify what you’re thinking, and how it might be done.

cheers,

J.

#92712
Jan 20, 2007 at 3:39pm

#92713
Jan 20, 2007 at 4:16pm
#92714
Jan 20, 2007 at 4:16pm

Here is a quick excerpt of what could be a larger patcher-scripting-
event-based sequencer (adding graphic rulers, tracks, auto-patcher
scrolling, etc. isn’t very difficult – just needs time). By working
with send/receives, you could virtually have any number of
synchronized/predictive/whatever sequencers

Just save the patch and open it once, so loadbangs can be effective :

#P user multiSlider 0 0 1 2000 -1. 1. 1 2681 15 0 0 2 0 0 0;
#M frgb 0 0 0;
#M brgb 255 255 255;
#M rgb2 127 127 127;
#M rgb3 0 0 0;
#M rgb4 37 52 91;
#M rgb5 74 105 182;
#M rgb6 112 158 18;
#M rgb7 149 211 110;
#M rgb8 187 9 201;
#M rgb9 224 62 37;
#M rgb10 7 114 128;
#P objectname cursor;
#P window setfont “Sans Serif” 9.;
#P window linecount 1;
#P comment 166 321 35 196617 event;
#P comment 296 304 21 196617 ms;
#P comment 268 288 67 196617 current time;
#P number 251 303 44 9 0 0 0 3 0 0 0 221 221 221 222 222 222 0 0 0;
#P newex 50 61 58 196617 print start;
#P newex 83 213 48 196617 loadbang;
#N vpatcher 10 59 292 233;
#P window setfont “Sans Serif” 9.;
#P message 51 80 59 196617 ; dsp wclose;
#P button 51 58 15 0;
#P inlet 51 30 15 0;
#P comment 94 34 92 196617 attach more complex stuff in subpatchers;
#P connect 1 0 2 0;
#P connect 2 0 3 0;
#P pop;
#P newobj 946 87 44 196617 patcher;
#P comment 923 66 20 196617 10;
#P button 946 65 15 0;
#P objectname event[10];
#P newex 369 256 60 196617 loadmess 1;
#P comment 203 305 34 196617 index;
#P number 167 303 35 9 0 0 0 3 0 0 0 221 221 221 222 222 222 0 0 0;
#P window linecount 3;
#P comment 12 85 127 196617 script named buttons are listed as
“patcher events” (you can set any name);
#P window linecount 1;
#P comment 114 237 48 196617 evaluate;
#P window linecount 3;
#P comment 42 169 134 196617 Create , delete , move patcher events
, then evaluate patcher sequence;
#P window linecount 1;
#P comment 358 311 73 196617 or use pattr…;
#N vpreset 3;
#X append 1 2 11 51 302 function clear ; 11 51 302 function add 0.
0. 0 ; 11 51 302 function add 159.090912 1. 0 ; 11 51 302 function
add 477.272736 0.36 0 ; 11 51 302 function add 704.545471 1.;
#X append 1 2 0 ; 11 51 302 function add 1000. 0. 0 ; 11 51 302
function domain 1000. ; 11 51 302 function range 0. 1. ; 13 51 145
number int 17 ; 15 51 195 flonum float 0.15 ;;
#X append 1 2 20 47 532 dial int 51 ; 22 91 532 number int 51 ; 23
44 609 hslider int 38 ; 25 66 609 number int 38 ; 27 110 700
kslider int 49 ; 29 150 700 number int;
#X append 1 2 49 ; 40 46 799 textedit set some words ; 45 177 188
flonum float 10. ;;
#X append 2 2 11 51 302 function clear ; 11 51 302 function add 0.
0. 0 ; 11 51 302 function add 159.090912 1. 0 ; 11 51 302 function
add 477.272736 0.36 0 ; 11 51 302 function add 704.545471 1.;
#X append 2 2 0 ; 11 51 302 function add 1000. 0. 0 ; 11 51 302
function domain 1000. ; 11 51 302 function range 0. 1. ; 13 51 145
number int 17 ; 15 51 195 flonum float 0.15 ;;
#X append 2 2 20 47 532 dial int 51 ; 22 91 532 number int 51 ; 23
44 609 hslider int 38 ; 25 66 609 number int 38 ; 27 110 700
kslider int 49 ; 29 150 700 number int;
#X append 2 2 49 ; 40 46 799 textedit set some words ; 45 177 188
flonum float 5. ;;
#X append 3 2 11 51 302 function clear ; 11 51 302 function add 0.
0. 0 ; 11 51 302 function add 102.272728 0.08 0 ; 11 51 302
function add 102.272728 0.24 0 ; 11 51 302 function add 159.090912 1.;
#X append 3 2 0 ; 11 51 302 function add 181.818192 0.16 0 ; 11 51
302 function add 238.636368 0.28 0 ; 11 51 302 function add
284.090912 0.52 0 ; 11 51 302 function add 284.090912 0.28 0 ; 11
51 302;
#X append 3 2 function add 386.363647 0.64 0 ; 11 51 302 function
add 386.363647 0.24 0 ; 11 51 302 function add 420.454559 1. 0 ; 11
51 302 function add 465.909119 0.92 0 ; 11 51 302 function add
477.272736 0.36;
#X append 3 2 0 ; 11 51 302 function add 636.363647 0.32 0 ; 11 51
302 function add 704.545471 1. 0 ; 11 51 302 function add 704.545471
0.16 0 ; 11 51 302 function add 738.636414 0.2 0 ; 11 51 302;
#X append 3 2 function add 795.45459 0.36 0 ; 11 51 302 function add
852.272766 0.28 0 ; 11 51 302 function add 1000. 0. 0 ; 11 51 302
function domain 1000. ; 11 51 302 function range 0. 1. ; 13 51 145;
#X append 3 2 number int 192 ; 15 51 195 flonum float -3.43 ; 20 47
532 dial int 107 ; 22 91 532 number int 107 ; 23 44 609 hslider int
127 ; 25 66 609 number int 127 ; 27 110 700;
#X append 3 2 kslider int 72 ; 29 150 700 number int 72 ; 40 46 799
textedit set last words ; 45 177 188 flonum float 1. ;;
#P preset 369 279 47 27;
#N thispatcher;
#Q end;
#P newobj 83 303 61 196617 thispatcher;
#P comment 264 244 87 196617 patcher sequence;
#P message 251 261 29 196617 stop;
#P message 230 242 33 196617 start;
#B color 6;
#P comment 224 178 141 196617 tempo factor (1 pixel = 1ms);
#P message 209 199 14 196617 0;
#P number 209 219 35 9 0 0 1 3 0 0 0 221 221 221 222 222 222 0 0 0;
#P flonum 188 177 35 9 0 0 0 3 0 0 0 221 221 221 222 222 222 0 0 0;
#P comment 807 171 14 196617 9;
#P button 823 170 15 0;
#P objectname event[9];
#P window linecount 2;
#P message 823 194 56 196617 ; dsp status;
#P window linecount 1;
#P newex 799 83 71 196617 print textedit;
#P user textedit 799 46 898 78 32896 3 9 some words;
#P comment 783 27 14 196617 8;
#P button 799 26 15 0;
#P objectname event[8];
#P comment 684 91 14 196617 7;
#P comment 593 24 14 196617 6;
#P comment 516 27 14 196617 5;
#P comment 287 28 14 196617 4;
#P comment 225 28 14 196617 3;
#P comment 180 28 14 196617 2;
#P comment 129 28 14 196617 1;
#P newex 700 170 66 196617 print kslider;
#P number 700 150 35 9 0 0 0 3 0 0 0 221 221 221 222 222 222 0 0 0;
#P button 700 90 15 0;
#P objectname event[7];
#P user kslider 700 110 35 1 36 48 19 7 0 128 128 128 128 128 128 255
255 255 0 0 0 0 0 0;
#P newex 609 86 66 196617 print hslider;
#P number 609 66 35 9 0 0 0 3 0 0 0 221 221 221 222 222 222 0 0 0;
#P button 609 24 15 0;
#P objectname event[6];
#P user hslider 609 44 18 128 128 1 0 0;
#P number 532 91 35 9 0 0 0 3 0 0 0 221 221 221 222 222 222 0 0 0;
#P newex 532 111 51 196617 print dial;
#P user dial 532 47 40 40 128 1 0 0 159 270 1 1. 170 170 170 221 221
221 120 120 120 225 225 225 0 0 0 0 0 0;
#P button 532 27 15 0;
#P objectname event[5];
#P newex 240 109 73 196617 print message;
#P message 240 51 31 196617 hello;
#P newex 195 88 56 196617 print float;
#P flonum 195 51 35 9 0 0 0 3 0 0 0 221 221 221 222 222 222 0 0 0;
#P newex 145 88 47 196617 print int;
#P number 145 51 35 9 0 0 0 3 0 0 0 221 221 221 222 222 222 0 0 0;
#P newex 332 109 54 196617 print func;
#P user function 302 51 402 101 1 1 0 1;
#X frgb 82 82 82;
#X brgb 204 204 204;
#X rgb2 85 85 85;
#X rgb3 255 255 255;
#X rgb4 0 0 0;
#X rgb5 0 0 0;
#X add 0. 0. 0;
#X add 159.090912 1. 0;
#X add 477.272736 0.36 0;
#X add 704.545471 1. 0;
#X add 1000. 0. 0;
#X domain 1000.;
#X range 0. 1.;
#X done;
#P message 83 236 30 196617 bang;
#N vpatcher 79 229 1002 779;
#P window setfont “Sans Serif” 18.;
#P window linecount 1;
#P comment 416 235 46 196626 play;
#P window setfont “Sans Serif” 9.;
#P newex 655 457 27 196617 i;
#P message 655 478 121 196617 script move cursor $1 0;
#P comment 815 478 30 196617 time;
#P outlet 799 477 15 0;
#P newex 799 446 29 196617 * 1.;
#P comment 662 40 34 196617 index;
#P comment 597 265 65 196617 set next pos;
#P newex 799 376 27 196617 f;
#P newex 799 355 40 196617 t b f;
#P flonum 423 97 35 9 0 0 0 3 0 0 0 221 221 221 222 222 222 0 0 0;
#P newex 720 274 62 196617 i;
#P flonum 703 118 35 9 0 0 0 3 0 0 0 221 221 221 222 222 222 0 0 0;
#P newex 720 253 35 196617 del 0.;
#P newex 720 214 29 196617 * 1.;
#P newex 720 193 37 196617 abs 0.;
#P newex 720 172 27 196617 – 0.;
#P newex 703 137 44 196617 t f f f;
#P newex 662 55 27 196617 + 1;
#P newex 662 97 51 196617 zl slice 1;
#N coll events 1;
#P newobj 662 76 68 196617 coll events 1;
#B color 4;
#P comment 514 142 33 196617 start;
#P button 497 141 15 0;
#P newex 497 162 27 196617 i;
#P comment 600 147 55 196617 goto/next;
#P number 563 146 35 9 0 0 0 3 0 0 0 221 221 221 222 222 222 0 0 0;
#P flonum 604 246 35 9 0 0 0 3 0 0 0 221 221 221 222 222 222 0 0 0;
#P newex 563 224 51 196617 zl slice 1;
#N coll events 1;
#P newobj 563 202 68 196617 coll events 1;
#B color 4;
#P comment 702 464 45 196617 position;
#P newex 799 398 70 196617 line 0.;
#P window linecount 0;
#P newex 425 403 159 196617 loadmess script move cursor 0 0;
#P window linecount 1;
#P comment 533 367 34 196617 index;
#P outlet 516 366 15 0;
#P comment 515 496 73 196617 to thispatcher;
#P comment 742 119 67 196617 X pos (pixel);
#P comment 526 32 29 196617 stop;
#P comment 489 32 29 196617 start;
#P comment 454 32 29 196617 goto;
#P newex 497 314 51 196617 zl slice 1;
#P outlet 497 494 15 0;
#P newex 497 434 134 196617 sprintf script send %s bang;
#N coll events 1;
#P newobj 497 292 68 196617 coll events 1;
#B color 4;
#P inlet 461 48 15 0;
#P inlet 531 48 15 0;
#P inlet 423 48 15 0;
#P inlet 497 48 15 0;
#P window linecount 3;
#P comment 29 347 86 196617 then sort items by X pos and renumber
indexes;
#P comment 41 282 73 196617 for each stored button , wait a bit…;
#P window linecount 1;
#P comment 191 253 70 196617 store into coll;
#P comment 42 212 70 196617 count buttons;
#P window linecount 3;
#P comment 25 147 87 196617 join X pos with scripting name and
reverse order;
#P window linecount 2;
#P comment 152 109 89 196617 let pass only button description;
#P window linecount 1;
#P message 117 355 62 196617 renumber 0;
#P newex 117 315 27 196617 b 2;
#P newex 117 230 38 196617 zl join;
#N counter;
#X flags 0 0;
#P newobj 117 210 66 196617 counter;
#P newex 117 189 38 196617 t b l;
#P message 134 336 52 196617 sort -1 2;
#P newex 117 293 27 196617 del;
#P newex 117 272 93 196617 t b l;
#N coll events 1;
#P newobj 200 396 68 196617 coll events 1;
#B color 4;
#P newex 117 251 72 196617 prepend store;
#P inlet 208 28 15 0;
#P newex 136 66 51 196617 zl slice 1;
#P newex 117 168 37 196617 zl rev;
#P newex 117 147 50 196617 zl join;
#P newex 117 126 29 196617 t l 0;
#P newex 117 105 29 196617 gate;
#P newex 191 87 21 196617 t 1;
#P newex 191 66 65 196617 route button;
#P newex 224 147 49 196617 t 0 clear;
#P inlet 224 28 15 0;
#P inlet 136 28 15 0;
#P inlet 157 28 15 0;
#P inlet 191 28 15 0;
#P window linecount 0;
#P comment 64 68 71 196617 get X position;
#P comment 384 49 37 196617 tempo;
#P comment 420 316 76 196617 scripting name;
#P comment 769 166 50 196617 calculate delta times;
#P window setfont “Sans Serif” 18.;
#P comment 97 401 85 196626 evaluate;
#P connect 11 0 12 0;
#P connect 13 1 12 0;
#P connect 12 0 13 0;
#P connect 13 0 14 0;
#P connect 14 0 15 0;
#P connect 15 0 23 0;
#P connect 23 0 24 0;
#P connect 24 0 25 0;
#P connect 25 0 18 0;
#P connect 18 0 20 0;
#P connect 20 0 21 0;
#P connect 21 0 26 0;
#P connect 26 0 27 0;
#P connect 26 1 22 0;
#P connect 7 0 16 0;
#P connect 16 0 12 1;
#P connect 9 0 24 2;
#P connect 23 1 25 1;
#P connect 6 0 14 1;
#P connect 5 0 10 0;
#P connect 10 0 11 0;
#P connect 27 0 19 0;
#P connect 20 1 19 0;
#P connect 22 0 19 0;
#P connect 9 1 19 0;
#P connect 8 0 9 0;
#P connect 35 0 70 0;
#P connect 34 0 58 0;
#P lcolor 10;
#P connect 58 0 57 0;
#P connect 69 0 38 0;
#P connect 57 0 38 0;
#P connect 38 0 41 0;
#P connect 41 0 39 0;
#P connect 49 0 40 0;
#P connect 78 0 40 0;
#P connect 39 0 40 0;
#P connect 55 0 57 1;
#P connect 38 1 47 0;
#P connect 37 0 55 0;
#P lcolor 5;
#P connect 55 0 52 0;
#P connect 52 0 53 0;
#P connect 53 1 54 0;
#P connect 50 0 79 0;
#P connect 79 0 78 0;
#P connect 38 1 62 0;
#P connect 62 0 60 0;
#P connect 60 0 61 0;
#P connect 61 1 68 0;
#P connect 68 0 63 0;
#P connect 63 1 64 0;
#P connect 64 0 65 0;
#P connect 65 0 66 0;
#P connect 36 0 67 0;
#P lcolor 11;
#P connect 66 0 67 0;
#P connect 67 0 69 0;
#P connect 54 0 64 1;
#P connect 63 0 64 1;
#P connect 70 0 66 1;
#P lcolor 9;
#P connect 62 0 69 1;
#P connect 66 0 71 0;
#P connect 71 0 72 0;
#P connect 54 0 50 0;
#P connect 36 0 50 0;
#P lcolor 11;
#P connect 72 0 50 0;
#P connect 50 0 75 0;
#P connect 75 0 76 0;
#P connect 63 2 72 1;
#P connect 70 0 75 1;
#P lcolor 9;
#P connect 71 1 50 1;
#P pop;
#P newobj 83 281 179 196617 p;
#P button 302 27 15 0;
#P objectname event[4];
#P button 240 27 15 0;
#P objectname event[3];
#P button 195 27 15 0;
#P objectname event[2];
#P button 145 27 15 0;
#P objectname event[1];
#P newex 83 256 96 196617 js patchdescribe.js;
#P button 50 27 15 4;
#P objectname event0;
#P comment 34 28 14 196617 0;
#P comment 225 201 91 196617 go to event (next);
#P window linecount 3;
#P comment 428 274 67 196617 store/recall sequence settings;
#P connect 61 0 63 0;
#P connect 43 0 42 0;
#P connect 40 0 41 0;
#P connect 38 0 40 0;
#P connect 29 0 30 0;
#P connect 27 0 29 0;
#P connect 28 0 27 0;
#P connect 25 0 26 0;
#P connect 23 0 25 0;
#P connect 24 0 23 0;
#P connect 22 0 21 0;
#P connect 20 0 22 0;
#P connect 19 0 20 0;
#P connect 60 0 53 0;
#P connect 11 1 12 0;
#P connect 8 0 11 0;
#P connect 9 2 66 0;
#P hidden connect 53 2 58 0;
#P hidden connect 53 2 46 0;
#P lcolor 1;
#P hidden connect 53 2 66 0;
#P connect 50 0 9 8;
#P connect 17 0 18 0;
#P connect 7 0 17 0;
#P connect 49 0 9 7;
#P connect 46 0 9 6;
#P connect 47 0 46 0;
#P connect 15 0 16 0;
#P connect 6 0 15 0;
#P connect 45 0 9 5;
#P connect 9 1 58 0;
#P connect 4 4 9 4;
#P connect 4 3 9 3;
#P connect 13 0 14 0;
#P connect 5 0 13 0;
#P connect 4 2 9 2;
#P connect 4 1 9 1;
#P connect 9 0 52 0;
#P connect 4 0 9 0;
#P connect 10 0 4 0;
#P connect 64 0 10 0;
#P connect 3 0 65 0;
#P window clipboard copycount 71;

#92715
Jan 20, 2007 at 4:44pm

jmdarremont wrote on Sat, 20 January 2007 16:39
—————————————————-
> exporting a midifile then editing it in a MIDI sequencer (DP,
> Logic, SX …) is still much more interesting, creatively.

Probably… not for me ;-)
I’m a ‘musical instruments player’, not a ‘notator’, and really tired about MIDI.

> I didn’t find it very useful unless you need a special
> notation which is not handled by other softwares.

That’s my case, for complex tuplets and metric modulations.
And then, up to something like < http://at.or.at/hans/solitude> !!!
I’d say, all possible kind of timelines would be great to explore as *tools for musicians* :-)

Bye,
Philippe

#92716
Jan 20, 2007 at 9:59pm

Cher Manuel,

I couldn’t resist having a look through your patch. It was haunting me all
afternoon. I love it! Everyone interested in this thread should have a
look

It is a much better solution than anything I came up with. I had a sense
that something in java would be the key (text isn’t it?). You are treating
a max patch as a data structure. Exactly where I was going. It does
everything that timeline does and more plus it is much more intuitive. I
tried running multiple instances and it works great. Will also work nicely
with pattr.

Cheers
Gary Lee Nelson
Oberlin College
http://www.timara.oberlin.edu/GaryLeeNelson

On 1/20/07 11:16 AM, “Manuel Poletti” wrote:

> Here is a quick excerpt of what could be a larger patcher-scripting-
> event-based sequencer (adding graphic rulers, tracks, auto-patcher
> scrolling, etc. isn’t very difficult – just needs time). By working
> with send/receives, you could virtually have any number of
> synchronized/predictive/whatever sequencers

#92717
Jan 20, 2007 at 10:20pm
#92718
Jan 20, 2007 at 10:57pm

Manuel,

Thank you for this elegant solution. I am humbled (not unusual when
visiting here).

–raf

Manuel Poletti wrote:
> [. . .]
> #P newex 83 256 96 196617 js patchdescribe.js;
> [. . .]

#92719
Jan 21, 2007 at 1:30am

Oops…I found a bug. If you make the patch wider and then use use the
scroll bars to move around in the window, the cursor gets out of sync since
the objects are positioned relative to the left side of the visible part of
the patch. Obeject out of view to the left have negative positions.
Banging patcherscribe resyncs but what if the bang message is out of sight.
I’ve noticed an origin message in the text files of patchers that have been
saved with the scroll bar moved. It gives the horizonal and vertical
offsets. Perhaps your .js can sense when the scroll bars are moved and bang
automatically. For the time being, I am using the enter key to bang
patcherscribe.

On 1/20/07 11:16 AM, “Manuel Poletti” wrote:

> Here is a quick excerpt of what could be a larger patcher-scripting-
> event-based sequencer (adding graphic rulers, tracks, auto-patcher
> scrolling, etc. isn’t very difficult – just needs time). By working
> with send/receives, you could virtually have any number of
> synchronized/predictive/whatever sequencers

Cheers
Gary Lee Nelson
Oberlin College
http://www.timara.oberlin.edu/GaryLeeNelson

#92720
Jan 21, 2007 at 2:30am

Yeah, that is really great! I definitely had a lot of food for thought after figuring out your technique. Just another example that there’s so many other ways to do things in Max that I don’t know about…. it makes sense when I see it done, but would never have come up with it on my own.

I imagine a user-controllable playback area would be great for scrubbing, automation, looping, etc… like you said, this is an example only.

One question–if one wanted to use a different event than a button, say a horizontal panel or something, I was able to do this OK, but how might you allow multiple “hits” on the object, rather than just one when the cursor first encounters the object? So, for example, there’a a panel about 100 pixels wide, and when it gets run over by the cursor, it accesses a table (or something) based upon where the cursor is over it. Depending on speed there might be a hundred accesses, or lots fewer. Also, the cursor would play the object when going backwards, as yours doesn’t seem to.

I also notice there’s no metro to speak of (I was just sure there had to be one somewhere!)… I had always envisioned determining speed based upon pixels and a metro, but this seems to work much better (and I know metro isn’t the stablest). However, the idea would be the same with a phasor~, too—i.e., how long does one stay at each pixel point, and how many pixels are the jumps from one to the next (could be fractional amounts). This paradigm would take object sizes/widths into account during playback, which would be beneficial.

Not to mention that a large LCD could then be accessed based upon pixel coordinates… there’s your graphical score editor!

-C

#92721
Jan 21, 2007 at 2:31am

While I am *very* impressed with this patch on a programmtical level,
I can forsee using it with any sort of high cpu load. I just tried it
with my performance patch, just running the timeline as is in the
background, and it killed my framerate, even on a core 2 duo machine.

Not trying to be a buzzkill, its a really nice approach – I bet with
some tweaking it could be made more efficient, but its certainly not
an end all answer I dont think.

On Jan 20, 2007, at 5:57 PM, Robert Albert Falesch wrote:

> Manuel,
>
> Thank you for this elegant solution. I am humbled (not unusual when
> visiting here).
>
> –raf
>
> Manuel Poletti wrote:
>> [. . .]
>> #P newex 83 256 96 196617 js patchdescribe.js;
>> [. . .]

v a d e //

http://www.vade.info
abstrakt.vade.info

#92722
Jan 21, 2007 at 2:58am

#92723
Jan 21, 2007 at 9:13am

I’d like to announce that there are plans to integrate JMSL more
tightly into MaxMSP.
Features will also include the ability to enter and edit music events
from MaxMSP and to draw the score to LCD.
JMSL has MusicXML and Lilypond export which makes it a great bridge
to other notation environments.
Please write me off-list if you have more questions.

Georg

On Jan 20, 2007, at 5:45 PM, Philippe Gruchet wrote:

>
> jmdarremont wrote on Sat, 20 January 2007 16:39
> —————————————————-
>> exporting a midifile then editing it in a MIDI sequencer (DP,
>> Logic, SX …) is still much more interesting, creatively.
>
> Probably… not for me ;-)
> I’m a ‘musical instruments player’, not a ‘notator’, and really
> tired about MIDI.
>
>> I didn’t find it very useful unless you need a special
>> notation which is not handled by other softwares.
>
> That’s my case, for complex tuplets and metric modulations.
> And then, up to something like < http://at.or.at/hans/solitude> !!!
> I’d say, all possible kind of timelines would be great to explore
> as *tools for musicians* :-)
>
> Bye,
> Philippe
>
> PS: I’m now supporting another project and won’t have any fund for
> this one before an ‘uncertain amount of time’.
>

#92724
Jan 21, 2007 at 10:34am

That is a *very* cool patch, Manuel! A great and imaginative use of what Max has to offer.

Unfortunately, I just can’t get excited about JMSL. Maybe the examples of notation don’t do the platform justice, but they seem clunky to me. Am I wrong? The score interface looks like some old OS 8.1 app to me. For $120, it just doesn’t seem like money well-spent, otherwise I would probably have bought a license by now. Mind you, if they actually *included* it in Max (i.e., gratis — with the cost of upgrading), I would obviously take advantage of it. I’m just not “sold” on it as an add-on solution. If I were a java programmer *without* Max, on the other hand, it would be a different story. In that case the general power of the API, beyond notation, would be worth the cost of admission.

J.

#92725
Jan 21, 2007 at 11:58am

On 1/20/07 9:30 PM, “Seejay James” wrote:

>
> Yeah, that is really great! I definitely had a lot of food for thought after
> figuring out your technique. Just another example that there’s so many other
> ways to do things in Max that I don’t know about…. it makes sense when I see
> it done, but would never have come up with it on my own.
>
> I imagine a user-controllable playback area would be great for scrubbing,
> automation, looping, etc… like you said, this is an example only.
>
> One question–if one wanted to use a different event than a button, say a

The .js looks at all of the objects in the patch and collects positions of
all of the buttons. Any object that can be activated with a bang can be
used but the button is a nice visual cue and you can use it to test an event
out of sequence.

> horizontal panel or something, I was able to do this OK, but how might you
> allow multiple “hits” on the object, rather than just one when the cursor
> first encounters the object? So, for example, there’a a panel about 100 pixels
> wide, and when it gets run over by the cursor, it accesses a table (or
> something) based upon where the cursor is over it. Depending on speed there
> might be a hundred accesses, or lots fewer. Also, the cursor would play the
> object when going backwards, as yours doesn’t seem to.
>
> I also notice there’s no metro to speak of (I was just sure there had to be
> one somewhere!)… I had always envisioned determining speed based upon pixels

Delays work on horizontal values in a coll.

> and a metro, but this seems to work much better (and I know metro isn’t the
> stablest). However, the idea would be the same with a phasor~, too—i.e., how
> long does one stay at each pixel point, and how many pixels are the jumps from
> one to the next (could be fractional amounts). This paradigm would take object
> sizes/widths into account during playback, which would be beneficial.

Exactly!

> Not to mention that a large LCD could then be accessed based upon pixel
> coordinates… there’s your graphical score editor!

Yes, this works fine. You simply scan lcd getting pixels as you go. For
each pixel you have x, y and color – numbers you can map into musical
parameters. You can also do this with jit.matrix. I used this to implement
a primitive MetaSynth-like capability in Max.
>
> -C

Cheers
Gary Lee Nelson
Oberlin College
http://www.timara.oberlin.edu/GaryLeeNelson

#92726
Jan 21, 2007 at 12:00pm


On 1/21/07 4:13 AM, “Georg Hajdu” wrote:

> I’d like to announce that there are plans to integrate JMSL more
> tightly into MaxMSP.
> Features will also include the ability to enter and edit music events
> from MaxMSP and to draw the score to LCD.
> JMSL has MusicXML and Lilypond export which makes it a great bridge
> to other notation environments.
> Please write me off-list if you have more questions.
>
> Georg
>

Is there a link for more information?

Cheers
Gary Lee Nelson
Oberlin College
http://www.timara.oberlin.edu/GaryLeeNelson

#92727
Jan 21, 2007 at 12:41pm

The idea is to tap into the API and its power in ways that won’t
necessitate using the JScore editor window. Just think of detonate.
You can enter, edit and playback data without ever opening the editor.

I believe that this solution would be far superior to any other
approaches that require inter-application communication via OSC or
similar.
While PWGL looks great, and FOMUS also shows promise, both solutions
are LISP-based and can’t be as easily integrated as JMSL. Having to
evaluate processes in PWGL also affects how the whole thing behaves
in real-time.

Georg

On Jan 21, 2007, at 10:34 AM, jbmaxwell wrote:

> Unfortunately, I just can’t get excited about JMSL. Maybe the
> examples of notation don’t do the platform justice, but they seem
> clunky to me. Am I wrong? The score interface looks like some old
> OS 8.1 app to me. For $120, it just doesn’t seem like money well-
> spent, otherwise I would probably have bought a license by now.
> Mind you, if they actually *included* it in Max (i.e., gratis —
> with the cost of upgrading), I would obviously take advantage of
> it. I’m just not “sold” on it as an add-on solution. If I were a
> java programmer *without* Max, on the other hand, it would be a
> different story. In that case the general power of the API, beyond
> notation, would be worth the cost of admission.

#92728
Jan 21, 2007 at 1:04pm

Quote: Georg Hajdu wrote on Sun, 21 January 2007 12:41
—————————————————-
> The idea is to tap into the API and its power in ways that won’t
> necessitate using the JScore editor window.

Sorry… I thought we were talking about graphical timeline/scoring interfaces. With mxj it’s already fairly simple (at least *much* more so than with Max objects) to make very complex data structures, which could potentially be used for sequencing. You mentioned Cope, and I’ve actually been working for the past few months on an mxj-based system which extends on his ideas, making them more interactive and realtime-savvy. I’m just finishing the database design and implementation, and it’s truly frazzling my brain (which may be easy to do, I suppose). The point being that you can create incredibly complex data structures which are entirely playable, editable, and so on. So I guess I missed a turn in the conversation. Or do you just mean that you wouldn’t have to *edit* your score in JMSL’s editor, but would be able to view it there?

> I believe that this solution would be far superior to any other
> approaches that require inter-application communication via OSC or
> similar.
> While PWGL looks great, and FOMUS also shows promise, both solutions
> are LISP-based and can’t be as easily integrated as JMSL. Having to
> evaluate processes in PWGL also affects how the whole thing behaves
> in real-time.

Very true. However, I wouldn’t actually use PWGL in an way except as life-support for ENP. Scores can be entered algorithmically into ENP, so it would be possible (with OSC) to create scores of Max output on the fly — well… somewhat on the fly. I mean, you couldn’t enter notes into ENP until you knew their rhythmic attributes. But if your work is generative and/or database-driven, then you have access to that information ahead of time anyway.

I don’t know what the ideal solution would be (and I’m sure there isn’t one for everybody), but I was just playing around with the ENP examples again, and I can’t stop drooling. From the beauty of common music notation to the interactive graphical notation, to the capacity to create your own expressons, noteheads, and so on, it’s just too brilliant… for me. I guess I like it. Does it show? ;-)

J.

#92729
Jan 21, 2007 at 2:54pm

I’m a bit concerned. judging from the fact that your posts have
turned to techno-jargon, should I assume that I’ll be required to
learn java and a new API in order to take advantage of this? OR are
you planning to present objects which take advantage of this
technology and integrate directly with max?

If the case is the former, may I make a formal request for a mondo
example patch?

#92730
Jan 21, 2007 at 3:39pm

On Jan 21, 2007, at 1:04 PM, jbmaxwell wrote:

> Sorry… I thought we were talking about graphical timeline/scoring
> interfaces. With mxj it’s already fairly simple (at least *much*
> more so than with Max objects) to make very complex data
> structures, which could potentially be used for sequencing. You
> mentioned Cope, and I’ve actually been working for the past few
> months on an mxj-based system which extends on his ideas, making
> them more interactive and realtime-savvy. I’m just finishing the
> database design and implementation, and it’s truly frazzling my
> brain (which may be easy to do, I suppose). The point being that
> you can create incredibly complex data structures which are
> entirely playable, editable, and so on. So I guess I missed a turn
> in the conversation. Or do you just mean that you wouldn’t have to
> *edit* your score in JMSL’s editor, but would be able to view it
> there?

Yes, that’s what implied. I also noticed that the timeline thread
split into two directions. One concerned with sequencing abstract
events and the other preoccupied with symbolic music notation. My
comment about JMSL refer mainly to the latter.

> I’m a bit concerned. judging from the fact that your posts have
> turned to techno-jargon, should I assume that I’ll be required to
> learn java and a new API in order to take advantage of this? OR
> are you planning to present objects which take advantage of this
> technology and integrate directly with max?
>
> If the case is the former, may I make a formal request for a mondo
> example patch?

No Java expertise will be required and example patches will be
provided once the software is being released (probably by the end of
the year).
At this point I’d like to draw your attention to Nick Didkovsky’s
Algomusic website at http://www.algomusic.com (Nick is the main developer of
the software). You can obtain a temporary license for JMSL after
downloading the software and also try out the existing JMSL/Max
examples.

Georg

#92731
Jan 21, 2007 at 5:40pm

> At this point I’d like to draw your attention to Nick Didkovsky’s
> Algomusic website at http://www.algomusic.com (Nick is the main developer of
> the software).

…and, being a radio guy who just broadcast some
of his music last week, I would commend Nick’s most
recent audio release for your perusal.

http://www.pogus.com/21042.html

#92732
Jan 21, 2007 at 6:34pm

#92733
Jan 21, 2007 at 6:53pm

#92734
Jan 21, 2007 at 7:05pm

#92735
Jan 21, 2007 at 7:16pm

#92736
Jan 21, 2007 at 7:16pm

#92737
Jan 21, 2007 at 7:33pm

On 21 janv. 07, at 20:16, Gary Lee Nelson wrote:

> Nope. autopattr only names UI objects.

Nope. It will name any pattriefied object (button isn’t one, because
it doesn’t store anything). Anyway, you don’t even need autopattr,
because when you duplicate a named object, it’s name will be updated.

Best,
ej

#P button 162 129 15 0;
#P objectname button[1];
#P window setfont “Sans Serif” 9.;
#P window linecount 1;
#P newex 160 90 49 196617 delay 50;
#P objectname toto[1];
#P comment 27 109 118 196617 dupplicate those objects;
#P window clipboard copycount 3;

#92738
Jan 21, 2007 at 8:18pm

#92739
Jan 21, 2007 at 8:34pm

#92740
Jan 21, 2007 at 9:12pm

#92741
Jan 22, 2007 at 4:37pm

Philippe Gruchet wrote:
> Lilypond is free, well-written, and I ‘m just asking *in this very
> particular thread* if someone did the job for Max. Or if someone
> plans to do it.

Any time I did look at Lilypond, I put it away pretty fast, because it
lacked exactly what the demand for a timeline is asking for. An
intuitive connection between userinterface (for scores it would be
something like notes to grab and move around) and their stored data
(sequence events with exact times etc…). Actually I gave up, on even
looking at it. It might print out the most beautiful scores, no doubt,
but it presented itself as an expert engravers tool, those who neither
compose nor play music but aid musicians for publishing their work. For
doing a Max bridge, you’d need to understand the language. It seems to
be an insane amount of work to translate anything into that language if
you’d do it by hand. (I’d better compose than engrave)
Yes, a Max patch would be the only thing which could revive my interest,
but it would stil lack the intuitive user interface if Lilypond doesn’t
have it… ;-)

I still suffer from the lost of Opcodes Overture, some decades ago.
Finale or Sibelius are still very far away from that ease of use…
(The suffer isn’t too hard, I switched to nonscored music… ;-)

Stefan


Stefan Tiedje————x——-
–_____———–|————–
–(_|_ —-|—–|—–()——-
– _|_)—-|—–()————–
———-()——–www.ccmix.com

#92742
Jan 22, 2007 at 4:48pm

Quote: Georg Hajdu wrote on Sun, 21 January 2007 20:34
—————————————————-
> I assume that Manuel’s ingenious solution shows in what direction Max
> could be taken. Integrating his approach into the Max kernel could
> probably speed things up considerably, even with a moving cursor.
> Let’s see what Cycling ’74 has in store for us with version 5.
>
> Georg
>

oh, version 5, version 5… I can’t even stand to think of it. I know 4.5 was probably a big enough upgrade for many companies to call it v 5… but that makes it ever *more* likely that v 5.0 will be a major release. Doesn’t anybody have any tasty bits of info to share? And just how old is v 4 at this point? I know I started on 3.x back in ’97, but I can’t recall when we got 4(??)
It seems to me I haven’t heard from the regular c74 folks for ages, except for a couple of little blurbs from Ben or Topher… Are the elves working overtime?

J.

#92743
Jan 22, 2007 at 5:57pm

On 22-Jan-2007, at 16:48, jbmaxwell wrote:

> I know I started on 3.x back in ’97, but I can’t recall when we got
> 4(??)

I was in the middle of Litter Power 1.0 when Max/MSP 4.0 came out. So
that makes it 2001, prolly mid-year.

Someone was recently casting aspersions on the utility of having old
list archives available online. It’s precisely this sort of question
that can be readily answered with old archives, plus tracking what
features and objects were added when.

————– http://www.bek.no/~pcastine/Litter/ ————-
Peter Castine +–> Litter Power & Litter Bundle for Jitter
Universal Binaries on the way
iCE: Sequencing, Recording &
Interface Building for |home | chez nous|
Max/MSP Extremely cool |bei uns | i nostri|
http://www.dspaudio.com/ http://www.castine.de

#92744
Jan 22, 2007 at 6:42pm

On 22 janv. 07, at 17:37, Stefan Tiedje wrote:

> I still suffer from the lost of Opcodes Overture, some decades ago.
> Finale or Sibelius are still very far away from that ease of use…
> (The suffer isn’t too hard, I switched to nonscored music… ;-)

Overture still exist:

http://geniesoft.com/products/overture/overture.htm

toute ma jeunesse;-)
ej

#92745
Jan 23, 2007 at 12:32pm

Gary Lee Nelson wrote:
> Like spinach, I know it’s good for me.

Oh, they told you its good, but it wasn’t true. I adore spinach though…

Stefan


Stefan Tiedje————x——-
–_____———–|————–
–(_|_ —-|—–|—–()——-
– _|_)—-|—–()————–
———-()——–www.ccmix.com

#92746
Jan 23, 2007 at 10:08pm

Is anyone aware of this: http://debussy.music.ubc.ca/Helpfiles/OSX/
Help/pages/MaxTutorial/MaxTutorial.html ?

Looks like this could be another solution.

Georg

On Jan 23, 2007, at 1:32 PM, Stefan Tiedje wrote:

> Gary Lee Nelson wrote:
>> Like spinach, I know it’s good for me.
>
> Oh, they told you its good, but it wasn’t true. I adore spinach
> though…
>
> Stefan
>
> —
> Stefan Tiedje————x——-
> –_____———–|————–
> –(_|_ —-|—–|—–()——-
> — _|_)—-|—–()————–
> ———-()——–www.ccmix.com
>

#92747
Jan 24, 2007 at 12:25am

Leads to a raw directory. Isn’t clear what to download.

On 1/23/07 5:08 PM, “Georg Hajdu” wrote:

> Is anyone aware of this: http://debussy.music.ubc.ca/Helpfiles/OSX/
> Help/pages/MaxTutorial/MaxTutorial.html ?
>
> Looks like this could be another solution.
>
> Georg

Cheers
Gary Lee Nelson
Oberlin College
http://www.timara.oberlin.edu/GaryLeeNelson

#92748
Jan 24, 2007 at 1:02am

> Leads to a raw directory.

http://tinyurl.com/2nyboj

> Georg Hajdu wrote:
>> Is anyone aware of this: http://debussy.music.ubc.ca/Helpfiles/OSX/
>> Help/pages/MaxTutorial/MaxTutorial.html ?
>> Looks like this could be another solution.

#92749
Jan 24, 2007 at 6:40am

> Unfortunately, I just can’t get excited about JMSL. Maybe the examples
> of notation don’t do the platform justice, but they seem clunky to me.
> Am I wrong? The score interface looks like some old OS 8.1 app to me.
> For $120, it just doesn’t seem like money well-spent, otherwise I
> would probably have bought a license by now.

The notation is slightly clunky at first glance, but that’s also (at
least to my understanding) because the notation is somewhat late in
arriving to the game. (And also, since JMSL exports beautifully into
Finale, Sibelius, Score, etc., it’s assumed that if you want to typeset
it, you can do that with those programs) For now, the money is not in
the notation but in the underlying structure of JMSL. JScore is a
score-editor that runs on top of a scheduler, not vice versa.

What you may not see:

-JScore does great transcriptions, and you have an enormous amount of
control over what the transcriber recognizes. How many played notes
before it recognizes a sextuplet? 1,2,3,4,5,6? How many played notes
in a 13th-let? (etc.)

-JScore can easily represent notes in floating-point pitch.
Quarter-tone notation is included. (for others, you could just write a
plug-in that extracts the fractional part and posts it as a lyric (e.g.
+40) in the appropriate position to the note)

-Ever wanted to have multiple staves with different tempi playing at
the same time? Yup.

-JMSL has very useful data structures as well as a very nicely designed
scheduler (apparently very, very accurate short-term and long-term on
Windows) which operates independently of the GUI. Most of the
sequencing discussion on this thread could be very well executed by a
JMSL MusicShape, for instance. There are lots of data types, and
powerful ideas such as domain-name-spaces for notes. If a note has foo
parameter, and the voice playing the note has foo parameter, they find
each other. (e.g. you don’t have to store it in slot 7 of matrix x)
Double-click the note, and you can edit the value of foo parameter.

-JMSL also has form structures such as parallel and sequential
collections which can be grouped into hierarchies, have crazy looping
behaviors, and talk amongst themselves.

-All the data in JScore can be dropped down into different editors,
entirely independent of JScore.

-Every note is algorithmically accessible.

-Scheduling events, whether 1 or 1000, for now, or an hour from now, is
easy, and you could send events out over a network using OSC, etc.

This page shows some examples of Max and JMSL playing together.

http://www.algomusic.com/jmsl/maxmsp/index.html

Also here’s a description of a few of the things that I have in the
JScore environment I’m working on for my dissertation:
(and all of these work beautifully with ties and microtones)

-Select random% of notes
-Conform selected notes to a chord (fun with select random%). Chords
can be microtonal, and non-octave equivalent.
-RhythmGradient – treat time like a rubber band. The start time of the
first note and the end time of the last note in the phrase remain
fixed, but everything in between is warped exponentially or
logarithmically. Sort of like a phrase flanger.
-MyhillStructuralNotes – Select two notes anywhere on a staff (e.g. 10
measures apart). Specify the number of notes that you want between the
two notes (for example, 7) and the rhythmic evenness (1.00001 =
completely even) and this plugin generates them. Does quarter-tones if
you want, and has voicing rules.

I’m also working on additional tools for easily manipulating contour
and rhythm on the score…

So I guess I’d say, don’t let the graphics fool you. JMSL is amazingly
powerful. It may not be generally for the programming newbie, but it’s
absolutely worth a look.

Peter McCulloch

#92750
Jan 24, 2007 at 7:40am

Quote: peter.mcculloch@gmail.com wrote on Wed, 24 January 2007 06:40
—————————————————-
> > Unfortunately, I just can’t get excited about JMSL. Maybe the examples
> > of notation don’t do the platform justice, but they seem clunky to me.
> > Am I wrong? The score interface looks like some old OS 8.1 app to me.
> > For $120, it just doesn’t seem like money well-spent, otherwise I
> > would probably have bought a license by now.
>
> The notation is slightly clunky at first glance, but that’s also (at
> least to my understanding) because the notation is somewhat late in
> arriving to the game. (And also, since JMSL exports beautifully into
> Finale, Sibelius, Score, etc., it’s assumed that if you want to typeset
> it, you can do that with those programs) For now, the money is not in
> the notation but in the underlying structure of JMSL. JScore is a
> score-editor that runs on top of a scheduler, not vice versa.
>
> What you may not see:
>
> -JScore does great transcriptions, and you have an enormous amount of
> control over what the transcriber recognizes. How many played notes
> before it recognizes a sextuplet? 1,2,3,4,5,6? How many played notes
> in a 13th-let? (etc.)
>
> -JScore can easily represent notes in floating-point pitch.
> Quarter-tone notation is included. (for others, you could just write a
> plug-in that extracts the fractional part and posts it as a lyric (e.g.
> +40) in the appropriate position to the note)
>
> -Ever wanted to have multiple staves with different tempi playing at
> the same time? Yup.
>
> -JMSL has very useful data structures as well as a very nicely designed
> scheduler (apparently very, very accurate short-term and long-term on
> Windows) which operates independently of the GUI. Most of the
> sequencing discussion on this thread could be very well executed by a
> JMSL MusicShape, for instance. There are lots of data types, and
> powerful ideas such as domain-name-spaces for notes. If a note has foo
> parameter, and the voice playing the note has foo parameter, they find
> each other. (e.g. you don’t have to store it in slot 7 of matrix x)
> Double-click the note, and you can edit the value of foo parameter.
>
> -JMSL also has form structures such as parallel and sequential
> collections which can be grouped into hierarchies, have crazy looping
> behaviors, and talk amongst themselves.
>
> -All the data in JScore can be dropped down into different editors,
> entirely independent of JScore.
>
> -Every note is algorithmically accessible.
>
> -Scheduling events, whether 1 or 1000, for now, or an hour from now, is
> easy, and you could send events out over a network using OSC, etc.
>
>
> This page shows some examples of Max and JMSL playing together.
> http://www.algomusic.com/jmsl/maxmsp/index.html
>
> Also here’s a description of a few of the things that I have in the
> JScore environment I’m working on for my dissertation:
> (and all of these work beautifully with ties and microtones)
>
> -Select random% of notes
> -Conform selected notes to a chord (fun with select random%). Chords
> can be microtonal, and non-octave equivalent.
> -RhythmGradient – treat time like a rubber band. The start time of the
> first note and the end time of the last note in the phrase remain
> fixed, but everything in between is warped exponentially or
> logarithmically. Sort of like a phrase flanger.
> -MyhillStructuralNotes – Select two notes anywhere on a staff (e.g. 10
> measures apart). Specify the number of notes that you want between the
> two notes (for example, 7) and the rhythmic evenness (1.00001 =
> completely even) and this plugin generates them. Does quarter-tones if
> you want, and has voicing rules.
>
> I’m also working on additional tools for easily manipulating contour
> and rhythm on the score…
>
> So I guess I’d say, don’t let the graphics fool you. JMSL is amazingly
> powerful. It may not be generally for the programming newbie, but it’s
> absolutely worth a look.
>
> Peter McCulloch
>
>
>
—————————————————-

Well, well. That does sound pretty great. I guess, the first time I heard about it, it was really in the context of getting notation into Max, and not much else. So I checked it out and felt a bit disappointed. But the capabilities you’re talking about would definitely be of interest to me, particularly in the generative/interactive composition stuff I’m doing lately. Plus, almost everything I’m currently doing, in this regard, is already in mxj. So JMSL could work it’s way into that work relatively smoothly, I suspect.

Thanks for the kick. I’ll check it out again.

J.

#92751
Jan 24, 2007 at 11:39am

OK. This looks good. Noteability can sequence max messages and you can
cut, paste and drag them around. The documentation is clear and direct.
I entered this

http://tinyurl.com/2nyboj

Leading me to

http://debussy.music.ubc.ca/Helpfiles/OSX/Help/pages/MaxTutorial/MaxTutorial
.html

were there is some very interesting stuff. Unfortunately the graphic
examples are missing. Keith?

Cheers
Gary Lee Nelson
Oberlin College
http://www.timara.oberlin.edu/GaryLeeNelson

#92752
Jan 24, 2007 at 1:49pm

I can’t resist describing a piece that Nick did using JMSL/Jscore showing
some of the fun-to-be-had. Nick wrote a piece for pianist Kathy Supove
that started with a semi-difficult fragment of music displayed for her at
the piano. She then sight-read the fragment, JMSL transcribed what she
played (with the inevitable few mistakes) and displayed the
transcription. She then sight-read the transcription — all happening in
a seamless sequence — and the process continued. Sort of a Lucier
sitting in a room, but mediated through an amazing pianist.

Personally I’m not a notation-kind-of-guy, but what a nifty idea! Great
performance, too.

brad

http://music.columbia.edu/~brad

#92753
Jan 24, 2007 at 1:56pm

Ha! I’d love to hear this, is a recording available?

Anthony

On 1/24/07, Bradford Garton wrote:
> I can’t resist describing a piece that Nick did using JMSL/Jscore showing
> some of the fun-to-be-had. Nick wrote a piece for pianist Kathy Supove
> that started with a semi-difficult fragment of music displayed for her at
> the piano. She then sight-read the fragment, JMSL transcribed what she
> played (with the inevitable few mistakes) and displayed the
> transcription. She then sight-read the transcription — all happening in
> a seamless sequence — and the process continued. Sort of a Lucier
> sitting in a room, but mediated through an amazing pianist.
>
> Personally I’m not a notation-kind-of-guy, but what a nifty idea! Great
> performance, too.
>
> brad
> http://music.columbia.edu/~brad
>

http://www.overwhelmed.org/anthony

#92754
Jan 24, 2007 at 5:07pm

#92755
Jan 24, 2007 at 10:04pm

Turns out there is (I didn’t realize Nick had put a lot of his stuff
on-line now!):

http://punosmusic.com/pages/zerowaste/index.html

brad

http://music.columbia.edu/~brad

On Wed, 24 Jan 2007, Anthony Saunders wrote:

> Ha! I’d love to hear this, is a recording available?
>
> Anthony
>
> On 1/24/07, Bradford Garton wrote:
>> I can’t resist describing a piece that Nick did using JMSL/Jscore showing
>> some of the fun-to-be-had. Nick wrote a piece for pianist Kathy Supove
>> that started with a semi-difficult fragment of music displayed for her at
>> the piano. She then sight-read the fragment, JMSL transcribed what she
>> played (with the inevitable few mistakes) and displayed the
>> transcription. She then sight-read the transcription — all happening in
>> a seamless sequence — and the process continued. Sort of a Lucier
>> sitting in a room, but mediated through an amazing pianist.
>>
>> Personally I’m not a notation-kind-of-guy, but what a nifty idea! Great
>> performance, too.
>>
>> brad
>> http://music.columbia.edu/~brad
>>
>
>
> —
> http://www.overwhelmed.org/anthony
>

#92756

You must be logged in to reply to this topic.