用于协商对共享音频或视觉资源的控制的系统和方法与流程

文档序号:20203094发布日期:2020-03-27 20:50阅读:147来源:国知局
用于协商对共享音频或视觉资源的控制的系统和方法与流程

本申请是申请日为2013年11月14日、申请号为201380068944.6、名称为“用于协商对共享音频或视觉资源的控制的系统和方法”的发明专利申请的分案申请。

本公开整体涉及对音频或视觉资源的共享使用,并且更具体地涉及协商对共享音频或视觉资源的控制。



背景技术:

车辆音频或视觉系统和移动计算设备(也称多功能设备)经常需要转换对由在多功能设备上执行的进程和在车辆上执行的进程所共享的音频或视觉资源的控制。例如,用户可能期望在播放于多功能设备诸如电话或平板电脑上的音乐和由汽车自身通过在汽车的嵌入式系统上执行的各种进程所提供的导航指令或车辆状况信息之间进行转换。

随着越来越多的网络化设备在其他环境中出现,对音频和视觉资源进行共享控制的期望同样存在于其他环境中,并且例如用于仲裁对家庭娱乐系统中的电视屏幕的控制的当前工具是复杂、笨重而令人沮丧的。

当前技术需要用户的粗略人工干预来建立对输出设备诸如扬声器的控制(例如,将设备插入输入插孔中并且按下立体声系统上的按钮以将音频从立体声系统转换到电话)。随着对用户可用的设备的普及,在由这些多功能设备(例如,音乐、视频、电话个人助理、导航)所提供的服务方面的提高、在由嵌入式系统(例如,车辆遥测和控制、导航、电话、无线电部件的各种配置、安全信息)所提供的服务方面的提高,对立体声系统表面上的更低的出错率和更高效的替代按钮的需求逐渐变得更为迫切。



技术实现要素:

本发明公开了一种用于协商对共享音频或视觉资源的控制的系统和方法。在仲裁器处接收对共享音频或视觉资源的控制的请求。该仲裁器保持针对共享音频或视觉资源的所有权的现有状态信息和共享音频或视觉资源的所有权转换条件。至少部分地基于对控制的请求和所有权转换条件来确定与共享音频或视觉资源的所有权有关的新的状态信息。该新的状态信息指示进程中的哪一个进程控制共享音频或视觉资源的输出。确定共享音频或视觉资源的新的所有权转换条件并将其传送至共享音频或视觉资源的控制器接口。

附图说明

图1根据一些实施例示出了便携式多功能设备的框图。

图2根据一些实施例示出了便携式多功能设备。

图3a根据一些实施例示出了与车辆的音频和视觉资源进行交互的多功能设备。

图3b根据一些实施例示出了与家庭娱乐和自动化系统的音频和视觉资源进行交互的多功能设备。

图3c根据一些实施例示出了与飞机的音频和视觉资源进行交互的多功能设备。

图4根据一些实施例示出了用于协商对汽车的共享音频或视觉资源的控制的仲裁器模块。

图5a为示出用于协商对汽车的共享音频或视觉资源的控制的方法的一个实施例的流程图。

图5b为示出用于协商对汽车的共享音频或视觉资源的控制的方法的一个实施例的流程图。

图5c为示出用于协商对共享资源的控制的方法的一个实施例的流程图。

图6示出了被配置为实现用于协商对共享资源的控制的系统和方法的方面的示例性计算机系统。

本说明书包括对“一个实施例”(“oneembodiment”或“anembodiment”)的引用。短语“在一个实施例中”(“inoneembodiment”或“inanembodiment”)的出现未必是指同一实施例。可以符合本公开的任何适合的方式对特定的特征、结构或特性进行结合。

“包括”。该术语是开放式的。如所附权利要求中所使用的,该术语不排除另外的结构或步骤。考虑叙述如下各项的权利要求:“一种装置,该装置包括一个或多个处理器单元...”此类权利要求不排除装置包括另外的部件(例如,网络接口单元、图形电路等)。

“被配置为”。各种单元、电路或其他部件可被描述或被要求为“被配置为”执行一个或多个任务。在此类上下文中,“被配置为”用于通过指示单元/电路/部件包括在操作期间执行一个或多个任务的结构(例如,电路)来暗示结构。同样地,即使当指定的单元/电路/部件当前不可操作(例如,未接通)时,单元/电路/部件也可被叙述成被配置为执行任务。与“被配置为”用语一起使用的单元/电路/部件包括硬件—例如电路、存储可执行以实现操作的程序指令的存储器,该等等。叙述单元/电路/部件“被配置为”执行一个或多个任务明确旨在针对该单元/电路/部件援引35u.s.c.§112,第六段。另外,“被配置为”可包括由软件和/或固件(例如,fpga或执行软件的通用处理器)操纵来以能够执行讨论中的一个或多个任务的方式进行操作的通用结构(例如,通用电路)。“被配置为”还可包括调整制造工艺(例如,半导体制造设施)以制造出适用于实现或执行一个或多个任务的设备(例如,集成电路)。

“第一”、“第二”等。如本文所用,这些术语被用作名词之前的标记,并且不暗示任何类型的排序(例如,空间的、时间的、逻辑的等等)。例如,缓冲电路在本文中可被描述为执行针对“第一”值和“第二”值的写入操作。术语“第一”、“第二”不一定暗示第一值必须在第二值之前被写入。

“基于”。如本文所用,该术语用于描述影响确定的一个或多个因素。该术语不排除可能影响确定的另外的因素。即,确定可仅仅基于这些因素或至少部分地基于这些因素。考虑短语“基于b来确定a”。尽管在这种情况下,b为影响a的确定的因素,但此类短语并不排除a的确定还可基于c。在其他情况下,可仅基于b来确定a。

具体实施方式

引言

本发明公开了一种用于协商对汽车的共享音频或视觉资源的控制的系统和方法的各种实施例。在一些实施例中,本文所述的协商工具、共享应用程序和/或仲裁器应用程序可被实现为各种多功能设备的一部分,该各种多功能设备包括但不限于具有gps功能的移动电话、平板计算设备和/或个人导航设备。此类多功能设备的用户可与能够生成汽车的各种音频和/或视觉系统的输出的应用程序进行交互,并且本文所述的协商工具、共享应用程序和/或仲裁器应用程序可确定对汽车的共享音频或视觉资源的控制以允许应用程序的输出被路由到汽车的各种音频或视觉系统。在一些实施例中,本文所述的协商工具、共享应用程序和/或仲裁器应用程序可被实现为车辆的各种系统的一部分,诸如在汽车、轮船或飞机上操作的计算机。

提供了一种用于协商对汽车的共享音频或视觉资源的控制的方法。在一些实施例中,在仲裁器处接收对车辆的共享音频或视觉资源的控制的请求。该仲裁器保持针对共享音频或视觉资源的所有权的现有状态信息和共享音频或视觉资源的所有权转换条件。从多个进程中的一个进程中接收对车辆的共享音频或视觉资源的控制的请求,该多个进程包括在附接到车辆的嵌入式系统上执行的进程和在暂时与车辆通信的移动计算设备上执行的进程。确定与共享音频或视觉资源的所有权有关的新的状态信息。确定新的状态信息包括至少部分地基于对控制的请求和所有权转换条件来确定新的状态信息。该新的状态信息指示进程中的哪一个进程控制车辆的共享音频或视觉资源的输出。确定共享音频或视觉资源的新的所有权转换条件并将其传送至控制器接口。

在一些实施例中,确定与共享音频或视觉资源的所有权有关的新的状态信息进一步包括不考虑对车辆的共享音频或视觉资源的控制的请求是源于在附接到车辆的嵌入式系统上执行的进程还是源于在暂时与车辆通信的移动计算设备上执行的进程来确定与共享音频或视觉资源的所有权有关的新的状态信息。在一些实施例中,仲裁器是在移动计算设备或多功能设备上执行的进程。在一些实施例中,仲裁器是在托管共享音频或视觉资源的硬件上执行的进程。在一些实施例中,仲裁器是在连接系统(例如,布线中的电路、路由器、集线器或互连器)上执行的进程。一些实施例还支持在仲裁器处接收对车辆的另一共享音频或视觉资源的控制的请求并且基于对车辆的共享音频或视觉资源中的另一者的控制的请求来确定与车辆的另一共享音频或视觉资源的所有权有关的新的状态信息。在一些此类实施例中,与车辆的另一共享音频或视觉资源的所有权有关的新的状态信息指示进程中的哪一个进程控制车辆的另一共享音频或视觉资源的输出,并且与车辆的另一共享音频或视觉资源的所有权有关的新的状态信息独立于与共享音频或视觉资源的所有权有关的新的状态信息来确定。

在一些实施例中,车辆的共享音频或视觉资源中的一者为视频显示器,并且车辆的共享音频或视觉资源中的另一者为音频通道。在一些实施例中,车辆的共享音频或视觉资源中的一者为输出通道,并且车辆的共享音频或视觉资源中的另一者为输入/输出通道。

在一些实施例中,确定与共享音频或视觉资源的所有权有关的新的状态信息进一步包括:确定与共享音频或视觉资源的所有权有关的新的状态信息,使得进程中的第一进程拥有对车辆的共享音频或视觉资源中的一者的控制,并且进程中的第二进程被指定为在任务的持续时间内控制共享音频或视觉资源中的一者的输出,并且在完成任务之后返回对车辆的共享音频或视觉资源中的一者的控制以控制共享音频或视觉资源中的一者的输出。一些实施例还支持将控制通道配置为在共享音频或视觉资源、仲裁器和移动计算设备之间通信,其中仲裁器是在附接到车辆的嵌入式系统上执行的进程。

