how to save/recall multiple coll in one click?
hi there
I use several coll(s) in my patch to store some kind of playlists.
Until now I had to save on disk each coll's content individualy to get a kind of preset management for end user.
I want the user to be able to load a single file to restore the content of all the coll(s).
is there any simple way to achieve this?
I took a look at pattr but it doesn't want to bind to a coll when I tried.
the only way I see is to use only one coll for all my needs then save its content, but it is a lot of work to rebuild the patch around this concept.
thanks a lot for you help.
message: flags 1 0 ? see help file (patcher i/o)
hth ole
Hello Olivier,
For this I would definitely use a setup of either:
1) Multiple "read file_x" "write file_x" "whatever" messages, connected
through a [t b b b b b], or , perhaps more elegantly,
2)a solution using route, sprintf and send objects.
I guess in order to provide an example or some more precise help I would
need to see a patch, demonstrating the problem.
andreas wetterberg.
Olivier Sebillotte skrev:
> hi there
> I use several coll(s) in my patch to store some kind of playlists.
> Until now I had to save on disk each coll's content individualy to get a kind of preset management for end user.
>
>
> I want the user to be able to load a single file to restore the content of all the coll(s).
>
> is there any simple way to achieve this?
>
> I took a look at pattr but it doesn't want to bind to a coll when I tried.
>
> the only way I see is to use only one coll for all my needs then save its content, but it is a lot of work to rebuild the patch around this concept.
>
> thanks a lot for you help.
>
> .
>
>
Quote: oe7 wrote on Wed, 28 May 2008 00:31
----------------------------------------------------
> message: flags 1 0 ? see help file (patcher i/o)
>
> hth ole
----------------------------------------------------
thanks Ole,
but this is not an option for me because the final version of the patch will be a .mxf, so the user won't be able to modify nor save the patch.
unless I missed something about .mxf.
olivier
Quote: Wetterberg wrote on Wed, 28 May 2008 00:55
----------------------------------------------------
> Hello Olivier,
>
> For this I would definitely use a setup of either:
>
> 1) Multiple "read file_x" "write file_x" "whatever" messages, connected
> through a [t b b b b b], or , perhaps more elegantly,
>
> 2)a solution using route, sprintf and send objects.
>
Thanks Andreas
well, I won't post an example because it is more a question of workflow for the en user than anything else.
I will try to make it cristal clear,
here it is:
Imagine 6 virtual audio file players
each player as its own play list
the playlists are managed via a coll objects
At the end of building a play list for each audio player, the end user can save it as a file on disk via the "write" message sent to coll,
I send a simple "write", so the user can choose a name of its own to save the playlist.
the next time you open the pathc, you load the playlists via a "read" message send to coll, then choose the file from your finder.
this works great
except that you have to do this for every audio player.
what I want is:
1)keep this scheme to let the user the possibility to load a previously saved playlist build for a particular player into another player
2) offer a second option to the user to save / load the 6 playlists with a very few clicks without having to name each playklist before saving, but I want to give a name to this "global preset", so that I will be able to create as many as I want.
if 1) and 2) makes my request impossible, I could forget about 1) and keep 2).but I want to keep a coll opbjet for each player.
is this more clear now ?
thanks a lot for your help
Olivier
The way I do this is [savedialog fold], i write all the colls to the same folder. The folder name is what the user should specify, the colls always have the same names.
Works pretty well imo, only the MacOs dialog isn't everything (yes, it still displays 'open' in the top bar instead of 'save' when using fold).
I hope you are on max5...
let me know if it works for you
ole
hey! many suggestions coming there :-)
thanks Bas and Oe7.
after a few hours tweeking Oe7's patch I managed a solution not that bad.
Here it is attached.
I can do all I wanted, I got 4 coll dumps, one for each of the 3 colls plus a kind of master list I called preset.
for example:
test olivier
test olivier1
test olivier2
test olivier3
So the end user will be able to
- name the playlists (I add "tosymbol" to avoid spaces issues).
- save it wherever he wants on its disk
- load one playlist (test olivier1,2,3) or the 3 playlist in a single click (test olivier).
So far so good
But one issue remains,
He must leave the playlists in the same folder as the .maxpat
which lead us to a kind of messy folder very quiclky.
Of course he can save "test olivier" where he wants, the opendialog will let him navigate thru the disk.
But the others colls won't find there respective files (test olivier1,2,3)
The bottleneck is coll object, to load a file into it you just specify its name, not the file path.
Coll will look only into the Max file's paths.
If you let the .maxpat beside the coll files it works because Max keeps the path of the latest opened patch.
One solution could be to add in max's "Files preferences" the folders the user will create, but It won't work when I will build a standalone application.
For fun I tried to connect a single "read" message to the 3 colls, if you click the "read" message Max opens a dialog box for each coll, one by one. Not so bad but not elegant enough for me.
I want a folder, named by the user and with all the colls dumps inside. This folder doesn't have to be in a particular place.
So the last chance I see is to create a big coll, fill it with the datas from all other colls.
Then it will be very easy to save/load its content as I want.
All the job will be to create a scheme to fill it,and another one to dump its content to the original colls.
I will keep the option to save individual coll contents by the way.
what do you thing of this amigos ?
Olivier
PS: sorry for quite long message
Coll will read a full filepath just fine, that's exactly what i do. Just send it a 'read' message with the path behind it. Do make sure your symbols are correct. Here (sorry, i don't have max5 atm):
Quote: Bas van der Graaff wrote on Mon, 02 June 2008 10:39
----------------------------------------------------
> Coll will read a full filepath just fine, that's exactly what i do. Just send it a 'read' message with the path behind it. Do make sure your symbols are correct. Here (sorry, i don't have max5 atm):
>
> #P window setfont "Sans Serif" 9.;
> #P window linecount 1;
> #P newex 307 160 68 196617 prepend read;
> #P newex 307 132 51 196617 tosymbol;
> #P newex 207 160 68 196617 prepend read;
> #P newex 207 132 51 196617 tosymbol;
> #P button 207 42 15 0;
> #P newex 307 108 80 196617 sprintf %scoll2;
> #P newex 207 108 80 196617 sprintf %scoll1;
> #P newex 207 68 76 196617 opendialog fold;
> #N coll ;
> #P newobj 307 185 53 196617 coll;
> #N coll ;
> #P newobj 207 185 53 196617 coll;
> #P connect 2 0 3 0;
> #P connect 2 0 4 0;
> #P connect 4 0 8 0;
> #P connect 9 0 1 0;
> #P connect 8 0 9 0;
> #P connect 7 0 0 0;
> #P connect 6 0 7 0;
> #P connect 3 0 6 0;
> #P connect 5 0 2 0;
> #P window clipboard copycount 10;
>
----------------------------------------------------
Thanks a lot Bas, I didn't know that, I can't remember reading this in the MAx5 reference manual for Coll.
It works for Read and Write Coll wherever you want !
Too bad I find this now, I had to build a scheme to merge all my colls in a big one, then save / read it.
It works fine and wasn't that difficult though.
... and I have only one file to manage instead of 6.
Anyway, thanks again to everyone there who helped me, I wish this will be others people too.
Hi
I've use this way on a patch.
just add many cools as you like! It work fine!
Quote: ..::RFC::.. wrote on Mon, 02 June 2008 21:49
----------------------------------------------------
> Hi
>
> I've use this way on a patch.
>
> just add many cools as you like! It work fine!
>
----------------------------------------------------
wao !
just to clarify:
is "lista audio" the audio file library where the cue lists choose audio file to play ?
what is scriptlist ?
very interesting indeed.
thanx
Hi again...
Found this! Same thing, but this was to present on school... one hour before while waiting for my time to present, I made some modifications and corrections. Editor half work for example!
Thanks for your interest!
Quote: ..::RFC::.. wrote on Tue, 03 June 2008 00:50
----------------------------------------------------
I'm working in a theatre as a sound technician and I've got lot of free time to do that!
----------------------------------------------------
this is a great patch !
Funny thing is that I am working on a player dedicated to theater application as well :-)
There are very few applications for this kind of job.
I started this project from scratch because I need a player with full OSC support to drive a Lemur.
My patch is almost ready to release, only a few tests to run.
For now it is very simple but I planned some of the features you already implemented.
I will let you know when it will be released.
Thanks again and bravo.
Hi
I've made lots of plays were I need many players. I make sound design like many light designers do they sets. I use lots of "sound point" and like to have control on ambience, effects and music. My experience tells me that we can't have only a set of CD player to that because if you do, you will have lots of limitations... you can't edit a CD in real time, and theatre is a real time thing. Lots of things can be different from the last show to today's show. On a real time "happening" you have to control in real-time.
On SCAT6 I've tried to respond to that dynamics. But now I see that can be more complicated. My current project tries to respond in a diferent way. The concept is the same but the way as you interact with the software and the patch it self is more like "lego" you can fit some blocks to reach your needs, and the "players engine" is only one of the main blocks...
I'll let you know about it, but for now, lets made the thing...
There are always lots to talk about... in theatre every day is like the first day! everything can be new and totally diferent!
Good luck for your patch...