Mainstage 2 and SL.....Sweeeeeet!

Using SL inside Apple's MainStage

Moderator: jesse

Stavros
Posts: 33
Joined: Tue Jul 07, 2009 3:12 pm

Mainstage 2 and SL.....Sweeeeeet!

Post by Stavros »

Just bought Logic 9 and Sooperlooper appears to work beautifully with mainstage 2!
No need for any other software...like jack or midi patchers etc.

Load Sooperlooper into an Aux channel strip and bus the signal to it from any input strip.Allows for multiple inputs.
Then create a button on screen....Go to the screen control inspector in edit mode and select Sooperlooper.
Sooperloopers bindings show up in the mappings window.Select the function you wish to map to.
If you do this at the concert level...SL is available on all patches and sets...BRILLIANT!

I am having a bit of trouble though....some help with this please Jesse.
The bindings appear to dictate some of the available peramtters depending on what they do.
I say this because the available peramiters in the mapping window change depending on the selected binding.

The "Selected_Loop_Num" binding for example gives me some peramiter settings which allow the input of numbers to designate the selected loop.Works great.
I have 4 buttons....When I select any particular loop num the button remains lit and the other loops turn of like a toggle.
The "Record_Sel" command however does not behave this way. When I assign Rec_Sel to a button I do not get the same peramiters available.
So I cant specify a record button for a specific loop. Am I using the wrong binding to do this? I cant see any other record bindings.
Example...4 record buttons...each for loops 1-4
Any thoughts on how I can do this in mainstage2?

Finally there is a very important binding missing IMHO.
Some kind of RECORD EXCLUSIVE command which would allow me to start recording on the NEXT or SEL loop while switching the the currently recording loop into play mode.
The Exclusive refers to fact that only one loop is recording at a time.
For example....
I lay down a guitar part on loop 1.
I press Record_Exclusive_Next (or Record_Exclusive_Selected)
Loop 1 stops recording and starts playing back and loop 2 starts recording.
Its kind of like overdubbing onto separate loops.

This seems like a very obvious implementation and practical function.
Is there a way to do this already that I am missing?
If not is it possible to create such a binding....PLEASE

Anyway...Im blown away at how versatile Mainstage is and to be able to essentially customise SL interface is awsome.

Please share some info on how you are using SL with mainstage...would love to hear it!

Happy looooopin'

jesse
Posts: 530
Joined: Sat Sep 06, 2008 9:46 am
Contact:

Re: Mainstage 2 and SL.....Sweeeeeet!

Post by jesse »

The "Record_Sel" should actually do a Record operation on whichever loop you had previously selected (using selected_loop_num for instance). If you want to bind a record to specific loop, you should see bindings available further down to do that. I'm not sure how mainstage presents the parameters to you, but you should see a bunch of repeated blocks of parameters the first ones ending in "(sel)" then maybe "(all)", then parameters starting with a number which represents the loop #. This obviously adds up to a crap-load of parameters, hopefully MainStage show them all to you. Live has been known to only show the first 100 or so. If you can post a screenshot of the parameter selection window, I would be curious.

As for the record exclusive next, etc.... I think you are correct that SL doesn't quite have the feature as a single binding. It is very close to the RecordSoloNext function, except that you don't want to mute the current loop, if I understand correctly.

Stavros
Posts: 33
Joined: Tue Jul 07, 2009 3:12 pm

Re: Mainstage 2 and SL.....Sweeeeeet!

Post by Stavros »

Hey Jesse
Happy to see this forum is alive. Thanks for the response.
It appears that there are roughly about 260 bindings available.
The first set appears with a 1- in front. I assume they are specific to loop 1?
After that everything is alphabetical.
Ive included a screen snap of the mapping screen and the difference between the
Sel binding and the Rec Sel binding.
I figured that I was using the wrong command for the specific loop record...what shoul I be using?

As for the Record_Exclusive_Next or Record_Exclusive_Sel
Thats exactly what I meant.
Start recording on Loop 1
Hit Record_Exclusive_Next
Loop 1 stops recording and starts playing back.
Next loop starts recording. etc

