用于热功率预算编制的动态多媒体数据流控制的方法、设备和系统的制作方法_5

文档序号:9731855阅读:来源:国知局
得不可接受的最小分辨率、帧速率、LoD。并发 的多媒体应用还可以提供例如用于最优用户体验的推荐优先级。多媒体参数管理器和数据 流跟踪器可以使用所提供的多媒体参数信息来建立数据流的优先级。例如,如果第一应用 指示了延伸到第二应用的必需的最小分辨率以下的优选或者推荐分辨率范围,则可以为第 一应用的数据流分配较低的优先级,这是因为这些数据流可以容忍比与第二应用相关联的 数据流更大程度的分辨率降低。
[0094] 当建立了初始分辨率和优先级时,可以确定眼睛凝视输入是否可用。当眼睛凝视 输入可用(即,确定框522= "是")时,在框523中,可以使用眼睛凝视输入来改善或者更新先 前已建立的优先级,或者建立新的优先级。眼睛凝视输入可以包括如上文描述的眼睛凝视 统计,或者可以是来自眼睛凝视子系统的直接输入。眼睛凝视统计可以采取不同的形式。例 如,眼睛凝视统计可以是针对与应用相关联的数据流中的图像的已存储图像柱状图数据、 变换数据或者其它与眼睛凝视相关的数据的集合。眼睛凝视统计可以进一步是,连续被更 新的已存储图像柱状图数据的组的集合或多个集合,其是在特定时间段处被收集、或者基 于眼睛凝视信息的特性被隔离的。替代地,监控实时眼睛凝视统计或者信息,或者将实时信 息与已存储的眼睛凝视信息结合可以是可能的。
[0095] 当优先级已经被建立、更新或者改善时,可以确定其它优先级信息是否可用。当其 它优先级信息可用(即,确定框524= "是")时,在框525中,其它优先级信息可以被用于建 立、更新或者改善现有的优先级。其它优先级信息可以包括关于当前活跃窗口(例如,具有 对输入的控制或者接收输入的窗口)的信息。其它优先级信息可以进一步包括关于占用最 大显示器区域的窗口的信息。当已经提供了全部的优先级信息时,在框526中,可以基于所 述优先级信息来建立全部并发的多媒体应用的数据流的优先级。也可以使用除上文所描述 的之外的额外信息。例如,信息可以可用于确定并发的多媒体应用中的每个多媒体应用对 用户体验的质量贡献。然而,在某种程度上,上文针对数据流所阐述的优先级信息可以提供 对各自的质量贡献的指示。可以基于诸如所需要的多媒体参数的值之类的因素、优先级、以 及诸如所需要的交互和其它启发的水平之类的其它因素来确定质量贡献。当针对全部数据 流建立了优先级时,过程可以返回到框521,并且继续通过在操作期间重复地循环完成所述 过程来改善和更新优先级。
[0096] 针对特定的数据流对多媒体参数作出调整可以基于与数据流的内容相关联的特 性。在一个方面方法530中,如图5C中所示的,特性可以被用于作出关于首先调整各种多媒 体参数中的哪个多媒体参数的决策。例如,在一个方面中,基于视频或图形数据的特定特 性,可以将尤其是分辨率和帧速率识别为当被调整时可以对并发的多媒体应用中的各种多 媒体应用的用户体验质量具有不同影响的参数。多媒体参数管理器和数据流跟踪器或者其 它处理模块可以被配置为,在框531中,对与关联于并发的多媒体应用的数据流中的每个数 据流相关联的图像统计进行分析,以确定数据内容的动态特性。替代地,可以对与已经被识 别为参数降低(例如,最低优先级)的候选的应用相关联的数据流的内容实施实时分析。 [0097]图像统计可以包括关于与数据流中的图像相关联的因素的图像柱状图或者其它 统计或信息,其指示图像动态的存在或者不存在和程度。术语"图像动态"可以指诸如组成 与电话会议应用相关联的视频串流或者与游戏应用相关联的图形串流的数据流的连续图 像的改变或者运动之类的信息。一般说来,可以针对帧之间的相似性或者差别来分析图像 统计。可以检测图像的诸如边缘之类的特征。特征的帧间移动可以被用于确定或者指示数 据流的动态特性。特征可以进一步包括局部最大量。可以将局部最大量与背景水平相比较, 并且局部最大量的帧间移动可以被用于确定或者指示数据流的动态特性。诸如颜色、颜色 的改变、颜色强度的改变或者其它特征之类的其它特征可以指示数据流中的动态范围的水 平或者程度。例如,与图像相关联的"宽"柱状图可以指示高动态范围,而柱状图性质中的迅 速帧间改变可以指示运动。可以为数据的动态特征分配来自范围的值或者连续的值。由此, 帧、多个帧或者整个数据流的动态特性可以相对于彼此被评估为例如比另一个"更高"或者 "更低"。替代地,所述值可以是相对于参考值或者多个参考值的。
[0098] 当多媒体参数降低对于数据流是必要的,并且高动态存在于数据流中(即,确定框 531="是")时,在框533中,可以首先降低分辨率参数,然后,如果必要的话,可以降低帧速 率参数。在帧速率之前对分辨率的降低可以在相同的参数调整操作期间执行,或者可以在 随着过程迭代的随后参数降低操作中执行。高图像动态通常可以与和根本内容相关联的图 像中的高的改变或者移动水平相关。进一步地,对具有高移动程度的图像串流进行的显示 或者渲染的感知质量被帧速率参数的降低最不利地影响。由此,经由首先降低分辨率,可以 有利地保护所显示的或者所渲染的高移动图像串流的感知质量。当降低分辨率参数时,在 框531中,处理可以返回以进行进一步分析。
[0099] 当高动态未存在于与数据流相关联的图像中(即,确定框532="否")时,可以确定 低动态是否存在于与数据流相关联的图像中。为了在图像动态的"高"值和"低"值之间进行 区分,可以针对图像统计中的动态水平建立门限或多个门限。当动态水平在门限或多个门 限以上时,数据流可以被指定为具有高动态水平。当动态水平低于门限或多个门限时,数据 流可以被指定为具有低动态水平。在用两个门限的方面中,可能出现中间的动态水平,导致 所指定的动态水平既不高也不低,并且可以降低任何一个参数。
[0100]当低动态水平存在于与数据流相关联的图像中(即,确定框534="是")时,在框 535中,可以首先降低帧速率,然后,如果必要的话,可以降低分辨率参数。在分辨率之前对 帧速率的降低可以在相同的参数调整操作期间执行,或者可以随着过程迭代在随后的参数 降低操作中执行。低图像动态通常可以与和根本内容相关联的图像的低的改变或移动水平 相关。进一步,对具有低移动程度的图像串流进行的显示或者渲染的感知质量被分辨率参 数的降低最不利地影响。由此,通过首先降低帧速率,可以有利地保护所显示的或者所渲染 的低移动图像串流的感知质量。当降低帧速率参数时,在框531中,处理可以返回以进行进 一步分析。当低动态未存在于与数据流相关联的图像中(即,确定框534="否")时,处理可 以返回到框531以进行框531中的对图像统计的继续分析。
[0101]因为一些应用可以具有或者支持多个数据路径,并且可以为应用分配优先级(例 如,基于眼睛凝视、窗口位置等),所以图5D中所示的一个方面方法540考虑应用优先级以适 当地调整数据流优先级。当例如在上面描述的框526中已经建立了数据流优先级时,在框 541中,还可以为并发的多媒体应用分配优先级。应用优先级可以基于操作系统指定(例如, 与应用相关联的线程或者进程的调度优先级),并且可以取决于各种因素,包括操作系统进 程优先级、应用进程的状态、上下文切换和其它考虑因素。应用优先级可以在应用的执行期 间改变,这取决于每个应用的状态及其进程的类别,例如,空闲、低优先级、高优先级、实时 等。还可以有被分配给每个进程类别内的进程线程的优先级。
[0102] 为了确定是否应当考虑应用优先级,在确定框542中,处理器可以确定与应用相关 联的优先级是否与针对数据流建立的优先级冲突(即,不同)。当处理器确定应用和数据流 优先级冲突(即,确定框542= "是")时,在框542中,处理器可以基于对应的应用优先级为数 据流优先级分配权重。例如,当给定的并发的多媒体应用的优先级相对地低,但是应用的已 建立的数据流优先级与较高优先级应用的数据流优先级相比相对地高时,可以为与相对低 优先级应用相关联的数据流分配较低的权重。
[0103] 在确定框544中,处理器还可以确定其它优先级信息(如上文参照图5B所描述的眼 睛凝视信息或者其它信息)是否可用。当其它优先级信息可用(即,确定框544="是")时,在 框545中,可以基于额外的优先级信息来修改分配给数据流的权重。
[0104] 在框546中,处理器可以使用已分配的优先级来调整数据流优先级。在该操作中, 原始被分配了较低优先级但是基于其对应的应用的优先级被分配了高加权因子的数据流 可以使其优先级被提高,而原始被分配了较高优先级但是基于其对应的应用的优先级被分 配了低加权因子的数据流可以使其优先级被降低。然后,经调整的数据流优先级可以被用 在如上文所描述的调整资源和控制进程中,例如,继续进行上文参照图5A中的框505来描述 的操作。
[0105] 当处理器确定应用和数据流优先级不冲突(即,确定框542="否")时,数据流的优 先级可以保持不变,并且原始数据流优先级可以被用在如上文所描述的调整资源和控制进 程中,例如,继续进行上文参照图5A中的框505描述的操作。
[0106] 本文所描述的各种方面可以被实现在各种移动计算设备(例如,智能电话、特征电 话等)中的任何移动计算设备中,图6中示出了所述移动计算设备的示例。例如,移动计算设 备600可以包括耦合到内部存储器602的处理器601。内部存储器602可以是易失性的或者非 易失性的存储器,并且还可以是安全和/或经加密的存储器、或者非安全和/或未经加密的 存储器,或者其任意组合。处理器601还可以被耦合到触摸屏显示器606,例如,电阻感应触 摸屏、电容感应触摸屏、红外感应触摸屏等。然而,移动计算设备600的显示器不需要具有触 摸屏能力。移动计算设备600可以具有用于发送和接收本文所描述的无线信号的一个或多 个短距离无线信号收发机618(例如,花生(Peanut)、蓝牙 :?、紫蜂(Zigbee) ?、RF无线电) 和天线608。收发机618和天线608可以与上文提到的电路一起被用于实现各种无线传输协 议栈/接口。移动计算设备600可以包括实现经由蜂窝网络进行的通信的蜂窝网络无线调制 解调器芯片620。移动计算设备600还可以包括用于接收用户输入的有形的按钮612a和 612b〇
[0107] 包括个人计算机和膝上型计算机的其它形式的计算设备可以被用于实现各种方 面。这样的计算设备通常包括图7中所示的部件,图7示出了示例的膝上型计算设备700。许 多膝上型计算机包括触摸板触摸表面714,所述触摸板触摸表面714充当计算机的指点设 备,并且因此可以接收拖拽、滚动和点击手势(类似于实现在配备了触摸屏显示器并且如上 面所描述的移动计算设备上的那些手势)。膝上型计算机700通常包括处理器701,所述处理 器701耦合到易失性内部存储器702和诸如硬盘驱动器706之类的大容量非易失性存储器。 膝上型计算机700还可以包括耦合到处理器701的压缩盘(CD)和/或DVD驱动器708。膝上型 计算机设备700还可以包括耦合到处理器701的多个连接器端口710,以用于建立数据连接 或者接收外部存储器设备,例如,用于将处理器701耦合到网络的网络连接电路。膝上型计 算机设备7 0 0可以具有一个或多个短距离无线信号收发机7 1 8 (例如, ?、蓝牙?、紫蜂?、RF无线电)和天线720,以用于发送和接收本文所描述的无线 信号。收发机718和天线720可以与上文提到的电路一起被用于实现各种无线传输协议栈/ 接口。在膝上型计算机或者笔记本配置中,计算机外壳包括触摸板714、键盘712和显示器 716,其全部耦合到处理器701。如所熟知的,计算设备的其它配置可以包括(例如,经由USB 输入)耦合到处理器的计算机鼠标或者轨迹球,所述计算机鼠标或者轨迹球也可以与各种 方面结合起来使用。
[0108] 处理器601和701可以是任何可以由软件指令(应用)配置为执行各种功能(包括上 文所描述的各种方面的功能)的可编程微处理器、微计算机或者多处理器芯片或多个多处 理器芯片。在各种设备中,可以提供多个处理器,例如,一个处理器专用于无线通信功能,以 及,一个处理器专用于运行其它应用。通常,软件应用在其被访问和加载到处理器601和701 中之前可以被存储在内部存储器602和702中。处理器601和701可以包括足够存储应用软件 指令的内部存储器。在许多设备中,内部存储器可以是易失性的或者非易失性的存储器(例 如,闪速存储器),或者是两者的混合。出于本描述的目的,对存储器的一般引用指可被处理 器601和701访问的存储器,包括内部存储器或者插入到各种设备中的可移除存储器以及处 理器601和701内的存储器。
[0109] 前述方法描述和过程流图仅作为说明性的示例而被提供,并且不旨在要求或者暗 示各种方面的步骤必须以所给出的次序来执行。如本领域的技术人员应当认识到的,前述 方面中的步骤的次序可以以任何次序来执行。术语"在那之后"、"然后"、"接下来"等不旨在 限制步骤的次序;这些术语仅用于引导读者完成对方法的描述。进一步,例如使用冠词 "一"、"一个"或者"那个"以单数对权利要求要素的任何引用,不是要被理解为将所述单元 限于单数。
[0110] 结合本文所公开的方面描述的各种说明性的逻辑块、模块、电路和算法步骤可以 被实现为电子硬件、计算机软件或者两者的组合。为了清楚地示出硬件和软件的该可互换 性,已经在上文总体地就其功能描述了各种说明性的部件、块、模块、电路和步骤。这样的功 能被实现为硬件还是软件,取决于特定应用和对整个系统施加的设计约束。技术人员可以 针对每个特定应用以不同方式实现所描述的功能,但是这样的实现方式决策不应当理解为 导致脱离本发明的范围。
[0111] 被用于实现结合本文所公开的方面来描述的各种说明性的逻辑单元、逻辑块、模 块和电路的硬件可以利用被设计为执行本文中所描述的功能的通用处理器、数字信号处理 器(DSP)、专用集成电路(ASIC)、现场可编程门阵列(FPGA)或者其它可编程逻辑设备、分立 的门或者晶体管逻辑器件、分立的硬件部件、或者其任意组合来实现或者执行。通用处理器 可以是微处理器,但是或者,所述处理器可以是任何常规处理器、控制器、微控制器或者状 态机。处理器还可以被实现为计算设备的组合,例如,DSP和微处理器的组合、多个微处理 器、一个或多个结合DSP核心的微处理器或者任何其它这样的配置。替代地,某些步骤或者 方法可以由专用于给定功能的电路来执行。
[0112] 在一个或多个示例方面中,所描述的功能可以用硬件、软件、固件或者其任意组合 来实现。如果用软件来实现,则功能可以被存储为非暂时性处理器可读介质中的一个或多 个指令或者代码。本文所公开的方法或者算法的步骤可以被体现在处理器可执行软件模块 中,所述处理器可执行软件模块可以位于非暂时性处理器可读存储介质中。非暂时性处理 器可读存储介质可以是可以由处理器或计算机访问的任何可用介质。作为示例并且非限 制,这样的非暂时性处理器可读介质可以包括RAM、R0M、EEPR0M、CD-R0M或者其它光盘存储 器、磁盘存储器、或者其它磁存储设备、或者任何其它可以被用于以可以被计算机访问的指 令或者数据结构的形式来存储期望的程序代码的介质。如本文所使用的磁盘和光盘包括压 缩盘(CD )、激光盘、光盘、数字多功能光盘(DVD )、软盘和蓝光盘,其中,磁盘通常磁性地复制 数据,而光盘利用激光来光学地复制数据。以上的组合也应当被包括在非暂时性处理器可 读介质的范围内。额外地,方法或者算法的操作可以作为代码和/或指令中的一个或任何组 合或者集合存在于非暂时性处理器可读介质和/或计算机可读介质上,所述非暂时性处理 器可读介质和/或计算机可读介质可以被并入计算机程序产品中。
[0113] 为了使本领域的技术人员能够制作或者使用本发明提供了对所公开的方面的之 前描述。对这些方面的各种修改对于本领域的技术人员将显而易见,并且本文所定义的一 般原理可以被应用于其它方面,而不会脱离本发明的精神或者范围的情况。由此,本发明不 旨在限于在本文所示出的方面,而是旨在符合与下面的权利要求和本文所公开的原理和新 颖的特征一致的最宽范围。
【主权项】
1. 一种通过管理并发的多媒体应用的数据流来管理包括片上系统(SoC)的设备的功率 或者温度的方法,所述方法包括: 响应于确定温度超过温度门限和功耗超过功率门限中的一项或多项,识别所述并发的 多媒体应用中的最低优先级数据流; 跟踪与所识别的最低优先级数据流相关联的数据流的数据流路径;以
当前第5页1 2 3 4 5 6 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1