General

Lemur 5

Started by Softcore on .

Sign in or create an account to join the conversation.

54 posts

v5 editor
I know my eyes aint what they used to be but the text in the script editor and any editable field becomes distorted when the pane is enlarged in fact the script editors first 2 characters are only readable when the editor is 1inch wide .i'm on xp by the way.

crashing too as previously reported by phil999

editor crashes when checking the anti alias box

i have unchecked the anti alias box in the in app editor and these radial/rotary templates now download to the editor without a crash, looks like thats could be yer problem
I tested around a bit with the sequencers. The timing is pretty spot on especially when used wired. Over Wifi (no adhoc) it wasn't that tight though still alot better than it used to be.

There is one thing that is a bit annoying and that is the little hickup when the Clock sending Apllication (in my case Reason) is going through a loop. Seems like Step 1 is triggered twice when the Song Pointer jumps from the right to the left loop marker. I have checked for the correct loop setting.
Maybe it is Reason, maybe something is intepreted as a clock pulse that shouldnt be. Can someone check this with another program? I am using the iconnect midi2+ without the daemon running. You can even see the little hickup on the Lemur.

Edit: checked Genome slaved to Reason and the hickup doesnt appear.

Also the provided sequencers seem to not respond to stop messages. They keep on running when stop in the sequencer is pressed. Is this because they are coded this way?
I loaded the radial or rotary objects into lemur on ipad 2 then immediately entered edit mode and selected the radial/rotary objects and deselected the anti-alias option.
Then in the lemur editor I used the usual connection method highlighted my iPads IP address then pressed download .
The template is now in the editor .
But I have to say the image in the editor is out of proportion , furthermore I modified one of the scripts to try and create a round button which whilst ok on the ipad , only part of it is visible in the editor regardless of the size of the canvas object.
In the most of it is always outside the boundary of the canvas object.

The distorted script and field text is causing problems even the name of the template in the title bar of the window is barely readable

The editor will crash immediately if the anti-alias option is selected
electrofux wrote:I tested around a bit with the sequencers. The timing is pretty spot on especially when used wired. Over Wifi (no adhoc) it wasn't that tight though still alot better than it used to be.

There is one thing that is a bit annoying and that is the little hickup when the Clock sending Apllication (in my case Reason) is going through a loop. Seems like Step 1 is triggered twice when the Song Pointer jumps from the right to the left loop marker. I have checked for the correct loop setting.
Maybe it is Reason, maybe something is intepreted as a clock pulse that shouldnt be. Can someone check this with another program? I am using the iconnect midi2+ without the daemon running. You can even see the little hickup on the Lemur.

Edit: checked Genome slaved to Reason and the hickup doesnt appear.

Also the provided sequencers seem to not respond to stop messages. They keep on running when stop in the sequencer is pressed. Is this because they are coded this way?
There are a couple different ways to handle clock start/stop/run messages, we've tried to accomodate for all cases but there might be some particularities about the way Reason handles clock messages.

Does this problem occur with other DAWs, or only with Reason?
oldgearguy wrote:So if our app is now broken under 5.0, do you have any suggestions for fixing it?

Quick summary -
(the reverse order of the operators is due to the way Yamaha laid out the data in the sysex messages. By using a reverse order in the array, it makes life much easier in other places)
the code looked like this:

decl i, tmpOp, operators = {OP7, OP6, OP5, OP4, OP3, OP2, OP1}; // OP7, OP6, etc are the names of containers.

// Focus is a custom button inside each container and I want to reset it for OP1->OP6
for (i=1; i < 7; i++) {
tmpOp = operators;
setexpression(tmpOp.Focus, 'x', 0);
}

Lemur 4.1.1 allowed me to reference the custom button inside the container using tmpOp.Focus. Lemur 5.0 does not.


Based on suggestions from Nick and some experimenting, I believe I have found a solution to this problem (and my other issues as well).

The new code looks like this:

decl i, tmpOp, tmpOp2, operators = {OP7, OP6, OP5, OP4, OP3, OP2, OP1}; // OP7, OP6, etc are the names of containers.

// Focus is a custom button inside each container and I want to reset it for OP1->OP6
for (i=1; i < 7; i++) {
tmpOp = findobject('OP' + (7 - i)); // note that the operators vector is no longer needed
tmpOp2 = getexpression(tmpOp, 'Focus');
setexpression(tmpOp2, 'x', 0);
}

The whole reason for this technique is that I have 6 different containers using the same structure and same processing. I did not want 6 copies of all the scripts used to process and display the data. So the approach was to create a single script that acted on whatever container object was passed into it. Additionally, I could use a single for loop to initialize/clear/update all 6 containers. This saves space, (hopefully) reduces coding errors due to incomplete updates, and (hopefully) makes the code easier to maintain and update. My entire Yamaha TX-802 template so far is using less than 20%.

