Live data from Hacker News

Keyboard latency

danluu.com

231–240 of 274 posts

Re: Keyboard latency

#231
post #101
post #84

Earlier quoted context omitted.

The more obvious example is to watch a video encoded at 10 frames per second followed by a 30 fps video. Does it look different? If yes, something's wrong with the statement There are plenty of examples on YouTube if anyone's interested.

even the difference between 30 and 60 is pretty clear to most, I find watching movies at 60fps reeeally weird, it feels too real... I never actively look for the video framerate before, i just notice it, it's that obvious.

I, on the other hand, having grown up with mostly playing games at 60 FPS (the PS2 ran the games I played at 60 FPS, back when console games prioritized gameplay over looking pretty in screenshots), and have moved on the 144 FPS on PC, find the 24 FPS used in cinemas to feel agonizingly choppy. Especially when there’s a big sweeping paniramic shot. It sometimes takes me out of the experience. I really liked the 48 FPS when watching the hobbit movies.

Re: Keyboard latency

#232

I'm surprised the "humans don't notice 100 ms" argument is even made. That's trivially debunkable with a simple blind A/B test at the command line using `sleep 0.1` with and without `sleep` aliased to `true`. To my eyes, the delay is obvious at 100 ms, noticeable at 50 ms, barely perceptible at 20 ms, and unnoticeable at 10 ms. Not to mention that 100 ms is musically a 16th note at 150 bpm. Being off by a 16th note e…

You're pretty much spot on. Latency for instance when playing software synths is very noticeable above 20ms

Re: Keyboard latency

#233

I've done a simple test with my Macbook Air, using the app "Is It Snappy", as mentioned in the comments. I used the keyboard on my macbook, which is a chiclet style mechanism. The tests were all done in triplicate except for TextEdit, (only twice) TextEdit: ~81 ms from key depression to when LCD pixels begin to shift. For Sublime Text: ~86 ms. Both of these text editors are pretty well matched. However, if you boot i…

Or if you're on Linux (Debian/Ubuntu), switch to one of the default virtual terminals with Ctrl-Alt-F1 (and Ctrl-Alt-F7 to switch back to your X server console on my machine) to experience the delight of low latency keyboard-to-screen typing.

Re: Keyboard latency

#234
And Apple try very hard to optimize input latency on Apple Pencil which i believe the newer version on iPad Pro is now sub 10ms?

I think we should have rule on OSX and iOS where this sub 10ms latency is standard.

Re: Keyboard latency

#235
post #34

Earlier quoted context omitted.

Hm, neat. I notice about the same result -- 0.1 is quite obvious. If you want to blind A/B test yourself, run this: DELAY='0.1'; VALUES=(0 0); VALUES[$((RANDOM % 2))]=$DELAY; alias test_a="sleep ${VALUES[0]}"; alias test_b="sleep ${VALUES[1]}" Adjust DELAY as you want, and then use test_a and test_b and see if you can guess which is which, then run alias to see for sure.

I was suspicious that there might be some artifacts of terminal updating that are amplifying the effect in that test, so I whipped up a little graphical test: https://jsfiddle.net/zs8bncxj/1/ I can still get it right pretty much 100% of the time, but the difference does feel a lot more subtle than what I was seeing in iTerm. (If you change the delay, you need to hit randomize to make it take.) Edit: Also we should ke…

Adding step="0.01" to the input allows stepping down in 10ms increments.

Personally I can distinguish every time at 0.06.

I find it difficult to believe the rest of the hardware loop has 40ms latency, it would be difficult for smooth rendering to occur if it did.

I suspect that part of this is 'training' yourself but also what the researchers meant. They may very well have meant that above 100ms is jarring and noticed as a delay but below 100ms is not seen as a delay rather than truly being unable to notice in an A/B test.

I suspect this test would be more difficult if it sometimes did A/A and B/B.

Re: Keyboard latency

#236
post #145

Earlier quoted context omitted.