This kind of opens the door to the idea of working with multiple loops but only one is active at any given time.
In sequence instead of parallel......a sequence mode perhaps...where only one loop can play at a time.
Would be easier to build songs in such a mode....Just a thought.

Anyway ..have a look at these screen grabs and let me know what you think.

ps- To have SL working in this flexible mainstage enviro opens up a whole new world

Thanks kindly
S
Attachments
Picture 22.png
Picture 22.png (29.2 KiB) Viewed 69261 times
Record_Sel does not reveal numerical permiters
Record_Sel does not reveal numerical permiters
Picture 33.png (67.52 KiB) Viewed 69260 times
Selected_Loop_Num reveals numerical peramiters
Selected_Loop_Num reveals numerical peramiters
Picture 32.png (73.65 KiB) Viewed 69252 times

Stavros
Posts: 33
Joined: Tue Jul 07, 2009 3:12 pm

Re: Mainstage 2 - SL bindings revealed in mappings window

Post by Stavros »

Heres a bunch of screen grabs of the bindings Mainstage shows.
Thats pretty much all of them.
Any thoughts.
Cheers
Attachments
bindings2.jpg
bindings2.jpg (218.18 KiB) Viewed 69259 times
bindings1.jpg
bindings1.jpg (209.75 KiB) Viewed 69252 times

jesse
Posts: 530
Joined: Sat Sep 06, 2008 9:46 am
Contact:

Re: Mainstage 2 and SL.....Sweeeeeet!

Post by jesse »

Yes, the 1-record is the binding to record on the first loop. The record (sel) should record for the selected loop. A question, did you create more than one loop using the SL gui's session menu? If you had, I would expect to see sets of parameters with 2-,3- etc. That could be the source of your confusion regarding the loop bindings, if you don't have them created. Once you do create them with the SL gui and you save your setup in mainstage, they should be restored the next time, so you won't always need the SL gui.

As for your wish for a mode where only one loop plays at a time, that is exactly the intention of the solo, solo_next/prev, record_solo, and record_solo_next/prev commands. They basically let you pick one loop to solo while muting the others, or start recording on another loop while muting the others. The thing that isn't there is the command to finish recording on one and start recording another immediately *without* muting the first one. I think the lack of the other loop instances may be the sticking issue here too?

Stavros
Posts: 33
Joined: Tue Jul 07, 2009 3:12 pm

Re: Mainstage 2 and SL.....Sweeeeeet!

Post by Stavros »

Yes I have 4 loops setup using the SL GUI. I have 4 buttons in mainstage to select each loop. Works great. Recording on selected works fine too.
But the numbered bindings for 2,3,4 do not show up in the mappings window. Only loop 1's bindings show up as you saw in the screen grabs.
I have saved the SL setting in the plugin window and saved the mainstage concert and setup. Still the same...no numbered bindings...hmmm

As far as the request for a new binding goes...its really just to accomplish a simple task that is not really possible right now, but is extremley useful.
Continue recording onto a new loop without stopping....and hear the previously recorded loop while recording the next.
The only problem with the existing bindings is the SOLO part...it doesnt let you hear what you just laid down on the previous loop.
This kinda possible right now with Record_Next_Solo but Id have to unsolo immediatley...not practical.
If you watch this beautiful little video of Imogen Heap playing Just for Now....you'll see what I mean. Its breathtaking!
http://www.youtube.com/watch?v=25VGdNU3nrU

Ive included some screen grabs of my Mainstage SL setup...

Please let me know if you have any more suggestions about why the other numbered bindings are not showing up in mainstage.

Thanks kindly Jesse....SL is a beautiful thing...a privelage to be able to communicate directly with you...cheers
Attachments
Picture 37.jpg
Picture 37.jpg (224.18 KiB) Viewed 69237 times
Picture 36.png
Picture 36.png (251.99 KiB) Viewed 69216 times

Stavros
Posts: 33
Joined: Tue Jul 07, 2009 3:12 pm

Re: Mainstage 2 and SL.....Sweeeeeet!

Post by Stavros »

FYI...
I also tried changing the defaults in SL preferences from 1 loop to 4
and the default loaded session but it doesnt seem to make a diffeence.
:)

