【问题标题】:What's the minimum lag detectable by a human? [duplicate]人类可检测到的最小延迟是多少? [复制]
【发布时间】:2011-07-30 03:10:38
【问题描述】:

可能重复:
What is the shortest perceivable application response delay?

我一直在分析一些 JavaScript UI 代码,因为它感觉有点滞后。到目前为止,我已经发现了一些瓶颈并对其进行了优化,但我想为此定义一个可衡量的要求。

应该多快做出响应才能让人类不会注意到滞后?例如,从按下键盘键到屏幕上出现字母之间可检测到的最小延迟是多少?什么时候进一步优化不会对人类产生任何影响?

许多显示器的刷新率大约在 60-120Hz 范围内。这是否意味着幻数在 8-16 毫秒左右?

【问题讨论】:

  • 这是一个非常有趣的问题。我敢肯定它会有所不同,但在这方面一定有一些非常好的研究。
  • 对于“即时”反馈 - 我记得测试过最快的人类响应时间 - 大约 10 毫秒
  • 我还记得眼睛可以处理每秒 25 帧的视频。
  • 流畅动画的最小帧率和“即时”响应的最大延迟之间存在差异。
  • 显然是的 - 但试图优化到快于 1/25 秒可能是一种浪费 :)

标签: performance user-interface optimization response lag


【解决方案1】:

将“按键”事件和出现在屏幕上的字母视为两个单独的框架,这意味着,如果用户在查看屏幕时按下一个键,他会想在之后看到它。这个“恰好在之后”意味着它应该有 60 Hz 或更高的响应时间。

因此,确实应该瞄准 8-16 毫秒的值,因为它会产生与电影中相同的效果。换句话说,用户不会感觉到这些值的延迟。

但是,您必须记住,键盘有自己的轮询时间,并且不一定与脚本本身相关的额外延迟可能会干扰其时间。由于这些原因,目标值高于 60 Hz 将为您提供更大的安全余量,以抵御可能会增加轻微延迟的其他可能影响。

另外值得注意的是,在某些应用程序中,100 毫秒的延迟可能看起来并不明显,但实际上它很明显,因为它对应于 10 Hz,如果您以该刷新率播放电影,您会最有可能意识到电影的每个帧之间的差距。出于这个原因,这个值不应该在足够通用的上下文中考虑。

人眼对图像的不同条件和部分的敏感度不同,因此您应该小心并在必要时考虑更高的刷新率,以适应这种情况。

This link 提供了有关人眼如何感知屏幕特征及其变化​​的更多信息,并且可以让您了解在给定上下文中应该根据您的视觉影响力争取达到的刷新率。脚本。

【讨论】:

  • 但是人类无法感知 60 Hz 的一帧和下一帧之间的边界。特别是如果只有一小部分屏幕正在更新。此外,即使及时进行处理以使更新出现在“下一个”帧中,也不能保证该帧实际上会在用户当前看到的帧之后立即显示。例如,可能由图形驱动程序或在显示器内部(或两者)内部完成缓冲。在大多数情况下,瞄准下一帧完成是多余的(例外:游戏)。
  • 不过,剧本有可能不止一个角色,我想最通用的方法是把它看成一部电影,从一帧到下一帧,整个屏幕可能会以多种方式变化。当然,在许多情况下,没有必要如此激烈,但这是一种数学方法。即使在游戏中,由于延迟的影响以及我们对相关游戏的看法,100 毫秒的延迟也可能因游戏类型而有很大不同。
【解决方案2】:

作为一般规则,我发现任何快于 100 毫秒的东西往往会被视为“即时”。比这长得多,延迟肯定会变得明显。当然,这会因人而异,也取决于发生延迟的环境。

您可能会发现此示例很有帮助:http://jsfiddle.net/QGmBy/

【讨论】:

  • 很好的例子,但我很确定我仍然可以看到 80 毫秒的延迟。其他人可以吗?虽然这是一个流行的答案,但出于某种原因,100 毫秒似乎太长了,不能成为最小可检测延迟。
  • @pepsi 在可用性领域,经验法则是 0.1 秒被视为“即时”,1 秒被视为“相当快”,10 秒被视为“感到无聊并寻找其他事情做” .但这些只是粗略的数字,并不准确,旨在代表开始干扰手头任务的延迟,而不是可检测到的最小值。是的,我可以(仅)检测到 80 毫秒的延迟,但我不会称其为“令人讨厌的慢”:)
  • @pepsi - j-g-faustus 所说的。 100 毫秒是一般规则,而不是确切答案。是的,我也可以看出 80 毫秒的示例比之前的示例花费的时间稍长,但它仍然发生得非常快。这肯定比 160 毫秒的例子不那么明显。
  • 请注意,虽然 100 毫秒的延迟被认为是瞬时的,但 50 毫秒的延迟被认为更瞬时
【解决方案3】:

我听说一个经验法则是 100 毫秒就足够快了。 我会尝试找到一个链接...

编辑: What is the shortest perceivable application response delay?

【讨论】:

    【解决方案4】:

    如果事件只发生一次,那么 100 毫秒应该是上限。如果事件是连续运动的一部分,那么应该是大约 10-15 毫秒,因为如果这种延迟在排在后面。

    另外,这在一定程度上取决于上下文,即延迟的内容。按键事件、滑入事件、其他机器上发生的实时事件,所有这些都会有不同的“容差”级别:)

    【讨论】:

      猜你喜欢
      • 2021-09-30
      • 2014-05-08
      • 2022-01-25
      • 1970-01-01
      • 2011-11-05
      • 2021-04-03
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多