This is also clear on rhythm games like Stepmania. Here's a random video from a keyboard user: https://youtu.be/TWiMnENdcyY?t=56 At this speed the player is reacting (and hitting with correct timing) about ten notes (arrows) per second. This is possible by memorizing and reacting to group patterns instead of individual notes, but more importantly, reacting unconsciously. A player can play at this level without consci…

A big difference between Hexagon and most other rhythm games like Stepmania, Beatmanias IIDX, Guitar Hero, etc , is that pattern is the same. Just like musicians memorize complex music that they later perform[1] with precise timing, the same is possible for these step/note patterns. I've personally seen someone perform one of the insane speed/note-density DDR songs blindfolded . Humans have surprisingly good internal…

Rhythm games are not about memorization, unless you call pattern recognition and muscle memory memorization.

First of all, players don't need to memorize the charts. Take a good player, give him an entirely new chart and he will perform much better than any beginner ever will, even with memorization. Shuffle mode, where the notes are mixed and therefore can't be memorized is just a minor handicap. Much, much easier than memorizing a whole song.

There are two things at work here.

The reaction time is actually not that short. For high level play, players typically set notes to appear about 500ms before action. At that rate, anyone can hit a single note, the difficulty is that there are lots of them.

The difference between experienced players and beginners is that experiences players recognize blocks instead of single notes, just like you read entire words rather than individual letters.

Re: Keyboard latency

#237
post #2

IMO, a better measure would be from activation of the switch, as opposed to the beginning of key travel. I don't start waiting for the character to appear on my screen from the moment I begin to press down. My anticipation begins when I feel the tactile feedback of the switch activating (or the switch bottoming out on switches that don't offer tactile feedback). On a keyboard with good tactile feedback, I might not m…

Why don't we have keys that click immediately and then travel down after the click?

Re: Keyboard latency

#238

I'm surprised the "humans don't notice 100 ms" argument is even made. That's trivially debunkable with a simple blind A/B test at the command line using `sleep 0.1` with and without `sleep` aliased to `true`. To my eyes, the delay is obvious at 100 ms, noticeable at 50 ms, barely perceptible at 20 ms, and unnoticeable at 10 ms. Not to mention that 100 ms is musically a 16th note at 150 bpm. Being off by a 16th note e…

The other thing to consider is how is latency perceived when actually TYPING in real life. My guess is that the difference between the shortest latency and the longest latency hardly matters for the purpose of a human putting words on a screen. There's so many other cognitive activities going on that I can't imagine someone would notice unless they're specifically looking for it and nothing else. Really, does anyone…

> Really, does anyone complain about this stuff?

I can see how high latency is acceptable if you're only putting in new characters, but as soon as I have to fix a typo or anything more complex, I get really mad really fast if the latency is anything beyond (ballpark estimate) 250 ms.

Re: Keyboard latency

#239
post #92

Earlier quoted context omitted.

> strike a key less than 100 ms after some visual stimuli, I'm sure I couldn't do it The video game "Super Hexagon"[1] is a surprisingly interesting demonstration of this limitation, and how the mind tries to workaround the problem. The higher difficulties ("hexagonest"[2]) seem impossible at first. In the easier levels you can react , but now the time it takes to see the scree, parse the simple graphics, recognize t…

I don't think it's a matter of achieving a faster reaction time by bypassing higher brain functions. It's about looking several steps ahead and planning out multiple steps before you need to do them, and then anticipating when each action needs to happen. One game that really demonstrated this to me was Crypt of the Necrodancer. It's a rougelike where each turn is the beat of a song, and the tempo of the song for eac…

Aaand it even has the latency calibration at the beginning

Re: Keyboard latency

#240
post #223

7 lines of CSS to make this website more readable: body { max-width: 40em; line-height: 1.5; font-size: 18px; margin: 0 auto; font-family: sans-serif; } Copy and paste them into your DevTools and enjoy this great post!

What's it with font-size recommendations getting larger and larger every year? When I started writing CSS for my websites, the standard font-size was 12px (sometimes 10 or 11).
Post reply on HN