一些实施例可包括一种用于协商对汽车的共享音频或视觉资源的控制的装置。例如,如本文所述,仲裁器或仲裁器模块可接收对车辆的共享音频或视觉资源的控制的请求、确定与共享音频或视觉资源的所有权有关的新的状态信息、确定共享音频或视觉资源的新的所有权转换条件并且传送与共享音频或视觉资源的所有权有关的新的状态信息。在一些实施例中,仲裁器模块可由非暂态计算机可读存储介质和计算装置的一个或多个处理器(例如cpu和/或gpu)来实现。如本文所述的,计算机可读存储介质可存储程序指令,该程序指令可由一个或多个处理器执行以使得计算装置接收对车辆的共享音频或视觉资源的控制的请求、确定与共享音频或视觉资源的所有权有关的新的状态信息、确定共享音频或视觉资源的新的所有权转换条件并且传送与共享音频或视觉资源的所有权有关的新的状态信息。仲裁器模块的其他实施例可至少部分地由硬件电路和/或例如存储在非易失性存储器中的固件来实现。

多功能设备

现在将具体地参考实施例,这些实施例的实例在附图中被示出。在下面的详细描述中,示出了许多具体细节以便提供对本公开的彻底理解。然而,对于本领域的普通技术人员将显而易见的是,一些实施例可能在没有这些具体细节的情况下被实施。在其它情况下,没有详细描述熟知的方法、进程、部件、电路和网络,以免不必要地模糊实施例的各方面。

还将理解的是,尽管术语第一、第二等可在本文中用于描述各种元件,但这些元件不应受到这些术语的限制。这些术语只是用于将一个元件与另一元件区分开。例如,第一接触可被命名为第二接触,并且类似地第二接触可被命名为第一接触,而不脱离预期范围。第一接触和第二接触两者都是接触,但是它们并不是同一接触。

在本文描述中所使用的术语只是为了描述具体实施例的目的,而并非旨在进行限制。如在说明书和所附权利要求书中所使用的,单数形式“一个”(“a”,“an”)和“所述”旨在也包括复数形式,除非上下文明确地另外指出。还将理解的是,本文所用的术语“和/或”是指并包括相关联的所列出的项目中的一个或多个项目的任何和所有可能的组合。另外将理解的是,当术语“包括”(“includes”“including”“comprises”和/或“comprising”)在本说明书中使用时,规定了所阐明的特征、整数、步骤、操作、元件和/或部件的存在,但不排除存在或增加一个或多个其他特征、整数、步骤、操作、元件、部件和/或它们的组。

根椐上下文,如本文所用,术语“如果”可被解释为指“当……时”(“when”或“upon”)或“响应于确定”或“响应于检测到”。根据上下文,相似地,短语“如果确定”或“如果检测到[阐明的条件或事件]”可被解释为是指“当确定时”或“响应于确定”或“当检测到[阐明的条件或事件]时”或“响应于检测到[阐明的条件或事件]”。

描述了电子设备、用于此类设备的用户界面和用于使用此类设备的相关联的进程的实施例。在一些实施例中,设备是还包含其它功能诸如pda和/或音乐播放器功能的便携式通信设备诸如移动电话。便携式多功能设备的示例性实施例包括但不限于来自appleinc.(cupertino,california)的ipod设备。也可使用其他便携式电子设备,诸如具有触敏表面(例如,触摸屏显示器和/或触摸板)的膝上型电脑或平板电脑。还应当理解的是,在一些实施例中,该设备并非便携式通信设备,而是具有触敏表面(例如,触摸屏显示器和/或触摸板)的台式计算机。在一些实施例中,该设备是具有取向传感器(例如游戏控制器中的取向传感器)的游戏计算机。

在下面的讨论中,描述了一种包括显示器和触敏表面的电子设备。然而,应当理解,电子设备可以包括一个或多个其他物理用户接口设备诸如物理键盘、鼠标和/或操作杆。

设备通常支持多种应用程序,诸如以下应用程序中的一个或多个应用程序:绘图应用程序、展示应用程序、文字处理应用程序、网站创建应用程序、盘编辑应用程序、电子表格应用程序、游戏应用程序、电话应用程序、视频会议应用程序、电子邮件应用程序、即时消息应用程序、健身支持应用程序、照片管理应用程序、数字相机应用程序、数字视频摄像机应用程序、网络浏览应用程序、数字音乐播放器应用程序、和/或数字视频播放器应用程序。

可在所述设备上执行的各种应用程序可使用至少一个常用的物理用户界面设备诸如触敏表面。触敏表面的一种或多种功能以及设备上所显示的对应信息可被调节和/或从一个应用程序变为下一个应用程序和/或在相应的应用程序内变化。这样,设备的常用物理架构(诸如触敏表面)可支持具有用户界面的多种应用程序,这些用户界面对于用户是直观的和透明的。

现在将注意力指向便携式设备的实施例。图1为根据一些实施例示出了具有触敏显示器112的便携式多功能设备100的框图。为方便起见,触敏显示器112有时被称为“触摸屏”,并且也可称为或叫做触敏显示器系统。设备100可具有存储器102(其可包括一个或多个计算机可读存储介质)、存储器控制器122、外围设备接口118、rf电路108、音频电路110、扬声器111、麦克风113、输入/输出(i/o)子系统106、其他输入或控制设备116、外部端口124、和一个或多个处理单元(cpu)120。设备100可包括一个或多个光学传感器164。这些部件可通过一条或多条通信总线或信号线103进行通信。

应当理解,设备100只是便携式多功能设备的一个实例,并且设备100可具有所显示的更多的或更少的部件,可组合两个或更多个部件,或可具有不同的部件配置或布置。图1中所示的各种部件可以硬件、软件或软件和硬件的组合来实现,该硬件和软件包括一个或多个信号处理和/或专用集成电路。

存储器102可包括高速随机存取存储器并且也可包括非易失性存储器,诸如一个或多个磁盘存储设备、闪存存储器设备、或其他非易失性固态存储器设备。由设备100的其他部件诸如cpu120和外围设备接口118访问存储器102可由存储器控制器122控制。

外围设备接口118可被用于将设备的输入和输出外围设备耦接到cpu120和存储器102。该一个或多个处理器120运行或执行存储在存储器102中的各种软件程序和/或指令集,以执行设备100的各种功能并处理数据。

在一些实施例中,外围设备接口118、cpu120和存储器控制器122可在单个芯片诸如芯片104上实施。在一些其他实施例中,它们可在独立的芯片上实施。

rf(射频)电路108接收和发送也被叫做电磁信号的rf信号。rf电路108将电信号转换为电磁信号/将电磁信号转换为电信号,并且经由电磁信号与通信网络以及其它通信设备通信。rf电路108可包括用于执行这些功能的熟知的电路,包括但不限于天线系统、rf收发器、调谐器、数字信号处理器、编解码芯片组、用户身份模块(sim)卡、存储器、一个或多个放大器、一个或多个振荡器等。rf电路108可通过无线通信与网络和其他设备通信,所述网络诸如互联网(也称为万维网(www))、内联网和/或无线网络,所述无线网络诸如蜂窝电话网络、无线局域网(lan)和/或城域网(man)。无线通信可使用多种通信标准、协议和技术中的任一者,包括但不限于全球移动通信系统(gsm)、增强数据gsm环境(edge)、高速下行链路分组接入(hsdpa)、高速上行链路分组接入(hsupa)、宽带码分多址(w-cdma)、码分多址(cdma)、时分多址(tdma)、蓝牙、无线保真(wi-fi)(例如,ieee802.11a、ieee802.11b、ieee802.11g和/或ieee802.11n)、互联网协议语音技术(voip)、wi-max、电子邮件的协议(例如,互联网消息访问协议(imap)和/或邮局协议(pop))、即时消息(例如,可扩展消息和现场协议(xmpp)、用于即时消息和现场利用扩展的会话发起协议(simple)、即时消息和现场服务(imps))和/或短消息服务(sms)、或者任何其他适合的通信协议,包括到本文档提交日期为止还未开发出的通信协议。

音频电路110、扬声器111和麦克风113提供用户与设备100之间的音频接口。音频电路110从外围设备接口118接收音频数据,将音频数据转换为电信号,并将电信号传输到扬声器111。扬声器111将电信号转换为人类可听的声波。音频电路110还接收由麦克风113从声波转换来的电信号。音频电路110将电信号转换为音频数据,并将音频数据传输到外围设备接口118以用于进行处理。音频数据可通过外围设备接口118从存储器102和/或rf电路108进行检索和/或传输到存储器102和/或rf电路108。在一些实施例中,音频电路110还包括耳麦插孔(例如,图2中的212)。耳麦插孔提供音频电路110与可移除的音频输入/输出外围设备之间的接口,该可移除的音频输入/输出外围设备诸如仅输出的耳机或者具有输出(例如,单耳耳机或双耳耳机)和输入(例如,麦克风)两者的耳麦。

