Forum Replies Created
-
AuthorPosts
-
PhilippeKeymasterHaha, it took more than 20 minutes to find this.
I was remembering I had already coded something but yes that was not documented…
This should be in an example, but that’s not the case… -)Is there a way I can access more undocumented stuff somehow?
Not right now, sorry.
Will do my best to share something soon…
Philippe
PhilippeKeymasterHi,
I think you have everything to code the global transport with a macro.With $sfx1$ // $sfx8$ you will know which sfx is loaded in each slot.
With $insert_fx1_rank_1$ // $insert_fx(n)_rank_(n)$ you will know which insert is loaded in a slot.But yes, that will not be easy to code nor fast during the execution.
During this year 2025 we will release many new devices and maybe some of them may help you for this… I don’t know, but will keep that in mind…
– do you plan on thinning out LL out of all legacy/deprecated stuff anytime soon?
No. The way I do it is to first replace old things by more modern tools. Then announce that the legacy ones are deprecated. Then remove them from the documentation. Then remove them from the code. So you have time… -) I don’t want to put users of older versions in a situation of confusion.
As soon as I have time I will make a post to explain what is the future orientation of Logelloop. Nothing revolutionary but useful to be known by users.
– do you have any idea regarding when to expect a new release? there were some stuff we talked about a month ago that I would find useful.
We are currently finishing many things and testing all the new features and bug fixes (the list is not short and contains some good surprises) and I hope to release the new one before the end of this month.
Philippe
PhilippeKeymasterHi,
If you are in a macro, you can take the current value using a variable or with the “valueOfReactionNamed” expression. This is explained here : https://www.logelloop.com/forums/topic/variable-for-getting-mute-state-of-a-track/Can you explain what you want to do ?
Philippe
PhilippeKeymasterHi,
Assuming that you mapped your midi device to the matrix, you have the possibility to accces to those informations with :
Declare Local int $lastDial$ = 0 $lastDial$ = {currentCaseValueString()} Post {"Current dial is = " + $lastDial$} Post {"CC for the current dial is = " + $midiMappingValue[lastDial]$} Post {"Midi channel for the current dial is = " + $midiMappingChannel[lastDial]$} Post {"The Midi device is = " + $midiMappingDevice$} // Which Case is it ? Message { "Button or Dial number " + currentCaseValueString() + " : " + currentCaseOptionValueFloat(0)}Does this help you?
Philippe
PhilippeKeymasterHi,
With this, the autofade will start at the loop’s end
InsertSendMessage fx1 1 AutoFadeIf you add immediate, the autofade will start immediately
InsertSendMessage fx1 1 AutoFade ImmediateIf you mute the loop, there is a 40 ms fade out before the mute.
There is no current possibility to change the fade length, which is the loop duration when you don’t use Korpus.
Philippe
PhilippeKeymasterHi,
You need to put those { } to evaluate the currentCaseOptionValueFloat(0) value as this :CaseBranch "Test" $mavar$ = {currentCaseOptionValueFloat(0)} Message {"test CCOVF " + currentCaseOptionValueFloat(0) + " $mavar$ " + $mavar$ } BreakCaseBranch11 February 2025 at 23 h 19 min in reply to: Jump on modular loopers not working in synced mode ? #7181
PhilippeKeymasterHo, you didn’t say that you are using the ETS player which is really different than the tape player.
But anyway I see no issue in my test either.May I have a look at your macro to see what you want to do ?
PhilippeKeymasterOK, there is another way to do this and this is the way I do it ! -)
Inside the matrix, you put this :
// You need to declare the variable in every macro you use it Declare Once int $externalActionCount$ = 10 // Here is the macro initialization // Here is a case branch CaseBranch "My song two" Post "Begin of the second song" // inside the casebranch, you can set a global variable that will be used in another macro $externalActionCount$ = 5 // Here you start the second macro which is loaded in a standart macro slot MacroStartIfNeededByName "External Action" // With WaitSignalNotification, the matrix macro will wait the signal from the other macro saying the action is finished // WaitSignalNotification is optional WaitSignalNotification ExternalActionIsFinished Post "Back to Case Branch 2" EndCaseBranchesIn the external macro called “External Action”, you put this code :
// You need to declare the variable in every macro you use it Declare Once int $externalActionCount$ = 10 Declare int $currentCount$ = 0 // This macro execute an external action and send a signal when it is finnished. Post "This macro is doing an external action" DoRepeat $currentCount$ = {$currentCount$ + 1} Post {"count " + $currentCount$} Sleep 30 While {$currentCount$ < $externalActionCount$} // When the doRepeat loop is finished, the macro send the notification with NotifySignal // NotifySignal is optionnal NotifySignal ExternalActionIsFinished11 February 2025 at 13 h 32 min in reply to: Jump on modular loopers not working in synced mode ? #7170
PhilippeKeymasterHi,
I think you’d better use the jump message :InsertSendMessage fx1 1 Jump 41310It is the same, but InsertControllers messages are deprecated and may disappears at a moment…
That said, I can’t reproduce your issue here.
Of course, you need to jump to a position that is inside your selection.
If you jump outside of the selection, the playing head is set to the beginning of the selection…Do I misunderstood someting?
Philippe
PhilippeKeymasterHi,
I think you can do it with the SetCurrentCaseValue functionnality.
Please look at the script below where I use SetCurrentCaseValue to redirect to a specific caseBranch.
Is that ok in your situation ?
PhilippeCaseBranch "My song one" Post "My song one..." EndCaseBranches CaseBranch "My song four" Post "My song four..." SetCurrentCaseValue "My song one" WaitDuration 10 MacroRestart EndCaseBranches
PhilippeKeymasterCan explain what you want to do ?
PhilippeKeymasterHi,
There is no macro command to do this by you can use osc internal messages as a workaround :OSCSendMessage 0 "/audio_on 1" WaitUserAction OSCSendMessage 0 "/audio_on 0"Note that when you stop the audio engine, all the macro are stopped, so you can can’t put the “OSCSendMessage 0 “/audio_on 1” line after the WaitUserAction…
Philippe
PhilippeKeymasterHi,
Even if sync is set (say to 4 beats), the selection of the sample does NOT correspond to that related to tempo, but that of a sample. So we can’t really load a long loop and easily select 4 beats period, to make a simple beat.
You are right, I forgot something there… Sorry.
So, I fixed it and now if you hit “Copy”, you copy the real selection in the sample, even in synced mode.
Also, the in and out value memorized in the variables are correct.If we load a really short sample (as it’s the case with many percussive sounds), there’s no easy way to make this thing last a bar.
Yes, I agree, and yes, I’ve also found myself wondering what to do in this kind of situation.
I add a TrimLoopSamples macro message. With it you can reduce or extend the loop length.
You can use it like this :InsertSendMessage fx2 1 TrimLoopSamples {$Looper_fx1_rank1_current_length$}Is TrimLoopSamples a good name for this macro message ?
I wait to add a native UI to do this because I want to find a better idea than resizing the modular looper window to add this UI… We will need to think about it later. But with the new macro message it is really easy to trim the loop length with a simple Matrix.
Have a restart/sync button that starts the loop on the beginning of the next phrase
We have the “Start” macro message to restart the loop, but it is immediate in any case.
In the next release, it will wait for the next beat or the next first beat regarding the synchronization settings.And also, in the next release, when you paste a sample in a looper and the looper is synced to the metronome, the sample will be played from the next beat or bar regarding the synchronization settings.
Philippe
PhilippeKeymasterOf course I will have nothing to says without more explanation about the situation.
PhilippeKeymasterHi,
Ha, I forgot this case ! Thanks for reporting.In the next release you will have the ability to add “long” as argument after record to force clear.
It will do exactly the same as if the long record is trigged by a Midi command// This message will force clear in every situation InsertSendMessage dt1 1 Record longPhilippe
-
AuthorPosts