Internal delay of VPC1
Paulo164
Absolutely not sure of that 😅
I have a midi optical sensor rail under the keys of my acoustic upright and let me tell you that timing inaccuracies are very perceptible, particularly when playing repeated chords. Notes falling before or after the polling are not in the same packet and you can hear it.
kawafanboi
Paulo, your hands are not machined steel, and your muscles are not cnc servos, when you play a chord, none of the notes line up exactly in a chord.
if you wanted them in the same packet, the piano would have to make polling rates 100ms+, and make assumptions about what you played.
as for whether you can hear this, i believe you when you say you can tease out some differences under critical listening, i just want to point out that this difference is end to end latency and not merely input latency. there is a huge amount of software and driver latency throughout.
SouthPark
Maybe could do similar tests using a parallel port, or parallel port card for the data acquisition.
scherbakov.al
Ah, I couldn't measure it with the midi-din output. Perhaps the output is disabled inside the vpc itself. And to enable it, you need to use the vpc-editor program, which only works on Mac and Windows. And I have Linux. To be honest, I’m too lazy to install Windows as a second system for this measurement. I tried running vpc-editor through the wine emulator - in this situation, this vpc-editor cannot see kawai as an external usb device. And, accordingly, it is impossible to change the internal vpc settings. Alternatively, I'll try running Windows in a virtual machine later. Well, or, in case someone’s MacBook or WindowsBook suddenly flies past me, I’ll turn on the din-output inside the vpc for tests. Or another option - maybe to start working the din output you need to ground or pull up some leg of the din cord to the power supply. I don’t remember exactly about this.
About delays.. yes, there will still be delays in the computer when processing and filling the buffer, but they will presumably be predictably the same. And you can get used to it. Like organists, they have relatively long delays until the column of air begins to move. And you get used to it. But the piano (if you play with a piano sound) has a more pronounced and specific attack. And in the chain of delays, suddenly the keyboard creates a rattling noise of the length of the delay. Imagine that when you play, with each key press you will change in an arbitrary way, for example, the buffer size and, accordingly, the delay. In such a situation, the game will feel like walking on a wobbly, bouncing surface. Have you tried walking on a jumping bridge? Even a slight vibration of the surface will throw off your stride in unpredictable ways. You will start to stumble. The changing response delay behaves the same way for fingers. Let it be predictably stable, then ok. And this is even despite the floating delay value of acoustic instruments. Floating depending on speed. You quickly adapt to acoustic ones and this delay becomes predictable and manageable. And sometimes even interesting and exciting. And here, summing up the buffers and sound flight, let there be a delay of 4 ms. And with each press you will have either a 3.5ms delay or a 5ms delay. And this is unpredictable and uncontrollable. This is bad.
And this floating delay is strange, because... calculations of speeds, application of curves, all sorts of calculations... let them have calculations of sine, root, logarithm, many divisions... all this, even on microprocessors with low operating frequencies, can be calculated in a time of up to 1 ms. And be stable over time. And let vpc have some delay, but let it always be the same. Would be better.
David B
scherbakov.al Or another option - maybe to start working the din output you need to ground or pull up some leg of the din cord to the power supply. I don’t remember exactly about this.
Thank you for trying. I can run my Numa via USB midi as opposed to Midi DIN. I chose the DIN because I was having some problems with the USB audio interface on the Numa. However, that has been resolved by using the external Babyface Pro. Currently, I have the option to run midi both via USB (direct to computer from Numa) or midi-DIN (from Numa through Babyface). I think I might switch to midi USB direct to my computer from the Numa. That will do away with some of the bulkiness of the midi-DIN cables.
Also, I guess it's converting to USB anyways since the Babyface is connected to my computer via USB. I would imagine it would be a smoother operation going from Numa Midi USB straight to computer rather than midi-DIN from numa to Babyface and then convert to USB midi to computer. Thanks for getting me thinking about this stuff even though I really don't understand what I'm talking about. 😀
God bless,
David
SouthPark
This is only a comment about playability etc. David L uses vpc1 right? And other people. If they do, then do they encounter latency issues to any extent that that makes the user feel that there is something wrong with the note timing, relative to playing other midi controllers?
Jose EB5AGV
SouthPark I don't find any issues, but my playing is nowhere close to @David Lai playing, so I am also interested in hearing from him
CyberGene
The only “delay” there can be on an acoustic piano is for the sound that has to travel to your ears. It takes 1ms for the sound to travel 34cm. It would be the same with digital piano speakers (but on a DP there’s additional delay such as keyboard scanning, audio buffering, etc.). No way a real piano has higher delay than a digital piano, that’s BS 🤣
kawafanboi
it depends on where you start counting, if you count finger touch, key travel @ 0 mm, there is significant delay on acoustic piano.
scherbakov.al
Presumably, triggering the 3rd sensor is equivalent to touching a string with a hammer. It seems so.
CyberGene
On an acoustic piano the blow distance (distance of hammer at rest to string) is usually 47mm. The hammer is detached at escapement which is 1mm before the string. The key has a total travel of 10mm, however the escapement is also 1mm before bottom. However the ratio of hammer travel to key travel is 46 / 9 ≈ 5. That means that for the last 1mm of key travel the hammer should travel 5mm. But it travels only 1mm to the string. Hence, the hammer hits the string before the key bottoms out. I’m not sure where they put the lowest sensor on a digital piano but I’m sure it’s near the bottom. I doubt a digital piano will thus generate a strike event sooner than an acoustic piano. I’m not even sure that’s something good either. But there’s also scanning logic delay. And sound buffering delay.
scherbakov.al
In an acoustic instrument, the moment of impact of the hammer can be either before the key reaches the bottom, or after. It depends on the style of the game. For a numeric keypad, this time between the hammer stroke and the bottom of the key is most often the same.
CyberGene
BTW, that last millimeter of key travel after escapement is called aftertouch and is variable, depends on pianist preference, apparently the fine timing advance between hammer hitting the string and key bottoming out is important and affects touch perception. DP manufacturers don’t talk about that because apparently the scanning speed introduces some rather unpredictable delay that might be higher than the fine aftertouch setting on an acoustic piano.
scherbakov.al
This millimeter is extremely important. If the distance is large, you will not be able to play expressively quietly. Or it will be very hard. If it is too close, you will get a hammering on the string. In this setting, it is very important to keep this setting the same across the entire range of the keyboard. If there is an unevenness, then some notes will seem deaf, and others will suddenly scream. It is very inconvenient to play then.
scherbakov.al
SouthPark then do they encounter latency issues to any extent that that makes the user feel that there is something wrong with the note timing
It is precisely because the delay values within the VPC are different that it can cause some inconvenience during play. If this delay were constant and the same, it might be nicer.
These inconveniences may manifest themselves when you play an acoustic instrument after playing on VPC. Or, when you start playing more, such as Liszt's pieces. If you play music on a VPC in a relaxed manner, then you are more likely to experience few or no inconveniences.
Everything is right. It seems that it is preferable to connect the keyboard via usb to the computer and the sound card via usb to the computer.
SouthPark
scherbakov.al It is precisely because the delay values within the VPC are different that it can cause some inconvenience during play. If this delay were constant and the same, it might be nicer.
A very interesting topic! It will be also interesting to later see if only the vpc1 has this relatively large variation in time between input to the usb system and output of the usb system. The tests on other controllers would probably require the same hardware/software setup, and the same testing. Such as how many notes are triggered, and how they are triggered etc.
And also to make sure that all the notes data going to the input to the usb system all appear at the input with the approximately the same start time.
David B
scherbakov.al Everything is right. It seems that it is preferable to connect the keyboard via usb to the computer and the sound card via usb to the computer.
I did away with the midi-DIN cables and it cleaned things up back there.
Now it's USB midi direct to computer and Babyface Pro via USB to computer. In my VST settings it's Numa X Piano for midi input and Babyface for output. I don't really notice a difference in latency, but I like things cleaned up.
God Bless,
David
SouthPark
Some latency details discussed here : LINK
scherbakov.al
To the question about MIDI-DIN:
(Channels 0 and 1 are usb, channel 2 is din, 3 is the third sensor.)
A midi message over USB is sent after it is sent over DIN. Almost immediately.
The question arose, does the amount of delay depend on velocity? For example, the Kawai MP11 creates a different amount of delay depending on the speed. This is done for some approximation to the actions of acoustic instruments. Maybe the VPC1 is doing something similar too. Or maybe he just has a tremor inside. Judging by the three measured notes, it seemed that the jitter when the DIN output was turned on inside seemed to be less. Or it was just my imagination.