i/o子系统106将设备100上的输入/输出外围设备诸如触摸屏112和其他输入控制设备116耦接到外围设备接口118。i/o子系统106可包括显示控制器156以及一个或多个输入控制器160以用于其他输入或控制设备。该一个或多个输入控制器160从其它输入或控制设备116接收电信号/将电信号发送到其它输入或控制设备116。其他输入控制设备116可包括物理按钮(例如,下压按钮、摇臂按钮等)、转盘、滑动开关、操纵杆、点击轮等。在一些另选实施例中,一个或多个输入控制器160可耦接到(或不耦接到)以下中的任一者:键盘、红外线端口、usb端口和指针设备诸如鼠标。一个或多个按钮(例如,图2的208)可包括用于扬声器111和/或麦克风113的音量控制的增大/减小按钮。一个或多个按钮可包括下压按钮(例如,图2中的206)。

触敏显示器112提供设备与用户之间的输入接口和输出接口。显示控制器156从触摸屏112接收电信号和/或将电信号发送到触摸屏112。触摸屏112向用户显示视觉输出。视觉输出可包括图形、文本、图标、视频以及它们的任何组合(统称为“图形”)。在一些实施例中,视觉输出中的一些或全部视觉输出可对应于用户界面对象。

触摸屏112具有基于触觉和/或触觉接触来从用户接受输入的触敏表面、传感器或传感器组。触摸屏112和显示控制器156(与存储器102中的任何相关联的模块和/或指令集一起)检测触摸屏112上的接触(和该接触的任何移动或中断),并将所检测到的接触转换为与显示在触摸屏112上的用户界面对象(例如,一个或多个软键、图标、网页或图像)的交互。在示例性实施例中,触摸屏112与用户之间的接触点与用户的手指对应。

尽管其他显示器技术可在其他实施例中使用,但是触摸屏112可使用lcd(液晶显示器)技术、lpd(发光聚合物显示器)技术或led(发光二极管)技术。使用现在已知或以后开发的多种触摸传感技术中的任一触摸传感技术(该触摸传感技术包括但不限于电容性技术、电阻性技术、红外技术和表面声波技术)以及其他接近传感器阵列或用于确定与触摸屏112的一个或多个接触点的其他元件,触摸屏112和显示控制器156可检测到接触及其任何移动或中断。在一个示例性实施例中,使用投射式互电容感测技术,诸如从appleinc.(cupertino,california)的ipod中发现的技术。

用户可使用任何合适的对象或附加物诸如触笔、手指等来接触触摸屏112。在一些实施例中,用户界面被设计为主要与基于手指的接触和手势一起工作,这与基于触笔的输入相比由于手指在触摸屏上的更大的接触面积而可能精确度更低。在一些实施例中,设备将基于手指的粗略输入解释为精确的指针/光标位置或命令以用于执行用户所期望的动作。

在一些实施例中,除了触摸屏,设备100还可包括触摸板(未示出)以用于激活或去激活特定的功能。在一些实施例中,触摸板是设备的触敏区域,与触摸屏不同,该触敏区域不显示视觉输出。触摸板可以是与触摸屏112分开的触敏表面或者是由触摸屏形成的触敏表面的延伸。

设备100还包括用于为各种部件供电的电力系统162。电力系统162可包括电源管理系统、一个或多个功率源(例如,电池、交流电(ac))、再充电系统、电源故障检测电路、电源转换器或逆变器、电源状态指示器(例如,发光二极管(led))以及与便携式设备中的电力的生成、管理和分配相〉,关联的任何其他部件。

设备100也可包括一个或多个光学传感器164。图1示出耦接至i/o子系统106中的光学传感器控制器159的光学传感器。光学传感器164可包括电荷耦合器件(ccd)或互补金属氧化物半导体(cmos)光电晶体管。光学传感器164从环境接收通过一个或多个透镜而投射的光,并且将光转换为表示图像的数据。结合成像模块143(也称为相机模块),光学传感器164可捕获静态图像或视频。在一些实施例中,光学传感器位于设备100的后部,其与设备前部的触摸屏显示器112相对,使得触摸屏显示器可用作取景器以用于静态和/或视频图像采集。在一些实施例中,另一个光学传感器位于设备的前部使得可获得用户的图像以用于视频会议,同时用户在触摸屏显示器上查看其他视频会议参与者。

设备100也可包括一个或多个接近传感器166。图1示出耦接至外围设备接口118的接近传感器166。作为另外一种选择,接近传感器166可被耦接至i/o子系统106中的输入控制器160。在一些实施例中,当多功能设备被放置在用户耳朵附近时(例如,当用户打电话时),该接近传感器关闭并禁用触摸屏112。

设备100包括一个或多个取向传感器168。在一些实施例中,该一个或多个取向传感器包括一个或多个加速度计(例如一个或多个线性加速度计和/或一个或多个旋转加速度计)。在一些实施例中,该一个或多个取向传感器包括一个或多个陀螺仪。在一些实施例中,该一个或多个取向传感器包括一个或多个磁力仪。在一些实施例中,该一个或多个取向传感器包括全球定位系统(gps)、全球导航卫星系统(glonass)、和/或其他全球导航系统接收器中的一者或多者。gps、glonass、和/或其他全球导航系统接收器可用于获得关于设备100的位置和取向(例如,纵向或横向)的信息。在一些实施例中,该一个或多个取向传感器包括取向/旋转传感器的任何组合。图1示出耦接至外围设备接口118的一个或多个取向传感器168。作为另外一种选择,该一个或多个取向传感器168可耦接到i/o子系统106中的输入控制器160。在一些实施例中,信息基于对从该一个或多个取向传感器接收的数据的分析而在触摸屏显示器上被显示在纵向视图或横向视图中。

在一些实施例中,存储在存储器102中的软件部件包括操作系统126、通信模块(或指令集)128、接触/运动模块(或指令集)130、图形模块(或指令集)132、文本输入模块(或指令集)134、全球定位系统(gps)模块(或指令集)135、仲裁器模块158以及应用程序(或指令集)136。设备/全局内部状态157包括以下中的一者或多者:活动应用程序状态,该活动应用程序状态指示哪些应用程序(如果有的话)当前是活动的;显示状态,该显示状态指示什么应用程序、视图或其它信息占据触摸屏显示器112的各个区域;传感器状态,该传感器状态包括从设备的各个传感器和输入控制设备116获取的信息;状态信息,该状态信息指示哪些进程控制车辆的共享音频或视觉资源的输出;共享音频或视觉资源的所有权转换条件;以及关于设备的位置和/或姿态的位置信息。

操作系统126(例如,darwin、linux、unix、osx、windows、或嵌入式操作系统诸如vxworks或rtxc)包括用于控制和管理一般系统任务(例如,存储器管理、存储设备控制、电力管理等)的各种软件部件和/或驱动器,并且有助于各种硬件部件和软件部件之间的通信。

通信模块128有利于通过一个或多个外部端口124来与其他设备通信,并且还包括用于处理由rf电路108和/或外部端口124所接收的数据的各种软件部件。外部端口124(例如,通用串行总线(usb)、火线等)适于直接耦接至其它设备或者间接地通过网络(例如,互联网、无线lan等)进行耦接。

接触/运动模块130可检测到与触摸屏112(结合显示控制器156)和其他触敏设备(例如,触摸板或物理点击轮)的接触。接触/运动模块130包括各种软件部件以用于执行与接触的检测相关的各种操作,诸如确定是否已发生接触(例如,检测手指按下事件)、确定是否存在接触的运动并且跟踪横跨触敏表面的运动(例如,检测一个或多个手指拖动事件),以及确定接触是否已停止(例如,检测手指抬起事件或接触中断)。接触/运动模块130从触敏表面接收接触数据。确定由一系列接触数据所表示的接触点的运动,这可包括确定接触点的速率(量值)、速度(量值和方向)和/或加速度(量值和/或方向的变化)。这些操作可施加于单个触点(例如,一个指状触点)或多个同时的触点(例如,“多点触摸”/多个指状触点)。在一些实施例中,接触/运动模块130和显示控制器156检测触摸板上的接触。

接触/运动模块130可由用户检测手势输入。触敏表面上的不同手势具有不同的接触图案。因此,手势可通过检测特定的接触图案而被检测到。例如,检测到手指轻击手势包括检测到手指按下事件,然后在与手指按下事件(例如,在图标位置处)相同的位置(或基本上相同的位置)处检测到手指抬起(抬离)事件。又如,在触敏表面上检测手指轻扫手势包括检测手指按下事件,然后检测一个或多个手指拖动事件,并且随后检测手指抬起(抬离)事件。

图形模块132包括各种已知的软件部件以用于渲染和显示触摸屏112或其他显示器上的图形,该显示触摸屏或其他显示器包括用于改变被显示的图形的强度的部件。如本文所用,术语“图形”包括可被显示给用户的任何对象,非限制性地包括文本、网页、图标(诸如包括软键的用户界面对象)、数字图像、视频、动画等等。

在一些实施例中,图形模块132存储要使用的表示图形的数据。每个图形可分配有对应的代码。图形模块132从应用程序等接收指定待显示的图形的一个或多个代码,在必要的情况下还一起接收坐标数据和其它图形属性数据,并且然后生成屏幕图像数据以输出给显示控制器156。

文本输入模块134可以是图形模块132的部件,该文本输入模块提供了软键盘以用于输入各种应用程序中的文本(例如,联系人137、电子邮件140、im141、浏览器147、以及需要文本输入的任何其他应用程序)。

gps模块135确定了设备的位置并提供了在各种应用程序中使用的这些信息(例如,提供至用于基于位置的拨号的电话138、提供至相机143作为图片/视频元数据,以及提供至提供基于位置的服务诸如天气桌面小程序、当地黄页桌面小程序和地图/导航桌面小程序的应用程序)。

