媒体驱动的触觉的制作方法

文档序号:11441112阅读:288来源:国知局
媒体驱动的触觉的制造方法与工艺

优先权申请

本申请要求于2014年12月23日提交的美国临时专利申请no.62/096,251的权益,该申请通过引用被整体结合于此。

实施例一般而言涉及电子设备,并且更具体而言涉及产生触觉效果的电子设备。



背景技术:

视频游戏和视频游戏系统已经变得非常受欢迎。视频游戏设备或控制器通常使用视觉提示和听觉提示向用户提供反馈。在一些接口设备中,可以向用户提供动觉反馈(例如,主动力反馈和阻力反馈)和/或触感反馈(例如,振动、纹理、温度变化等)。通常,这种反馈被统称为“触觉反馈”或“触觉效果”。触觉反馈提供了增强和简化用户与视频游戏控制器或其它电子设备的交互的提示。例如,触觉效果可以向视频游戏控制器或其它电子设备的用户提供提示,以就特定事件提醒用户,或者在模拟或虚拟环境中提供逼真的反馈,以产生更强的感官沉浸。

其中用户与用户输入元件交互以引起动作的其它设备也可以受益于触觉反馈或触觉效果。例如,这样的设备可以包括医疗设备、汽车控件、遥控器和其它类似的设备。



技术实现要素:

本发明的实施例针对被配置成产生基本上改进相关技术的触觉效果的电子设备。

实施例的特征和优点在下面的描述中阐述,或者将从描述中显而易见,或者可以通过实践本发明来了解。

在一种示例实施例中,提供了用于提供基于媒体流渲染的触觉效果的功能。在接收到媒体流时,基于媒体流生成触觉驱动信号。然后施加触觉驱动信号以在触觉输出设备处渲染触觉效果。在媒体编辑应用中,可以修改媒体流。响应于修改,可以基于对媒体流的修改生成修改后的触觉驱动信号。因此,在触觉输出设备处渲染修改后的触觉效果。

要理解的是,前面的一般描述和以下的详细描述都是示例性和说明性的,并不旨在将本发明限制到所描述的示例。

附图说明

根据以下对优选实施例的详细描述,其他实施例、细节、优点和修改将变得显而易见,其中优选实施例要结合附图来理解。

图1图示根据本发明的示例实施例的系统的框图。

图2是图示根据本发明的示例实施例的用于提供基于媒体流渲染的触觉效果的系统的简化框图。

图3图示根据本发明的示例实施例的触觉效果软件栈的框图。

图4是图示根据本发明的另一种示例实施例的用于提供基于媒体流渲染的触觉效果的系统的简化框图。

图5图示根据本发明的示例实施例的用于提供基于媒体流渲染的触觉效果的功能的流程图。

图6图示根据本发明的示例实施例的媒体编辑应用。

图7图示根据本发明的示例实施例的用于用预期的输入信号映射用户输入元件的位置的功能的流程图。

图8图示适于与本发明的实施例一起使用的控制器的功能框图。

图9a和9b图示适于与本发明的实施例一起使用的控制器的不同视图。

具体实施方式

示例实施例针对用于提供基于媒体数据流渲染的触觉效果的功能。媒体流可以源自各种应用,从而将触觉效果的使用扩展到这样的应用。在接收到媒体流时,基于媒体流生成触觉驱动信号。然后施加触觉驱动信号以在触觉输出设备处渲染触觉效果。在一些配置中,可以修改媒体流。例如,可以通过媒体编辑应用来修改媒体流。响应于修改,可以基于对媒体流的修改生成修改后的触觉驱动信号,使得在触觉输出设备处渲染修改后的触觉效果。

在各种实施例中,描述了用于使用设备的各种用户界面和方法。在一些实施例中,设备是便携式电子设备(例如,游戏控制器、控制台、移动电话、智能电话、平板电脑等)。但是,应当理解的是,用户界面和相关联的方法可以应用到许多其它设备(诸如,个人计算机、医疗设备、笔记本电脑等),这些设备可以包括一个或多个其它物理用户界面设备,诸如键盘、鼠标、轨迹球等。

