Old 06-05-2020, 03:59 AM   #1
Johnny Rico
Human being with feelings
 
Johnny Rico's Avatar
 
Join Date: Jul 2009
Posts: 86
Default Pédale sustain avec switch usb

Bonjour à tous, j'ai acheté ce produit pour contrôler la pédale sustain de mes VSTi pendant que je joue, j'ai bien compris que le seul truc que faisait cette pédale, c'était l'équivalent de l'appui d'une touche (du clavier...), mais du coup, est-ce que je peux l'utiliser comme pédale sustain PENDANT QUE JE JOUE ?

La pédale est configurée par défaut pour envoyer la touche "B" à l'ordinateur (j'ai testé, ça fonctionne aussi bien sur Windows que Reaper), je sais que je peux modifier cette valeur mais actuellement, le logiciel décrit dans les liens ne reconnait bizarrement pas la pédale sous Win 7 64...

En gros, tant que ça reste configuré pour envoyer un "B", est-ce que je peux m'en servir en l'état ?

Je suis un peu nul pour les CC, donc il est possible que je ne comprenne pas tous les termes dans un premier temps, désolé d'avance !

Merci !






https://pcsensor.com/pcsensor-foot-s...ir-switch.html

https://store.speechrecsolutions.com...edal-p193.aspx
Attached Images
File Type: jpg GEN-FS1-P-main.jpg (21.5 KB, 5 views)

Last edited by Johnny Rico; 06-05-2020 at 04:35 AM.
Johnny Rico is offline   Reply With Quote
Old 06-05-2020, 05:21 AM   #2
joffo78
Human being with feelings
 
joffo78's Avatar
 
Join Date: May 2012
Posts: 1,118
Default

Salut.

Tu peux utiliser cet utilitaire pour mapper des touches de clavier en messages midi
https://www.bome.com/products/miditranslator


. Le CC dédié au sustain est le n°64
joffo78 is offline   Reply With Quote
Old 06-05-2020, 05:26 AM   #3
Johnny Rico
Human being with feelings
 
Johnny Rico's Avatar
 
Join Date: Jul 2009
Posts: 86
Default

Quote:
Originally Posted by joffo78 View Post
Salut.

Tu peux utiliser cet utilitaire pour mapper des touches de clavier en messages midi
https://www.bome.com/products/miditranslator


. Le CC dédié au sustain est le n°64
Hello, je sais déjà que c'est le CC64 pour le sustain, mais je dois chercher quoi comme action pour créer le shortcut du coup ??

J'ai trouvé ça "CC: Set CC lane to 064 Hold Pedal (on/off)" Mais c'est juste pour switcher sur la ligne du CC64

Ou encore "Script: mpl_Add CC64 off to channel 0 of active MIDI Editor take.lua" mais ça me semble pas mieux...
Johnny Rico is offline   Reply With Quote
Old 06-26-2020, 02:18 AM   #4
Talagan
Human being with feelings
 
Join Date: Feb 2016
Location: Paris / France
Posts: 90
Default

Salut Johnny, je pense qu'il y a moyen de faire ce que tu veux sous REAPER si tu es toujours intéressé. A condition que tu puisses changer la séquence clavier émise par ta pédale (apparemment tu peux la reconfigurer avec un logiciel filé avec, d'après ce que j'ai lu d'une review sur amazon).