应用程序136可包括下列模块(或指令集),或其子集或超集:

·联系人模块137(有时叫做通讯录或联系人列表);

·电话模块138;

·视频会议模块139;

·电子邮件客户端模块140;

·即时消息(im)模块141;

·健身支持模块142;

·用于静止图像和/或视频图像的相机模块143;

·图像管理模块144;

·浏览器模块147;

·日历模块148;

·桌面小程序模块149,其可包括以下中一者或多者:天气桌面小程序149-1、股市桌面小程序149-2、计算器桌面小程序149-3、闹钟桌面小程序149-4、词典桌面小程序149-5和由用户获取的其他桌面小程序以及用户创建的桌面小程序149-6;

·用于形成用户创建的桌面小程序149-6的桌面小程序创建器模块150;

·搜索模块151;

·视频和音乐播放器模块152,其可由视频模块和音乐模块组成;

·记事本模块153;

·地图模块154;和/或

·在线视频模块155。

可存储在存储器102中的其他应用程序136的实例包括其他文字处理应用程序、其他图像编辑应用程序、绘图应用程序、展示应用程序、支持java的应用程序、加密、数字权限管理、语音识别和语音复制。

结合触摸屏112、显示控制器156、接触模块130、图形模块132、和文本输入模块134,联系人模块137可被用于管理通讯录或联系人列表(例如存储在存储器102中的联系人模块137的应用程序内部状态192中),包括:将一个或多个姓名添加到通讯录;从通讯录删除一个或多个姓名;使一个或多个电话号码、一个或多个电子邮件地址、一个或多个物理地址或其他信息与姓名相关联;使图像与姓名进行关联;对姓名进行归类和分类;提供电话号码或电子邮件地址以发起和/或促进通过电话138、视频会议139、电子邮件140或im141的通信;等等。

结合rf电路108、音频电路110、扬声器111、麦克风113、触摸屏112、显示控制器156、接触模块130、图形模块132和文本输入模块134,电话模块138可用于输入对应于电话号码的字符序列、访问通讯录137中的一个或多个电话号码、修改已输入的电话号码、拨打相应的电话号码、进行会话、以及当会话完成时断开或挂断。如上所述,无线通信可使用多种通信标准、协议和技术中的任一种。

结合rf电路108、音频电路110、扬声器111、麦克风113、触摸屏112、显示控制器156和通信模块128,仲裁器模块158协商对汽车的共享音频或视觉资源的控制。在仲裁器模块158处接收对车辆的共享音频或视觉资源的控制的请求。仲裁器模块158保持针对共享音频或视觉资源的所有权的现有状态信息和共享音频或视觉资源的所有权转换条件。从多个进程中的一个进程中接收对车辆的共享音频或视觉资源的控制的请求,该多个进程包括在附接到车辆的嵌入式系统上执行的进程和在暂时与车辆通信的移动计算设备(便携式多功能设备100)上执行的进程。由仲裁器模块158至少部分地基于对控制的请求和所有权转换条件来确定与共享音频或视觉资源的所有权有关的新的状态信息。该新的状态信息指示进程中的哪一个进程控制车辆的共享音频或视觉资源的输出。由仲裁器模块158来确定共享音频或视觉资源的新的所有权转换条件并将其传送至共享音频或视觉资源的控制器接口。

结合rf电路108、音频电路110、扬声器111、麦克风113、触摸屏112、显示控制器156、光学传感器164、仲裁器模块158、接触模块130、图形模块132、文本输入模块134、联系人列表137和电话模块138,视频会议模块139包括用于根据用户指令来发起、进行和终止用户与一个或多个其它参与者之间的视频会议的可执行指令。

结合rf电路108、触摸屏112、显示控制器156、接触模块130、图形模块132和文本输入模块134,电子邮件客户端模块140包括响应于用户指令来创建、发送、接收和管理电子邮件的可执行指令。结合图像管理模块144,电子邮件客户端模块140使得非常容易创建和发送具有由相机模块143拍摄的静态图像或视频图像的电子邮件。

结合rf电路108、触摸屏112、显示控制器156、接触模块130、图形模块132和文本输入模块134,即时消息模块141包括用于输入对应于即时消息的字符序列、修改先前输入的字符、传输相应即时消息(例如,使用短消息服务(sms)或多媒体消息服务(mms)协议以用于基于电话的即时消息或者使用xmpp、simple、或imps以用于基于互联网的即时消息)、接收即时消息以及查看所接收的即时消息的可执行指令。在一些实施例中,所传输和/或所接收的即时消息可包括在mms和/或增强的消息型服务(ems)中所支持的图形、照片、音频文件、视频文件和/或其他附件。如本文所使用,“即时消息”是指基于电话的消息(例如,使用sms或mms发送的消息)和基于互联网的消息(例如,使用xmpp、simple、或imps发送的消息)两者。

结合rf电路108、触摸屏112、显示控制器156、接触模块130、图形模块132、文本输入模块134、gps模块135、地图模块154和音乐播放器模块146,健身支持模块142包括创建健身(例如,具有时间、距离和/或卡路里燃烧目标)的可执行指令;与健身传感器(运动设备)通信;接收健身传感器数据;校准用于监视健身的传感器;选择和播放用于健身的音乐;以及显示、存储和传输健身数据。

结合触摸屏112、显示控制器156、光学传感器控制器159、接触模块130、图形模块132、图像管理模块144和一个或多个光学传感器164,相机模块143包括捕获静态图像或视频(包括视频流)并且将它们存储到存储器102中、修改静态图像或视频的特性、或从存储器102删除静态图像或视频的可执行指令。

结合触摸屏112、显示控制器156、接触模块130、图形模块132、文本输入模块134和相机模块143,图像管理模块144包括布置、修改(例如,编辑)、或以其他方式操控、加标签、删除、展示(例如,在数字幻灯片或相册中)以及存储静态图像和/或视频图像的可执行指令。

结合rf电路108、触摸屏112、显示系统控制器156、接触模块130、图形模块132和文本输入模块134,浏览器模块147包括根据用户指令以及链接到网页的附件和其他文件来浏览互联网(包括搜索、链接到、接收和显示网页或其部分)的可执行指令。

结合rf电路108、触摸屏112、显示系统控制器156、接触模块130、图形模块132、文本输入模块134、电子邮件客户端模块140和浏览器模块147,日历模块148包括用于根据用户指令来创建、显示、修改、和存储日历和与日历相关联的数据(例如,日历条目、待办任务列表等)的可执行指令。

结合rf电路108、触摸屏112、显示系统控制器156、接触模块130、图形模块132、文本输入模块134、和浏览器模块147,桌面小程序模块149是可由用户下载和使用的微型应用程序(例如,天气桌面小程序149-1、股市桌面小程序149-2、计算器桌面小程序1493、闹钟桌面小程序149-4和词典桌面小程序149-5)或可由用户创建的微型应用程序(例如,用户创建的桌面小程序149-6)。在一些实施例中,桌面小程序包括html(超文本标记语言)文件、css(层叠样式表)文件和javascript文件。在一些实施例中,桌面小程序包括xml(可扩展标记语言)文件和javascript文件(例如,yahoo!桌面小程序)。

结合rf电路108、触摸屏112、显示系统控制器156、接触模块130、图形模块132、文本输入模块134和浏览器模块147,桌面小程序创建器模块150可由用户用于创建桌面小程序(例如,将网页的用户指定部分变成桌面小程序)。

结合触摸屏112、显示系统控制器156、接触模块130、图形模块132和文本输入模块134,搜索模块151包括根据用户指令来搜索匹配一个或多个搜索条件(例如,一个或多个用户指定的搜索词)的存储器102中的文本、音乐、声音、图像、视频和/或其他文件的可执行指令。

结合触摸屏112、显示系统控制器156、接触模块130、图形模块132、音频电路110、扬声器111、rf电路108和浏览器模块147,视频和音乐播放器模块152包括允许用户下载和回放以一种或多种文件格式(诸如mp3或aac文件)存储的所记录的音乐和其他声音文件的可执行指令,以及显示、展示或以其他方式回放视频(例如,在触摸屏112上或在经由外部端口124连接的外部显示器上)的可执行指令。在一些实施例中,设备100可包括mp3播放器诸如ipod(appleinc.的商标)的功能。

结合触摸屏112、显示控制器156、接触模块130、图形模块132和文本输入模块134,记事本模块153包括根据用户指令来创建和管理记事本、待办事项等的可执行指令。

结合rf电路108、触摸屏112、显示系统控制器156、接触模块130、图形模块132、文本输入模块134、gps模块135和浏览器模块147,地图模块154根据用户指令可用于接收、显示、修改和存储地图和与地图相关联的数据(例如,行驶方向;特定位置处或附近的商店和其它兴趣点的数据;以及其他基于位置的数据)。

结合触摸屏112、显示系统控制器156、接触模块130、图形模块132、音频电路110、扬声器111、rf电路108、文本输入模块134、电子邮件客户端模块140和浏览器模块147,在线视频模块155包括指令,该指令允许用户访问、浏览、接收(例如,通过流媒体和/或下载)、回放(例如在触摸屏上或在经由外部端口124连接的外部显示器上)、发送具有至特定在线视频的链接的电子邮件,并且以其他方式管理以一种或多种文件格式诸如h.264的在线视频。在一些实施例中,即时消息模块141而不是电子邮件客户端模块140用于将链接发送至特定在线视频。