图1图示根据本发明的示例实施例的系统100的框图。

系统100可以包括被配置成从远程源传输和/或接收数据的通信设备110。通信设备110可以通过编码要经网络(未示出)从处理器120发送到另一个设备的数据和解码经网络从另一个系统接收到的用于处理器120的数据在处理器120和其它设备之间启用连接。

例如,通信设备110可以包括被配置成提供无线网络通信的网络接口卡。可以使用各种无线通信技术,包括红外线、无线电、蓝牙、wi-fi和/或蜂窝通信。可替代地,通信设备110可以被配置成提供(一个或多个)有线网络连接,诸如以太网连接。

处理器120可以包括执行系统100的计算和控制功能的一个或多个通用或专用处理器。处理器120可以包括单个集成电路(诸如,微处理设备),或者可以包括协同工作以完成处理器120的功能的若干集成电路设备和/或电路板。此外,处理器120可以执行存储在存储器140内的计算机程序,诸如操作系统141、媒体驱动器模块142和其它应用143。

系统100可以包括用于存储由处理器120执行的信息和指令的存储器140。存储器140可以包含用于检索、呈现、修改和存储数据的各种部件。例如,存储器140可以存储当由处理器120执行时提供功能的软件模块。模块可以包括为系统100提供操作系统功能的操作系统141。模块还可以包括媒体驱动器模块142,该媒体驱动器模块142被配置成提供基于媒体流渲染的触觉效果。媒体流可以源自各种其它应用143。相应地,触觉效果可以扩展到其它应用143。在一些配置中,可以修改媒体数据流,使得可以基于媒体流渲染附加的触觉效果。系统100中的其它应用143可以包括附加的功能,诸如被配置成向外围设备(诸如,控制器150(例如,游戏手柄,可穿戴设备等))提供控制功能的外围固件。

非瞬态存储器140可以包括可由处理器120访问的各种计算机可读介质。在各种实施例中,存储器140可以包括易失性介质和非易失性介质、可移动介质和不可移动介质。例如,存储器140可以包括以下中的任意组合:随机存取存储器(“ram”)、动态ram(“dram”)、静态ram(“sram”)、只读存储器(“rom”)、闪存、高速缓存存储器和/或任何其它类型的非瞬态计算机可读介质。可替代地或附加地,存储器140可以包括一个或多个网络或云访问存储介质。

虽然被示为单个系统,但是系统100的功能可以被实现为分布式系统。例如,存储器140和处理器120可以跨共同包括系统100的若干不同计算机分布。在一种实施例中,系统100可以是设备(例如,个人计算机、控制台、视频游戏控制台等)的一部分,并且系统100为设备提供触觉效果功能。在另一种实施例中,系统100可以与设备分离,并且可以为设备远程地提供上述功能。

系统100可以可操作地连接到控制器150。控制器150可以是被配置成向系统100提供输入的外围设备。控制器150可以使用或者无线连接或者有线连接可操作地连接到系统100。控制器150还可以包括被配置成使用或者无线连接或者有线连接与系统100通信的本地处理器。可替代地,控制器150可以被配置成不包括本地处理器,并且与控制器150相关联的所有输入信号和/或输出信号可以由系统100的部件来处理。在其中控制器150具有本地处理器的实施例中,附加功能(诸如,被配置成提供控制功能的媒体驱动器模块和外围固件)可以驻留在控制器150内。

控制器150还可以包括一个或多个数字按钮、一个或多个模拟按钮、一个或多个缓冲器、一个或多个方向盘、一个或多个模拟或数字杆、一个或多个驱动轮、和/或一个或多个用户输入元件,该一个或多个用户输入元件可以由用户与其交互并且可以向系统100提供输入。控制器150还可以包括一个或多个模拟或数字触发按钮(或“触发器”),该一个或多个模拟或数字触发按钮(或“触发器”)可进一步由用户与其交互并且可以进一步向系统100提供输入。如下面更详细描述的,控制器150还可以包括被配置成在控制器150的至少一个触发器上施加双向推/拉力的马达或另一种类型的致动器或触觉输出设备。

