If you have a problem or need to report a bug please email : support@dsprobotics.com
There are 3 sections to this support area:
DOWNLOADS: access to product manuals, support files and drivers
HELP & INFORMATION: tutorials and example files for learning or finding pre-made modules for your projects
USER FORUMS: meet with other users and exchange ideas, you can also get help and assistance here
NEW REGISTRATIONS - please contact us if you wish to register on the forum
Users are reminded of the forum rules they sign up to which prohibits any activity that violates any laws including posting material covered by copyright
Setup priority on MIDI Execution - Delay?
13 posts
• Page 2 of 2 • 1, 2
Re: Setup priority on MIDI Execution - Delay?
It's fine to delay triggers-
even MIDI(with Ruby) I imagine.
It's not necessary here though, the link order thing should be fine IMO
If the changes are too fast, and it doesn't work right,
you can introduce a 'timer' if needed, on the trigger
Nice idea
even MIDI(with Ruby) I imagine.
It's not necessary here though, the link order thing should be fine IMO
If the changes are too fast, and it doesn't work right,
you can introduce a 'timer' if needed, on the trigger
Nice idea
-
nix - Posts: 817
- Joined: Tue Jul 13, 2010 10:51 am
Re: Setup priority on MIDI Execution - Delay?
maybe the R&D primitive: Midi Buffer
could help here...
Flush the second buffer after a short delay?!
could help here...
Flush the second buffer after a short delay?!
-
Walter Sommerfeld - Posts: 249
- Joined: Wed Jul 14, 2010 6:00 pm
- Location: HH - Made in Germany
Re: Setup priority on MIDI Execution - Delay?
You may use Ruby, to order midi messages in specific order, if they arrive at the same time.
For example this code will accumulate all note on and note off messages that arrive at the same time and order them properly, that all note on preceed note off. Other messages (like CC) are simply passed as they are
input midiIn, output midiOut
For example this code will accumulate all note on and note off messages that arrive at the same time and order them properly, that all note on preceed note off. Other messages (like CC) are simply passed as they are
input midiIn, output midiOut
- Code: Select all
def init
@noteon=[]
@noteof=[]
end
def event i,v,t
if i==0 #ariving messages
midi=@in.to_array
if midi[0]==144
@noteon << midi
input 99,nil #schedule buffers emptying after all notes are received
elsif midi[0]=128
@noteof<< midi
input 99,nil #schedule buffers emptying after all notes are received
else
output @in
end
elsif i==99 #clear buffer
@noteon.each{|note|
output Midi.new(note[0],note[1],note[2],note[3])}
@noteof.each{|note|
output Midi.new(note[0],note[1],note[2],note[3])}
@noteon=[]
@noteof=[]
end
end
- KG_is_back
- Posts: 1196
- Joined: Tue Oct 22, 2013 5:43 pm
- Location: Slovakia
13 posts
• Page 2 of 2 • 1, 2
Who is online
Users browsing this forum: No registered users and 126 guests