上述所识别的模块和应用程序中的每一者与用于执行上述一种或多种功能以及在本申请中所描述的方法(例如,本文所述的计算机实现的方法和其他信息处理方法)的一组可执行指令对应。这些模块(即指令集)不必被实现为独立的软件程序、过程或模块,并因此这些模块的各种子集可在各种实施例中被组合或以其他方式重新布置。在一些实施例中,存储器102可存储以上所识别的模块和数据结构的子集。此外,存储器102可存储以上未描述的附加模块和数据结构。

在一些实施例中,设备100是其中该设备上的预定义的一组功能的操作唯一地通过触摸屏和/或触摸板来执行的设备。通过使用触摸屏和/或触摸板作为用于设备100的操作的主要输入控制设备,设备100上的物理输入控制设备(诸如下压按钮、转盘等)的数量可减少。

可通过触摸屏和/或触摸板唯一地执行的预定义的一组功能包括用户界面之间的导航。在一些实施例中,当用户触摸触摸板时,将设备100从可显示在设备100上的任何用户界面导航到主菜单、home菜单或根菜单。在这样的实施例中,触摸板可被称为“菜单按钮”。在一些其他实施例中,菜单按钮可以是物理下压按钮或其他物理输入控制设备,而非触摸板。

尽管作为多功能设备的一个实施例示出了便携式或移动计算设备,但本领域技术人员根据阅读当前公开将很容易认识到台式计算机或其他计算设备还可执行本文所述的许多功能而不脱离本公开的范围和意图。同样,尽管作为多功能设备的一个实施例示出了触摸屏设备,但本领域技术人员根据阅读当前公开将很容易认识到台式计算机或不具有触摸屏的其他计算设备还可执行本文所述的许多功能而不脱离本公开的范围和意图。

图2根据一些实施例示出了便携式多功能设备100。触摸屏可在用户界面(ui)200内显示一个或多个图形。在该实施例中以及下面描述的其它实施例中,用户可通过在图形上作手势来选择图形中的一个或多个图形,例如利用一个或多个手指202(图中未按比例绘制)或一个或多个触笔203(图中未按比例绘制)。

设备100也可包括一个或多个物理按钮,诸如“home”或菜单按钮204。如先前所述,菜单按钮204可用于导航到可在设备100上执行的一组应用程序中的任一应用程序136。另选地,在一些实施例中,菜单按钮被实现为显示在触摸屏112上的gui中的软键。

在一个实施例中,设备100包括触摸屏112、菜单按钮204、用于对设备开关机和锁定设备进行供电的下压按钮206、用户身份模块(sim)卡槽210、耳麦插孔212、对接/充电外部端口124和一个或多个音量调节按钮208。下压按钮206可用于通过下压该按钮并将该按钮保持在下压状态预定义的时间间隔来开启/关闭设备上的电源。通过压下该按钮并在该预定义的时间间隔已过去之前释放该按钮来锁定设备;和/或对设备进行解锁或发起解锁过程。

在另选的实施例中,设备100也可通过麦克风113接受言语输入以用于激活或去激活一些功能。

汽车一体化

图3a根据一些实施例示出了与车辆的音频和视觉资源进行交互的多功能设备。多功能设备300a通过通信链路305a(例如经由导线或图1的rf电路108连接到图2的外部端口124)与车辆340a的嵌入式计算机系统310a通信。嵌入式系统可为具有类似于以下相对于图6所论述的那些处理和存储器特征的通用或专用计算设备。嵌入式系统附接到显示屏315a和320a以及扬声器325a和330a。麦克风335a同样附接到嵌入式计算机系统310a。

一些实施例提供一种用于车辆340a和多功能设备300a的机制以协商对共享资源的所有权和使用权并传送应用程序所有权状态信息以避免将导致糟糕的用户体验的冲突。共享资源的实例包括显示屏315a和320a。显示屏315a可被称为头部单元屏幕。共享资源的其他实例包括通过扬声器320a和325a以及麦克风335a所承载的双工(输入和输出)音频流。在一些实施例中,优选的是提供具体实施,使得可仅有一个来源(车辆340a或多功能设备30a0)用于通过扬声器320a和325a以及麦克风335a所所承载的主音频。语音控制、个人助理通信(例如,apple的siritm)、电话和媒体是可由通过扬声器320a和325a以及麦克风335a所承载的主音频来递送的音频的实例。尽管相对于在多功能设备300a上执行的仲裁器描述了实施例,但本领域技术人员通过阅读所附公开将很容易理解本公开并不限于此,并且本文所述的仲裁器的实施例还可在其他设备诸如嵌入式计算机系统310a上执行或可控制除汽车之外的设备诸如家庭安全系统、娱乐系统或家电的嵌入式系统。在一些实施例中,共享资源为马达、致动器或除音频或视觉资源之外的特征结构。

另外,一些实施例支持通过扬声器320a和325a所承载的另选的只输出音频流。在一些实施例中,可存在多个另选音频来源,这些音频来源混合在一起(可能与闪避效果混合在一起)。用户界面声音、警报和导航提示是将经历该流的音频的实例。在一些实施例中,车辆340a和多功能设备300a两者将主音频和另选音频区分开,并且相应地对音频进行路由。

实施例支持针对特定于应用程序的状态协商对车辆的共享音频或视觉资源的控制。在一些实施例中,可在车辆340和多功能设备300a之间传送的特定于应用程序的状态的实例包括语音、电话呼叫和逐个拐弯导航。在特定于语音应用程序的状态中,当车辆340a或多功能设备300a正在录制用于语音识别的音频时,一些实施例被配置为使得经由扬声器320a和325a的所有音频输出被禁用以避免干扰通过经由麦克风335a所捕获的声音而操作的语音识别算法。同样,在一些实施例中,当车辆340a或多功能设备300a正在对用户讲话时,车辆340a或多功能设备300a中的另一者避免播放语音。例如,在一些实施例中,将导航提示替换为通过扬声器320a和325a递送的铃音。

在一些实施例中,特定于电话呼叫应用程序的状态被支持,使得车辆340a或多功能设备300a中仅一者处于电话呼叫中并且正在利用车辆340a、扬声器320a和325a以及麦克风335a。在一些实施例中,特定于逐个拐弯导航应用程序的状态被支持,使得车辆340a或多功能设备300a中仅一者提供逐个拐弯导航指令。提供对特定于逐个拐弯导航应用程序的状态的支持以避免车辆340a或多功能设备300a(可能)向用户提供相冲突的方向。

家庭娱乐系统和家庭自动化

图3b根据一些实施例示出了与家庭娱乐和自动化系统的音频和视觉资源进行交互的多功能设备。第一多功能设备300b和第二多功能设备370b通过相应的第一通信链路355b和第二通信链路305b(例如,经由导线或图1的rf电路108连接到图2的外部端口124)与家庭娱乐和自动化系统340b的集线器310b通信。在一些实施例中,家庭娱乐和自动化系统340b的集线器310b可为具有类似于以下相对于图6所论述的那些处理和存储器特征的通用或专用计算设备并且可与多个多功能设备通信以在它们对各种资源的请求中进行仲裁,例如将对投影仪360b的控制赋予在多功能设备370b上执行的进程并将对电视屏幕320b的控制赋予多功能设备300b。家庭娱乐和自动化系统340b附接到显示屏315b和320b以及扬声器325b和330b。dvd播放器335b同样附接到集线器310b。

一些实施例提供一种用于家庭娱乐和自动化系统340b和多功能设备300b和370b的机制以协商对共享资源的所有权和使用权并传送应用程序所有权状态信息以避免将导致糟糕的用户体验的冲突。共享资源的实例包括显示屏315b和320b。在一个实例中,显示屏315b可为常规的电视屏幕,而屏幕315b通常可被指定为家庭报警系统界面面板。麦克风375b也可附接到集线器310b,并且可以是共享资源。

共享资源的其他实例包括通过扬声器320b和325b以及麦克风375b所承载的双工(输入和输出)音频流。在一些实施例中,优选的是提供具体实施,使得可仅有一个来源(集线器310b、多功能设备370b或多功能设备300b)用于通过扬声器320b和325b中的每个扬声器所承载的主音频。另外,在一些实施例中,集线器310b中的仲裁器可对多功能设备370b或多功能设备300b上的屏幕、麦克风和扬声器进行控制。

共享资源的其他实例包括麦克风375b。语音控制、个人助理通信(例如,apple的siritm)、电话、家庭自动化警报和命令、家庭报警系统警报和命令,以及媒体递送(或用于媒体递送的命令)是可由通过扬声器320b和325b以及麦克风375b所承载的主音频所递送的音频的实例。尽管相对于在多功能设备300b和多功能设备370b上执行的仲裁器描述了实施例,但本领域技术人员通过阅读所附公开将很容易理解本公开并不限于此,并且本文所述仲裁器的实施例还可在其他设备诸如集线器310b上或者布线或其他通信链路305b或355b内执行。在一些实施例中,共享资源为马达、致动器或除音频或视觉资源之外的特征结构诸如电灯350b。

另外,一些实施例支持通过扬声器330b和325b所承载的另选的只输出音频流。在一些实施例中,可存在多个另选音频来源,这些音频来源混合在一起(可能与闪避效果混合在一起)。ui声音、警报和家庭自动化系统警报是将经历该流的音频的实例。在一些实施例中,家庭娱乐和自动化系统340b以及多功能设备300b和多功能设备370b将主音频和另选音频区分开,并且相应地对音频进行路由。

公共空间和交通工具中的使用