Voilà comment je le vois : il suffit d'écrire une action lua qui émet un événement MIDI sur le CC#64 (c'est possible grâce à la fonction StuffMidiMessage). Ensuite, à cette action, tu associes comme raccourci la séquence clavier que tu as demandé à ta pédale d'émettre. Donc il vaut mieux mettre un truc un peu exotique qui ne risque pas d'être déjà utilisé ("B" c'est pas terrible, vaudrait mieux un truc du genre "ctrl+alt+b" Du coup quand tu appuieras sur ta pédale, ça va déclencher l'action sous REAPER qui émettra un évènement MIDI et tu auras transformé ton super clavier une touche en pédale MIDI. J'espère juste qu'elle émet aussi un évènement quand elle est relâchée sinon ça va être galère à utiliser...

Je te laisse répondre et j'essaierai de te filer un coup de main au besoin!
Talagan is offline   Reply With Quote
Old 06-26-2020, 06:27 AM   #5
Johnny Rico
Human being with feelings
 
Johnny Rico's Avatar
 
Join Date: Jul 2009
Posts: 86
Default

Hello, merci de ta contribution à ma quête ésotérique de l'utilisation optimisée de mon clavier une touche !

Faudrait que je branche cette pédale sur un autre ordi pour effectivement assigner autre chose que ce "B". Mais je crois que l'utilisation que je voulais en faire, telle une pédale sustain, c'est un peu compromis car, telle une touche de clavier, y a juste un appui d'une touche et un relâchement de cette même touche, c'est à peu près tout...

N'étant pas un spécialiste du midi, j'aurais pensé à l'époque de l'achat (chez nos amis chinois d'Ali Express pour moins de 10 balles, on en mourra pas...) que l'utilisation de ce CC était plus anodine mais il semblerait que non...je voulais initialement une pédale en USB connectée en permanence à ma tour, pour switcher d'un clavier/périphérique midi à l'autre sans rebrancher de pédale sustain classique...

Mais merci de contribuer aux problèmes de niches des gens comme moi ah ah ! (alors qu'il fait super chaud dehors, tu pourrais jouer à Chat Perché si t'en avais envie ou même Kamoulox, pourquoi pas !)

PS : oui, je suis dingue
Johnny Rico is offline   Reply With Quote
Old 06-26-2020, 09:52 AM   #6
Talagan
Human being with feelings
 
Join Date: Feb 2016
Location: Paris / France
Posts: 90
Default

Quote:
Originally Posted by Johnny Rico View Post
Faudrait que je branche cette pédale sur un autre ordi pour effectivement assigner autre chose que ce "B". Mais je crois que l'utilisation que je voulais en faire, telle une pédale sustain, c'est un peu compromis car, telle une touche de clavier, y a juste un appui d'une touche et un relâchement de cette même touche, c'est à peu près tout...
Ouais je vois... si tu avais le On ET le Off alors ce serait bon, car c'est comme ça que fonctionne la plupart des pédales de sustain en MIDI. C'est pas comme une wah où y'a des valeurs graduelles, ça envoie juste 127 (le max) quand elle est enclenchée ou 0 (le min) quand elle est relâchée. Si tu n'as que l'évènement d'appui et pas le relâché, ça devient limitant, tu peux à la limite la convertir en bouton on/off... et encore, avec un script.

Quote:
Originally Posted by Johnny Rico View Post
Mais merci de contribuer aux problèmes de niches des gens comme moi ah ah ! (alors qu'il fait super chaud dehors, tu pourrais jouer à Chat Perché si t'en avais envie ou même Kamoulox, pourquoi pas !)
De rien Ouai c'est sûr que pour un gadget Ali Express ça vaut peut-être pas trop le coup de s'emmerder, mais bon ça prouve qu'on peut vraiment tout faire avec REAPER! ; sinon chais pas, tu peux peut-être la reconvertir en clavier pour écrire des textes de pub orangina des années 90 ... et c'est clair qu'il fait chaud, on attend la disto céleste là!
Talagan is offline   Reply With Quote
Old 06-26-2020, 10:08 AM   #7
Johnny Rico
Human being with feelings
 
Johnny Rico's Avatar
 
Join Date: Jul 2009
Posts: 86
Default

"écrire des textes de pub orangina des années 90" > en voilà un beau projet ! ça me donnerait presque envie d'écouter du Sheila
Johnny Rico is offline   Reply With Quote
Old 06-26-2020, 11:46 AM   #8
STOP
Human being with feelings
 
STOP's Avatar
 
Join Date: Jul 2013
Location: Québec
Posts: 207
Default

Est-ce que tu as essayé la dernière version du logiciel de ta pédale USB?

7.0.4 16 juin 2020
http://software.pcsensor.com/pc_en.html
STOP is offline   Reply With Quote
Old 06-26-2020, 11:57 AM   #9
sardonicus
Human being with feelings
 
sardonicus's Avatar
 
Join Date: Jan 2010
Posts: 7,023
Default

Figure-toi qu'avec la dernière version, j'ai reussi à faire marcher le mien (c'est un 3 pédales). Ça vaut le coup d'essayer.
__________________
Ignorance ou indifférence: J'en sais rien et je m'en fous.
sardonicus is offline   Reply With Quote
Old 06-29-2020, 11:19 AM   #10
Johnny Rico
Human being with feelings
 
Johnny Rico's Avatar
 
Join Date: Jul 2009
Posts: 86
Default

Quote:
Originally Posted by sardonicus View Post
Figure-toi qu'avec la dernière version, j'ai reussi à faire marcher le mien (c'est un 3 pédales). Ça vaut le coup d'essayer.
Hey, Sardonicus, tu penses qu'avec ce type de pédales, on peut faire ce que je recherche ?

Sinon, j'ai pu assigner un bon "ctrl + B" sur un autre ordi qui a reconnu la pédale...
Y a un mode "single trigger" (pour enclencher une seule fois la touche/ensemble de touches, même si la pédale reste appuyée) et un mode répétition pour...répéter si on laisse appuyé...j'ai choisi le mode répétition, ça me parait plus cohérent avec ce que je veux...
Johnny Rico is offline   Reply With Quote
Old 06-29-2020, 11:34 AM   #11
sardonicus
Human being with feelings
 
sardonicus's Avatar
 
Join Date: Jan 2010
Posts: 7,023
Default

J'ai pas trop approfondi tes attentes spécifiques mais de ce que j'en ai capté, oui, c'est faisable.
__________________
Ignorance ou indifférence: J'en sais rien et je m'en fous.
sardonicus is offline   Reply With Quote
Old 06-29-2020, 12:42 PM   #12
Johnny Rico
Human being with feelings
 
Johnny Rico's Avatar
 
Join Date: Jul 2009
Posts: 86
Default

Quote:
Originally Posted by sardonicus View Post
J'ai pas trop approfondi tes attentes spécifiques mais de ce que j'en ai capté, oui, c'est faisable.
En gros, tu penses que je peux faire en sorte que Reaper renvoie une valeur entre 0 et 63 (peu importe laquelle, si j'ai bien compris) sur le CC64 avec ce raccourci "ctrl+B" que je renvoie constamment en laissant appuyé la pédale ?? Le truc c'est qu'il faudrait que Reaper renvoie ensuite une valeur entre 64 et 127 dès que je relache la pédale...
Johnny Rico is offline   Reply With Quote
Old 06-29-2020, 02:18 PM   #13
sardonicus
Human being with feelings
 
sardonicus's Avatar
 
Join Date: Jan 2010
Posts: 7,023
Default

Pour l'instant j'arrive à le faire avec un tone generator, un reacontrolmidi et de la modulation de paramètre MAIS pas en on/off. ça marche avec un appui pour passer le CC hold pedal au dessus de 64, un autre appui le repasse en dessous de 63. Ça t'irait comme comportement?
__________________
Ignorance ou indifférence: J'en sais rien et je m'en fous.
sardonicus is offline   Reply With Quote
Old 06-29-2020, 02:20 PM   #14
Johnny Rico
Human being with feelings
 
Johnny Rico's Avatar
 
Join Date: Jul 2009
Posts: 86
Default

Quote:
Originally Posted by sardonicus View Post
Pour l'instant j'arrive à le faire avec un tone generator, un reacontrolmidi et de la modulation de paramètre MAIS pas en on/off. ça marche avec un appui pour passer le CC hold pedal au dessus de 64, un autre appui le repasse en dessous de 63. Ça t'irait comme comportement?
Merci de ta sollicitude, mais je t'avouerais que je comptais l'utiliser de la façon la plus fidèle au sustain d'origine...Si tu penses que c'est trop chiant de trouver une solution, pas grave
Johnny Rico is offline   Reply With Quote
Old 06-29-2020, 02:25 PM   #15
Talagan
Human being with feelings
 
Join Date: Feb 2016
Location: Paris / France
Posts: 90
Default

Je vois un autre moyen, mais il faut le coder ; il faudrait faire un sniffer en lua avec gfx.getchar pour vérifier la touche/combinaison de touche qui t'intéresse pour savoir si elle est appuyée ou non. On s'affranchit de l'évènement up, comme ça. A chaque changement d'état on envoie un évènement midi (0 ou 127 sur le CC#64). Il y a un peu de boulot pour prototyper ça, je ne suis pas sûr à 100% que ça marche non plus ; je peux jeter un coup d'oeil si tu veux dans les prochains jours. A moins que quelqu'un ait une autre solution miracle EDIT : la spec JSFX me dit dans l'oreillette que ça doit être possible en JSFX, ce serait peut-être plus propre...
Talagan is offline   Reply With Quote
Old 06-29-2020, 02:29 PM   #16
Johnny Rico
Human being with feelings
 
Johnny Rico's Avatar
 
Join Date: Jul 2009
Posts: 86
Default

Je me dis qu'effectivement, le but initial mérite-t-il autant d'effort ? Je sens bien que le challenge peut parfois être grisant et vous y trouverez probablement votre compte mais surtout, ne vous forcez pas pour moi !
Johnny Rico is offline   Reply With Quote
Old 06-29-2020, 02:42 PM   #17
sardonicus
Human being with feelings
 
sardonicus's Avatar
 
Join Date: Jan 2010
Posts: 7,023
Default

-Tu crées une piste 01 avant toutes les autres.
-Tu insères un tone generator et un reacontrolmidi (dans cet ordre)
-Tu désactives le master send de la piste
-Tu laisses le tone generator balancer du son, on se fout du volume et de la fréquence du moment qu'il y a du son qui en sort
-Dans le reacontrolmidi, la section du bas est pour les CC. Donc dans control change, tu cliques enable et Raw mode. Tu affectes le CC64 dans le premier onglet déroulant et tu règles sa valeur un peu au dessus de 64 (pédale on, si je dis pas de connerie).
Toujours dans le reacontrolmidi, tu vas tout en en haut dans paramètres (ou param ou... selon le langue pack que tu utilises) et dans le menu tu sur parameter list/parameter modulation/CC64. Apparaitune fenre que tu règles comme suit:
-Cocher enable mod param avec une valeur (le slider juste en dessous) dans la moitié droite (un peu n'importe ou, on s'en fout tant que c'est à droite)
-La source de modulation est "audio control signal" donc tu coches.
-Tu choisis l'entrée 1+2
-Attack à 0
-Release à 0
-vol min -24db
-vol max 0db
force 100%
Direction negative

A ce niveau, tu peux tester si ça fonctionne simplement en bypassant le tone generator.

Il te faut maintenant une action perso à laquelle tu affecteras le raccourci émis par ta pédale. Dans cette action perso, tu vas mettre deux actions dans cet ordre:
_SWS_SEL1 (SWS: Select only track 1)
_S&M_FXBYP1 (SWS/S&M: Toggle FX 1 bypass for selected tracks)

Avec cette action, à chaque impulsion tu passes le CC64 au dessus ou en dessous de la valeur 63. En gros, c'est en mode switch latch. Je pense qu'il doit y avoir moyen de faire façon unlatch (comme une pédale de sustain) mais là ça ne me vient pas à l'esprit.

Après; il ne te reste qu'à envoyer le midi de cette piste vers ce que tu veux piloter.
En espérant avoir été clair... (ce dont je doute un peu)
__________________
Ignorance ou indifférence: J'en sais rien et je m'en fous.
sardonicus is offline   Reply With Quote
Old 06-30-2020, 01:01 AM   #18
Talagan
Human being with feelings
 
Join Date: Feb 2016
Location: Paris / France
Posts: 90
Default

Wow utiliser un tone generator pour transformer un évènement clavier en évènement MIDI, j'adore l'idée! Joli, @sardonicus.

Sinon je peux aussi te proposer le script suivant (en PJ pour download, à mettre dans le folder de scripts de reaper et loader dans la fenêtre d'actions, et tu lui associes le raccourci clavier généré par ta pédale) :

Code:
state = tonumber(reaper.GetExtState("fake-sustain-pedal","state"));

if(state == nil or state == 0) then
  state = 127
else
  state = 0
end

reaper.SetExtState("fake-sustain-pedal", "state", tostring(state), false);

reaper.StuffMIDIMessage(2, 0x0B<<4, 64, state );
A chaque appel de l'action (à associer au raccourci de la pédale donc) ça change le state de la pédale et envoie un évènement MIDI (0 ou 127) sur le channel du Virtual Keyboard. (Il faudra désactiver le mode repeat de la pédale du coup).

Mais on est aussi en mode latch, et malheureusement je ne vois pas comment faire mieux pour l'instant. La piste gfx.getchar me semble mauvaise finalement, car il faut que le script tourne et que sa fenêtre graphique soit focused pour que getchar renvoie les évènements, autant dire que c'est limitant quand on joue. Pour pouvoir sniffer tous les évènements claviers de manière transparente il faudrait carrément avoir une extension qui offre la fonctionnalité à un niveau plus bas, mais je crois que ça n'a jamais été intégré par qui que ce soit pour l'instant, cf :

https://forum.cockos.com/showthread.php?t=215860

EDIT: Euh, bah, j'ai dit une connerie ; c'est pas documenté dans la thread officielle mais y'a une fonction JS_VKeys_GetState qui a l'air de bien aller dans la js_ReaScriptAPI . Je verrai ce soir ce qu'on peut faire avec si j'ai le temps.
Attached Files
File Type: lua fake_MIDI_sustain_pedal.lua (268 Bytes, 3 views)

Last edited by Talagan; 06-30-2020 at 05:09 AM.
Talagan is offline   Reply With Quote
Old 06-30-2020, 01:36 PM   #19
Talagan
Human being with feelings
 
Join Date: Feb 2016
Location: Paris / France
Posts: 90
Default

Ok, bon bonne nouvelle Ça a l'air de fonctionner via JS_VKeys_GetState. La solution suivante met en place un sniffer des évènements clavier qui, si la touche choisie (celle associée à la pédale) est pressée, émet un évènement MIDI de valeur 127 sur le CC #64 et de valeur 0 si relâchée (c'est fait sur le channel du Virtual Keyboard de REAPER).

La seule contrainte, c'est qu'il va falloir trouver une touche de clavier à associer à ta pédale et qui s'utilise sans touche de modification (ctrl/shit/alt/cmd/option etc - car je n'ai pas réussi à les gérer pour l'instant, et en plus je pense que ce n'est pas une très bonne idée d'avoir une pédale de sustain qui déclenche ctrl/alt/etc car cela risque d'interférer avec d'autres fonctionnalités de REAPER).

Voici les étapes :

0) Tu oublies mon post de ce matin (sauf si tu veux faire du latch).
1) Il faut installer ReaPack si pas installé
2) Via ReaPack, il faut installer l'extension js_ReaScriptAPI de Julian Sander

Cela permet aux scripts dont tu as besoin de fonctionner (je les ai mis en PJ). L'étape d'après :

3) Copier les 3 scripts dans le répertoire "Scripts" du répertoire de Resources de Reaper (pour le trouver, dans REAPER, Options > "Show Reaper resource path in finder")
4) Notifier REAPER de l'existence de ces 3 scripts. Dans REAPER, Actions > Show Action List. Puis, Reascript > Load et sélectionner les trois scripts et faire "ok". Ils seront maintenant disponibles comme actions dans reaper.

Maintenant, le but est de trouver une touche de clavier qui puisse s'utiliser sans touche de modification (Ctrl/Shift/Alt etc) mais qui ne soit pas déjà utilisée par REAPER comme raccourci pour une action (quitte à sacrifier une touche comme "²" ou "ù"). Perso, j'ai pris la touche "Impression Ecran"... mais je suis sous MacOS avec un clavier de PC... donc ton choix dépend vraiment de ton environnement. En tout cas, j'espère que le logiciel livré avec la pédale te permet de faire un choix aussi précis.

4) Reprogramme ta pédale pour utiliser la fameuse touche.
5) Maintenant, une étape un peu relou mais nécessaire, obtenir le numéro de la VKey correspondant à cette fameuse touche. Lance l'action "What vkey have I pressed.lua" depuis l'action list dans REAPER. Une fois cette action lancée, appuie sur ta pédale. Cela doit te donner un numéro : par exemple, dans mon cas, avec la touche "Impression écran" la console dit "Key 124 has been pressed". Note ce fameux numéro.
6) Tue l'action "What vkey have I pressed.lua" (dans REAPER, Actions > "Running script : What key etc", tu cliques dessus et tu fais terminate).
7) Edite le script "Keyboard MIDI sustain pedal.lua" et trouve la ligne "KEY_TO_TEST = 124;". Remplace 124 par le numéro de touche que tu viens de noter en 6.
8) Lance l'action "Keyboard MIDI sustain pedal.lua". Celle-ci va tourner en tâche de fond, et sniffer les évènements de ta pédale pour les transcrire en évènements MIDI.