Stavros
Posts: 33
Joined: Tue Jul 07, 2009 3:12 pm

Re: Loop_Pos binding not working

Post by Stavros »

Hey Jesse
Sorry to bug....last question really
Most of the bindings seem to work fine
but Im not getting anything from the Loop Position binding
which makes it rather difficult to see whats happening.
Funny enough the Scratch Pos works fine... as do Rate and pitch.

jesse
Posts: 530
Joined: Sat Sep 06, 2008 9:46 am
Contact:

Re: Mainstage 2 and SL.....Sweeeeeet!

Post by jesse »

OK, thanks for the tip on the loop position... it is different from the rest in that it is a read-only display parameter, whereas the other can be changed. I will check on how it is defined in the code. I will also check to see if there is some missing notification that mainstage needs in order to reload the available parameters after the loop count changes. AU Lab (a plugin host included with Apple's XCode development package) sees all the parameters fine when more loops are defined....

Stavros
Posts: 33
Joined: Tue Jul 07, 2009 3:12 pm

Bindings do show up in AU LAb

Post by Stavros »

I just checked SL in AU Lab2 and yes the additional loop peramiters do show up...interesting?
They are also arranged quite nicley!

I figured the Loop Position binding was different from the others somehow.
Be nice to get that one working to get some visual feedback.
Thanks ever so much Jesse!

Heres some picks of the AU Lab window
Attachments
Picture 41.png
Picture 41.png (85.51 KiB) Viewed 69174 times
Picture 40.png
Picture 40.png (99.54 KiB) Viewed 69163 times

jesse
Posts: 530
Joined: Sat Sep 06, 2008 9:46 am
Contact:

Re: Mainstage 2 and SL.....Sweeeeeet!

Post by jesse »

OK, I might have found a fix for the parameter list notification to show the other loops, try the version I linked to below to see if it is any better. This version also fixes updating for loop_pos, loop_len, cycle_len, and free_time.

Let me know how it goes!

http://essej.net/sooperlooper/SooperLoo ... 4test1.dmg

[PS: this is an Intel only build]

Stavros
Posts: 33
Joined: Tue Jul 07, 2009 3:12 pm

Re: SL revision feedback

Post by Stavros »

Still no bindings beyond loop 1 unfortunately. Bummer!
I cant imagine why mainstage cant see them if AULab can.

The Position and Length bindings are giving a numeric readout now. Yeah!
The were not before.
Time is rounded out to the second as you can see in the screenshot.

Is there a way to have the Loop Position provide visual feedback on the horizontal bar?
The scratch position binding works with a graphic bar giving visual feedback of position.See image. Very nice.

Mainstage lets you use a dial or bar or readout..whatever graphic you want.
I guess it would have to be a percentage or something so mainstage knows how much of the total length of the bar to fill.

Thanks!
Attachments
Picture 45.png
Picture 45.png (202.03 KiB) Viewed 67537 times

jesse
Posts: 530
Joined: Sat Sep 06, 2008 9:46 am
Contact:

Re: Mainstage 2 and SL.....Sweeeeeet!

Post by jesse »

OK, this test release should make four loops worth of parameters show up at first. Also the position is now displayed as a ratio so the bar should work. Also changed the unit of the other time fields so they should show more digits (hopefully).

http://essej.net/sooperlooper/SooperLoo ... 4test2.dmg

Let me know....

Stavros
Posts: 33
Joined: Tue Jul 07, 2009 3:12 pm

Success!

Post by Stavros »

SUCCESS
YOU ROCK JESSE!@#$%^&*
This is a game changer!
The 4 sets of bindings show up in mainstage! Awsome!!!
Any additional loops I create however still do not...limited to the 4 you created.

THe position binding now WORKS beautifully !@#$%^
Full visual feedback on the bar, meter, slider, dial...whatever.
The numerical readout also displays 10th of a second increments...nice.

It is now possible to setup a fully customized SL interface in mainstage with full visual feedback!
Ever so grateful
Thank you
Thank you
Thank you
:)

