StreamByter Delays Not Working

0 votes
asked Nov 6, 2018 in Defect (Confirmed, Not Fixed Yet) by jkhiser (19,810 points)
What version of MD are you using? We implemented delays on outgoing StreamByter in 2.97 (latest App Store version).
2.97.0 | Build 181007
We're checking into this now. We do adjust the timestamp on delayed outgoing stuff, but CoreMIDI is then supposed to handle delaying the send. Thanks.
HKHiser yeah that build has the delays working "correctly" but apparently modifying the timestamp isn't producing results that work for you. We're waiting for Audeonic to advise us on this topic, but if need to adjust MD to actually send with delays as opposed to redoing the timestamp, we will do that. Or make it a global option for SB.

Let's see how this plays out. Thanks for your patience as we figure out the world of MIDI!
I have been beating my head against one limitation in RD2000 since May -- it will only accept eight Sysex messages at once, then chokes.  And I need lots of individual Sysex messages to read out parameters, up to 32 per tab.  After finally taking the StreamByter jump, and after posting this, I finally figured out a trivial way to do this with a single control.  I am going to have to write up some of my tips and tricks, just so I can remember what I did in a few months.  So this SB problem is no longer impacting my build.
I'm excited that you found a better way to do this than using delays. However, I still need to understand if the delays are working by offsetting the timestamp, or if we're doing something wrong, or what. Delays could be useful for certain musical contexts for sure.
Update - as of today, delays under 1000 Ms do not work, delays over 1000 Ms function fairly accurately.

I've seen a lot of comments on the forums about issues with delays, but, the last one on this thread seems to be the most recent, and reports that >1000 seems to be working), but, I cannot get SEND/SND delays to work at all in INPUT or OUTPUT rules of integrated StreamByter. If I move the exact same SB rules into a SB module within MIDIFire, they work properly.

I've tried ms values from anywhere between 1 and 120000.

Example:

IF L0 == 1   # and I know it does, and rest of loop is working, just put here for context
   # Request curret parameter value(s) from a TC Helicon VoiceLive 3 Extreme
   SND F0 00 01 38 00 6D 47 05 52 F7
   SND F0 00 01 38 00 6D 47 05 53 F7
   SND F0 00 01 38 00 6D 47 00 66 F7 +D3000
END


Watch log in either MIDIFire or MDP2 and see that the last line (with the delay) just goes out immediately.

Any ideas?

Delays under 1 sec are a known issue, captured on the list of open problem reports.  For reliable delays, use the stand alone streambyter.
Wait... thefervent is saying this is an issue in MidiFire as well?
I have only tested MIDI Fire on Mac, I use stand alone StreamByter on iPad.

MIDI fire on Mac has a problem under 150ms - https://audeonic.boards.net/thread/944/anomalous-delay-times-midi-fire
Famous last words but... I'm sending up a fix to beta right now.

1 Answer

0 votes
Corrected in Next Beta 10.3.0, 20240331.2144.  Times look pretty good both in and out.
Images
Screenshot 2024-04-01 at 8.53.22 AM.png
Screenshot 2024-04-01 at 8.53.22 AM.png
answered Apr 1, 2024 by jkhiser (19,810 points)
...