一些实施例支持协商对公共空间和交通工具中的共享音频或视觉资源的控制。公共空间和交通工具中的此类共享音频或视觉资源的实例包括健身房中的共享观看屏(例如,一系列椭圆机前面的一排电视)、游戏机(例如,大学生活动中心中的屏幕、长沙发和扬声器组合)和火车、飞机和渡轮上的视听系统。图3c根据一些实施例示出了与公共空间的音频和视觉资源进行交互的多功能设备。

多功能设备300c通过通信链路305c(例如经由导线或图1的rf电路108连接到图2的外部端口124)与公共空间340c的嵌入式计算机系统300c进行通信。嵌入式系统可为具有类似于以下相对于图6所论述的那些处理和存储器特征的通用或专用计算设备。嵌入式系统附接到显示屏315c和320c以及耳机组325c和330c。

一些实施例提供一种用于多功能设备370c和多功能设备300c、公共空间340c的嵌入式计算机系统310c的机制以协商对共享资源的所有权和使用权并传送应用程序所有权状态信息以避免将导致糟糕的用户体验的冲突。共享资源的实例包括显示屏315c和320c。共享资源的实例包括通过耳机320c和325c以及附接到耳机320c和325c的麦克风所承载的双工(输入和输出)音频流。在一些实施例中,优选的是提供具体实施,使得可仅有一个来源(多功能设备370c或多功能设备300、公共空间340c的嵌入式计算机系统310c)用于通过扬声器320和325以及麦克风335所承载的主音频。

视频游戏、语音控制、个人助理通信(例如,apple的siritm)、电话和集中提供的娱乐媒体也是可由通过耳机320c和325c所承载的主音频来递送的音频的实例。尽管相对于在多功能设备300上执行的仲裁器描述了实施例,但本领域技术人员通过阅读所附公开将很容易理解本公开并不限于此,并且本文所述仲裁器的实施例还可在其他设备诸如嵌入式计算机系统310或内置到通信链路305中的电路上执行。

另外,一些实施例支持通过耳机320c和325c所承载的另选的只输出音频流。在一些实施例中,可存在多个另选音频来源,这些音频来源混合在一起(可能与闪避效果混合在一起)。如本文所用,闪避效果是这样的过程:就在来自第二来源的第二段音频播放之前降低来自第一来源的第一段音频的音量,然后在来自第二来源的第二段音频结束之后恢复来自第一来源的第一段音频的音量。ui声音、警报和导航提示是将经历该流的音频的实例。在一些实施例中,多功能设备300c或多功能设备370c和公共空间340c的嵌入式计算机系统310c两者将主音频和另选音频区分开,并且相应地对音频进行路由。

仲裁器模块

图4根据一些实施例示出了用于协商对汽车的共享音频或视觉资源的控制的仲裁器模块。仲裁器模块400包括所有权确定模块408。仲裁器模块400接收对控制的请求402。对控制的请求402是对车辆的共享音频或视觉资源的控制的请求。仲裁器模块400保持现有状态信息404和所有权转换条件406。现有状态信息404反映共享音频或视觉资源的所有权,并且所有权转换条件406反映共享音频或视觉资源可经历所有权的转换所处的条件。对控制的请求402是从多个进程中的一个进程接收的,这些进程包括在附接到车辆的嵌入式系统上执行的进程和在暂时与车辆进行通信的移动计算设备上执行的进程。

所有权确定模块408确定与共享音频或视觉资源的所有权有关的新的状态信息420。在一些实施例中,确定新的状态信息包括至少部分地基于对控制的请求402和所有权转换条件406来确定新的状态信息。在一些实施例中,确定新的状态信息包括至少部分地基于对控制的请求402、现有状态信息404和所有权转换条件406来确定新的状态信息。新的状态信息420指示进程中的哪一个进程控制车辆的共享音频或视觉资源的输出。所有权确定模块408确定共享音频或视觉资源的新的所有权转换条件,并且仲裁器模块420将新的状态信息420传送至共享音频或视觉资源的控制器接口。

在一些实施例中,现有状态信息404包括当前模式的内部表示。在一个实施例中,现有状态信息404中的当前模式的内部表示由五个属性组成。前两个属性指示以下两个共享资源的所有权和使用权:一个或多个屏幕和主音频(另选音频可同时来源于车辆和多功能设备两者,使得无需存在流的单个所有权)。

状态信息404(或新的状态信息420)和所有权转换条件406(加粗)的内容的实例在下文中绩效描述,其中五个属性(标记为1-5)各自由一组变量(标记为a、b、c…)构成,并且加括号的信息识别针对特定变量的选项值,如下文所述。在一个实施例中,屏幕的现有状态信息404包括:

1.屏幕

a.[车辆|电话]拥有屏幕

b.另外一方可[随时|通过用户发起|决不]占用屏幕

c.另外一方可[随时|通过用户发起|决不]借用屏幕

一些实施例支持描述为借用的概念,其中需要访问资源的进程可暂时地抢占对资源的控制,同时同意将对资源的控制返回至所有者。

任选地:

d.[电话|车辆]已借用屏幕

e.另外一方可[随时|通过用户发起|决不]

重新占用屏幕在一个实施例中,用于主音频通道的现有状态信息404(或新的状态信息420)和所有权转换条件406(加粗)包括:

2.主音频

[车辆|电话]拥有主音频

g.另外一方可[随时|通过用户发起|决不]占用主音频

h.另外一方可[随时|通过用户发起|决不]借用主音频任选地:

i.[电话|车辆]已借用主音频

j.另外一方可[随时|通过用户发起|决不]重新占用主音频

在一些实施例中,现有状态信息404(或新的状态信息420)和所有权转换条件406被组织,使得仅有一方(车辆或多功能设备)能够在任何给定时间点要求资源的所有权。当一方要求资源的所有权时,还对所有权可被转换的情况进行约束。在一些实施例中,将这些约束表示为所有权转换条件406,该所有权转换条件具有值诸如:

·随时:如果需要,另一方可在任何时候占用/借用资源。如果屏幕正在显示非重要信息,则将使用该值。

·通过用户发起:另一方可占用或借用这一资源,但这么做将中断当前用户体验,并且应当仅响应于用户发起的动作并在获得对新模式的用户体验来说很重要的资源的情况下才发生。例如,当正在播放音乐时,不应占用主音频通道,除非用户切换到不同音频源。

·决不:另一方可在任何情况下不占用或借用这一资源。资源的所有者/借用方将在电话呼叫期间或在显示安全警示时对此进行设定。

在一些实施例中,可永久地转换(占用)或暂时地转换(借用)资源的所有权。下面对所有权的概念进行解释。

3.语音

k.[车辆|电话|两者均未]正在进行[语音识别|语音]

4.[车辆|电话|两者均未]正在进行电话呼叫

5.[车辆|电话|两者均未]正在提供逐个拐弯导航指令

在一些实施例中,应用程序状态属性的值对于允许车辆和多功能设备两者作出决策以改善用户体验是完全有益的。例如,在一些实施例中,当车辆和多功能设备中的一者正在执行语音识别时,所有音频保持无声以避免干扰语音识别算法。又如,在一些实施例中,当车辆和多功能设备中的一者正在与用户讲话时,其他语音被抑制或作为铃音而不是语音来传送;多个同时运行的扬声器可能扰乱用户。又如,在一些实施例中,当车辆和多功能设备中的一者正在进行电话呼叫时,车辆和多功能设备中的另一者不能发起电话呼叫(第一方获胜)。在一些实施例中,如果车辆和多功能设备中的第一方发起移动电话呼叫,则车辆和多功能设备中的另一方被阻止发起移动电话呼叫直到初始呼叫完成。

又如,在一些实施例中,如果适用的话(最后一方获胜),当车辆和多功能设备中的一者开始提供逐个拐弯导航指令时,车辆和多功能设备中的另一者停止提供逐个拐弯导航指令。在一些实施例中,在逐个拐弯方向会话期间,发起新的逐个拐弯方向会话会删除预先存在的逐个拐弯方向会话。然而,在一些实施例中,可能存在必须忽略应用程序状态属性的当前值以向用户传送例如重大安全或紧急信息的情况。

在一些实施例中,可永久地转换(占用)或暂时地转换(借用)资源的所有权。在占用资源的情况下,资源的所有权永久地转换到车辆和多功能设备中的一者。例如,如果用户从车辆的调频收音机切换到多功能设备上的音乐应用程序,则例如多功能设备将占用来自车辆的主音频通道。在借用资源的情况下,暂时地转换所有权。当所有权被返回时,所有者恢复其利用资源所进行的事情。例如,如果用户正在收听车辆的调频收音机并启动个人助理会话,则多功能设备将借用主音频通道。当个人助理会话结束时,所有权返回至车辆并且调频收音机将继续运行。

当车辆和多功能设备中的一者借用资源时,另一方仍保留所有权,并且保持“占用”状态。在一些实施例中,保持初始的所有权状态(利用占用约束)支持以下三种可能方式以用于结束借用状态:

1.)借用资源的车辆和多功能设备中的一者利用其来执行并将其返回至所有者。在一些实施例中,这是典型情况。例如,当电话呼叫结束时,主音频通道可能返回至车辆以继续运行调频收音机。

2.)受制于借用状态的重新占用约束,所有者需要资源并提前结束借用。例如,多功能设备可借用主音频通道以启动个人助理会话,

但车辆提前结束该会话,因为需要用主音频通道来进行来自另一电话的呼入呼叫。