A ce niveau là, tout est fonctionnel, tu dois pouvoir créer une piste MIDI, l'armer, et voir que la pédale fonctionne (le vu-mètre s'active sur un on et un off de la pédale). Cependant, si tu as bien géré et que tu as vraiment choisi une touche totalement inutilisée dans REAPER pour ta pédale, tu auras peut-être un son d'avertissement de la part de REAPER pour te dire que justement, cette touche n'est pas attribuée. Dans ce cas, il te suffit d'attribuer cette touche en tant que raccourci à l'action "Do Nothing.lua". Pour cela, dans REAPER, "Show Action List" puis sélectionne "Do Nothing.lua", et dans la partie raccourci, fait "add". Appuie sur ta pédale pour associer sa touche à l'action "do nothing". Maintenant, quand tu appuieras dessus, REAPER considérera que cette touche fait quelque chose (mais en fait cette chose, c'est rien), et n'émettra donc pas le son de warning.

Pfiou, j'espère que c'est pas trop indigeste Une fois que tu as survécu à toutes ces étapes, les fois d'après ce sera bien plus facile, il te suffira de lancer l'action "Keyboard MIDI sustain pedal.lua" pour être paré.

Voilou voilou. J'avoue que c'est un peu brut de décoffrage... mais ça marche ('fin je crois ...).
Attached Files
File Type: lua Do Nothing.lua (39 Bytes, 2 views)
File Type: lua Keyboard MIDI Sustain Pedal.lua (1.1 KB, 2 views)
File Type: lua What vkey have I pressed.lua (737 Bytes, 2 views)

Last edited by Talagan; 06-30-2020 at 01:53 PM.
Talagan is offline   Reply With Quote
Old 06-30-2020, 02:25 PM   #20
Johnny Rico
Human being with feelings
 
Johnny Rico's Avatar
 
Join Date: Jul 2009
Posts: 86
Default

Putain, c'est excitant. Beau, dense et excitant. Je teste ça dès que j'ai une petite heure au calme, merci ! (à vous deux !)
Johnny Rico 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 10:50 PM.


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