控制器150还可以包括一个或多个致动器或其它类型的触觉输出设备。控制器150的本地处理器,或者其中控制器150不包括本地处理器的实施例中的处理器120可以将与触觉效果相关联的触觉信号传输到控制器150的至少一个致动器。致动器又响应于触觉信号输出触觉效果,诸如振动触感触觉效果、动觉触觉效果或变形触觉效果。可以在控制器150的用户输入元件(例如,数字按钮、模拟按钮、缓冲器、方向盘、模拟或数字杆、驱动轮或触发器)处体验到触觉效果。可替代地,可以在控制器150的外表面处体验到触觉效果。

致动器是触觉输出设备的示例,其中触觉输出设备是被配置成响应于驱动信号而输出触觉效果的设备,触觉效果诸如振动触感触觉效果、静电摩擦触觉效果、温度变化和/或变形触觉效果。在替代的实施例中,控制器150内的一个或多个致动器可以由一些其它类型的触觉输出设备代替。触觉输出设备可以是例如电马达、电磁致动器、音圈、形状记忆合金、电活性聚合物、螺线管、偏心旋转质量马达(“erm”)、谐波erm马达(“herm”)、线性谐振致动器(“lra”)、压电致动器、高带宽致动器、电活性聚合物(“eap”)致动器、静电摩擦显示器或超声波振动发生器。在一些情况下,触觉输出设备可以包括触觉输出驱动电路。在一些实施例中,触觉输出设备可以是单向的或双向的。

控制器150还可以包括一个或多个扬声器。控制器150的本地处理器,或者其中控制器150不包括本地处理器的实施例中的处理器120可以将音频信号传输到控制器150的至少一个扬声器,该扬声器又输出音频效果。扬声器可以是例如动态扩音器、电动扩音器、压电扩音器、磁致伸缩扩音器、静电扩音器、带及平面磁性扩音器、弯曲波扩音器、平板扩音器、带状空气运动换能器、等离子弧扬声器和数字扩音器。

控制器150还可以包括一个或多个传感器。传感器可以被配置成检测能量的形式或其它物理性质,诸如但不限于,声音、移动、加速度、生物信号、距离、流量、力/压力/应变力/、弯曲、湿度、线性位置、朝向/倾斜、射频、旋转位置、旋转速度、开关的操作、温度、振动或可见光强度。传感器还可以被配置成将检测到的能量或其它物理性质转换为电信号或表示虚拟传感器信息的任何信号,并且控制器150可以将转换后的信号发送到控制器150的本地处理器,或者在其中控制器150不包括本地处理器的实施例中发送到处理器120。

图2是图示根据本发明的示例实施例的用于提供基于媒体流渲染的触觉效果的系统200的简化框图。

如图2所示,系统200包括一个或多个应用210。应用210中的每一个可以生成各种媒体流215,诸如标准的或专有的音频流和/或视频流。

媒体流215被提供给媒体驱动器220。在接收到媒体流215时,媒体驱动器220可以基于媒体流215生成触觉驱动信号225。在一些配置中,触觉驱动信号225可以嵌入在媒体流215内。在其它配置中,可以由媒体驱动器220基于媒体流215实时或基本上实时地生成触觉驱动信号225。触觉驱动信号225然后被发送到控制器230。

在控制器230处,触觉驱动信号225可以由一个或多个触觉输出设备232执行。通过执行触觉驱动信号225,触觉输出设备232将触觉效果渲染给终端用户。

在一些实施例中,媒体流220可以被修改。例如,媒体流215可以被媒体编辑应用修改。响应于修改,可以基于对媒体流215的修改生成修改后的触觉驱动信号(未示出),使得在控制器230内的触觉输出设备232处渲染修改后的触觉效果。

