Bonjour,
J'ai un script qui a une certaine durée d'exécution, il fonctionne normalement et pendant la durée de son exécution je peux en lancer d'autres instances en parallèle.
Mon problème est le suivant:
Cela fonctionne très bien tant que les instances supplémentaires sont lancées depuis la Action List, ou avec un raccourci clavier. Mais bizarrement cela ne fonctionne pas si mon raccourci est un contrôleur Midi. Si j'utilise le contrôleur Midi je peux lancer uniquement 1 instance à la fois.
Voici un script test, pour l'essayer vous devez préalablement sélectionner une piste, et faire play.
Le script va muter la piste sélectionnée pendant 5 secondes et ajouter un marqueur à l'emplacement de la tête de lecture. Tant que la piste est mutée par la première instance vous pouvez relancer le script et d'autres marqueurs seront ajoutés. Par contre cela ne sera pas le cas si vous assignez un raccourci Midi au script et que vous le lancez par ce moyen-là. Dans ce cas le script ne pourra être relancé qu'une fois la piste démutée au bout des 5 secondes.
Est-ce que cela fonctionne chez vous?
Merci.
Code:
function timer()
time2 = reaper.time_precise()
if time2 - time1 < 5 -- time in seconds you need for pause
then reaper.defer(timer)
else reaper.Main_OnCommand(40731, 0) -- Unmute tracks
end
end
function cursor_pos ()
eop_state = reaper.GetPlayState()
if eop_state ==1 -- check edit or play state
then cursor_pos = reaper.GetPlayPosition() -- get the play cursor position
else cursor_pos = reaper.GetCursorPosition() -- get the edit cursor position
end
end
time1 = reaper.time_precise()
timer()
cursor_pos()
reaper.Main_OnCommand(40730, 0) -- Mute tracks
reaper.AddProjectMarker(0, 0, cursor_pos, 0, "", -1)