Forum Replies Created

Viewing 15 posts - 1 through 15 (of 134 total)
  • Author
    Posts
  • in reply to: les presets ne sont pas chargés pour la LOOP B #6506
    Philippe OllivierPhilippe
    Keymaster

    Salut Stéphane,
    J’avoue avoir eu besoin d’un peu de temps pour me remémorer comment tout cela fonctionne, car je n’utilise presque plus le Looper Principal et encore moins le système de banque A B C.

    Note également que l’Arrangeur de Preset est en train de se faire supplanter par le Matrix Arranger qui se trouve dans les Data plug-ins.
    Dans le Matrix arranger, tu utilises un script pour construire ta conduite et tu disposes donc de beaucoup plus de possibilités et de finesse.
    Ça ne concerne plus seulement des chargements de presets, mais également des petits réglages çà et là en fonction de l’avancée dans le concert.

    Les réglages sont effectivement associés à la boucle courante.
    Si tu fais un réglage sur une boucle, ce réglage est associé à cette boucle.
    Et effectivement le chargement de preset se fait sur la boucle sur laquelle tu te trouves.
    Cependant, note qu’il y a un menu en dessous de la liste de presets qui, par défaut, affiche “Chargement Direct” . Dans ce menu, tu trouveras l’option “Chargement au changement de boucle”. Lorsque cette option est activée, si tu choisis un preset dans la liste, celui-ci n’est pas chargé immédiatement, mais au moment du NextLoop. Je pense que c’est cette option que tu cherches.

    Tu peux choisir l’option du mode de chargement des preset par macro avec la commande PresetRecallBehaviour.

    Note aussi que l’arranger de preset est soumis à l’option choisie. Donc, si tu es sur “Chargement au changement de boucle” et que tu choisis un preset dans l’arranger, celui-ci ne sera appliqué qu’au changement de boucle.

    Et enfin, note que tu peux aussi utiliser l’arranger de preset pour lancer des macro…

    Avec tout ça, tu devrais t’en sortir.
    Bonne journée,
    Philippe

    in reply to: Granulaterre introuvable #6505
    Philippe OllivierPhilippe
    Keymaster

    Salut Maxime,
    Les SFX se trouvent dans la page Plug-ins (cmd/ctrl + g) et non pas dans le menu d’inserts de la tranche SFX…
    C’est probablement contrintuitif, j’en conviens.
    Bonne journée,
    Philippe

    in reply to: Commander le sfx video en MIDI ou via une macro ? #6496
    Philippe OllivierPhilippe
    Keymaster

    Salut Olivier,
    Tout ça n’est plus très bien documenté car le SFX vidéo n’a pas suivit lorsque j’ai changé tous les systemes de commande midi et macro.
    Mais si tu vas dans la documentation, tu trouvera un tableau qui indique comment piloter la vidéo avec des instructions midi.

    Tu y trouveras également les instructions pour les macros.
    Dès que je peux, je mets tout cela à jour, ça passera probablement par l’abandon de ce lecteur et par un remplacement par un lecteur plus moderne…
    Note que tu peux utiliser la macro ci-dessous (j’ai l’impression que c’est hors sujet, mais c’est l’occasion de casé l’info) pour synchroniser Logelloop à la lecture de ta video. C’est idéal en cine-concert.
    Bonne journée,
    Philippe

    // Starts playback of the film
    Declare boolean $user_action_catched_STDS$ = false
    Declare Local Once boolean $firstTime$ = true

    If { $firstTime$ }
    $firstTime$ = false
    // We consider that the Video SFX is loaded in slot 4
    SFXSendMessage 4 Set_video_position 0
    SFXSendMessage 4 Command Start
    //SFXSendMessage 4 Window_pos_x 1500
    //SFXSendMessage 4 Command Fullscreen
    EndIf

    DoRepeat
    If {($4_video_position$ > 2) && ($4_video_position$ < 6)}
    SetCurrentCaseValue “Cue 1”
    $user_action_catched_STDS$ = true
    EndIf
    If {($4_video_position$ > 12) && ($4_video_position$ < 15)}
    SetCurrentCaseValue “Cue 2”
    $user_action_catched_STDS$ = true
    EndIf
    If {($4_video_position$ > 18) && ($4_video_position$ < 20) }
    SetCurrentCaseValue “Cue 3”
    $user_action_catched_STDS$ = true
    EndIf
    Sleep 200
    While {!$user_action_catched_STDS$}

    CaseBranch “Cue 1 »
    Message “Cue 1”
    MacroRestart
    EndCaseBranches

    CaseBranch “Cue 2 »
    Message “Cue 2”
    MacroRestart
    EndCaseBranches

    CaseBranch “Cue 3”
    Message “Cue 3”
    MacroRestart
    EndCaseBranches

    • This reply was modified 1 month ago by Philippe OllivierPhilippe.
    • This reply was modified 1 month ago by Philippe OllivierPhilippe.
    • This reply was modified 1 month ago by Philippe OllivierPhilippe.
    in reply to: Modifier la forme du grain de Granular avec une macro #6495
    Philippe OllivierPhilippe
    Keymaster

    Il y avait aussi un bug qui faisait que la courbe actuelle n’était pas copiée lorsque tu copiais GrainShapeByList dans l’aide pour la coller dans ta macro.
    Maintenant, lorsque tu copy GrainShapeByList dans l’aide, la ligne est toute prête pour reproduire ta courbe actuelle.
    ça aidera.
    Merci d’avoir relevé.
    Philippe

    in reply to: Modifier la forme du grain de Granular avec une macro #6494
    Philippe OllivierPhilippe
    Keymaster

    Salut Olivier,
    Je ne pouvais pas faire plus obscure en ce qui concerne cette fonction, ou peut être en n’indiquant meme pas XYC…

    Pour utiliser GrainShapeByList, tu dois indiquer les attributs des points que tu verux créer.
    X défini la position horizontale du point, allant de 0 à 512
    Y défini sa position horizontale de 0 à 1
    C défini la courbure de la ligne qui précède le point. 0 indique une ligne droite, 1 une ligne très courbée au point de faire presque un angle droit.
    Si la valeur de C est positive, la ligne est incurvée et si la valeur de C est négative, la ligne est bombée.

    Dans la prochaine version, je vais tenter d’ajouter une copie de shapes par liste dans le presse papier pour faciliter l’élaboration des macros.

    Tu peux essayer ces différentes listes pour te rendre compte de ce que ça donne :

    SFXSendMessage 1 GrainShapeByList 0 0 0 512 1 0.75
    SFXSendMessage 1 GrainShapeByList 0 0 0 512 1 0.
    SFXSendMessage 1 GrainShapeByList 0 0 0 256 1 0 512 0 0
    SFXSendMessage 1 GrainShapeByList 0 0. 0 44 0.642659 0. 291. 0.060942 -0.5 455.762188 0.808864 0. 512. 0. -0.65

    J’espere que c’est plus clair… -)
    Philippe

    in reply to: During et InsertSendMessage #6491
    Philippe OllivierPhilippe
    Keymaster

    Salut Maxime,

    Tu dois changer trois choses :

    1 – Tu inverses les valeurs de début et de fin
    Declare Local float $startValue$ = 1
    Declare Local float $endValue$ = 0

    2 – Ici tu prends la valeur max et non pas la valeur min
    $targetValue$ = {max($endValue$,$targetValue$ + $increment$)}

    3 – Enfin, tu vérifies que la valeur cible est supérieure à la valeur de fin pour autoriser un nouveau tour de boucle
    While {$targetValue$ > $endValue$}

    Voici la macro finale qui décrémente au lieu d’incrémenter :

    //***********************************************************************************
    // Set the total duration of the value change
    Declare Local int $duration_ms$ = 1000

    // Set the start and end value
    Declare Local float $startValue$ = 1
    Declare Local float $endValue$ = 0

    Declare Local int $steps$ = 100
    Declare Local float $incrementDuration$ = 0
    Declare Local float $targetValue$ = $startValue$
    Declare Local float $increment$ = {($endValue$ – $targetValue$) / $steps$}

    // calculate the number of needed steps for the current increment
    $steps$ = {($endValue$ – $startValue$) / $increment$}
    //Post $steps$

    Declare Local int $startClock$ = {monotonic_ms()}

    DoRepeat
    $increment$ = {($endValue$ – $targetValue$) / $steps$}
    $incrementDuration$ = { ($startClock$ + $duration_ms$ – monotonic_ms())/ $steps$ }

    // Current step value calculation
    $targetValue$ = {max($endValue$,$targetValue$ + $increment$)}

    //******************** Put the destination here ********************
    InsertSendMessage fx1 1 SpeedFloat $targetValue$

    WaitDuration {$incrementDuration$}

    $steps$ = {$steps$ – 1 }
    While {$targetValue$ > $endValue$} //Post {monotonic_ms() – $startClock$}
    //***********************************************************************************

    in reply to: Passer les loopers en mono #6484
    Philippe OllivierPhilippe
    Keymaster

    Salut Maxime,
    Si je comprends bien le souci, tu voudrais refermer la stéréo.

    Sur mac, tu peux le faire en cliquant + glissant + cmd sur l’interface de spatialisation de la piste.
    Tu peux aussi réduire la largeur du spread en cliquant + glissant + ctrl sur l’interface de spatialisation de la piste.

    Je ne me souviens plus des raccourcis sur Windows, mais tu peux aussi le faire.

    Sinon, tu mets ça dans une macro :
    // pour fermer la stéréo
    TrackSpatialStereoWidth fx1 = 0
    // pour réduire la largeur de la source
    TrackSpatialSpread fx1 = 0

    Si j’ai mal répondu, n’hésite pas à préciser la question.
    Bonne journée,
    Philippe

    in reply to: Problèmes de volume et de monitoring #6482
    Philippe OllivierPhilippe
    Keymaster

    Si tu entres en stéréo, et que tu choici de mettre l’entrée en stereo dans Logelloop, ça devrait aller.
    Il faut éviter d’entrer en stéréo dans deux entrées de Logelloop car dans ce cas, si tu a un léger déphasage et que tu enregistres en mono dans looper, le signal s’annule. (a mon avis, il y a un truc comme ça dans ton installation).

    Donc, vérifie que tes cables sont identiques pour entrer de l’effet vers la carte son.
    Ensuite vérifie que tu n’as qu’une entrée et qu’elle est bien en stereo.
    Et là, ça devrait aller.

    in reply to: Problèmes de volume et de monitoring #6480
    Philippe OllivierPhilippe
    Keymaster

    Salut Maxime,
    1 – Concernant la sortie monitoring, as-tu bien fait le routing vers les sorties de ta carte son dans le panneau de routing audio?

    2 – Concernant le niveau des boucles. Utilises-tu les loopers modulaires en inserts? si oui, mets-tu bien le niveau d’envoi des aux à 100?
    Note que l’on peut rentrer très fort dans Logelloop donc, n’hésite pas à régler le gain d’entrée aussi fort que possible dans la carte.
    Dans le looper modulaire, il y a aussi un facteur de zoom sur l’affichage de la forme d’onde. Tu peux le régler à sa valeur maximum, c’est souvent pratique.

    Sinon, je veux bien voir une copie d’écran pour me rendre compte de l’ensemble des réglages.

    Bonne journée,
    Philippe

    in reply to: Probleme VST – NoEffect #6477
    Philippe OllivierPhilippe
    Keymaster

    Salut Bertrand, Regis,
    Je suis désolé, on est au fond de la mine en ce moment… Mais on ne lâche pas l’affaire.

    Nous avons prévu de produire une nouvelle bêta pour Windows cette semaine en espérant qu’elle corrige les problèmes d’instabilités introduits dans la précédente. Si c’est le cas, Logelloop 6.1 sortira prochainement avec beaucoup de nouvelles fonctionnalités et de corrections de bugs… Si ça n’est pas le cas, on travaillera encore sur la stabilité de la version Windows avant la publication.

    On va faire tout notre possible également pour rendre le plus fonctionnels les VST3 sur Windows.
    Désolé pour le dérangement !
    À bientôt,
    Philippe

    in reply to: During et InsertSendMessage #6441
    Philippe OllivierPhilippe
    Keymaster

    Salut Morgan,
    Effectivement l’absence de fonction During pour les messages vers les inserts est dommage.
    Peut-être qu’un jour nous disposerons d’une solution simple, mais pour l’instant, il n’y a pas d’autre solution que de faire sa propre routine.
    Routine que tu peux déporter dans un slot macro spécifique qui gérera tous tes cas de during spécifiques.

    Voici une autre proposition de macro pour faire un during, note qu’elle est encore plus longue que la tienne !

    //***********************************************************************************
    // Set the total duration of the value change
    Declare Local int $duration_ms$ = 1000

    // Set the start and end value
    Declare Local float $startValue$ = 0
    Declare Local float $endValue$ = 1

    Declare Local int $steps$ = 100
    Declare Local float $incrementDuration$ = 0
    Declare Local float $targetValue$ = $startValue$
    Declare Local float $increment$ = {($endValue$ – $targetValue$) / $steps$}

    // calculate the number of needed steps for the current increment
    $steps$ = {($endValue$ – $startValue$) / $increment$}
    //Post $steps$

    Declare Local int $startClock$ = {monotonic_ms()}

    DoRepeat
    $increment$ = {($endValue$ – $targetValue$) / $steps$}
    $incrementDuration$ = { ($startClock$ + $duration_ms$ – monotonic_ms())/ $steps$ }

    // Current step value calculation
    $targetValue$ = {min($endValue$,$targetValue$ + $increment$)}

    //******************** Put the destination here ********************
    InsertSendMessage fx1 1 SpeedFloat $targetValue$

    WaitDuration {$incrementDuration$}

    $steps$ = {$steps$ – 1 }
    While {$targetValue$ < $endValue$} //Post {monotonic_ms() - $startClock$} //***********************************************************************************

    in reply to: VST control Matrix #6439
    Philippe OllivierPhilippe
    Keymaster

    Salut Morgan,
    Les variables permettent :
    – de connaître l’état d’une interface de Logelloop
    – de mémoriser/modifier une valeur dans une ou plusieurs macros.

    Mais les variables ne permettent pas de modifier l’état de Logelloop !
    J’espère ne pas omettre une situation particulière en écrivant cela, mais si tu souhaites changer l’état de quelque chose dans Logelloop, tu dois envoyer un message à partir de la macro.

    Lorsqu’il s’agit d’un VST, la variable $VST_fx1_rank1_SetParam_state$ te permet de connaître l’index et la valeur du dernier paramètre que tu as édité sur le plug-in. À ce jour, les variables string sont le moyen le plus simple de stocker plusieurs valeurs lisibles en un coup d’œil, c’est la raison pour laquelle cette variable est une string.

    Pour modifier l’état du plug-in, tu n’auras pas d’autre choix donc que d’utiliser

    InsertSendMessage fx1 1 SetParam

    Je peux si cela est vraiment nécessaire ajouter une variable qui donnerait le nombre total de paramètres d’un plug-in, mais c’est un peu de travail et je ne suis pas certain que cela soit vraiment nécessaire, car ça donnera tellement de valeur dans certains cas que tu auras bien de la peine à les utiliser.

    Je préconise dans l’état actuel des choses d’utiliser $VST_fx1_rank1_SetParam_state$ pour connaître les index des paramètres que tu souhaites contrôler avec ta macro et de procéder comme tu le précises ci-dessus.

    Pour ma part, j’ai cette simple macro pour modifier la valeur d’un paramètre en boucle :

    Declare Local int $VST_param_id$ = 1
    Declare Local float $VST_param_value$ = 0

    DoRepeat
    If {$VST_param_value$ >= 1}
    $VST_param_value$ = 0
    EndIf
    InsertSendMessage fx1 1 SetParam $VST_param_id$ $VST_param_value$

    $VST_param_value$ = {$VST_param_value$ + 0.01}

    Sleep 100
    While true

    Effectivement, je déclare moi-même deux variables, l’une sera générale pour ce plug-in, elle te permettra de choisir l’index du paramètre que tu souhaites éditer et l’autre sera la valeur que tu souhaites attribuer à ce paramètre…

    Bonne journée,
    Philippe

    Philippe OllivierPhilippe
    Keymaster

    Salut Timothée,
    Je vois que tu as trouvé la solution, pour le Pitch, donc c’est bon pour ça.

    Si tu souhaites modifier la vitesse d’un ou plusieurs loopers en utilisant un Midi contrôleur, tu peux le faire simplement en cliquant sur le ? qui se trouve dans le Looper.

    1 – Cela ouvre la fenêtre d’aide.
    2 – Dans l’onglet du milieu de la fenêtre d’aide, tu vois toutes les commandes et contrôles pour cet insert.

    3 – En bas à droite se trouve la partie contrôleur, et c’est là que se trouve la liste des réglages modifiable en utilisant un contrôleur Midi.
    4 – Dans cette liste se trouve Speed pour la vitesse.

    5 – En cliquant l’engrenage qui se trouve au-dessus de ce tableau, tu ouvres la fenêtre qui te permet de configurer le contrôleur Midi qui modifiera la vitesse du/des loopers.

    Note aussi que lorsque tu cliques le petit triangle orange, en bas à droite dans le looper, tu ouvres un tiroir.
    Dans ce tiroir, tu trouveras “Speed midi ctl scale” qui te permet de choisir quelle sera la vitesse minimum et maximum pour des valeurs Midi de 0 à 127.

    Bonne journée,
    Philippe

    in reply to: Commande erronée: TrackAuxState #6432
    Philippe OllivierPhilippe
    Keymaster

    Salut Morgan,
    Il faut utiliser la syntaxe suivante pour que la variable d’id soit correctement interprétée par la macro

    TrackAuxState $auxID$ trk[$trkID$] 0

    Bonne soirée,
    Philippe

    in reply to: Probleme de synchro avec looper en insert #6428
    Philippe OllivierPhilippe
    Keymaster

    Salut,
    C’est un cas un peu coriace et j’ai l’impression qu’il y a un truc qui n’est pas très évident, mais c’est toujours un peu compliqué de faire avec deux asservissements au métronome : celui de la macro et celui du looper.

    Concernant ta macro, le souci est que si tu demandes une action sur le premier temps et que le looper est asservi au premier temps du métronome, lorsque le signal de Mute ou Play arrive, c’est déjà trop tard… Il est donc préférable de lancer l’action à partir du seizième temps, ainsi, le démarrage de la lecture aura bien lieu sur le premier temps de la mesure…

    Toutefois, cette histoire de 4 temps soulève une question : j’ai l’impression qu’il y a un bug quelque part, mais je n’arrive pas à le cerner, donc difficile d’en dire plus pour le moment.

    La macro devient donc :

    MetroActivateEvents true // activate events on metronome

    WaitMetroBeat 16 //WaitMetroNextBarStart // playing A
    InsertSendMessage fx1 1 Play

    // Now we will play loops to fit song size
    // A A B A
    DoRepeat
    Post { “WaitMetroNextBarStart playing A”}
    WaitMetroBeat 1 //WaitMetroNextBarStart // playing A
    Post { “WaitMetroNextBarStart still playing A”}
    WaitMetroBeat 16 //WaitMetroNextBarStart // playing A
    InsertSendMessage fx2 1 Play
    InsertSendMessage fx1 1 Mute
    WaitMetroBeat 1
    //WaitDuration 80 // synchro
    Post { “WaitMetroNextBarStart playing B”} // <============== ici, il se passe 4 temps avant que la boucle en fx2 ne se lance //WaitDuration 80 // synchro WaitMetroBeat 16 //WaitMetroNextBarStart // playing B InsertSendMessage fx2 1 Mute // InsertSendMessage fx1 1 Play // WaitMetroBeat 1 //WaitMetroNextBarStart // playing A While { true }

    Si tu souhaites que ta macro fonctionne, quel que soit le nombre de temps par mesure, tu peux mettre :

    WaitMetroBeat $metro_bar_beats$

    à la place de :

    WaitMetroBeat 16

    J’enlève les WaitDuration qui sont toujours un peu bizarres…
    J’ai l’impression qu’avec ces modifications, ça fonctionne, dis-moi ce que tu en penses.
    Bonne soirée,
    Philippe

Viewing 15 posts - 1 through 15 (of 134 total)