图3图示根据本发明的示例实施例的触觉效果软件栈300的框图。如图3所示,软件栈300包括设备模块310、外围固件模块320、控制器模块330、驱动模块340和震动(rumble)驱动模块350。触觉效果软件栈300在系统(诸如,图1的系统100)上实现。

设备模块310可以包括各种模块,诸如输入管理代码311、外围输入应用编程接口(“api”)312、震动api313、触觉效果api314、直接重放/交叉器315、触发器引擎316、空间化引擎317和编码器318。

输入管理代码311可以包括一组计算机可读指令,在设备内执行的游戏应用或其它类型的应用的上下文中该计算机可读指令管理由控制器330提供的输入。

外围输入api312可以包括一组计算机可读函数或例程,该计算机可读函数或例程使得游戏输入管理代码311能够与外围固件320交互,以便接收和管理由控制器330提供的输入。

震动api313可以包括一组计算机可读函数或例程,该计算机可读函数或例程使得输入管理代码311能够与外围固件320交互,以便将震动指令传输到控制器330的一个或多个震动马达或震动致动器(例如,图3的震动马达l和r)。此外,震动指令可以使得控制器330的震动马达或震动致动器产生通用触觉效果或震动触觉效果。

触觉效果api314(在图3中被标识为“api”)可以包括一组计算机可读函数或例程,该计算机可读函数或例程可由输入管理代码311访问并且使得输入管理代码311能够与外围固件320交互,以便将触觉指令传输到控制器330。此外,触觉指令可以使得控制器330的一个或多个目标马达或目标致动器在控制器330的一个或多个用户输入元件处产生触觉效果。

触觉效果api314还可以存储一个或多个触觉效果定义。触觉效果定义是包括触觉数据(诸如,触觉信号)的数据结构,该触觉数据被预定义并且可以存储在存储设备(诸如,触觉文件或触觉流)中,并且可以被发送到一个或多个震动马达、震动执行器、目标马达或目标致动器,以在控制器330的部件或用户输入元件处产生触觉效果。触觉数据可以包括对应的触觉效果的一个或多个属性,其中属性可以存储为参数。触觉效果定义的示例参数可以包括振幅参数、频率参数、波形参数、包络参数、幅度(或强度)参数和持续时间参数。

触觉效果api314可以使得游戏输入管理代码311能够与直接回放/交叉器315、触发器引擎316和空间化引擎317交互,并且还可以根据由游戏输入管理代码311调用的请求来管理直接重放/交叉器315、触发器引擎316和空间化引擎317。此外,触觉效果api314可以存储用于与外围固件320通信和用于生成一个或多个触觉效果的数据。

直接回放/交叉器315可以接收触觉数据作为输入、产生触觉数据作为输出、以及将触觉数据发送到控制器330的一个或多个目标马达或目标致动器(例如,图3的马达l和r)。在一些实施例中,直接回放/交叉器315可以将输入触觉数据直接输出,而不修改输入触觉数据的格式。这导致输入触觉数据的“原样”回放。在其它实施例中,直接回放/交叉器315可以将以第一格式输入的触觉数据转换为第二格式,并且可以进一步输出转换后的触觉数据。取决于回放的类型,直接回放/交叉器315可以可选地使用可编程交叉器来转换触觉数据。通过转换触觉数据,设备模块可以解构触觉效果并在若干致动器处回放触觉效果。

触觉数据的格式可以是触觉基本流(“hes”)格式。hes格式是用于表示可以被流式传输到设备的触觉数据的文件或数据格式。虽然可以在hes格式内加密触觉数据,但是可以用与如何表示未压缩的声音相同或相似的方式来表示触觉数据。

触发器引擎316可以接收触觉数据(诸如,触觉效果定义),并且可以基于用户输入数据(诸如,触发器数据323)修改触觉数据。触发器数据是包括指示控制器330的一个或多个触发器(例如,图3的触发器l和r)的位置和/或范围的一个或多个参数的数据。触发器引擎316还可以向控制器330传输触觉指令。例如,触发器引擎316可以将触觉指令传输到控制器330的各种用户输入元件。如前所述,触觉指令可以使得控制器330的一个或多个目标马达或目标致动器在控制器330的一个或多个用户输入元件处产生触觉效果。

