|
Welcome to the Piano World Piano Forums Over 3 million posts about pianos, digital pianos, and all types of keyboard instruments. Over 100,000 members from around the world.
Join the World's Largest Community of Piano Lovers
(it's free)
It's Fun to Play the Piano ... Please Pass It On!
|
|
64 members (accordeur, BWV846, Animisha, benkeys, Anglagard44, brdwyguy, 15 invisible),
2,292
guests, and
409
robots. |
Key:
Admin,
Global Mod,
Mod
|
|
|
Joined: Apr 2019
Posts: 2,067
2000 Post Club Member
|
2000 Post Club Member
Joined: Apr 2019
Posts: 2,067 |
In other words ... the data link (thunderbold, USB, firewire) is largely irrelevant. What matters is the audio driver and the buffering that it does. Even if Thunderbolt 3 has no latency, sending samples per buffers of - lets say 64 samples - induce latency. If you play a note just after a buffer has being sent, the PC will wait 64 samples before sending another buffer. And 64 samples is equivalent to 1.5ms.
The PC may send buffer with some jitter depending of the behaviour of different driver (on a PC/Windows, some Deferred Procedure Calls - DPC, can delay some application tasks). Then some other buffering is added on the sound card to prevent such jitter to cause dropouts. Perhaps MacOS works better with real-time applications. This is correct. There is no way you can trigger a Piano's action in 1ms. It will explode. Also, Hackintosh when it comes to drivers, etc. is actually a very wrong decision.
|
|
|
|
Joined: Jan 2016
Posts: 3,375
3000 Post Club Member
|
3000 Post Club Member
Joined: Jan 2016
Posts: 3,375 |
In other words ... the data link (thunderbold, USB, firewire) is largely irrelevant. What matters is the audio driver and the buffering that it does./quote]
[quote=Frédéric L]The benchmark is interesting : the behaviour of the different audio interface (and their drivers) is quite different.
USB2 is 480Mbit/s, then with 64 samples, 48bits (24 bits stereo) per samples, this is 6.4us... even with 100% of overhead (it must be lower), the link technology is not the cause of latency. Same overall conclusion of Vin Curigliano after running all his benchmarks over the years. At the very extremes, say for professionals running hundreds of studio tracks live, PCIe may be the very best option. But that is not my usage scenario.
|
|
|
|
Joined: Oct 2018
Posts: 422
Full Member
|
OP
Full Member
Joined: Oct 2018
Posts: 422 |
It is quite consistant with what I have written : the RME HDSPe has at 64 samples a RTT of 4.399ms. The buffering induces 1.5ms of latency both way then 3ms RTT... just add another ms to compensate jitters and you have 4ms. Note that with VSTi, the RTT is not the interesting figure, we have to add the MIDI latency (rarely available) with the output latency of the audio interface.
The benchmark is interesting : the behaviour of the different audio interface (and their drivers) is quite different.
USB2 is 480Mbit/s, then with 64 samples, 48bits (24 bits stereo) per samples, this is 6.4us... even with 100% of overhead (it must be lower), the link technology is not the cause of latency. You should note that USB polling rate is 1000hz at max, which means the best time you can run is 1ms + overhead. -> the RME HDSPe has at 64 samples a RTT of 4.399ms. That's half the truth. That may be true for 44.1khz. But wouldn't be at the same setting for let's say 96khz. Use this formula: (1 sec / sampling rate) * samples = ms Apply it on 96khz: (1/96000) * (64*1000) = 0,6666666666666667ms Would be the best possible outcome. Add some driver latency and all that stuff, you would be at around 1ms. You should note that latency and speed of every data storage (including ram), has to be as good interconnected to the rest as possible. I don't count AMD in, because for AMD fast RAM is giving you a great performance boost, because the way of the technology works, latency is added and problems can be minimized using RAM which is as fast as possible. You should also not use any C state, SpeedStep, EIST or other regulations which alters the CPU frequency. I'm on a constant 5 GHz on ALL cores. CPU is an intel i7 8700K and it can run (at around 1.5 ms with a buffer of 128), using only ONE microphone of let's say VSL Concert D-274 FULL. If Kontakt is being used with similarly big instruments like ProductionVoices Grand Gold, it will allow more than one microphone position at a time. It may be possible that it's due to the efficiency or size of the samples. If a modeled Piano such as PianoTeq or similar is used, dropouts aren't audible at this setting at all. But whatever I use, I can feel there is latency, only using the C and C# key and making some drills. Because I can't properly keep those notes apart properly when there is latency, except I lift my fingers much faster from the key, but this is annoying. Without any reverb or other post-processing that is. That isn't the case when the on-board piano sound is being used at all. Not that I say that the on-board is really latency free - but it feels way more playable, because notes aren't 'kissing' each other and are distinguishable properly. This isn't about latency only, but the way it's getting back to my ears! On a Acoustic Instrument, my actions are being audible correctly - like I wanted them to be. That's a big difference! Even if the hammer and all is taking time, and till it reaches my ear...
|
|
|
|
Joined: Oct 2018
Posts: 422
Full Member
|
OP
Full Member
Joined: Oct 2018
Posts: 422 |
Can you link a reference? : -> the RME HDSPe has at 64 samples a RTT of 4.399ms.
I'm lacking the OS and the sampling rate.
|
|
|
|
Joined: Oct 2013
Posts: 3,868
3000 Post Club Member
|
3000 Post Club Member
Joined: Oct 2013
Posts: 3,868 |
You should read https://docs.microsoft.com/en-us/wi...spec/ns-usbspec-_usb_endpoint_descriptor On USB2, the high speed mode divides each frame in 8 microframe and a 125us polling is possible (bInterval = 1). However, the polling is proposed by the device, then a 1ms polling keyboard will make a 1ms latency, whatever the audio interface.
|
|
|
|
Joined: Oct 2018
Posts: 422
Full Member
|
OP
Full Member
Joined: Oct 2018
Posts: 422 |
Thanks. That is great. If we only could know which vendor would use what technology... Overhead is through driver probably, and since USB is a BUS, it's shared. Even RME's driver on the HDSPe don't perform that well, or internal processing isn't powerful enough to deliver in time? I don't know.
|
|
|
|
Joined: Oct 2013
Posts: 3,868
3000 Post Club Member
|
3000 Post Club Member
Joined: Oct 2013
Posts: 3,868 |
The polling is only a part of the equation. (And probably relevent only with inputs... the PC controls the USB bus) Using 64 sampled buffer at 44.1kHz creates 1.5ms latency. But the audio card doesn’t process them as soon as they are received because any small jitter would cause dropouts. Said otherwise, Cubase will render the sound at each 1.5ms period, but sometimes it will be late since DPC (deffered procedure calls) have an higher priority than any application (even real-time). The audio interface has to be ready to process late buffers. Any driver can trigger DPC, then a bad driver can render the PC useless as an audio workstation, even a driver which is not involved in sound creation. (DPC latency checker and latencymon are wellknown tools which measure how DPCs slow down the PC).
|
|
|
|
Joined: Jul 2011
Posts: 301
Full Member
|
Full Member
Joined: Jul 2011
Posts: 301 |
An interesting topic.
The Korg Kronos is basically a 32 bit pc running Korgs own operating system.
If they can do it with near enough zero latency then there’s hope for windows and Mac.
I use my pc for synths far more than piano sounds, most of the time I don’t notice any latency. However sometimes when I’ve been playing piano sounds on it and think it’s fine, I then go on to my DP and really really notice the virtually instant response for the first 30 seconds of playing. In other words, while happy playing my vst’s, it’s not until I switch straight away to my DP that I can feel a difference. Playing one one day and the other another (or hours apart) they both seem equally fine.
The strangest of things can cause latency, when I had a big problem with it, simple updating the network card on windows devices page, fixed it. I found that was the culprit by using latencyMon
|
|
|
|
Joined: Oct 2013
Posts: 3,868
3000 Post Club Member
|
3000 Post Club Member
Joined: Oct 2013
Posts: 3,868 |
Not really basically a plain PC. DAC and ADC are on a daughter card with an AM1806 processor (ARM9 based processor). I don’t know how the plain PC and this card share the sound processing load.
The PC part runs on Linux.
Last edited by Frédéric L; 12/02/19 02:31 AM.
|
|
|
|
Joined: Oct 2018
Posts: 422
Full Member
|
OP
Full Member
Joined: Oct 2018
Posts: 422 |
The polling is only a part of the equation. (And probably relevent only with inputs... the PC controls the USB bus) Using 64 sampled buffer at 44.1kHz creates 1.5ms latency. But the audio card doesn’t process them as soon as they are received because any small jitter would cause dropouts. Said otherwise, Cubase will render the sound at each 1.5ms period, but sometimes it will be late since DPC (deffered procedure calls) have an higher priority than any application (even real-time). The audio interface has to be ready to process late buffers. Any driver can trigger DPC, then a bad driver can render the PC useless as an audio workstation, even a driver which is not involved in sound creation. (DPC latency checker and latencymon are wellknown tools which measure how DPCs slow down the PC). DPC is the amount of latency the combination between hardware and drivers under Windows only. For Linux, and MAC, the same term can't be measured this way. For example http://www.ubuntugeek.com/latencytop-measuring-and-fixing-linux-latency.htmlFor MAC there isn't a tool that I'm aware of. And latency on MAC felt better than on Windows, let alone the fact that I can go below minimum buffers, which under Windows is blocked off. Linux (with a realtime kernel may be superior), but can't run popular big VSTi. It can't run Kontakt. And if you attempt to, you get bad support even under WINE. Some are able to - with a pirated version of Kontakt, but it doesn't run well. Read that - https://marcan.st/2016/06/hacking-and-upgrading-the-korg-kronos/Even with stronger hardware, overall it is possibe to be worse than what it was before if you upgrade your hardware.
|
|
|
|
Joined: Oct 2013
Posts: 3,868
3000 Post Club Member
|
3000 Post Club Member
Joined: Oct 2013
Posts: 3,868 |
Interesting. The sound synthesis is done in kernel space, then there are less risk of preemption. It is different than PC / Mac based application where it is done in application space.
|
|
|
|
Joined: Apr 2019
Posts: 2,067
2000 Post Club Member
|
2000 Post Club Member
Joined: Apr 2019
Posts: 2,067 |
The polling is only a part of the equation. (And probably relevent only with inputs... the PC controls the USB bus) Using 64 sampled buffer at 44.1kHz creates 1.5ms latency. But the audio card doesn’t process them as soon as they are received because any small jitter would cause dropouts. Said otherwise, Cubase will render the sound at each 1.5ms period, but sometimes it will be late since DPC (deffered procedure calls) have an higher priority than any application (even real-time). The audio interface has to be ready to process late buffers. Any driver can trigger DPC, then a bad driver can render the PC useless as an audio workstation, even a driver which is not involved in sound creation. (DPC latency checker and latencymon are wellknown tools which measure how DPCs slow down the PC). DPC is the amount of latency the combination between hardware and drivers under Windows only. For Linux, and MAC, the same term can't be measured this way. For example http://www.ubuntugeek.com/latencytop-measuring-and-fixing-linux-latency.htmlFor MAC there isn't a tool that I'm aware of. And latency on MAC felt better than on Windows, let alone the fact that I can go below minimum buffers, which under Windows is blocked off. Linux (with a realtime kernel may be superior), but can't run popular big VSTi. It can't run Kontakt. And if you attempt to, you get bad support even under WINE. Some are able to - with a pirated version of Kontakt, but it doesn't run well. Read that - https://marcan.st/2016/06/hacking-and-upgrading-the-korg-kronos/Even with stronger hardware, overall it is possibe to be worse than what it was before if you upgrade your hardware. The OP is saying that 1ms delay is annoying. He has tried all the VSTs and none of them are good (of course with his setup). The question is, any acoustic piano will have more than 1ms delay between the moment of fingers hitting the keys and the hammers hitting the strings. How come he doesn't perceive that delay? Is there a consistency between all of the 88 keys in a pinao when it comes to delay?! I don't think so. Hammers are scaled... How/what do you define (as) the minimum latency? LoL I'm sure the OP has no clue.
|
|
|
|
Joined: Oct 2018
Posts: 422
Full Member
|
OP
Full Member
Joined: Oct 2018
Posts: 422 |
LoL I'm sure the OP has no clue. Please be nicer! You haven't read what I wrote properly. There is a gigantic difference between an acoustic and a digital processing. On an acoustic, you can be certain that ALL your inputs will get registered, given that the instrument is well-maintained. On a Digital, there are things such as note-on and note-off. Even if there is delay to the ear through the mechanic or air, your input is being processed accurately and in time. If you raise the latency on a digital, you both get delay in input AND output.
Last edited by nicknameTaken; 12/02/19 01:39 PM.
|
|
|
|
Joined: Oct 2018
Posts: 422
Full Member
|
OP
Full Member
Joined: Oct 2018
Posts: 422 |
FYI, dropped notes or inaccuracy due to the nature of it aren't impossible, even nowadays.
|
|
|
|
Joined: Sep 2009
Posts: 14,439
Yikes! 10000 Post Club Member
|
Yikes! 10000 Post Club Member
Joined: Sep 2009
Posts: 14,439 |
I cannot imagine how you find 1 msec latency unacceptable. But if that's the case you'll need to drop virtual instruments altogether ... because it doesn't get any better.
|
|
|
|
Joined: Apr 2019
Posts: 2,067
2000 Post Club Member
|
2000 Post Club Member
Joined: Apr 2019
Posts: 2,067 |
LoL I'm sure the OP has no clue. Please be nicer! You haven't read what I wrote properly. There is a gigantic difference between an acoustic and a digital processing. On an acoustic, you can be certain that ALL your inputs will get registered, given that the instrument is well-maintained. On a Digital, there are things such as note-on and note-off. Even if there is delay to the ear through the mechanic or air, your input is being processed accurately and in time. If you raise the latency on a digital, you both get delay in input AND output. When you say 1ms delay, I assume your total delay is 1ms. The delay you get from an acoustic piano is more than 1ms. Even your RD-2000 also has some delay. For an instrument like piano, the delay is like a god-sent gift! It just needs to be in the proper range. So what is your complaint about?
|
|
|
|
Joined: Oct 2018
Posts: 422
Full Member
|
OP
Full Member
Joined: Oct 2018
Posts: 422 |
LoL I'm sure the OP has no clue. Please be nicer! You haven't read what I wrote properly. There is a gigantic difference between an acoustic and a digital processing. On an acoustic, you can be certain that ALL your inputs will get registered, given that the instrument is well-maintained. On a Digital, there are things such as note-on and note-off. Even if there is delay to the ear through the mechanic or air, your input is being processed accurately and in time. If you raise the latency on a digital, you both get delay in input AND output. When you say 1ms delay, I assume your total delay is 1ms. The delay you get from an acoustic piano is more than 1ms. Even your RD-2000 also has some delay. For an instrument like piano, the delay is like a god-sent gift! It just needs to be in the proper range. So what is your complaint about? My complaint is that when I use ANY vst and not the integrated onboard-audio, that : - MIDI Range 0-127 (Roland) isn't covered on (realistic Medium key touch). Otherwise timbre would alter. - Fast repetition gets harder the more latency is shown through the Reaper Software or through Kontakt. For instance: Fast trills with two fingers. Notes are too close together when I raise the latency and it gets easier the less latency Reaper or Kontakt shows. - The same trill is being properly played on the onboard-audio, but wrong 'captured' and processed when taken on the PC. Initially I thought it had todo with the MIDI level, but I was wrong. I also tried turning off and on high precision midi e.g 100.21 as MIDI value. - I would totally accept if the output latency would be higher, and my input latency close to nothing. But this isn't the case! It's not ONLY latency, but the effects that come with it.
|
|
|
|
Joined: Apr 2019
Posts: 2,067
2000 Post Club Member
|
2000 Post Club Member
Joined: Apr 2019
Posts: 2,067 |
Have you tried Pianoteq? None of the above should be an issue with Pianoteq. Use it in stand-alone mode. The issues you're complaining about are all resolved. You should resolve the problem with Reaper and Kontakt and your Hardware. You see my brother, acoustic piano has 20-30ms delay. If 1ms is an issue it means your overall dealy is super huge for some "other" reason. 1ms is a fraction of 10ms or 20ms. No neuron in anyone's brain can perceive it. http://www.speech.kth.se/music/5_lectures/askenflt/measure.htmlYou may read further about latency here: https://forum.modartt.com//viewtopic.php?id=1011&p=3The problem you are experiencing is specific to you. Do you see my point? Complaining about 1ms doesn't make sense.
Last edited by Abdol; 12/02/19 05:05 PM.
|
|
|
|
Joined: Sep 2009
Posts: 14,439
Yikes! 10000 Post Club Member
|
Yikes! 10000 Post Club Member
Joined: Sep 2009
Posts: 14,439 |
An acoustic piano does not have 20-30 msec delay. It is far less. There are published research studies showing otherwise. One of the was quoted here on PW some years ago.
|
|
|
|
Joined: Apr 2018
Posts: 9,824
9000 Post Club Member
|
9000 Post Club Member
Joined: Apr 2018
Posts: 9,824 |
An acoustic piano does not have 20-30 msec delay. It is far less. There are published research studies showing otherwise. One of the was quoted here on PW some years ago. Is this thread the one you are referring to?
across the stone, deathless piano performances "Discipline is more reliable than motivation." -by a contributor on Reddit r/piano "Success is 10% inspiration, and 90% perspiration." -by some other wise person "Pianoteq manages to keep it all together yet simultaneously also go in all directions; like a quantum particle entangled with an unknown and spooky parallel universe simply waiting to be discovered." -by Pete14
|
|
|
Piano
by Gino2 - 04/17/24 02:23 PM
|
|
|
|
|
|
Forums43
Topics223,403
Posts3,349,419
Members111,636
|
Most Online15,252 Mar 21st, 2010
|
|
|
|
|
|