Home Forums Macros Macro AddTrack_Counter

Viewing 7 posts - 1 through 7 (of 7 total)
  • Author
    Posts
  • #5664
    Christophe CorrecChristophe Correc
    Participant

    Bonjour,

    Je passe tout mon spectacle sur le nouveau MacBook Pro avec puce M1. J’en profite pour faire le ménage et adapté mon set à Logelloop 5.5.1 ( qui décape !)

    J’ai un problème avec la macro AddTrack_Counter. La première piste qu’elle duplique est vide. J’ai essayé dans plusieurs configuration et toujours le même défaut.

    Une idée ?

    Une autre remarque.
    J’enregistre une piste. Je multiplie (2e piste). Je duplique avec Addtrack. Je fais un Undo. Et là je reviens à la taille de la piste d’origine ! La dernière duplication est bien annulée (S’il y avait 3 duplications, il n’en reste que 2) mais la multiplication aussi est annulée. C’est normal ?

    Christophe

    #5673
    Philippe OllivierPhilippe
    Keymaster

    Salut Christophe,
    Il me semble que AddTrack_Counter n’est pas une macro livrée avec Logelloop.
    IL me faudrait donc la macro pour pouvoir te répondre précisément, mais je crois me souvenir que nous avons changé la valeur d’une variable native de Logelloop entre Logelloop 4 et Logelloop 5 pour gagner en cohérences. C’est peut-être $current_last_full_track$ qui est concerné par ce changement…

    Je vérifie la liste des changements par version et je vois effectivement ceci dans la liste des changement apportés par Logelloop 5.0.20 :

    Macro : $current_last_full_track$ as now a value from 1 to 10 (was previously 0 to 9)
    Macro : $current_full_track$ no more exists, if you use it in your project, is is automatically replaced by $current_last_full_track$

    Je crois donc qu’il faut que tu modifies ta macro en fonction de ce changement et ça devrait rentrer dans l’ordre.
    Philippe

    #5674
    Philippe OllivierPhilippe
    Keymaster

    Une autre remarque.
    J’enregistre une piste. Je multiplie (2e piste). Je duplique avec Addtrack. Je fais un Undo. Et là je reviens à la taille de la piste d’origine ! La dernière duplication est bien annulée (S’il y avait 3 duplications, il n’en reste que 2) mais la multiplication aussi est annulée. C’est normal ?

    Concernant cette remarque, j’ai envie de dire que c’est normal dans le sens où Addtrack n’est pas pris en considération pour consolider la dernière multiplication, ce que fait un Overdub par exemple.

    Si cela semble plus cohérent, je veux veux bien regarder si je peux le faire, qu’en penses-tu?

    Ou alors, on pourrait ajouter une fonction macro pour consolider la dernière Multiplication…
    C’est ouvert.
    Philippe

    #5677
    Christophe CorrecChristophe Correc
    Participant

    Salut Philippe,

    Dans ma macro, $current_full_track$ a été remplacé automatiquement par $current_last_full_track$. D’ailleurs, cette fonction automatique est très bien ! Merci.
    Donc ça ne vient pas de là.
    Je viens de refaire des tests en mettant les commandes pas à pas. Je pense que le problème vient de la commande DuplicateTrack.

    voilà la macro :
    // Stop this macro if there nothing to copy
    MacroStopIf {$current_loop_duration_samples$ == 0}

    // Stop this macro if there nothing to copy
    MacroStopIf {$current_last_full_track$ == 9}

    WaitBeginLoop

    If {$counter$ < 1 }
    AddTrack 1
    VarLoopTrack trk_x {$current_last_full_track$ + 1}
    DuplicateTrack trk@ trk_x
    Message “Duplicate the last track”
    PlayImmediatlyAllNewTracks

    Else

    Declare int $my_personnal_counter$ = 0

    DoRepeat
    Set $my_personnal_counter$ = {$my_personnal_counter$ + 1}

    AddTrack 1
    VarLoopTrack trk_x {$current_last_full_track$ + 1}
    DuplicateTrack trk@ trk_x
    Message “Duplicate the last track”
    PlayImmediatlyAllNewTracks

    While { $my_personnal_counter$ < $counter$ }

    EndIf

    Merci pour ton aide.
    Christophe

    #5678
    Christophe CorrecChristophe Correc
    Participant

    Concernant la consolidation du “multiply”, peut-être qu’une fonction dans les macros serait la bonne solution. Ça donne de la souplesse à chacun.
    Christophe

    #5680
    Philippe OllivierPhilippe
    Keymaster

    Salut,
    D’accord, j’ajoute ta demande pour un ConsolideLastMultiplication en macro.

    Pour le duplicate track. Si tu fais :

    AddTrack 1
    DuplicateTrack trk1 trk2

    Tu constates que ça fonctionne comme il faut, DuplicateTrack fait ce qui est attendu.

    mais, si tu fais :

    MessageMain $current_last_full_track$
    AddTrack 1
    Message $current_last_full_track$

    Tu constates qu’après un addtrack, il y a une piste supplémentaire et $current_last_full_track$ a un point de plus, ce qui me semble logique.
    Tu pourras me contredire en disant que puisque la piste ne contient pas de son, elle n’est pas full au sens propre, mais Logelloop considère que la piste est en fonctionnement donc elle est comptée dans $current_last_full_track$.

    Le bonne syntaxe serait donc, de mon point de vue :

    Declare int $previous_track$ = 0
    AddTrack 1
    $previous_track$ = {$current_last_full_track$ – 1}
    DuplicateTrack trk[$previous_track$] trk[$current_last_full_track$]

    Note bien que j’utilise désormais trk[$id$] pour définir une piste, ce qui me semble plus propre et j’évite donc trk_x qui devient un peu obsolète.

    Ta macro devient donc :

    // Stop this macro if there nothing to copy
    MacroStopIf {$current_loop_duration_samples$ == 0}

    // Stop this macro if there nothing to copy
    MacroStopIf {$current_last_full_track$ == 9}

    Declare int $previous_track$ = 0

    WaitBeginLoop

    If {$counter$ < 1 } AddTrack 1 $previous_track$ = {$current_last_full_track$ - 1} DuplicateTrack trk[$previous_track$] trk[$current_last_full_track$] Message “Duplicate the last track” PlayImmediatlyAllNewTracks Else Declare int $my_personnal_counter$ = 0 DoRepeat Set $my_personnal_counter$ = {$my_personnal_counter$ + 1} AddTrack 1 $previous_track$ = {$current_last_full_track$ - 1} DuplicateTrack trk[$previous_track$] trk[$current_last_full_track$] Message “Duplicate the last track” PlayImmediatlyAllNewTracks While { $my_personnal_counter$ < $counter$ } EndIf

    Ça fonctionne et c’est logique (quoiqu’un peu tordu).

    P.

    #5684
    Christophe CorrecChristophe Correc
    Participant

    Oui, c’est logique 🙂
    Et oui, ça fonctionne !
    Merci Philippe.

    Christophe

Viewing 7 posts - 1 through 7 (of 7 total)
  • You must be logged in to reply to this topic.