空间化引擎317可以接收触觉数据并且可以基于空间化数据修改触觉数据。空间化数据可以包括指示触觉效果的期望方向和/或流动(诸如,触觉效果在相应用户输入元件上的排序)的数据。在某些实施例中,空间化引擎317可以从输入管理代码311接收包括方向和/或流动的空间化数据。

空间化引擎317可以修改触觉数据,使得触觉效果(诸如,触发器触觉效果)对于控制器330的一个或多个震动马达或震动致动器(例如,图3的震动马达l和r)进行缩放,并且触觉效果也对于控制器330的一个或多个目标马达或目标致动器(例如,如图3所示的马达l和r)进行缩放。换句话说,空间化引擎317可以修改发送到每一个马达或致动器的触觉数据,并且因此,修改在每一个马达或致动器处体验到的触觉效果,以便传达整体触觉效果的方向和流动感。例如,为了强调在马达或致动器处体验到的触觉效果,空间化引擎317可以缩放触觉效果的一个或多个部分。例如,空间化引擎317可以缩放发送到使得触觉效果被体验到的马达或致动器的触觉数据,从而使得触觉效果更显著(例如,增大的幅度,持续时间等)。此外,空间化引擎317可以缩放发送到其它马达或致动器的触觉数据,从而使得在那些马达或致动器处体验到的其它触觉效果不太显著(例如,减小的幅度、持续时间等)。在一些实施例中,空间化引擎317可以实时地或基本上实时地修改触觉数据。此外,在一些实施例中,空间化引擎317可以在输入、马达或致动器、输出之间具有非线性关系,以便夸大整体触觉效果。

编码器318将从直接回放/交叉器315、触发器引擎316和/或空间化引擎317接收到的触觉数据编码成格式。在一种实施例中,格式可以是hes格式。编码器318可以将编码的触觉数据传输到外围固件320。

外围固件320是用于一个或多个外围设备(例如,控制器)的固件。外围固件320可以包括各种模块,诸如解码器和交叉器321、触发器控件322、触发器数据323、其它功能324和震动控件325。

解码器和交叉器321可以从编码器318接收编码的触觉数据,并对编码的触觉数据进行解码。在一些实施例中,解码器和交叉器321计算可编程交叉器,以便对编码的触觉数据进行解码。解码器和交叉器321可以实时计算可编程交叉器。

触发器控件322是用于控制器330的一个或多个目标马达或目标致动器(例如,图3的马达l和r)的低级控制api。触发器控件322可以接收触发指令并且可以将触发指令转换成用于控制器330的指定目标马达或目标致动器的低级触发指令,并且可以将低级触发指令传输到控制器330的指定目标马达或目标致动器。低级触发指令可以使得指定目标马达或目标致动器在控制器330的指定触发器处产生触发器触觉效果。

如前所述,触发器数据323是包括指示控制器330的一个或多个触发器(例如,图3的触发器l和r)的位置和/或范围的一个或多个参数的数据。外围固件320可以从控制器330接收触发器数据323。外围固件320还可以存储触发器数据323,并且还可以将触发器数据323传输到设备模块310。

其它游戏手柄功能324可以是由外围固件320管理的控制器330的功能。这样的功能可以包括诸如有线/无线通信、输入报告、协议实现、电源管理等的功能。

震动控制325是用于控制器330的一个或多个震动马达或震动致动器(例如,图3的震动马达l和r)的低级控制api。震动控制325可以接收震动指令、可以将震动指令转换为用于控制器330的指定震动马达或震动致动器的低级震动指令,并且可以将低级触发指令传输到控制器330的指定震动马达或震动致动器。

