Old 08-02-2018, 12:43 AM   #1
oudi le oudi
Human being with feelings
 
Join Date: Jun 2018
Location: Paris
Posts: 22
Default message midi quand la track est selectionnée

bonjour
je me suis tourné vers reaper depuis peu, et je découvre au passage le codage.
bcp de chose en même temps mais assez lié dans le cadre de reaper.
je bosse actuellement sur une config lemur et reaper pour une template assez grosse d'orchestre virtuel.
j'aurai besoin de vos conseils experts.
je cherche une solution pour qu'un message midi ( cc ou note) soit envoyé vers lemur (ou autre controler midi ) pour effectuer un recall sur celui ci.
je ne trouve pas.
peut etre un js ou encore une action je séche.
j'ai experimenté un js avec midisend(0, $x90, 69, 127);
mais il envois la note tout le temps (ce qui est normal )

j'insiste sur le fait que le message ne doit être envoyé que lorsque la track est selectionnée.

merci d'avance pour vos réponses et aussi pour tout les conseils que l'on trouve partout sur le site....très enrichissant.

a très vite .
jf

Last edited by oudi le oudi; 08-02-2018 at 12:52 AM.
oudi le oudi is offline   Reply With Quote
Old 08-02-2018, 02:32 AM   #2
Reno.thestraws
Human being with feelings
 
Reno.thestraws's Avatar
 
Join Date: Nov 2009
Location: Belgium
Posts: 10,474
Default

DAns les préférences, control surface -> assigne le mode mackie universal et choisi le port midi de sortie de ton choix

Logiquement, il devrait se passer quelque chose à la selection des pistes
__________________
http://www.residenceemilia.com
Reno.thestraws is offline   Reply With Quote
Old 08-02-2018, 03:44 AM   #3
benf
Human being with feelings
 
benf's Avatar
 
Join Date: Oct 2008
Location: France
Posts: 3,700
Default

Tu as essayé avec un script en lua ?
__________________
Ma Zique
Mes Partoches
benf is offline   Reply With Quote
Old 08-11-2018, 12:15 AM   #4
oudi le oudi
Human being with feelings
 
Join Date: Jun 2018
Location: Paris
Posts: 22
Default

bonjour
merci des retours...
désolé mais j’étais en vacances.

pour le script en lua je bosse dessus mais je ne trouve pas de solution pour que le script soit activé quand la piste est sélectionné...je cherche :-)

pour le mode mackie je suis un peu limité dans le message envoyé mais je cherche aussi , c'est une bonne idée que j'avais zappé merci.

ce qui marche le mieux mais pas encore c'est de détourner un message osc.
car les messages osc midi ne sont que en envois apparemment (cc ou autres).

je posterai asap mes avancés.

si vous avez d'autres idées :-)

a tres vite
et merci encore.
jf
oudi le oudi is offline   Reply With Quote
Old 08-11-2018, 02:21 AM   #5
swiiscompos
Human being with feelings
 
swiiscompos's Avatar
 
Join Date: Mar 2011
Location: London
Posts: 1,211
Default

Bonjour,

Comme tu vois je n'ai toujours pas eu le temps de faire mon tuto sur comment créer une template orchestrale avec Reaper...

La solution à ton problème c'est de l'approcher différemment. Voici comment je fait:

Quand une piste est sélectionnée elle envoie automatiquement plusieurs messages OSC (bien sûr faut avoir le contrôleur OSC sélectionné dans la liste des surfaces de contrôle).

Si tu veux voir le nom de la piste dans Lemur capture /track/name grâce à ce script
Code:
setattribute(getobject(), 'content', OSC_ARGS);
L'arrivée de track/name va aussi déclencher un script qui envoie un OSC en retour à Reaper. Tu peux écrire ce que tu veux pour le nom de ce message OSC.
Code:
oscout(0,'trigger/script',1);
Il faut que "allow binding messages to Reaper actions and FX learn" soit coché dans le panneau de control OSC des préférences Reaper.

Ce message va mettre en route un script (pour lier le message OSC et le script Reaper c'est comme un raccourci normal) qui va retourner un message MIDI à Lemur en fonction de la piste sélectionnée.

Quand Lemur reçoit le message MIDI un autre script Lemur fait apparaître les articulations utilisées par la piste. Quand on appuie sur un bouton c'est articulations envoie bien sûr un message MIDI que le script Reaticulate reçoit et "traduit" pour qu'il soit compris par l'instrument en question.

La raison pour laquelle je fais un aller retour en plus (après tout le premier message OSC indique déjà le nom de la piste sélectionnée) c'est parce que ça me permet d'être beaucoup plus flexible et de faire la plupart du calcul dans Reaper plutôt que dans une tablette pas très puissante.

La flexibilité provient du fait que mon script Reaper regarde d'abord dans quel dossier se trouve la piste et ensuite seulement regarde de quelle piste il s'agit précisément. Le message MIDI change donc aussi en fonction du dossier. Ca signifie que je peux facilement ajouter une piste à ma template dans un dossier sans que ça touche en aucune façon aux autres dossiers et tout en gardant une certaine logique.

Finalement c'est à mon avis aussi plus facile d'éditer des scripts longs dans Reaper que dans le Lemur Editor.
swiiscompos is offline   Reply With Quote
Old 08-11-2018, 11:57 PM   #6
oudi le oudi
Human being with feelings
 
Join Date: Jun 2018
Location: Paris
Posts: 22
Default

oscout(0,'trigger/script',1);

merci :-)

