Forum Replies Created

Viewing 15 posts - 61 through 75 (of 140 total)
  • Author
    Posts
  • Philippe OllivierPhilippe
    Keymaster

    Hi Daniel,
    1 —> No, that’s not possible and I don’t think we will change that because you may use Matrix in this situation
    2 —> You should probably use Matrix to drastically reduce the use of macro slots.
    Best,
    Philippe

    in reply to: Strange and random user variable behaviour #6253
    Philippe OllivierPhilippe
    Keymaster

    You can define the variable with the same value in all macro.
    Just put a once attribute in the variable declaration process so that it will only happen when the macro is loaded.

    So I can read the current value set by another macro

    Yes, you can with a global variable.

    in reply to: Strange and random user variable behaviour #6252
    Philippe OllivierPhilippe
    Keymaster

    You can define the variable with the same value in all macro.
    Just put a once attribute in the variable declaration process so that it will only happen when the macro is loaded.

    So I can read the current value set by another macro

    Yes, you can with a global variable.

    in reply to: Strange and random user variable behaviour #6250
    Philippe OllivierPhilippe
    Keymaster

    Hi Daniel,
    Here it is not a variable issue.

    In any DoRepeat // While or RepeatWhile // EndRepeat loop, you need a sleep or waitDuration message like this :

    DoRepeat
    // Your code here
    WaitDuration 30
    While true

    If you don’t put a sleep time, the loop will go so fast that it will freeze Logelloop and even in certain situation, Logelloop may crash…

    Also regarding the variable error message issue, don’t forget to declare your variable in every macro that use it.

    Philippe

    in reply to: Strange and random user variable behaviour #6246
    Philippe OllivierPhilippe
    Keymaster

    Hi Daniel,
    I see something in french in the error repport :

    L’opérateur [==] ne peut pas être appliqué entre des objets de type [int] et [boolean]
    Which means “The [==] operator cannot be applied between objects of type [int] and [boolean]”
    We should fix this language confusion…

    Is there another macro using this $Loop1Selected$ variable?
    If yes, does it set the variable to 1 or 0, or any int?

    That could be the cuylprit.

    Also, you need to declare the variable in every macro that use it.
    So you should put :

    Declare Once boolean $Loop1Selected$ = false

    At the top of the second macro.
    That may fix the error…

    Philippe

    in reply to: Copy loop from Main and Insert looper and paste to Insert looper #6245
    Philippe OllivierPhilippe
    Keymaster

    Hi,
    It’s all you’ll find in the audio menu of the Looper.
    It is behind the yellow triangle, at the right of the waveform

    You can also find it in the AudioMessage line of the documentation :

    https://www.logelloop.com/wp-content/uploads/2024/01/AudioMessages-to-the-modular-Logelloop.png

    in reply to: Copy loop from Main and Insert looper and paste to Insert looper #6240
    Philippe OllivierPhilippe
    Keymaster

    Hi Daniel,
    No, the current Copy function will copy the content of a main loop to another.
    It is useful if you want to copy A to B or to C for example.
    The user manual is very well documented and will help you understand this kind of functionality.

    We have no macro command to make a track copy in the main looper.
    We will add something like TrackCopy trk1 in the next release.
    Philippe

    in reply to: Copy loop from Main and Insert looper and paste to Insert looper #6237
    Philippe OllivierPhilippe
    Keymaster

    Hi,
    You can use the AudioMessages in the modular Looper to do that.
    Try this for example :

    ************************* Begin *************************
    InsertSendMessage fx1 1 AudioMessages Copy
    Sleep 50
    InsertSendMessage fx2 1 AudioMessages Paste
    ************************** End **************************

    Best,
    Philippe

    in reply to: Split loop in 4, 8, 16 slices and play in random order #6233
    Philippe OllivierPhilippe
    Keymaster

    Hi,
    The Slicer is made to do that.
    When you use the mail looper, it is very easy.
    With modular loopers, it is also possible with the slicer.

    This video tutorial show how to do that with the slicer…

    You can also do it with a macro.

    And we will had a tool later to do it with a newer, easier approach, so let stay connected for that ! -)

    best,
    Philippe

    Philippe OllivierPhilippe
    Keymaster

    Hi Daniel,
    Yes, the old way to do that was to use “$midiv_nt1$” or “$midiv_cc1$” variables but now in Logelloop 6, we have added the Matrix data plug-in which aim is to do that !

    I had no time yet to make a tuto but I will try to do it as fast as possible.

    You can find some explanation about it in the user manual.

    To begin with that :
    1 – open the data plug-ins window (cmd + U)
    2 – load Matrix in a slot
    3 – Choose a template, “16 dials” for example
    4 – click the edit button, select all the macro code and copy it
    5 – In the menu select “New macro”, give a name to your macro
    6 – click the edit button, and paste the template in your macro

    —> you can use every dials to drive one macro.
    —> each dial as a name or a number
    —> you can put up to 64 dials in the same interface
    —> You can connect a midi device to this data plug-in
    —> As soon as the midi device is connected to the Matrix, click the learn button, select a number by clicking the red box, turn a dial on your midi device…
    —> currentCaseValueString() will get the name or number of the dial
    —> currentCaseOptionValueFloat(0) will get the value of this dial

    So, in the macro, you can evaluate the dial that currently in use and his value with this :

    CaseBranch 1
    MessageMain { “Dial ” + (currentCaseValueString()) + ” value is : ” + currentCaseOptionValueFloat(0)}

    TrackVolume trk1 = {scale(currentCaseOptionValueFloat(0), 0, 127, -76, 0)}
    BreakCaseBranch

    Where, CaseBranch 1 will be activated when the dial 1 is used.
    And in :

    TrackVolume trk1 = {scale(currentCaseOptionValueFloat(0), 0, 127, -76, 0)}

    You convert the midi value to a suitable fader value.

    This is an example… Feel free to ask if you have any question regarding Matrix.

    Best,
    Philippe

    • This reply was modified 7 months, 4 weeks ago by Philippe OllivierPhilippe.
    in reply to: MuteDirect function for Insert Looper? #6227
    Philippe OllivierPhilippe
    Keymaster

    Hi Daniel,
    Not yet !

    You can either put this in your macro :

    InsertSendMessage fx1 1 Mute
    InsertSendMessage fx1 1 Mute

    Or set the Modular Looper in Pause mode and then the mute is direct :

    InsertSendMessage fx1 1 PauseMode 1
    InsertSendMessage fx1 1 Mute

    If this is very needed, I can add an argument to the Mute function to be direct…
    Philippe

    • This reply was modified 7 months, 4 weeks ago by Philippe OllivierPhilippe.
    in reply to: Variable for getting Mute state of a track #6224
    Philippe OllivierPhilippe
    Keymaster

    Hi Daniel,
    This one is a bit more tricky ! -)

    It uses the “valueOfReactionNamed” expression.
    You can find one example in the native macro “Track Settings Copy And Paste”.
    There is also some other macro using it in Logelloop, to find them, you can filter with “valueOfReactionNamed”…

    In fact, there is no variable, but another system to get this info.
    Here is an example :

    //*********************** Begin ***************************
    DoRepeat
    MessageMain {“The TrackMute state of TRK1 is : ” + valueOfReactionNamed(“TrackMute_trk1”) }
    Sleep 100
    While true
    //*********************** End ***************************

    This will also work with :

    valueOfReactionNamed(“TrackVolume_trk1”)
    valueOfReactionNamed(“TrackPanRotator_trk1”)
    valueOfReactionNamed(“TrackAuxState_1_trk1”)
    valueOfReactionNamed(“TrackAuxPosition_1_trk1”)
    valueOfReactionNamed(“TrackAuxVolume_1_trk1”)
    valueOfReactionNamed(“TrackMute_trk1”)
    valueOfReactionNamed(“TrackSolo_trk1”)
    valueOfReactionNamed(“TrackPitch_trk1”)
    valueOfReactionNamed(“TrackPitchState_trk1”)
    valueOfReactionNamed(“TrackSpeed_trk1”)
    valueOfReactionNamed(“TrackSpeedDirection_trk1”)
    valueOfReactionNamed(“TrackTime_trk1”)
    valueOfReactionNamed(“TrackTimeState_trk1”)

    And probably some more…
    Having the possibility to find them in a list is on the todo list.
    Best,
    Philippe

    in reply to: Startup with previous project? #6214
    Philippe OllivierPhilippe
    Keymaster

    Hi Trevor,

    Hi! Just wondering if there’s a way to startup with the previous project on launch?

    If you want Logelloop to open on the project you were using when you closed it last time, just uncheck “Open at Satrtup” in the bottom left corner of the dashboard. And then, the next time, Logelloop will directly open the last project.

    When I open from the project file the text from the XML file pops up and it brings me to the project manager instead of opening the file.

    That’s not currently possible.

    PS – really digging this new version, 5 was also fantastic

    Thank you so much Trevor !
    We’ve given it everything we’ve got! And there’s more to come in the months ahead… Stay tuned -)

    P.S. P.S. – Also how can I have the project start up with a specific preset too?

    That’s a very good question.
    To do that :

    1 – create a macro
    2 – Give it a name like “Initialization” (1)
    3 – In the macro set something like : PresetRecall “My preset name” (2)
    (In may example the preset name is “1 Granular”, note that you can copy the name in the Logelloop preset interface, to be sure there is no typo)
    4 – Put the macro in a macro slot, the first slot for example (3)
    5 – check the A.S. check Box (AS means : Auto Start) (4)

    —> when you will open the project, your preset should open.

    Auto start a macro at project launch

    Best,
    Philippe

    • This reply was modified 8 months ago by Philippe OllivierPhilippe.
    in reply to: Send message to Insert Looper to toggle group #6209
    Philippe OllivierPhilippe
    Keymaster

    Hi Daniel
    Yes you need to use the InsertSendMessage !

    Here is a short tuto to show how you can copy and paste from the documentation to the macro editor :

    Hoping this video will help you !
    Philippe

    • This reply was modified 8 months ago by Philippe OllivierPhilippe.
    in reply to: Creating a ToggleRecord function using LongPress #6208
    Philippe OllivierPhilippe
    Keymaster

    Hi Daniel,
    In the list of example macros supplied with Logelloop, you’ll find a macro called “Push to record”.
    This macro does what you ask and is actually based on “WaitUserAction”, but with the argument “Relese”.

    The text of the macro is this :

    //************************************** begin *************************
    // Will set the main looper to record
    Record

    // wait the midi, mouse or key to be released
    WaitUserAction Release

    // Stop recording
    Record
    //*************************************** end **************************

    Best,
    Philippe

Viewing 15 posts - 61 through 75 (of 140 total)