ps- now if mainstage would just allow us to string bindings together like macros?....that would just take the cake...maybe applescripts does allow that somehow...I'll look into it....but thats another conversation.
Ill post some images here once I get my final interface setup so you can see how Im using it.

Cheers mate!
Stavros
Attachments
Picture 47.png
Picture 47.png (150.6 KiB) Viewed 67519 times

jesse
Posts: 530
Joined: Sat Sep 06, 2008 9:46 am
Contact:

Re: Mainstage 2 and SL.....Sweeeeeet!

Post by jesse »

Cool. It sucks that an apple product just ignores the notification that the parameter list has changed. It should probably be reported as a bug to Apple...

In the meantime I can prepopulate the list with as many loops worth as you want, I should probably do 8.

jlc

Stavros
Posts: 33
Joined: Tue Jul 07, 2009 3:12 pm

Re: Mainstage 2 and SL.....Sweeeeeet!

Post by Stavros »

8 would be awsome!
cant see using more than that...it gets unruley!

Im using funky little nano kontrol to set this up
freakin unbelievably cool!
post pics soon

jesse
Posts: 530
Joined: Sat Sep 06, 2008 9:46 am
Contact:

Re: Mainstage 2 and SL.....Sweeeeeet!

Post by jesse »

OK, you now have 8. I also threw in your requested commands record_exclusive, record_exclusive_prev/next which end any operations on other loops, and start recording on the specified/selected, or switch to the next/prev then record.

http://essej.net/sooperlooper/SooperLoo ... 4test3.dmg

Test it out for me and if it looks good, this will probably become the next released version.

Stavros
Posts: 33
Joined: Tue Jul 07, 2009 3:12 pm

Record Exclusive.....YEAH!

Post by Stavros »

Great Jesse...Thanks for doing that.
All 8 bindings are showing up....beautiful.
Heres some preliminary Record_Exclusive feedback.
1-
If quantize is turned OFF, the RECORD EXCLUSIVE binding behaves as expected. Nice. Current loop is not SELECTED. however.
I think the loop should also be automatically selected so you can immediately use other commands for selected loop.
This also makes sense for the general record commands....to activate current loop.
2-
If quantize is OFF, RECORD NEXT EXCLUSIVE works as expected.
And it automaically SELECTS the new loop....nice.

RECORD EXCLUSIVE PREVIOUS does not work for some reason(true for all)...simply toggles record on and off.

3-
If quantize is ON....RECORD EXCLUSIVE has a small problem.
If used while recording the FIRST loop.....it waits one cycle before entering record on the second loop.
So it plays the first loop back again before it starts recording....should kick into record immediatley.
After the second loop it behaves as expected.
Also does not SELECT current loop automatically....should.
4-
If quantize is ON...RECORD EXCLUSIVE NEXT behaves the same as above.
Waits one cycle before recording second loop....should kick in immediately.
After that it behaves as expected.
5-
REL SYNC appears to mess things up real good.
Second loop kicks into record immediately
but subsequent loops keep flashing, waiting irratic on off
6-
It would be REALLY nice if you had the RECORD_or_OVERDUB variation with these EXCLUSIVE commands.

Hope that feedback helps!

FINALLY....you've done a ton of stuff here.....but just have to ask...for future thought perhaps.

as is common with most of the hardware pedals...
Live's new looper plugin has a very cool multi-function SINGLE BUTTON binding.(alongside to usual ones)
First click REC(EXCLUSIVE)
if recording...Second click goes into PLAY
if playing....next click goes into OVERDUB
if overdubbing...next click goes into play
etc
Double click STOPS
Hold for more than 2 seconds UNDO

It allows for alot of control with a simple button.
4 pedals on the floor and your rockin'

Would it be possible to create such a binding for SL?
Something to think about for future release perhaps.

Thanks for doing all these revisions Jesse...code makes dizzy
I cant imagine how you pull this stuff off.....
You rock man!

cheers mate

s

Ecchi
Posts: 6
Joined: Fri Aug 21, 2009 6:35 am

Re: Mainstage 2 and SL.....Sweeeeeet!

Post by Ecchi »

Hey guys,

been following this the last couple of days and I'm really impressed! You've made SL even more valuable than it already was and I'm also really impressed with your dedication, making changes this fast!