This technique does rely on a couple things -- one is the string concatenation functionality available in 5.0 (which means no backwards compatibility) and the other is a careful naming of objects that you want to manipulate in this way. There is probably a slight performance hit using findobject(), especially if you have a ton of objects in your template, but in my initial limited testing, I haven't noticed any difference.
nick_liine wrote:
electrofux wrote:I tested around a bit with the sequencers. The timing is pretty spot on especially when used wired. Over Wifi (no adhoc) it wasn't that tight though still alot better than it used to be.

There is one thing that is a bit annoying and that is the little hickup when the Clock sending Apllication (in my case Reason) is going through a loop. Seems like Step 1 is triggered twice when the Song Pointer jumps from the right to the left loop marker. I have checked for the correct loop setting.
Maybe it is Reason, maybe something is intepreted as a clock pulse that shouldnt be. Can someone check this with another program? I am using the iconnect midi2+ without the daemon running. You can even see the little hickup on the Lemur.

Edit: checked Genome slaved to Reason and the hickup doesnt appear.

Also the provided sequencers seem to not respond to stop messages. They keep on running when stop in the sequencer is pressed. Is this because they are coded this way?
There are a couple different ways to handle clock start/stop/run messages, we've tried to accomodate for all cases but there might be some particularities about the way Reason handles clock messages.

Does this problem occur with other DAWs, or only with Reason?
Well, what can i say. I installed Ableton Demo and tried it out and there is no problem. Now i have to make the Propellerheads to fix this, sigh.
oldgearguy wrote: The new code looks like this:

decl i, tmpOp, tmpOp2, operators = {OP7, OP6, OP5, OP4, OP3, OP2, OP1}; // OP7, OP6, etc are the names of containers.

// Focus is a custom button inside each container and I want to reset it for OP1->OP6
for (i=1; i < 7; i++) {
tmpOp = findobject('OP' + (7 - i)); // note that the operators vector is no longer needed
tmpOp2 = getexpression(tmpOp, 'Focus');
setexpression(tmpOp2, 'x', 0);
}
This is indeed the preferred method in 5.0 onwards. getexpression() can be used to reference expressions in objects, but also objects in containers.
electrofux wrote:
nick_liine wrote: There are a couple different ways to handle clock start/stop/run messages, we've tried to accomodate for all cases but there might be some particularities about the way Reason handles clock messages.

Does this problem occur with other DAWs, or only with Reason?
Well, what can i say. I installed Ableton Demo and tried it out and there is no problem. Now i have to make the Propellerheads to fix this, sigh.
Keep us posted, and please feel free to contact support directly at support@liine.net when you get more info about the issue.
nick_liine wrote:
electrofux wrote:
nick_liine wrote: There are a couple different ways to handle clock start/stop/run messages, we've tried to accomodate for all cases but there might be some particularities about the way Reason handles clock messages.

Does this problem occur with other DAWs, or only with Reason?
Well, what can i say. I installed Ableton Demo and tried it out and there is no problem. Now i have to make the Propellerheads to fix this, sigh.
Keep us posted, and please feel free to contact support directly at support@liine.net when you get more info about the issue.
Sure, i have contacted Propellerheads on every possible channel and sent an email to liine support. Reason is currently in Beta, so maybe if that gets through in time, it might even get fixed.
Liine Team! Very excellent news, congratulations on this new release. I'm very exited about the possibilities and been hoping for sweet string concatenation for some years now. : ) All good! :)

oldgearguy! Hi thanks for pointing out how to fix the indirect object reference code. I used that technique quite a bit in later templates in because it allowed re-usable code bits (easier to maintain too).
I have work cut out for me to rewrite some broken templates now (minikeys, mophoDashboard, others not released), fine by me because the new updates to Lemur are worth the time. :D Now it is into the lab for me.. :geek:

cheers guys~
Jay
Any word on whether Liine increased the 256 bit limitation? I've been trying to learn subtractive analog synth using analog604's Mophodashboard and my Mopho desktop, but have been handicapped by the inability of Lemur to load all of the parameters of a Mopho preset.
Yes, I also am noticing that the new 5 editor shows 5% higher template size than 4 editor.

Why is this?

Is it not possible to remove the limit on the editor? Keep the template size monitor there to let us know where we are. But dont truncate our templates when loading them up, or stop us from adding objects once we reached the limit. Seems like a sledgehammer is being used to crack a nut here. If the lemur ipad app cant handle the size then I guess we can only blame ourselves then for going over the limit....

I cant say Ive had any problems with templates that are 100% filesize on the ipad app.
A 2x 'upgrade' of max template size would be appreciated here too, guys! :D I have templates that are now at 100% and can't be developed any further... well.. until I delete a load of formatting/text overlay layers and rewrite using the HTML5 methods.
I wonder if there is an HTML5 drawing/path editor that can be modified to output Lemur compatible script, anyone know of a possible tool? Standard HTML5 Canvas+cascading style sheet integration would be sweet.
Jay