3.)受制于初始所有者的占用约束,借用资源的车辆和多功能设备中的一者期望将“借用”转换为“占用”。例如,用户可能要求个人助理从调频收音机切换到多功能设备的音乐播放器。个人助理会话最初借用主音频通道,但音乐播放器随后对其进行占用。

在一些实施例中,现有状态信息404和所有权转换条件406包含作为内部表示的上述所有属性以供仲裁器模块400使用,而传送至车辆的新的状态信息420反映如下所述的简化的内部状态:

1.[车辆|电话]具有屏幕

2.[车辆|电话]具有主音频

3.[车辆|电话|两者均未]正在进行[语音识别|语音]

4.[车辆|电话|两者均未]正在进行电话呼叫

5.[车辆|电话|两者均未]正在提供逐个拐弯导航指令

简化在于资源所有权的传送。在此类实施例中,从车辆的角度来看,当前模式仅指示资源的当前用户(资源被借用还是被占用是不相关的)。如果车辆未明确要求的资源的所有权返回至车辆,则车辆恢复其最近正在利用该资源所进行的事情(在可能的情况下)。

在一些实施例中,根据对控制的请求402,模式变化可源于车辆和多功能设备两者。如果车辆通过发送对控制的请求402发起模式变化,则更新模式将被作为新的状态信息420发送至多功能设备。在一些实施例中,要求车辆在预定的时间量内遵守来自多功能设备的任何模式变化(例如,如果所有权转换到多功能设备,则车辆在100ms内放弃对屏幕的控制)。为了更改当前模式,车辆向多功能设备发送模式变化请求作为对控制的请求402,从而传送模式变化的意图。尽管例如仲裁器模块400在多功能设备上执行,但在一些实施例中,仲裁器模块400可在车辆的嵌入式处理器上执行,接收对控制的请求402并基于请求确定新的模式(包括对应的所有权转换条件406和新的状态信息420)。

在一些实施例中,格式错误的请求将被拒绝,并且将错误返回至车辆或多功能设备中的发送请求的任一者。一旦新的模式(包括对应的所有权转换条件406和新的状态信息420)已确定,则将新的模式传送至车辆(例如,传送至在嵌入式计算机系统310上执行的资源的控制器),此时在嵌入式计算机系统310上执行的资源的控制器对体现为新的状态信息420的新的当前模式进行检查并且确定其是否接收了其请求的资源并相应地作出反应。

在一些实施例中,模式变化请求(例如,对控制的请求402)由以下信息组成:

1.屏幕:

·转换类型:占用、未占用、借用、未借用

·优先顺序:最好具有或通过用户发起

·约束:针对占用和借用、“另一方可占用/借用”或“另一方可重新占用”约束。

2.主音频:

·转换类型:占用、未占用、借用、未借用

·优先顺序:最好具有或通过用户发起

·约束:针对占用和借用、“另一方可占用/借用”或“另一方可重新占用”约束。

3.语音:讲话、语音识别或均未进行

4.电话呼叫:是或否

5.逐个拐弯导航:是或否

在一些实施例中,变化请求(例如,对控制的请求402)必须包括域1到5中的至少一个域。如果动作需要模式的多个属性的变化,则在单个事务(例如,对控制的请求402)中发送所有多个属性。然而,并非所有的模式变化请求将需要改变所有域,在这种情况下可不考虑它们。在一些实施例中,车辆常常利用其当前状态更新多功能设备,而不管当前模式。例如,如果用户从调频收音机切换到cd播放器,则主音频的所有权将不改变。然而,车辆向仲裁器模块400发送指示其想要“占用”主音频的模式变化请求(例如,对控制的请求402)。如上所述,车辆指定(在对控制的请求402中)其是否期望“占用”或“借用”资源。当车辆完成借用资源时,其发送“未借用”模式变化请求。“未占用”转换类型用于向多功能设备指示车辆不再需要使用资源,并且将约束重新设定为“另一方可随时占用”。当前由另一方成功“占用”或“借用”资源将终止上述借用。在一些实施例中,优先顺序用于向仲裁器模块400指示转换对请求设备的重要性。在占用/借用约束为“随时”的情况下,“最好拥有”的优先顺序将取胜。类似地,在占用/借用约束为“通过用户发起”或“随时”的情况下,“通过用户发起”的优先顺序将取胜。

以下实例示出了一系列模式和模式变化。

车辆显示车辆信息-在该初始状态中,车辆正在显示非重要信息诸如mpg和英里数。没有播放音频。

1.车辆拥有屏幕

另一方可随时占用屏幕

另一方可随时借用屏幕

2.车辆拥有主音频

另一方可随时占用主音频

另一方可随时借用主音频

3.两者均未正在进行语音识别或语音

4.两者均未正在进行电话呼叫

5.两者均未正在提供逐个拐弯导航指令

用户打开调频收音机-用户现打开车辆的调频收音机。车辆在对控制的请求402中发送以下模式变化请求:

1.屏幕:

·转换类型:占用

·优先顺序:组最好具有

·约束:另一方可随时占用;另一方可随时借用

2.主音频:

·转换类型:占用

·优先顺序:通过用户发起

·约束:另一方可通过用户发起而进行占用;另一方可随时借用

仲裁器模块400对该请求进行评估并确定新的状态信息420以将当前模式调整为:

1.车辆拥有屏幕

另一方可随时占用屏幕

另一方可随时借用屏幕

2.车辆拥有主音频

另一方可通过用户发起而占用主音频

另一方可随时借用主音频

3.两者均未正在进行语音识别或语音

4.两者均未正在进行电话呼叫

5.两者均未正在提供逐个拐弯导航指令

作为新的状态信息420发送给车辆的更新模式为:

1.车辆具有屏幕

2.车辆具有主音频

3.两者均未正在进行语音识别或语音

4.两者均未正在进行电话呼叫

5.两者均未正在提供逐个拐弯导航指令

情况1:用户切换到由多功能设备播放的音乐。用户现按下按钮以提供来自多功能设备的而不是车辆的调频收音机的音频。多功能设备要求屏幕和主音频的所有权并且新的状态为:

1.电话拥有屏幕

另一方可随时占用屏幕

另一方可随时借用屏幕

2.电话拥有主音频

另一方可通过用户发起而占用主音频

另一方可随时借用主音频

3.两者均未正在进行语音识别或语音

4.两者均未正在进行电话呼叫

5.两者均未正在提供逐个拐弯导航指令

作为新的状态信息420发送给车辆的更新模式为:

1.电话具有屏幕

2.电话具有主音频

3.两者均未正在进行语音识别或语音

4.两者均未正在进行电话呼叫

5.两者均未正在提供逐个拐弯导航指令

情况2:用户接听来电-在该另选的场景下,当电话呼叫打进来时,用户正在收听车辆的调频收音机。电话将首先借用屏幕和主音频来播放电话铃音并显示主叫号码。

1.车辆拥有屏幕

另一方可随时占用屏幕

另一方可随时借用屏幕

电话已借用屏幕

另一方可随时重新占用屏幕

2.车辆拥有主音频

另一方可通过用户发起而占用主音频

另一方可随时借用主音频

电话已借用主音频

另一方可决不重新占用主音频

3.两者均未正在进行语音识别或语音

4.两者均未正在进行电话呼叫

5.两者均未正在提供逐个拐弯导航指令

传送至车辆的模式变化将为:

1.电话具有屏幕

2.电话具有主音频

3.两者均未正在进行语音识别或语音

4.两者均未正在进行电话呼叫

5.两者均未正在提供逐个拐弯导航指令假设用户选择接听电话,模式转换为“处于电话呼叫中”模式。

1.车辆拥有屏幕

另一方可随时占用屏幕

另一方可随时借用屏幕

电话已借用屏幕

另一方可随时重新占用屏幕

2.车辆拥有主音频

另一方可通过用户发起而占用主音频

另一方可随时借用主音频

电话已借用主音频

另一方可决不重新占用主音频

3.电话正在进行语音

4.电话正在进行电话呼叫

5.两者均未正在提供逐个拐弯导航指令作为新的状态信息420传送至车辆的模式变化将为:

1.电话具有屏幕

2.电话具有主音频

3.电话正在进行语音

4.电话正在进行电话呼叫

5.两者均未正在提供逐个拐弯导航指令当电话呼叫结束时,电话将屏幕和主音频返回至车辆:

1.车辆拥有屏幕

另一方可随时占用屏幕

另一方可随时借用屏幕

2.车辆拥有主音频

另一方可通过用户发起而占用主音频

另一方可随时借用主音频

3.两者均未正在进行语音识别或语音

4.两者均未正在进行电话呼叫

5.两者均未正在提供逐个拐弯导航指令

作为新的状态信息420发送给车辆的模式变化将为:

1.车辆具有屏幕

2.车辆具有主音频

3.两者均未正在进行语音识别或语音

4.两者均未正在进行电话呼叫

5.两者均未正在提供逐个拐弯导航指令

车辆务必确保其已重新获得屏幕和主音频的所有权,并且作为响应地恢复调频收音机。

示例性操作

图5a为示出用于协商对汽车的共享音频或视觉资源的控制的方法的一个实施例的流程图。在仲裁器处接收对车辆的共享音频或视觉资源的控制的请求(框500)。确定与共享音频或视觉资源的所有权有关的新的状态信息(框510)。确定共享音频或视觉资源的新的所有权转换条件(框520)。将新的状态信息传送至共享音频或视觉资源的控制器接口(框530)。尽管本文相对于汽车论述了实例,但本领域技术人员鉴于已阅读本公开将很容易理解参考车辆的实例并不限于此,并且实施例可适用于提供音频或视觉资源的范围广泛的机器,诸如家用电器、非轮式车辆或其他设备。