I'm gonna try this out as soon as I get home and I'll definitely come over to keep checking the progress (and finding that donate button)!

jesse
Posts: 530
Joined: Sat Sep 06, 2008 9:46 am
Contact:

Re: Mainstage 2 and SL.....Sweeeeeet!

Post by jesse »

Re 1: Agree, for this exclusive commands it should select the loop. As for the general record command, I disagree for the moment.

Re 2: will check out the prev issue.

Re 3: I had hoped you wouldn't discover this so quickly :) I did notice this already, and unfortunately the fix is not straightforward. Due to
latency compensation when you finish a record the playback loop position jumps forward a bit to compensate for the audio buffering already queued up
in the playback system. The sync logic (without rel sync) is pretty strict and won't trigger since it is past time. The fix would touch a lot of stuff I didn't want to touch just yet.

Re 5: Yeah, I saw this rel sync problem too, but didn't have time to get into it as the logic is a little complex for late night.

Re 6: Do you want prev/next variations of that too?

Re SINGLE BUTTON: As a matter of fact I also updated record_or_overdub last night to do a UNDO ALL on a long press (>1s) but didn't bother to tell you!
Big problem for you is the that the exposed AU command parameters don't have the ability to have press/release logic. I have no idea how you would present them to the plugin host
so that you could actually have a "momentary" logic involved with them, maybe treat them as a control with 2 values, 0 or 1, and if the host can provide you with a momentary logic? However, if you instead use SL's builtin midi bindings and have a controller that can actually send separate press/release events (for instance the FCB1010 in note mode) you can make the midi bindings in SL to do it. In the meantime you can check it out using the GUI's keybindings, if you set a keystroke for it, the long-press logic will work.
Adding some sort of double-click logic into SL would be an interesting feature too, not yet there.

Stavros
Posts: 33
Joined: Tue Jul 07, 2009 3:12 pm

Re: Mainstage 2 and SL.....Sweeeeeet!

Post by Stavros »

1- no biggie

2- all prev functions were not working

3- Ahhh...so it is rocket science!
Even as it is right now its better than nothing, just not ideal.

5- ...like opening a can of worms no doubt...:)
rel sync is VERY cool feature!

6-Prev/Next variations of Record_or_Overdub Exclusive commands....... Absolutely...Please!

Re: Single Multi function Button...HAH!..thats a hoot..I was hesitant to ask since your doing so much already.
Great that your exploring it already. I dont know how familiar you are with mainstage GUI
There is a momentary type option but that changes the way the record works too..
If I select the momentary function then SL records as long as I hold the button down.Then it does the same for overdub. Cant seem to get any undo happening even in momentary mode. Sorry Im not very technical.

Check out the pics of GUI I attached..they might be helpful.

RE: press and Hold

found this in a forum, heres a link and excerpt
http://discussions.apple.com/thread.jsp ... ID=1959737

A momentary button for MainStage just means: this button sends different values for down AND up. This is good!

This allows you to use this button in two ways: as a temporary switch (as long as it is pressed, do this) or as a toggle (every time, I press it, trigger this). But this done in Edit mode via the momentary checkbox there.

If the button would be a single value or a toggle value, it would only send a value on down, but NOT on up. This doesn't allow the momentary behavior, because the hardware doesn't support it.
Attachments
Picture 56.png
Picture 56.png (49.49 KiB) Viewed 74141 times
Picture 53.png
Picture 53.png (61.53 KiB) Viewed 74140 times
Picture 52.png
Picture 52.png (74.42 KiB) Viewed 74138 times

jesse
Posts: 530
Joined: Sat Sep 06, 2008 9:46 am
Contact:

Re: Mainstage 2 and SL.....Sweeeeeet!

Post by jesse »

Alright, I added and fixed the following:

- exclusive record commands now select whatever loop they are applied to
- fixed relative sync issue when doing exclusive record ops
- fixed _prev issue
- added record_or_overdub_excl* commands
- added optional press/release logic to commands in AU. look for a new toggle parameter called "Press/release for commands" and
turn it on. Then try out mainstage's press/release button bindings, and set press to be 1, and release to be 0. Let me know.
- realizing it was too easy, I also added double tap for the record_or_overdub* which does an UNDO.