媒体驱动器模块326是被配置成提供基于媒体流渲染的触觉效果的固件模块。媒体流可以源自在系统(诸如,图1的系统100)上执行的各种其它应用。响应于接收到接收媒体流,媒体驱动器模块326可以基于媒体流生成触觉驱动信号。可以由控制器330的一个或多个触觉输出设备执行触觉驱动信号。

控制器330可以包括触发器l和r。控制器330还可以包括齿轮箱l和r以及马达l和r。马达l和齿轮箱l在控制器330内可操作地耦合到触发器l。同样,马达r和齿轮箱r在控制器330内可操作地耦合到触发器r。当马达l接收到触发指令时,马达l和齿轮箱l可以共同地使得在触发器l处感受到触发器触觉效果。同样,当马达r接收到触发指令时,马达r和齿轮箱r可以共同地使得在触发器r处感受到触发器触觉效果。外围固件320可以使用驱动电子器件340向控制器330的马达l和r发送触发指令。

控制器330还可以包括电位计l和r。电位计l可以检测触发器l的位置和/或范围,并且还可以将检测到的触发器l的位置和/或范围作为触发器数据发送到外围固件320。同样,电位计r可以检测触发器r的位置和/或范围,并且还可以将检测到的触发器r的位置和/或范围作为触发器数据发送到外围固件320。

控制器330还可以包括震动马达l和r。当震动马达l接收到震动指令时,震动马达l使得触觉效果沿着控制器330的左部件被感受到。同样,当震动马达r接收到震动指令时,震动马达r使得触觉效果沿着控制器330的右部件被感受到。外围固件320可以使用震动驱动电子器件350向震动马达l和r发送震动指令。

图4是图示根据本发明的另一种示例实施例的用于提供基于媒体流渲染的触觉效果的系统400的简化框图。如图4所示,系统400包括(一个或多个)媒体流410、触觉输出驱动器420和控制器430。

作为系统400的输入,一个或多个应用可以生成各种(一个或多个)媒体流410,诸如音频流和/或视频流。媒体流420由触觉输出驱动器420检索。触觉输出驱动器420可以包括各种部件,以便基于(一个或多个)媒体流410生成并进一步处理触觉驱动信号。在图4中描绘的示例配置中,触觉输出驱动器420可以包括媒体分离器421、触觉数据转换器422、协议管理器423、xpc(“进程间通信”)处理机424和xpc服务425。

在触觉输出驱动器420内,媒体分离器421接收传入的(一个或多个)媒体流410。例如,(一个或多个)媒体流410可以包括交错的多声道(例如,六声道)音频流。分离器块421被配置成对(一个或多个)媒体流410(诸如,交错的音频流)进行解交错,并且将各个声道的音频数据分离到相应的声道缓冲器(未示出)中。

在将媒体流部件存储在声道缓冲器内时,触觉转换器422可以基于(一个或多个)媒体流410生成触觉驱动信号。在一些实施例中,触觉转换器422基于一个或多个峰值检测算法(例如,峰值振幅或频率)生成触觉驱动信号。可替代地或附加地,触觉转换器422基于与触觉输出设备相关联的用户输入元件的位置生成触觉驱动信号。这里,如果相关联的用户输入元件被布置在一个或多个预定位置值处,那么触觉输出设备可以被激活。

在一些情况下,峰值检测算法可以基于触觉输出设备的更新速率将媒体流拆分成段。例如,1ms段可以用于具有1ms更新速率的触觉输出设备。在每一个段内,识别峰值。然后可以基于触觉输出设备的操作特性将识别出的峰值转换成对应的触觉驱动值。例如,16位脉冲编码调制(“pcm”)音频流可以包括在范围[-32768,32767]内的数据值。在这个示例中,恒定的最大强度音频流可以包括“32767”值的流。在音频到触觉数据转换期间,音频流值可以被转换成触觉驱动信号值。返回到示例,最大音频强度值32767可以被转换为触觉驱动值255。