j’étais partis sur cette méthode mais il me manquait le bon adressage a savoir le trigger :-)
ce qui donne par exemple

oscout(0, '/action/str', 'l'action ecrit pour renvoyer le message'); si j'ai bien compris

je vais pouvoir fouiller :-)

je vous tiens au courant.

merci encore et affaire a suivre.


jf

Last edited by oudi le oudi; 08-12-2018 at 12:03 AM.
oudi le oudi is offline   Reply With Quote
Old 08-12-2018, 08:24 AM   #7
swiiscompos
Human being with feelings
 
swiiscompos's Avatar
 
Join Date: Mar 2011
Location: London
Posts: 1,211
Default

Quote:
Originally Posted by oudi le oudi View Post
oscout(0,'trigger/script',1);

merci :-)

j’étais partis sur cette méthode mais il me manquait le bon adressage a savoir le trigger :-)
ce qui donne par exemple

oscout(0, '/action/str', 'l'action ecrit pour renvoyer le message'); si j'ai bien compris

je vais pouvoir fouiller :-)

je vous tiens au courant.

merci encore et affaire a suivre.


jf
trigger/script c'est un nom que j'ai inventé. C'est l'intérêt de OSC, tu peux envoyer n'importe quel message. Il suffit dans Reaper de le lier à une action ou un script.
swiiscompos is offline   Reply With Quote
Old 08-14-2018, 03:59 AM   #8
oudi le oudi
Human being with feelings
 
Join Date: Jun 2018
Location: Paris
Posts: 22
Default

oui t’inquiéte j'avais compris.
en revanche je but sur un point.

comment transformes tu le 'string' reçu par lemur en 'array'.

si j'ai bien compris .
j'ai mis track select dans le message osc.
donc lemur reçoit le numéro de track. ok
mais il affiche un message genre '1'....'23'...etc.
et je n'arrive pas à transformer ce message pour lui attribuer une fonction.
lemur renvoie donc toujours la même action....
ma limite dans le codage ....
il doit y avoir une fonction pour transformer le '1' en 1....
en gros il pourrait recevoir un nom ça serait pareil.(il affiche le nom mais reçoit juste un 1 ou un 0)
il faudrait surement une fonction vectorielle mais ....

je sais pas si je suis très clair.

merci
jf

Last edited by oudi le oudi; 08-14-2018 at 06:28 AM.
oudi le oudi is offline   Reply With Quote
Old 08-14-2018, 10:33 AM   #9
swiiscompos
Human being with feelings
 
swiiscompos's Avatar
 
Join Date: Mar 2011
Location: London
Posts: 1,211
Default

Quote:
Originally Posted by oudi le oudi View Post
oui t’inquiéte j'avais compris.
en revanche je but sur un point.

comment transformes tu le 'string' reçu par lemur en 'array'.

si j'ai bien compris .
j'ai mis track select dans le message osc.
donc lemur reçoit le numéro de track. ok
mais il affiche un message genre '1'....'23'...etc.
et je n'arrive pas à transformer ce message pour lui attribuer une fonction.
lemur renvoie donc toujours la même action....
ma limite dans le codage ....
il doit y avoir une fonction pour transformer le '1' en 1....
en gros il pourrait recevoir un nom ça serait pareil.(il affiche le nom mais reçoit juste un 1 ou un 0)
il faudrait surement une fonction vectorielle mais ....

je sais pas si je suis très clair.

merci
jf

Je ne suis pas certain d'avoir compris, mais essaye OSC_ARGS[0], OSC_ARGS[1] etc.
swiiscompos is offline   Reply With Quote
Old 08-18-2018, 12:38 AM   #10
oudi le oudi
Human being with feelings
 
Join Date: Jun 2018
Location: Paris
Posts: 22
Default

merci j'avance enormement.....
je reviens quand et si j'ai d'autre question
sinon pour partager.
pour les autres.
en fait j'avais mal compris le OSC_ARGS[].
et apres avoir testé dans tout les sens j'ai trouvé.
simple
il suffit de de mettre
if (OSC_ARGS=='nom de piste')setattribute....et la magique il interprete les string.

allez hop hop
merci encore
oudi le oudi is offline   Reply With Quote
Reply

Thread Tools
Display Modes

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is On
HTML code is Off

Forum Jump


All times are GMT -7. The time now is 07:15 PM.


Powered by vBulletin® Version 3.8.11
Copyright ©2000 - 2024, vBulletin Solutions Inc.