图5b为示出用于协商对汽车的共享音频或视觉资源的控制的方法的一个实施例的流程图。在仲裁器处接收对车辆的共享音频或视觉资源的控制的请求。仲裁器保持针对共享音频或视觉资源的所有权的现有状态信息和共享音频或视觉资源的所有权转换条件。该请求是从在附接到车辆的嵌入式系统上执行的进程或在暂时与车辆进行通信的移动计算设备上执行的进程接收的(框505)。至少部分地基于对控制的请求和所有权以及转换条件来确定与共享音频或视觉资源的所有权有关的新的状态信息,使得新的状态信息指示进程中的哪一个进程控制共享视听资源的输出(框515)。确定共享音频或视觉资源的新的所有权转换条件(框525)。将新的状态信息传送至共享音频或视觉资源的控制器接口(框535)。

图5c为示出用于协商对共享资源的控制的方法的一个实施例的流程图。在仲裁器处接收对共享资源的控制的请求(框550)。确定与共享资源的所有权有关的新的状态信息(框555)。确定共享资源的新的所有权转换条件(框560)。将新的状态信息传送至共享资源的控制器。(框565)。

示例性计算机系统

图6示出了被配置为执行上述实施例中的任一个或所有实施例的计算机系统600。在不同实施例中,计算机系统600可以是各种类型的设备中的任一设备,包括但不限于嵌入车辆中的计算机、嵌入家电中的计算机、个人计算机系统、台式计算机、膝上型电脑、笔记本、平板电脑、平板机或上网本计算机、大型计算机系统、手持式计算机、工作站、网络计算机、相机、机顶盒、移动设备、消费设备、视频游戏控制器、手持式视频游戏设备、应用服务器、存储设备、电视、视频录制设备、外围设备(诸如交换机、调制解调器、路由器)、或一般性的任何类型的计算或电子设备。

如本文所述,用于协商对共享音频或视觉资源的控制的系统和方法的各种实施例能够在可与各种其他设备进行交互的一个或多个计算机系统600上执行。需注意,根据各种实施例,以上相对于图1-5所述的任何部件、动作或功能可在被配置作为图6的计算机系统600的一个或多个计算机上实现。在所示实施例中,计算机系统600包括经由输入/输出(i/o)接口630耦接到系统存储器620的一个或多个处理器610。计算机系统600进一步包括耦接到i/o接口630的网络接口640、以及一个或多个输入/输出设备650,诸如光标控制设备660、键盘670、和一个或多个显示器680。在一些情况下,可设想到实施例可使用计算机系统600的单个实例来实现,而在其他实施例中,多个此类系统或者构成计算机系统600的多个节点可以被配置为托管实施例的不同部分或实例。例如,在一个实施例中,一些元件可经由计算机系统600的与实现其他元件的那些节点不同的一个或多个节点来实现。

在各种实施例中,计算机系统600可以是包括一个处理器610的单处理器系统、或者包括几个处理器610(例如两个、四个、八个、或另一适合数量)的多处理器系统。处理器610可以是能够执行指令的任何合适的处理器。例如,在各种实施例中,处理器610可以是实现多种指令集架构(isa)诸如x86、powerpc、sparc、mipsisa或任何其他合适的isa中的任何指令集架构的通用或嵌入式处理器。在多处理器系统中,处理器610中的每个处理器通常可以但并非必须实现相同的isa。

系统存储器620可被配置为存储能够由处理器610访问的程序指令622和/或现有状态信息和所有权转换条件数据632。在各种实施例中,系统存储器620可使用任何适合的存储器技术来实现,诸如静态随机存取存储器(sram)、同步动态ram(sdram)、非易失性/闪存型存储器、或任何其他类型的存储器。在例示的实施例中,程序指令622可被配置为实现合并了上述功能中的任一功能的地图绘制应用程序624。另外,存储器620的现有状态信息和所有权转换条件数据632可包括上述信息或数据结构中的任一者。在一些实施例中,程序指令和/或数据可被接收、发送或存储在独立于系统存储器620或计算机系统600的不同类型的计算机可访问介质上或类似介质上。尽管计算机系统600被描述为实现先前附图的功能块中功能,但还可经由此类计算机系统来实现本文所述的功能中的任一功能。

在一个实施例中,i/o接口630可以被配置为协调设备中的处理器610、系统存储器620、和任何外围设备(包括网络接口640或其他外围设备接口诸如输入/输出设备650)之间的i/o通信量。在一些实施例中,i/o接口630可执行任何必要的协议、定时或其他数据转换来将来自一个部件(例如系统存储器620)的数据信号转换为适于供另一部件(例如处理器610)使用的格式。在一些实施例中,i/o接口630可包括对通过各种类型的外围设备总线(诸如例如外围部件互连(pci)总线标准或通用串行总线(usb)标准的变型)附接的设备的支持。在一些实施例中,i/o接口630的功能可被划分到两个或更多个单独部件中,诸如例如北桥和南桥。另外,在一些实施例中,i/o接口630(诸如系统存储器620的接口)的一些或所有功能可被直接并入到处理器610中。

网络接口640可以被配置为允许在计算机系统600和附接到网络685的其他设备(诸如载体或代理设备)之间、或者在计算机系统600的节点之间交换数据。在各种实施例中,网络685可包括一个或多个网络,包括但不限于局域网(lan)(例如,以太网或企业网络)、广域网(wan)(例如,互联网)、无线数据网、一些其他的电子数据网或它们的某种组合。在各种实施例中,网络接口640可支持经由有线或无线通用数据网络(诸如例如任何合适类型的以太网网络);经由电信/电话网络(诸如模拟语音网络或数字光纤通信网络);经由存储区域网络(诸如光纤通道san)、或经由其他合适类型的网络和/或协议的通信。

在一些实施例中,输入/输出设备650可包括一个或多个显示终端、键盘、小键盘、触摸板、扫描设备、语音或光学识别设备、或适于由一个或多个计算机系统600输入或访问数据的任何其他设备。多个输入/输出设备650可存在于计算机系统600中,或者可分布在计算机系统600的各个节点上。在一些实施例中,类似的输入/输出设备可与计算机系统600分开,并且可通过有线或无线连接(诸如通过网络接口640)与计算机系统600的一个或多个节点进行交互。

如图6所示,存储器620可包括程序指令622,这些程序指令可由处理器执行以实现上述任何元件或动作。在一个实施例中,程序指令可实现上述方法,诸如图5a-图5c所示的方法。在其他实施例中,可包括不同的元件和数据。需注意,数据632可包括上述任何数据或信息。

本领域的技术人员将理解计算机系统600仅为示例性的并且不旨在限制实施例的范围。具体地,计算机系统和设备可包括能够执行指示功能的硬件或软件的任何组合,包括计算机、网络设备、互联网电器、pda、无线电话、寻呼机等。计算机系统600还可连接至未示出的其他设备,或者相反作为独立系统进行操作。此外,示出的部件所提供的功能在一些实施例中可被组合在更少的部件中或者被分布在附加部件中。类似地,在一些实施例中,一些所示部件的功能可不被提供和/或可还有其他附加功能可供使用。

本领域的技术人员还将认识到,虽然各种项目被示出为在被使用时被存储在存储器中或存储装置上,但是为了存储器管理和数据完整性的目的,这些项目或其部分可在存储器和其他存储设备之间传输。或者,在其他实施例中,这些软件组件中的一些或全部可在另一设备上的存储器中执行,并且经由计算机间通信来与所示计算机系统通信。系统部件或数据结构中的一些或全部也可(例如作为指令或结构化数据)被存储在计算机可访问介质或便携式制品上以被适合的驱动器读取,其多种实例在上文中进行了描述。在一些实施例中,存储在独立于计算机系统600的计算机可访问介质上的指令可经由传输介质或信号(诸如电信号、电磁信号、或数字信号)被传输到计算机系统600,传输介质或信号经由通信介质(诸如网络和/或无线链路)来传送。各种实施例可进一步包括在计算机可访问介质上接收、发送或存储根据以上描述实现的指令和/或数据。一般来讲,计算机可访问介质可包括非暂态计算机可读存储介质或存储器介质诸如磁性或光学介质(例如,磁盘或dvd/cd-rom)、易失性或非易失性介质诸如ram(例如,sdram、ddr、rdram、sram等)、rom等。在一些实施例中,计算机可访问介质可包括传输介质或信号诸如通过通信介质诸如网络和/或无线链路所传送的电信号、电磁信号或数字信号。

在不同的实施例中,本文所述的方法可在软件、硬件或它们的组合中实现。此外,可改变方法框的顺序,并且可对各种元件进行添加、重排、组合、省略、修改等。可作出具有本公开的有益效果的各种修改和改变,这对本领域的技术人员是显而易见的。本文所述的各种实施例意在是示例性的而非限制性的。许多变型、修改、添加和改进是可能的。因此,针对本文所述的部件的复数实例可作为单个实例而提供。各种部件、操作和数据存储之间的界限在一定程度上是任意的,并且在特定的示例性配置的上下文中示出了特定操作。可设想其他功能分配并且可落在以下权利要求书的范围内。最后,作为示例性配置中的分立部件呈现的结构和功能可被实现为组合结构或部件。这些和其他变型、修改、添加和改进可落在以下权利要求限定的实施例的范围内。

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