随后,协议管理器423可以根据与主机设备和控制器430相关联的一个或多个标准化或专有协议对触觉驱动信号进行编码。xpc处理机424是可以被配置成与xpc服务425对接的通信处理机。在这个示例配置中,xpc服务425在传入分组426处接收编码的驱动信号,并且usb(“通用串行总线”)通信处理机427以usb兼容格式将编码的触觉驱动信号传输到控制器430。

通过实现系统400的模块化体系架构,源自任何应用(包括原先没有被设计为产生触觉效果的应用)的媒体流可以用于生成触觉效果。因此,触觉效果可以被扩展到任何数量的应用。在一些情况下,源自若干应用的媒体流可以用于渲染触觉效果。此外,可以在若干设备处渲染触觉效果。

图5图示根据本发明的示例实施例的用于提供基于媒体流渲染的触觉效果的功能的流程图。在一些配置中,可以由存储在存储器或其它计算机可读或有形介质中并由处理器执行的软件来实现图5(和下面的图7)的流程图的功能。在其它实施例中,可以由硬件(例如,通过使用专用集成电路(“asic”)、可编程门阵列(“pga”)、现场可编程门阵列(“fpga”)等)或硬件和软件的任何组合来执行功能。

首先,在510处,功能500接收可能源自各种应用的媒体流。通过从任何数量的应用(包括原先没有被设计为产生触觉效果的应用)接收媒体流500,触觉效果的使用可以被扩展到这些应用。

在520处,在接收到媒体流时,基于媒体流生成触觉驱动信号。在一些配置中,触觉驱动信号可以嵌入在媒体流内。可替代地或附加地,可以由媒体驱动器模块基于媒体流的一个或多个特性(例如,振幅、频率等)来生成触觉驱动信号。在再另一种配置中,离线触觉转换器可以用于使用效果文件将媒体流转换为触觉数据。效果文件然后可以用于使用存储在主机设备处的触觉回放应用在触觉输出设备处渲染触觉效果。这里,触觉驱动信号可以实时或基本上实时地生成。接下来,在530处,触觉驱动信号由触觉输出设备执行,以向终端用户渲染触觉效果。

在一些配置中,媒体流可以被修改。例如,可以由触觉效果设计者使用的媒体编辑应用来修改媒体数据流。在540处,修改后的媒体流可以被接收。响应于修改,在550处,可以基于修改后的媒体流生成修改后的触觉驱动信号。最后,在560处,在触觉输出设备处渲染修改后的触觉效果。

图6图示根据本发明的示例实施例的媒体编辑应用600。

如图6所示,媒体编辑应用600可以包括多个部分,诸如菜单视图610、媒体流视图620和触觉效果视图630。例如,在媒体流视图620内,可以图示媒体流(诸如,音频流)的振幅和/或频率。在另一个示例(未示出)中,也可以图形地描绘视频流的亮度。使用一个或多个峰值检测算法,可以在具有预定(例如,高)振幅、频率、亮度或其它媒体流特性的时候渲染触觉效果。可以在触觉效果视图630内添加、删除和/或以其它方式修改触觉效果。

图7图示根据本发明的示例实施例的用于用预期的输入信号映射用户输入元件的位置的功能700的流程图。

首先,在710处,控制器的用户输入元件可以被初始化。这里,功能700可以初始地为用户输入元件设置位置和范围信息。在一些情况下,可以基于用户输入设备从最大出去位置到地面位置的移动来计算这些值。

接下来,在720处,功能700确定并存储用户输入元件的简档。所确定的简档可以将用户输入设备的每一个位置映射到模数转换(“adc”)值。例如,720确定的简档可以将用户输入设备的每一个位置映射到0和255之间的adc值。

所确定的简档可以或者利用递增的简档或者利用递减的简档。例如,当从8位adc数据读取用户输入值的位置时,递增的简档将产生值[0,255]。类似地,当从8位adc数据读取时,递减的简档将产生值[255,0]。

随后,在730处,功能700确定并存储用户输入设备的每一个位置的预期输入信号。在一些情况下,用户输入值的范围可以与期望的输入信号相关联。

