用于低等待时间用户输入处理和反馈的混合型系统和方法

文档序号:8926959阅读:360来源:国知局
用于低等待时间用户输入处理和反馈的混合型系统和方法
【专利说明】用于低等待时间用户输入处理和反馈的混合型系统和方法
[0001] 本申请是 2012 年 10 月 5 日提交的标题为"Hybrid Systems And Methods For Low-Latency User Input Processing And Feedback^用于低等待时间用户输入处理和反 馈的混合型系统和方法)"的美国临时专利申请No. 61/710, 256的非临时版本并要求其优 先权,该申请以引用的方式并入本文中,包括源代码附录。
[0002] 此申请包括受版权保护的材料。版权所有者不反对任何人影印专利说明书,因为 它出现在中美国专利局专利文件或记录中,但在别的方面却保留所有版权。 领域
[0003] 本发明一般涉及用户输入的领域,具体而言,涉及提供低等待时间用户体验的用 户输入系统。 附图简述
[0004] 从下列对如各个附图所示的各实施例的比较具体的描述,本发明的前述的及其他 目标、特点,和优点将变得显而易见,在各附图中,参考符号表示相同部分。附图不一定按比 例,着重点放在说明本发明的所公开的各实施例的原理。
[0005] 图1示出了在触摸用户接口中100毫秒、50毫秒、10毫秒,以及1ms的拖拽等待时 间的效果的演示。
[0006] 图2示出了收件箱的用户接口元素的示例,其中,该元素具有低等待时间、对触摸 用户交互的低保真度响应,以及高等待时间,对触摸用户交互的高保真响应。
[0007] 图3示出了滑动切换元素的用户接口的示例。可以将光标310(通过包含"x"符 号的框来表示)拖到目标320(第二空的框,在右边)以激活n元素。此元素使用低等待 时间和高等待时间系统两者来启用,以提供触摸交互,其中,移动元素被加速310,如此,提 供低等待时间体验。
[0008] 图4示出了等待时间感觉研宄中所使用的原型高性能触摸系统的基本体系结构 的实施例。
[0009] 图5示出了使用图4的原型设备的等待时间感觉研宄的结果。
[0010] 图6示出了按钮的用户接口元素的示例,其中,该元素具有低等待时间、对触摸用 户交互的低保真度响应,以及高等待时间,对触摸用户交互的高保真响应。
[0011] 图7示出了可调整大小的框的用户接口元素的示例,其中,该元素具有低等待时 间、对触摸用户交互的低保真度响应,以及高等待时间,对触摸用户交互的高保真响应。
[0012] 图8示出了可滚动列表的用户接口元素的示例,其中,该元素具有低等待时间、对 触摸用户交互的低保真度响应,以及高等待时间,对触摸用户交互的高保真响应。
[0013] 图9示出了低等待时间输入设备的基本体系结构和信息流的说明性实施例。
[0014] 图10示出了用于音量控制的UI。当拖拽滑块时,一个工具提示出现,显示当前设 置的数值表示。此元素使用低等待时间和高等待时间系统两者来启用,以提供触摸交互,其 中,移动元素被加速,如此,提供低等待时间体验。
[0015] 图11示出了与本混合反馈用户接口系统中的用于笔输入的n的实施例相比,现 有技术系统中的系统的对于笔输入的响应。在混合型系统中,墨水笔画具有对笔输入的低 等待时间响应,以及对笔用户输入的高等待时间响应。
[0016] 图12示出了系统的实施例,其中,数据通过系统的组件流过两个重叠路径,以支 持高和低等待时间反馈两者。
[0017] 图13示出了在现有技术中已知的叫做"模型视图控制器"的编程范例。
[0018] 图14示出了支持利用混合的对用户输入的高和低等待时间响应来开发和运行应 用程序的系统的体系结构的实施例。 详细描述
[0019] 下面的描述和图形只是本发明的说明,而不作为限制。描述了很多具体细节,以提 供全面的理解。然而,在某些实例中,没有描述已知的或常规的细节,以便不至于使描述变 得模糊。在本发明中,对一个实施例的引用不一定是对同一个实施例的引用;这样的引用表 示至少一个。
[0020] 在本说明书中对"一个实施例"或"实施例"的引用意思指和该实施例一起描述的 特定特征、结构或特征可以被包括在本发明的至少一个实施例中。在本说明书中的不同位 置出现短语在一个实施例中摂不一定都是指同一个实施例,也不是指与其他实施例互相排 斥的单独的或备选实施例。此外,还描述了一些实施例可以表现出的,而其它实施例没用表 现的各种特征。类似地,还描述了可能是一些实施例的要求,但不是其他实施例的要求的各 种要求。 概览
[0021] 本申请涉及诸如在下列专利申请中所公开的快速多触摸传感器及其他接口之类 的用户接口 :2013年3月15日提交的标题为"Low-Latency Touch Sensitive Device (低 等待时间触摸敏感器件)"的美国专利申请No. 13/841,436、2013年3月15日提交的标题 为"Fast Multi-Touch Stylus"的美国专利申请N〇.61/798,948、2013年 3 月 15 日提交的 标题为 "Fast Multi-Touch Sensor With User-Identification Techniques (使用用户 标识技术的快速多触摸传感器)"的美国专利申请No. 61/799, 035、2013年3月15日提交 的标题为"Fast Multi-Touch Noise Reduction(快速多触摸噪声削减)"的美国专利申 请No. 61/798,828、2013年3月15日提交的标题为"Active Optical Stylus (活跃光学触 笔)"的美国专利申请N〇.61/798,708、2012年10月5日提交的标题为"Hybrid Systems And Methods For Low-Latency User Input Processing And Feedback(用于低等待时间 用户输入处理和反馈的混合型系统和方法)"的美国专利申请No. 61/710, 256、2013年7月 12日提交的标题为"Fast Multi-Touch Post Processing(快速多触摸后处理)"的美国 专利申请 N〇.61/845,892、2013年7 月 12 日提交的标题为"Reducing Control Response Latency With Defined Cross-Control Behavior(通过定义的交叉控制行为缩短控制响应 等待时间)"的美国专利申请No. 61/845, 879,以及2013年9月18日提交的标题为"Systems And Methods For Providing Response To User Input Using Information About State Changes And Predicting Future User Input (用于使用关于状态改变的信息向用户输入 提供响应以及预测将来的用户输入的系统和方法)"的美国专利申请No. 61/879, 245。这些 申请的全部内容以引用的方式并入本文中。
[0022] 在各实施例中,本发明涉及提供带有低等待时间的直接操纵用户接口的系统和方 法。对伪"真实世界"对象的直接物理操纵是用于许多类型的输入设备(诸如启用直接触 摸输入、触笔输入、空中姿势输入的那些)以及间接设备(包括鼠标、跟踪板、笔平板等等) 的公共用户接口比喻。对于本发明,用户接口中的等待时间是指向用户呈现对物理输入动 作的响应所花费的时间。测试表明,用户更喜欢低等待时间,用户会可靠地感觉到低到5-10 毫秒的等待时间,如下面比较详细地讨论的。
[0023] 图1分别示出了在示例性触摸用户接口中100毫秒(附图标记110)、50毫秒(附 图标记120)、10毫秒(附图标记130),以及1毫秒(附图标记140)的等待时间的效果的演 示。当拖拽对象时,增大的等待时间被反映为用户的手指与正被拖拽的对象(在此情况下, 正方形用户接口元素)之间增大的距离。可以看出,等待时间的效果在100毫秒(附图标 记110)以及50毫秒(附图标记120)时明显,但是,在10毫秒(附图标记130)时逐步变 得不太显著,在1毫秒(附图标记140)几乎消失。图11示出了示例性触笔或笔用户接口 中的等待时间的效果(1110,1120)。在此示例中,迟延1120作为触笔1100尖和计算出的笔 画1110之间的增大的距离可见。随着低等待时间系统的引入,触笔1100尖和计算出的笔 画1130之间的距离将显著缩小。
[0024]在一个实施例中,目前所公开的系统和方法提供混合型触摸用户接口,该触摸用 户接口提供带有小于10毫秒的等待时间的直接视觉反馈,该反馈与较高级别的等待时间 的额外视觉响应交织或重叠。在某些实施例中,这两组响应的设计可以被设计为在视觉上 统一,以便用户不能区别它fl]。在某些实施例中,"低等待时间"响应可以在等待时间方面超 出10毫秒。 等待时间的原因
[0025]在各实施例中,用户输入设备和处理其输入的系统中的等待时间会具有许多源, 包括: (1) 捕捉触摸事件的物理传感器; (2) 处理触摸事件并为显示器生成输出的软件; (3) 显示器本身; (4) 组件之间的数据传输,包括总线; (5) 存储器存储或者短缓冲区中的数据内部存储; (6) 中断和对系统资源的竞争; (7) 电路的其他源会引入等待时间; (8) 物理限制,诸如光速,以及其在电路体系结构中的反射。 (9) 机械约束,诸如电阻式触摸传感器弯回到其"中性"状态所需的时间。
[0026]在各实施例中,缩小系统等待时间可以通过改善这些组件中的一个或多个中的等 待时间来满足。在一个实施例中,目前所公开的系统和方法通过组合低等待时间输入传感 器和显示器与专用处理系统,来提供可以实现1毫秒的等待时间或更短的等待时间的输入 设备。在一个实施例中,目前所公开的系统和方法通过组合这样的低等待时间输入传感器 和显示器与专用处理系统,来提供可以实现5毫秒的等待时间或更短的等待时间的输入设 备。在又一实施例中,目前所公开的系统和方法通过组合这样的低等待时间输入传感器和 显示器与专用处理系统,来提供可以实现0. 1毫秒的等待时间或更短的等待时间的输入设 备。在又一实施例中,目前所公开的系统和方法通过组合这样的低等待时间输入传感器和 显示器与专用处理系统,来提供可以实现10毫秒的等待时间或更短的等待时间的输入设 备。在一个实施例中,为了实现这样的非常低的等待时间,目前所公开的系统和方法可以将 常规操作系统(0S)软件和计算硬件替换为专用,自定义编程的现场可编程门阵列(FPGA) 或专用集成电路(ASIC)。在一个实施例中,FPGA或ASIC替换常规0S和计算硬件以提供低 等待时间响应,而使传统的0S和计算硬件保持在原位以提供较高等待时间响应(用于作为 低等待时间响应的补充)。在另一个实施例中,可以通过将额外的逻辑集成到现有的组件 中,诸如,但不仅限于图形处理单元(GPU)、输入设备控制器、中央处理单元(CPU),或片上 系统(SoC),替换所描述的FPGA或ASIC的某些或全部功能。低等待时间逻辑可以以硬件, 或以软件编码,存储在那些或其他组件中和/或由它们执行。在要求多个组件的各实施例 中,通信和/或同步可以通过使用共享存储器来促进。在这些实施例中的任何一种中,在高 或低等待时间中提供的响应可以被混合在一起,或响应于任何给定输入事件,可以只提供 一个或另一个。
[0027] 在各实施例中,所公开的系统和方法提供此处被称为"混合反馈"的东西。在混合 反馈系统中,对输入的某些基本系统响应在逻辑上与更宽的应用逻辑分离。结果给系统提 供能够提供对用户输入事件的几乎立即系统反馈的敏捷的输入处理器,基于在传统的等待 时间级别中提供的应用逻辑,给系统提供更多反馈。在某些实施例中,以视觉方式提供这些 系统响应。在各实施例中,混合反馈系统的低等待时间组件可以通过音频或振动触觉反馈 来提供。在某些实施例中,几乎立即反馈可以在与应用逻辑反馈相同模态下提供。在某些 实施例中,低等待时间反馈可以在不同的模态下,或多个模态下提供。在图2中示出了"所 有视觉"实施例的示例,在此情况下,示出了触摸输入设备的使用。具体而言,图2示出了 在用户触摸表示收件箱的图标210,然后拖拽它之后的结果。当用户触摸图标210时,可以 显示边框220或其他合适的图元(primitive)。在一个实施例中,在"所有视觉"低等待时 间反馈中,由于其渲染(render)的方便性,可以选择合适的低保真度表示。在一个实施例 中,可以使用可提供合适的低保真度表示的一个或多个图元,来提供低等待时间反馈。在一 个实施例中,如果用户将图标拖拽到触摸显示器200上的另一位置,则显示低保真度边框 230,并可以利用例如1毫秒的低等待时间来操纵(例如,移动)它。同时,可以利用较高等 待时间显示图标210的移动。在一个实施例中,几乎立即低等待时间响应和可能较慢的应 用逻辑反馈之间的响应的差异可以被用户感觉到。在另一个实施例中,低等待时间响应和 传统的响应之间的响应的此差异被混合,并不太容易被用户看见或不容易被用户看见。在 一个实施例中,几乎立即反馈可以以比传统的路径应用逻辑反馈较低的保真度来提供。在 一个实施例中,在至少某些情况下,可以以比应用逻辑反馈类似的或者甚至更高的保真度 提供低等待时间响应。在一个实施例中,低等待时间几乎立即反馈的形式由应用逻辑,或存 在于系统软件中的逻辑(诸如用户接口工具箱)来规定。例如,在一个实施例中,应用逻辑 可以预先渲染各种图形图元,然后,可以由低等待时间子系统使用这些图形图元。类似地, 在一个实施例中,软件工具箱可以提供用于开发可在由低等待时间系统需要之前渲染的图 形图元的手段。在一个实施例中,低等待时间响应可以是预定的,或以别的方式被确定,而 不考虑应用和/或系统软件逻辑。在一个实施例中,单个预先渲染的或部分地呈现的低等 待时间响应,或预先渲染的或部分地渲染的低等待时间响应的包可以被预先加载到存储器 中,以便在响应于用户输入事件被需要使用之前能够被低等待时间子系统访问。
[0028] 在一个实施例中,低等待时间输出的模态可以是听觉的。在一个实施例中,低等待 时间系统可以被用来例如快速地向音频输出系统发送麦克风输入,该音频输出系统可以给 用户提供他们自己的正讲入到系统中的声音的"回音"。这样的低等待时间输出可以提供与 允许用户听到他们自己的声音的传统的模拟电话具有相同类型的回音特征的效果。在一个 实施例中,可以响应于用户输入事件(例如,触摸、姿势、笔输入,或口头输入)提供低等待 时间听觉反馈一一以及以视觉方式提供的较高等待时间响应。
[0029] 在图3中示出了使用本方法和系统的系统的另一说明性实施例。在说明性系统 中,可以将光标310 (通过包含"十字交叉"符号的框来表示)拖拽到设备的屏幕300上的 任何地方。当将光标310拖到目标框320时,n动作被接受。如果光标310被拖拽到屏 幕300上的别处,则动作被拒绝。在一个实施例中,当被拖拽时,利用低等待时间绘制光标 310,如此,跟踪用户的手指,而没有可感知的等待时间。在一个实施例中,目标320可以在 较高等待时间下被绘制,而不影响用户感觉。类似地,在一个实施例中,稍后可以可感知地 发生"拒绝"或"接受"的响应330,如此,它可以在较高等待时间下被绘制(例如,不使用低 等待时间子系统)而不会影响用户感觉。
[0030] 应该理解,所示出的实施例是示例性的。可以将图3中所示出的原理应用于任何 类型的n元素,包括现在已知,或以后开发的所有n元素。类似地,图3中所示出的原理可 以与基本上任何类型的输入事件一起用于各种类型的输入设备和/或输出设备上。例如, 在一个实施例中,除如上文所示的"触摸"事件之外,输入事件还可包括,但不仅限于,空中 或表面上姿势、话音、自发的(或无意识的眼睛运动),以及笔。在一个实施例中,一旦发生 姿势,任何ui元素的响应可以被分为两支,其中以由不提供加速的输入的系统通常表现出 的等待时间来提供低等待时间响应(例如,ui元素的低保真度表示被呈现并快速地作出响 应,例如,以o. 01毫秒内),以及非低等待时间响应(例如,ui元素的进一步细化的表示)。 在一个实施例中,响应可以不在混合型系统中拆分,并且替代地可以完全是低等待时间,且 应用逻辑不负责否则利用较高等待时间执行的低等待时间响应。
[0031] 在一个实施例中,触摸和/或姿势输入事件可以使用各种技术来实现,包括但不 仅限于电阻性、直接照明、受抑全内反射(frustrated total internal reflection)、漫射 照明、投射式电容、电容親合、声波,以及像素传感器(sensor-in-pixel)。在一个实施例中, 笔输入可以使用电阻性、视觉、电容、磁性、红外线、光学成像、耗散的信号、声音脉冲,或其 他技术来实现。在一个实施例中,姿势输入也可以使用视觉传感器或手持对象(包括包含 传感器的那些,以及简单地用于跟踪的那些),或在没有手持对象的情况下,诸如使用2D和 3D传感器,来实现。用于标识输入事件的传感器或技术的组合也是可以设想的,事件类型 (即,触摸、笔、姿势、视网膜移动等等)的组合也是如此。用于标识或捕捉输入事件的技术 共享的一种属性是,它们对用户动作和系统的对该动作的响应之间的等待时间有贡献。此 贡献的规模在各技术和实现之间不同。
[0032] 在典型的多触摸系统中,存在输入设备和显示器之间的信息流的路径,该路径可 能涉及通信、操作系统、n工具箱、应用层,和/或最终的音频或图形控制器。这些中的每 一个都会增加等待时间。此外,由操作系统,尤其是非实时操作系统引入的等待时间,是可 变的。Windows、iOS、OSX、Android等等不是实时操作系统,并且由此,使用这些操作系统, 没有响应将在在某一时间段内发生的保证。如果例如处理器负载太大,则等待时间可能会 显著地增大。进一步,某些操作在软件堆栈中在非常低级别下被处理,并具有高优先级。例 如,鼠标指针通常被高度优化,以便甚至在处理器处于重负载的情况下,感觉到的等待时间 也会相对低。相比之下,诸如利用两根手指在触摸或姿势系统上调整照片大小之类的操作 一般而言计算量非常大,因为它可能要求在应用程序和/或UI工具箱级别对图像的恒定的 重新缩放。结果,当处理器处于重负载时,这样的操作很少能够具有低的感觉到的等待时 间。
[0033] 在典型的多触摸系统中,显示系统(包括图形系统以及显示器本身)也可能对等 待时间有贡献。带有高帧速率的系统可以通过系统来模糊实际等待时间。例如,60Hz监视 器可包括缓冲区的一个或多个帧,以便提供完善的图像处理效果。类似地,诸如投影仪之类 的某些显示设备,在电子器件中包括双缓冲,从而有效地使显示器等待时间翻倍。对3D电 视机以及减少的运动伪像的需求正在驱动较快LCD的开发,然而,液晶本身的物理性能使 传统的LCD在480Hz以外表现不大可能。在一个实施例中,此处所描述的低等待时间系统 可以使用IXD显示器。与IXD显示器的性能不同,OLED或AMOLED显示器能够有低于1毫 秒的响应时间。因此,在一个实施例中,此处所描述的高性能触摸(或姿势)系统可以在具 有快速响应时间的显示器上实现,这些显
当前第1页1 2 3 4 5 6 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1