Forum Replies Created
-
AuthorPosts
-
PhilippeKeymaster
Hi,
1 – The main looper is the 10 tracks looper.$state_multiply$, $state_mute$, $state_overdub$, $state_record$ will tell you the state of this main looper.
$current_full_tracks_count$ and $current_last_full_track$ will tell you how many tracks are playing in the main looper.2 – $current_loop_duration_ms$ and $current_loop_duration_samples$ will tell you if there is something in the main looper : {$current_loop_duration_ms$ != 0} means something is recorded and if it is not muted ({$state_mute$ == false}) it should be playing.
3 – if you load a looper in fx3 / rank 1, this variable will be created : $Looper_fx3_rank1_Record_state$ and it will be visible in the list.
If you put $Looper_fx3 in the filter part of the variable table, you will see this list :$Looper_fx3_rank1_ActionAtNextBar_state$
$Looper_fx3_rank1_AutoFade_state$
$Looper_fx3_rank1_CrossFadeShape_state$
$Looper_fx3_rank1_Group_state$
$Looper_fx3_rank1_LatencyCompensation_state$
$Looper_fx3_rank1_MuteFadeLength_state$
$Looper_fx3_rank1_Mute_state$
$Looper_fx3_rank1_PauseMode_state$
$Looper_fx3_rank1_Play_state$
$Looper_fx3_rank1_Record_state$
$Looper_fx3_rank1_SelectionIn_state$
$Looper_fx3_rank1_SelectionOut_state$
$Looper_fx3_rank1_SpeedFloat_state$
$Looper_fx3_rank1_SpeedSemiTone_state$
$Looper_fx3_rank1_Sync_state$
$Looper_fx3_rank1_Synchro_state$
$Looper_fx3_rank1_current_length$All of those variables describes the fx3-rank1 Looper state
Philippe
PhilippeKeymasterHi Daniel,
You can use some If // EndIf verification.
As it is below :DoRepeat
If {$state_record$ == true}
Message “Recording in action”
EndIfIf {$state_overdub$ == true}
Message “Overdub in action”
EndIfSleep 100
While true
If needed, you can stop the macro after a true action like this :
If {$state_record$ == true}
Message “Recording in action”
MacroStop
EndIfSo that, the macro will not test everything every time.
PhilippePhilippeKeymasterHi Daniel,
To know the state of almost everything in Logelloop.
You will use the variables.
Every variable is in the “Macro Variable Viewer” you open in the tools menu.Then, if you want to know the state of a record, you can put Record in the filter and you will see $state_record$ in the list.
$state_record$ will be true when the main looper is recording.So the macro is :
DoRepeat
If {$state_record$ == true}
Message “Recording in action”
EndIfIf {$state_overdub$ == true}
Message “Overdub in action”
EndIfSleep 100
While true
PhilippeKeymasterHi Daniel,
This is a long standing feature request, and I am also very interested by the possibility to use simple click, double click and long push in the macros.
We will have a look to thins and if that’s no to complicated, we will imagine to implement this in Logelloop 5.5In the meantime, you may use this macro to detect a double click in a macro using the expression monotonic_ms()
Ok, that’s not very handy as it is very necessary to achieve this detection outside of the macro…Philippe
//*************************** Macro Begin ***************************
// This macro will report the elapsed time between
// two user actions// At the first User action, we initiate the $begin$ variable
// and we set the time duration to 0
Declare int $begin$ = {monotonic_ms()}
Declare int $time_duration_ms$ = 0//We wait for a second user action
WaitUserAction// Then we calculate the elapsed time between the first and the second user action
$time_duration_ms$ = {monotonic_ms() – $begin$}// We send it as a message to the Logelloop user interface.
Message $time_duration_ms$If {$time_duration_ms$ < 250} MessageMain "Double click" //MacroStartIfNeededByName "Perpetual Hamster" //MacroStopByName "Perpetual SFX OstinatO" // Here you can do something for the double click Else MessageMain "Simple click" //MacroStartIfNeededByName "Perpetual SFX OstinatO" //MacroStopByName "Perpetual Hamster" // Here you can do something for the simple click EndIf //*************************** Macro End ***************************
PhilippeKeymasterThanks Nay !
PhilippeKeymasterHi Daniel,
I think you are using a beta and not the last official Logelloop 5.1 release.
So any report should be done via email to logelloop@logelloop.com.Anyway, if the issue happens with the last beta you just need to choose the channel and not set to Any as we have a bug with Any.
You will receive a new beta link very soon that will fix this issue.
Sorry for the inconvenience.Philippe
PhilippeKeymasterTo get the pitch value, you need this :
{floor(scale(valueOfReactionNamed(“TrackPitch_trk1”), 0, 1, 0, 127))}
But you will need some math to obtain the color variation depending on the pitch value… -)
PhilippeKeymasterHa, to obtain a feedback from the pitch value, you need to associate a Midi controller to this pitch and the feedback is already working for the pitch value.
Do you need something more particular?there ‘s a tricky interaction with Launchpad colors, they change depending only with specific velocity values
I Will probably need more explanations about that. Maybe a video?
I will look at the copy/.paste issue.
Philippe
PhilippeKeymasterDid you put the device name inside “…”?
If yes, that should work.
Maybe, you can send a green copy by email.
Thansks, PhilippePhilippeKeymasterDid you put the device name inside “…”?
If yes, that should work.
Maybe, you can send a green copy by email.
Thansks, PhilippePhilippeKeymasterHi Daniel,
This one is a bit tricky ! -)In Logelloop native macro examples, you will find “Track Settings Copy And Paste”.
In this macro you will see how we get the user interface state when there is no variable to share the UI state.To get the state of the Pitch of track 1, you put :
valueOfReactionNamed(“TrackPitchState_trk1”)This value can be directly put as a value in the midiNoteSend line after being scaled.
So, the scale expression below will convert a value of 0 or 1 to 0 or 127
scale(valueOfReactionNamed(“TrackPitchState_trk1”), 0, 1, 0, 127)As Midi values must be integers, you need to convert the float value in integer using the floor expression :
floor(scale(valueOfReactionNamed(“TrackPitchState_trk1”), 0, 1, 0, 127))As we do not want to cause too much communication with the Midi device, we have inserted a “Sleep 100” in the evaluation loop
The final macro will look like this :
//************************************************* Macro Begin *************************************************
DoRepeat
Sleep 100
MidiNoteSend 16 {floor(scale(valueOfReactionNamed(“TrackPitchState_trk1”), 0, 1, 0, 127))} 11 “X-TOUCH MINI”
While true
//************************************************* Macro End *************************************************I will try to insert a native Midi feedback for all tracks states in a future Logelloop release.
Best regards,
PhilippePhilippeKeymasterSalut,
En réalité, Korpus, ne manipule pas de son, il s’agit simplement dune sorte de télécommande qui pourrait être insérée dans une tranche de data. Comme les tranches de data n’existent pas encore, tu peux charger Korpus dans une piste de son, mais aucun son n’y est traité. Tout le son est traité dans les Loopers que tu commandes par Korpus.En fait, tu peux mettre plusieurs Loopers dans une même piste d’effet, en mettant les inserts en mode parallèle. Mais pour l’instant, tu ne peux pas choisir une mode parallèle pour les premiers inserts en mettant le dernier en série dans lequel serait insérée une reverberation par exemple… Mais cela viendra dans une prochaine version, nous avons bien avancé là-dessus, mais ça ne sera pas prêt pour Logelloop 5.5 qui sort bientôt.
Oui, je suis également très intéressé pour pouvoir mettre des inserts dans le master. Ça n’est pas encore fait, mais ça arrivera également un jour. À noter que ces inserts seront particuliers, car le master est multicanal et les inserts qui s’y trouveront devrions donc également l’être… À suivre !
Merci,
PhilippeHi,
Actually, Korpus does not handle sound, it’s just a kind of remote control that could be inserted in a data track. As data tracks don’t exist yet, you can load Korpus in a sound track, but no sound is processed in it. All the sound is processed in the Loopers that you control by Korpus.In fact, you can put several Loopers in the same effect track, by putting the inserts in parallel mode. But for the moment, you can’t choose a parallel mode for the first inserts and put the last one in series in which a reverberation would be inserted for example… But this will come in a future version, we have made a lot of progress on this, but it won’t be ready for Logelloop 5.5 which is coming out soon.
Yes, I’m also very interested in putting inserts in the master. It’s not done yet, but it will happen one day too. Note that these inserts will be special, because the master is multichannel and the inserts that will be in it should also be multichannel… To be continued!
Thanks for your time,
PhilippePhilippeKeymasterSalut,
Oui, le code sera mis en ligne à un moment, ça viendra.
Dans l’attente, je vous l’envoie rapidement avec le tuto.
Bonne journée,
PhilippePhilippeKeymasterBonjour Christophe,
Oui, il est possible de changer l’assignation des boutons, il est possible de mettre les mêmes notes sur un pédalier 13 et sur les satellites.
IL est possible d’échanger le nombre de pages et l’assignation des notes par page.
Il est possible d’avoir certaines notes identiques d’une page à l’autre alors que certaines changent.Il est possible de mettre des CC à la place des notes midi.
Il est possible de changer le canal midi, mais (à ma connaissance), pour l’instant celui-ci est global à l’ensemble du pédalier. On pourra modifier le code que chaque bouton puisse avoir un canal particulier.Pour modifier le pédalier, tu peux télécharger l’éditeur de code Arduino et nous te fournissons le code interne du pédalier, ainsi qu’un auto pour apprendre à modifier le code et à le transférer dans le pédalier.
Une autre solution, c’est que nous pouvons préparer le paquet que nous te fournissons et que tu n’as qu’à transférer dans le pédalier. Cette méthode prend moins de 20 secondes en tout.
Bonne journée,
PhilippePhilippeKeymasterSalut Christophe,
J’avais effectivement mis sur le site un SFX qui permettait de changer de snapshot sur la Totalmix RME à partir de Logelloop.
Je crois qu’on ne le trouve plus sur le nouveau site. Je pourrais le remettre si ça vous semble utile.
Depuis, comme nous avons ajouté les envois de signaux midi et OSC à partir des macros, c’est peut-être aussi simple de le faire avec une macro.Pour changer de snapshot à partir de Logelloop, je te propose ce modèle :
//******************************** début de macro **************************
DeclareOnce int $current_totalmix_preset$ = 1DoRepeat
WaitVariableChange $counter$
$current_totalmix_preset$ = $counter$//Sleep 100
MidiNoteSend {$current_totalmix_preset$ + 53} 127 1 “from Logelloop 5 1”
MidiNoteSend {$current_totalmix_preset$ + 53} 0 1 “from Logelloop 5 1”While true
//******************************** fin de macro **************************Une fois lancée, cette macro change de snapshot dans le totalmix lorsque tu changes l’état du compteur de Logelloop.
Note que pour l’utiliser, tu dois dans la totalmix :
1 – activer le midi control
2 – dans settings/Midi, sélectionner “from Logelloop 5 1”N’oublie pas, dans tous les cas, d’envoyer une noteOn suivie d’un noteOff à la totalmix car sinon, ça ne fonctionne pas.
Aussi, tu remarques que le numéro de la note midi est le numéro du snapshot + 53.Si tu souhaites changer des niveaux de faders, muter, etc., je préconise d’utilise l’OSC.
//******************************** début de macro **************************
// Sélecionner les entrées puis changer le volume et le pan
OSCSendMessage 1 “/1/busInput 1.”
OSCSendMessage 1 “/1/select/1/1”// Sélecionner les entrées puis changer le volume et le pan
OSCSendMessage 1 “/1/busInput 1.”
OSCSendMessage 1 “/1/volume3 .3”
OSCSendMessage 1 “/1/pan3 0.7”WaitUserAction
// Changer le volume et le pan
OSCSendMessage 1 “/1/volume3 .6”
OSCSendMessage 1 “/1/pan3 0.4”WaitUserAction
// Muter
OSCSendMessage 1 “/1/mute/1/3 1.”WaitUserAction
// Démuter
OSCSendMessage 1 “/1/mute/1/3 0.”
// Solo
OSCSendMessage 1 “/1/solo/1/3 1.”WaitUserAction
// unSolo
OSCSendMessage 1 “/1/solo/1/3 0.”// Sélecionner les voies de playback puis changer le volume et le pan
OSCSendMessage 1 “/1/busPlayback 1.”
OSCSendMessage 1 “/1/volume3 .3”
OSCSendMessage 1 “/1/pan3 0.7”// Sélecionner les voies de sorties puis changer le volume et le pan
OSCSendMessage 1 “/1/busOutput 1.”
OSCSendMessage 1 “/1/volume3 .3”
OSCSendMessage 1 “/1/pan3 0.7”WaitUserAction
// Sélecionner les voies de playback puis changer le volume et le pan
OSCSendMessage 1 “/1/busPlayback 1.”
OSCSendMessage 1 “/1/volume3 .7”
OSCSendMessage 1 “/1/pan3 0.2”// Sélecionner les voies de sorties puis changer le volume et le pan
OSCSendMessage 1 “/1/busOutput 1.”
OSCSendMessage 1 “/1/volume3 .9”
OSCSendMessage 1 “/1/pan3 0.9”
//******************************** fin de macro **************************Pour que cette macro fonctionne, tu dois dans Logelloop :
configurer l’envoi OSC dans les prefs du projet en mettant l’adresse ip 127.0.0.1 et le port 7001
puis activer l’envoi OSC.Dans Totalmix :
Options/enable OSC control
Settings/OSC —> port (incoming) 7001L’ensemble des commandes OSC de la totalmix se trouve ici :
https://archiv.rme-audio.de/download/osc_table_totalmix.zipN’hésite pas à me reposer des questions si ça n’est pas assez clair.
Bonne journée,
Philippe -
AuthorPosts