在一些情况下,用户输入元件的静止位置在不同时间可以变化。例如,在使用各种用户输入设备之后,一些用户输入设备可以不返回到当用户交互被去除时的相同静止位置。在这种情况下,功能700可以在740处调整这些用户输入元件的确定的简档和期望的用户输入值。相应地,在监视用户输入元件的位置的同时,可以考虑(一个或多个)改变的静止位置。

图8图示适于与本发明的实施例一起使用的控制器800的功能框图。

如图8所图示,控制器800可以包括各种用户输入元件中的一个或多个。用户输入元件可以指的是由用户操纵以与主机计算机804交互的任何接口设备。示例用户输入元件包括模拟或数字操纵杆810、按钮814、触发器818等。如本领域普通技术人员所理解的,每一个用户输入元件中的一个或多个可以被包括在控制器800上。例如,触发器818的当前描述不将控制器800限制到单个触发器。类似地,本领域技术人员可以理解的是,可以使用若干模拟或数字杆、按钮和其它用户输入元件。

控制器800可以包括本地处理器808。本地处理器808可以经由连接805与主机计算机804交换命令和数据。连接805可以是使用本领域技术人员已知的一个或多个通信协议的有线或无线连接。在一些情况下,控制器800可以替代地被配置成不包括本地处理器808。这里,来自控制器800的输入/输出信号可以由主机计算机804直接处置和处理。主机计算机804可以是游戏设备控制台并且显示设备806可以是可操作地耦合到游戏设备控制台的屏幕。在一些情况下,主机计算机804和显示设备806可以组合成单个设备。

控制器800可以包括目标致动器812、816、820(例如,马达),以直接驱动其用户输入元件中的每一个以及在用户的手通常位于的位置可操作地耦合到壳体802的一个或多个通用或震动致动器822、824。更具体地,模拟或数字杆810包括可操作地耦合到其的目标致动器或马达812,按钮814包括可操作地耦合到其的目标致动器或马达816,并且触发器818包括可操作地耦合到其的目标致动器或马达820。除了多个目标致动器之外,控制器800还包括可操作地耦合到其用户输入元件中的每一个的位置传感器。更具体地,模拟或数字杆810包括可操作地耦合到其的位置传感器811,按钮814包括可操作地耦合到其的位置传感器815,并且触发器818包括可操作地耦合到其的位置传感器819。本地处理器808可操作地耦合到目标致动器812、816、820以及分别耦合到模拟或数字杆810、按钮814和触发器818的位置传感器811、815、819。响应于从位置传感器811、815、819接收到的信号,本地处理器808指示目标致动器812、816、820分别向模拟或数字杆810、按钮814和触发器818直接提供定向的或有针对性的动觉效果。这种有针对性的动觉效果与由通用致动器822、824沿着控制器的整个主体产生的通用触觉效果或震动触觉效果可辨别或可区分。共同的触觉效果向用户提供了对游戏更强的沉浸感,因为若干形态(例如,视频、音频和触觉)同时参与。

图9a和9b图示适于与本发明的实施例一起使用的控制器900的不同视图。如图9a和图9b所示,控制器900可以包括各种部件,诸如壳体902、模拟或数字操纵杆910、(一个或多个)按钮914、触发器918以及震动致动器922和924。

壳体902被形成为使用户容易地适应抓握控制器900。控制器900是控制器的示例实施例,并且本发明的实施例可以容易地应用于其它控制器形状。

因此,本发明的实施例将触觉效果的使用扩展到许多应用。此外,本发明的实施例还提供了平台,该平台用于触觉效果设计者测试和/或修改基于源自这些应用的媒体流生成的触觉效果。

本领域普通技术人员将容易理解的是,可以用不同顺序的步骤和/或用以与所公开的配置不同配置的元件来实施如上所述的本发明。因此,虽然已经基于这些优选实施例描述了本发明,但是对于本领域技术人员将显而易见的是,某些修改、变化和替代构造将是显而易见的,同时保持在本发明的精神和范围之内。因此,为了确定本发明的边界和界限,应当参考所附权利要求。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1