http://essej.net/sooperlooper/SooperLoo ... 4test5.dmg

Stavros
Posts: 33
Joined: Tue Jul 07, 2009 3:12 pm

Fixes

Post by Stavros »

Hey Jesse
FANTASTIC! Great Job!@#$%

All the fixes appear to be working. Prev works, Sel works, Rel Sync works! Awsome.Its a whole new world I tell ya!!!

Still a one cycle pause after the first cycle when using Rec exclusives.Not a problem.

REALLY GREAT IDEA!!!! but I cant seem to get the double click for UNDO working?

RE: UNDO...mystery
If I press Undo after a single loop cycle recording...it clears the loop and stops playing(good)
If HOWEVER theres more than one action ...an overdub for example...the Undo behaves differently...
undoes the secondary actions but will not go all the way back to clear the loop.(bad)
Is it designed that way or is it an bug? Would make sense to be able to clear initial recording?

Finally
Forgive my ignorance but What is the purpose of the press/release logic command? What does it do?How would it be used?
I see it in the bindings...turned it on but nothing changes.
Button TYpe is set to press/release but
The button on/Button off options remain greyed out in mainstage mapping window... regardless if momentary is selected.
Can you clarify this...how would it change button behaviour?

These new FEATURES really add alot of new potential to working with SL.
MUCH GRATITUDE
Now get some SLEEP FOR GODS SAKE....:)

jesse
Posts: 530
Joined: Sat Sep 06, 2008 9:46 am
Contact:

Re: Mainstage 2 and SL.....Sweeeeeet!

Post by jesse »

Re your UNDO mystery... yes, it used to be like you expected... but several people suggested that it should not go all the way back to the cleared state once you commit to a loop. It annoyed them when they didn't know how many levels of undo were left and all of a sudden everything went silent. undo_all (or a long-press of undo) always does a clear. So when you have the ability to bind press/release (eg with midi note messages) you have more power.

I don't know what mainstage is doing with regard to button logic. I wonder if the parameter has to be a certain unit or min/max range for it to work right. The intention of my "Press/release command" parameter is to make SL use internal down/up when the value is 1/0, vs its prior operation of using the 'hit' whenever any change event comes in. I could not easily test this here, as I don't have a host that actually lets me deal with it in the form of a button.

As for your double-tap undo on the record_or_overdub* commands... I realized it will only work when the "Press/release command" is on. Will fix that.

Stavros
Posts: 33
Joined: Tue Jul 07, 2009 3:12 pm

Re: Mainstage 2 and SL.....Sweeeeeet!

Post by Stavros »

Hey there Jesse
Check out my first crack at a functional mainstage interface for SL.
I want the flexibility of affecting loops directly or with the Prev/Next commands.
Heres an 8 loop setup with individual REC/Solo/Mute/FB/Level/Pos
9th strip is a master Level/Feedback
and a common set of commands accross the top for the Selected loop and a nice big fat dial display for current Loop POS.
Mirrors the little Korg Nano Kontrol nicley. Has 4 scene to expand on functions. Its a beautiful thing.


Ive always imagined SL as a single loop interface adressing multiple loops in parallel or in sequence.
The interface then reflects the state of the active loop. This aint quite it but its a start.
It actually makes me appreciate how difficult is is to organise all this data in an elegant manner...
SL does a good job of this!


Re:Undo behaviour....If the hold is not possible from mainstage....Hows about adding double click to CLEAR the loop?

THe new Exclusive commands make it alot easier to work in a linear fashion....CUDO's!

The Rate/Pitch/Stretch/Scratch is fun but can get outta hand pretty quickly.
I have created reset buttons and they work fine. Is it possible to create a single command to reset all of them at once?

YOWSAH!@#$%^&
SL with mainstage ROCKS
Thank you
:)
Attachments
Picture 61.jpg
Picture 61.jpg (214.99 KiB) Viewed 74084 times
SLMainstageGUI1.jpg
SLMainstageGUI1.jpg (233.47 KiB) Viewed 74088 times

Post Reply