-
Notifications
You must be signed in to change notification settings - Fork 31
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
How to play drum roll properly? #5
Comments
I am considering creating a separate thread for the midi playback. Also can you test in Windows Media Player to see if same effect. |
In Windows media player drumroll is playing correctly. As I see it, the problem comes from the frequency of the Unreal tick, which is not only too long, but also variable and unpredictable (FPS drop etc). I can imagine only two ways to do it: run midi processor in a separate thread or pre-fetch upcoming events and somehow send them to midi output with a delay. But I don't know if any of those are feasible. |
I added a option to have a separate thread so FPS drop wont be affected |
Hi @Geromatic - where is this option and how can I enable it? I'm struggling to get MIDI to run in time. Thanks! |
there is a option [enabled by default] on the start node to allow background processing..it is located in the Midi Processor Component |
Thanks @Geromatic, but I can't see this in 4.17 after updating Midi Asset to FileVersion 3, VersionName 2.46. The start node doesn't show any options and the processor component has nothing background-related in its settings. Have I updated correctly? Cheers! |
Drum roll or any other case of very short notes. For example, with MPQN of 454545 and resolution of 120, note can be as short as about 3 millisec, which is way shorter than the unreal tick (time per frame). As consequence, successive notes are processed at the same time. As a result my drum roll have "holes": instead of tatatatatatatatatatata it does tatata...ta..tata...tatata.
I don't know how
sendMidiMessage()
works. Is there a way to say "play the note after a delay"?The text was updated successfully, but these errors were encountered: