Flam with simultaneous pad hits

Discussions related to MegaDrum Hardware

Re: Flam with simultaneous pad hits

Postby jarosz » Sun Apr 08, 2018 2:50 pm

dmitri wrote:A few things to note.
1. I have not optimized MDM FX for performance to display MIDI Log live data so it will struggle (and stumble/choke) with a flood of MIDI messages trying to update MIDI Log. You can see it in a Task Manager - when I send a flood of MIDI messages to MDM FX, Task Manager shows it's CPU usage goes above 100%.
2. Java is not really a real time system so you should not expect it so calculate time between events consistently and precisely.
with
That could have been the case, so now I show results from my DAW - REAPER, recorded via MegaDrum USB.

dmitri wrote:Also, can you scroll in the LCD menu to some Curves/Pedal/Pads settings so that the live hit bars are not shown and test it again?

I'll try and post my results.

EDIT: Hiding hit bars with LCD menu makes no difference. And "hit history" of input numbers is being displayed anyway.

I believe you can't reproduce the bug, so it might be impossible to find a solution :(
You do not have the required permissions to view the files attached to this post.
jarosz
 
Posts: 68
Joined: Wed Jul 26, 2017 10:40 am

Re: Flam with simultaneous pad hits

Postby dmitri » Sun Apr 08, 2018 4:34 pm

jarosz wrote:EDIT: Hiding hit bars with LCD menu makes no difference. And "hit history" of input numbers is being displayed anyway.

What do you mean by hit history? The input numbers under the VU meters?

Also:
1. Make sure MIDI Log is hidden in MDM FX while you run Reaper.
2. Please take screenshots of pads settings where you placed Mic1/2/3.
3. Please try it with a Standard MIDI Output from MegaDrum.
4. What hardware (CPU), ASIO driver, soft synth do you have?
dmitri
Site Admin
 
Posts: 8706
Joined: Fri Aug 03, 2007 8:05 pm

Re: Flam with simultaneous pad hits

Postby dmitri » Sun Apr 08, 2018 7:53 pm

I did a bit more testing. I created a special firmware where all MIDI messages are dropped except first 2 MIDI On messages every 1 second. Then I configured two inputs to autotrigger (Gain 8, Threshold 0) without XTalk suppression (separate XTalk Groups) like this:
Screen Shot 2018-04-08 at 20.26.39.png

so that they trigger simultaneously.

The above simulates simultaneous hits of two inputs every 1 second.

Then I captured MIDI data with MIDI Monitor:
Screen Shot 2018-04-08 at 20.25.27.png


As you can see, MIDI Monitor show two MIDI On messages coming on either on the same millisecond or 1ms apart at most.

I also captured this MIDI data with MIDI Log in MDM FX:
Screen Shot 2018-04-08 at 20.40.15.png

As you can see that according to MIDI Log shows simultaneous hits coming 3-8ms apart even though MIDI Monitor was showing them at the same millisecond.

As far as I can see, MegaDrum sends MIDI data pretty much real time with no delay and it is down to host hardware/software to handle them as fast as they can.
You do not have the required permissions to view the files attached to this post.
dmitri
Site Admin
 
Posts: 8706
Joined: Fri Aug 03, 2007 8:05 pm

Re: Flam with simultaneous pad hits

Postby jarosz » Sun Apr 08, 2018 9:23 pm

dmitri wrote:What do you mean by hit history? The input numbers under the VU meters?

Yes

dmitri wrote:1. Make sure MIDI Log is hidden in MDM FX while you run Reaper.
2. Please take screenshots of pads settings where you placed Mic1/2/3.
3. Please try it with a Standard MIDI Output from MegaDrum.
4. What hardware (CPU), ASIO driver, soft synth do you have?


4. Surface Pro 3 i5-4300U 1.9 GHz - 2.9 GHz max, 4GB RAM, Windows 10 x64 with ASIO4ALL, but it's the same with Native Instruments Komplete Audio 6 with Addictive Drums 2 VST hosted in REAPER x64.

1. MDM FX Closed - same effect
---
1. MDM FX Closed
3. Standard MIDI Output - effect is different, but still unacceptable - you can see a samples difference of 2014 samples (in 96 kHz ca. 21 ms) between MIDI notes. I've attached a photo and screenshots.

dmitri wrote:As far as I can see, MegaDrum sends MIDI data pretty much real time with no delay and it is down to host hardware/software to handle them as fast as they can.

That's what I would expect from such a powerful device.

Tomorrow I'll also make a test with my other laptop and MIDI Monitor.

Would it be possible for me to upload this special firmware and test it on my configuration?
You do not have the required permissions to view the files attached to this post.
jarosz
 
Posts: 68
Joined: Wed Jul 26, 2017 10:40 am

Re: Flam with simultaneous pad hits

Postby dmitri » Sun Apr 08, 2018 9:47 pm

jarosz wrote:4. Surface Pro 3 i5-4300U 1.9 GHz - 2.9 GHz max, 4GB RAM, Windows 10 x64 with ASIO4ALL, but it's the same with Native Instruments Komplete Audio 6 with Addictive Drums 2 VST hosted in REAPER x64.

Hm...
1. Those tablets (laptops too) are optimized for long battery life. I don't think they are particularly good for real time latency below 10-20ms.
2. ASIO4ALL: I guess you know it is far from real ASIO2 and it uses a lot of host CPU power along with the soft synth which is also CPU hungry.
jarosz wrote:Would it be possible for me to upload this special firmware and test it on my configuration?

Here it is:
megadrumSTM32d_56_20180408.bin.zip
You do not have the required permissions to view the files attached to this post.
dmitri
Site Admin
 
Posts: 8706
Joined: Fri Aug 03, 2007 8:05 pm

Re: Flam with simultaneous pad hits

Postby jarosz » Mon Apr 09, 2018 12:09 pm

Are you sure it's the correct firmware file? It doesn't stop once in a second for me. This is my MIDI Log of auto triggering (Gain 8, Threshold 0)
You do not have the required permissions to view the files attached to this post.
jarosz
 
Posts: 68
Joined: Wed Jul 26, 2017 10:40 am

Re: Flam with simultaneous pad hits

Postby dmitri » Mon Apr 09, 2018 1:13 pm

Sorry, this was a standard firmware. This is a test firmware:
megadrumSTM32d_56_20180408.bin.zip
You do not have the required permissions to view the files attached to this post.
dmitri
Site Admin
 
Posts: 8706
Joined: Fri Aug 03, 2007 8:05 pm

Re: Flam with simultaneous pad hits

Postby jarosz » Mon Apr 09, 2018 9:59 pm

dmitri wrote:1. Those tablets (laptops too) are optimized for long battery life. I don't think they are particularly good for real time latency below 10-20ms.

It might be the case, but it happens also with an audio interface Komplete Audio 6 and with my other laptop which is even stronger (Core i5-6267U), operating on ac power with high performance power plan.

dmitri wrote:2. ASIO4ALL: I guess you know it is far from real ASIO2 and it uses a lot of host CPU power along with the soft synth which is also CPU hungry.

Actually I am very pleased with the overall latency even on ASIO4ALL (with single hits). To me MegaDrum + Surface Pro 3 + Addictive Drums 2 seems to be not even like a poor man's TD-20, but a poor man's Mimic Pro. I was about to measure exact latency, but wanted to resolve the problem with simultaneous hits first. I think it's not a PC issue and have some arguments to prove my point.

2 noise.JPG

As you can see, my result with the special firmware is similar to yours. There is no latency between notes, with minor irregularities, caused IMO by real noise randomness.

But what if hits were not in perfect sync (like a real world drummer, but not so clumsy to miss all hits by over 20 ms)

I've recorded a pad output with my audio interface, multiplied it 30 times in REAPER with pan 100% left, then duplicated it on a second track with pan 100% right and moved the second hit by a 1 ms with each second. In the beginning tracks are in a perfect sync, 0:01 - 1 ms difference between left and right channel, 0:02 - 2 ms, and so on. Then I've connected these left and right outputs into two MegaDrum inputs to simulate real pad strokes (left - MIDI #1, right - MIDI #2). Here's the result:

2 channels.JPG

As you can see first two notes are in perfect sync, but with the second run (0:01, 1 ms delay) the interval of MegaDrum output is 18 ms. I wanted to remove Note Offs for clarity and then I discovered that Note Off messages are in perfect sync. Why would my computer accept two messages with velocity 0 at a time, and wouldn't otherwise?

I duplicated the track to a third channel of my audio interface, made it delayed even more (0:01 - 2 ms, 0:02 - 4 ms and so on) and sent it into third MegaDrum input. Here's the result:

3 channels.JPG

As you can see, even the first stroke (all three channels at the same time) is not in sync. There's big difference between first and second note (as I've described in my first post) and no difference between second and third). But Note Off messages are OK.

These are audio files, generated from REAPER tracks. Could you, please, run these audio files through your MegaDrum inputs and post your result? I don't know if you have an audio interface with more then two outputs to run the second one.

First file: 2 channels 96 kHz 24 bit WAV
https://1drv.ms/u/s!Ahmfr-SLIxKCkGg-BSoUsiEwXYDU

Second file: 3 channels 96 kHz 24 bit WAV
https://1drv.ms/u/s!Ahmfr-SLIxKCkGk5wIrTwoHCvYba
You do not have the required permissions to view the files attached to this post.
jarosz
 
Posts: 68
Joined: Wed Jul 26, 2017 10:40 am

Re: Flam with simultaneous pad hits

Postby dmitri » Mon Apr 09, 2018 10:59 pm

I think the fact that Note Off messages are in perfect sync but Note On are not indicate that your tablet is struggling to process the first Note On message thus delaying registering the second Note On. With Note Off all needs to do is stop processing thus they are in sync.
This is made worse by using ASIO4ALL which is CPU intensive compared to native ASIO 2 which is still optimized for lower power consumption at the hardware level even even if you set to 'performance mode'. Latency is sacrificed first on laptops/tablets for this. I know it too well as I operate a CNC machine for building aluminium modules using LinuxCNC. I had to build a desktop PC for it as CNC machining is very sensitive to latency and no matter how powerful a laptop I tried to use it was unacceptably slower. In fact the PC I built is much less powerful then a laptop I tried to use but thanks to disabling all power saving feature (which I could not disable on any of laptops) it is performing several times faster.

1. Can you please do a test with a powerful desktop PC with a real ASIO 2 sound card/drivers?
2. When you do the MIDI test, can you use another laptop/PC for as sound trigger source fed into MegaDrum and stop all sound synth applications except the MIDI Monitor?
dmitri
Site Admin
 
Posts: 8706
Joined: Fri Aug 03, 2007 8:05 pm

Re: Flam with simultaneous pad hits

Postby jarosz » Tue Apr 10, 2018 5:24 am

dmitri wrote:1. Can you please do a test with a powerful desktop PC with a real ASIO 2 sound card/drivers?

For now I can only do a test with a mediocre desktop PC, but I'll try and it could prove your point even stronger.
dmitri wrote:2. When you do the MIDI test, can you use another laptop/PC for as sound trigger source fed into MegaDrum and stop all sound synth applications except the MIDI Monitor?

That's what I actually did. Laptop as a sound source via audio interface into MegaDrum connected to a Surface with only MIDI monitor running.

Now I think about programming an Ardiuno Micro Leonardo (it has MIDI-USB capability) which would flood the tablet with MIDI messages to see if there's any difference.
jarosz
 
Posts: 68
Joined: Wed Jul 26, 2017 10:40 am

PreviousNext

Return to MegaDrum Hardware

Who is online

Users browsing this forum: Bing [Bot], Google [Bot] and 89 guests