CN101742311A - 在编码数据流中的最优功率使用 - Google Patents

在编码数据流中的最优功率使用 Download PDF

Info

Publication number
CN101742311A
CN101742311A CN200910223588A CN200910223588A CN101742311A CN 101742311 A CN101742311 A CN 101742311A CN 200910223588 A CN200910223588 A CN 200910223588A CN 200910223588 A CN200910223588 A CN 200910223588A CN 101742311 A CN101742311 A CN 101742311A
Authority
CN
China
Prior art keywords
coding techniques
power
amount
module
digital value
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
CN200910223588A
Other languages
English (en)
Inventor
沙闪克·加格
维纳亚克·贾亚拉姆·波尔
苏曼库玛·戴
马尼士·加特沙克尔·班迪
哈瑞克瑞莎娜·玛达迪·雷迪
玛尼德拉·奈斯·巴尔黑
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Nvidia Corp
Original Assignee
Nvidia Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Nvidia Corp filed Critical Nvidia Corp
Publication of CN101742311A publication Critical patent/CN101742311A/zh
Pending legal-status Critical Current

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/102Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or selection affected or controlled by the adaptive coding
    • H04N19/103Selection of coding mode or of prediction mode
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/102Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or selection affected or controlled by the adaptive coding
    • H04N19/127Prioritisation of hardware or computational resources
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/50Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding
    • H04N19/587Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding involving temporal sub-sampling or interpolation, e.g. decimation or subsequent interpolation of pictures in a video sequence
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F1/00Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
    • G06F1/26Power supply means, e.g. regulation thereof
    • G06F1/32Means for saving power
    • G06F1/3203Power management, i.e. event-based initiation of a power-saving mode
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/102Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or selection affected or controlled by the adaptive coding
    • H04N19/103Selection of coding mode or of prediction mode
    • H04N19/107Selection of coding mode or of prediction mode between spatial and temporal predictive coding, e.g. picture refresh
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/102Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or selection affected or controlled by the adaptive coding
    • H04N19/12Selection from among a plurality of transforms or standards, e.g. selection between discrete cosine transform [DCT] and sub-band transform or selection between H.263 and H.264
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/102Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or selection affected or controlled by the adaptive coding
    • H04N19/132Sampling, masking or truncation of coding units, e.g. adaptive resampling, frame skipping, frame interpolation or high-frequency transform coefficient masking
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/134Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or criterion affecting or controlling the adaptive coding
    • H04N19/154Measured or subjectively estimated visual quality after decoding, e.g. measurement of distortion
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/134Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or criterion affecting or controlling the adaptive coding
    • H04N19/156Availability of hardware or computational resources, e.g. encoding based on power-saving criteria
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/169Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding
    • H04N19/17Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object
    • H04N19/172Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object the region being a picture, frame or field
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/42Methods or arrangements for coding, decoding, compressing or decompressing digital video signals characterised by implementation details or hardware specially adapted for video compression or decompression, e.g. dedicated software implementation
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/50Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding
    • H04N19/503Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding involving temporal prediction
    • H04N19/51Motion estimation or motion compensation
    • H04N19/523Motion estimation or motion compensation with sub-pixel accuracy

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Theoretical Computer Science (AREA)
  • Computing Systems (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • Discrete Mathematics (AREA)
  • Compression Or Coding Systems Of Tv Signals (AREA)
  • Two-Way Televisions, Distribution Of Moving Picture Or The Like (AREA)

Abstract

根据本发明的一个方面提供的编码器基于相应持续时间段中的可用功率量使用不同的编码技术。由于这种使用不同编码技术的能力,使得可以最优地利用功率。根据相应时间段内的可用功率量,通过在编码技术之间进行动态地切换以进一步提高优化。在实施例中,每种编码技术在相应精度水平下估计运动矢量(从而消耗相应的功率水平),并且选择精度水平以响应可用功率预算。可以关断期望精度水平不需要的电路。

Description

在编码数据流中的最优功率使用
技术领域
本公开涉及信号处理,更具体地涉及在编码数据流中最优的功率使用。
背景技术
编码总体上是指将数字值序列(例如,以数据流)从一种格式转换成另一种格式。如相关现有技术中公知的,编码一般需要进行诸如压缩、应用转换等任务。同样如相关现有技术中公知的,解码总体上是指对已编码的数据进行处理以恢复出尽可能接近原始的数据流。
一般来讲,使用特定的编码技术进行编码,其后使用相应的解码技术恢复出原始数据流。通过处理逻辑定义编码技术(对源数据流的数字值序列进行一组定义的数学运算)。
由于不同的处理逻辑,使得不同的编码技术可以要求不同的处理资源以潜在地获得不同的质量(例如,通过一个或多个压缩级别、数据损失度、精度水平等进行测量)。反过来,处理资源确定所需的功率量。
总体上期望在编码数据流的同时最优地使用功率。
附图说明
以下将参考简要描述的附图说明本发明的实施例。
图1是示出了可以实现本发明的一些方面的实例设备的细节的框图。
图2是示出了在本发明的实施例中最优使用功率的方式的流程图。
图3是示出了一个实施例的视频编码器中的细节的框图。
图4是根据本发明的实施例,示出了在示例性的运动估计计算期间相关像素位置的框图。
图5是根据本发明的实施例,示出了基于可用功率的编码技术动态选择的状态图。
图6是根据本发明的实施例,示出了用于不同可用功率量的不同编码技术的表格。
在附图中,相似的附图标记大体上表示相同的、功能性相似的、和/或结构性相似的元件。相应附图标记中最左端的数字表示元件首次出现的附图编号。
具体实施方式
1、概述
根据本发明的一个方面提供的编码器基于相应持续时间段内的可用功率量使用不同的编码技术。由于这种使用不同编码技术的能力,使得可以最优地利用功率。
根据本发明的另一个方面,根据相应持续时间段内的可用功率量,通过在编码技术之间进行动态地切换以进一步提高优化。
在实施例中,每种编码技术在相应精度水平下(从而消耗相应的功率水平)估计运动矢量,并且选择精度水平以响应可用功率预算。可以关断不满足期望精度水平的电路。
以下参考示出的实例说明本发明的一些方面。但是,相关领域中的技术人员应该意识到的是,可以在不具有一个或多个具体细节的情况下或在利用其他方法、部件、材料等的情况下实施本发明。在其他实例中,为了避免混淆本发明的特征,不再详细示出公知的结构、材料、或操作。另外,虽然为了精简此处只说明了一些组合方式,但是可以以多种组合方式实施说明的特征/方面。
2、实例设备
图1是示出了实现本发明的一些方面的实例设备100的细节的框图。虽然通过阅读本公开,对于相关领域的技术人员来讲显而易见的是,在其他设备中可以实现其特征,但是此处该设备对应于一种手持摄像机。所示设备包括用户应用程序110、软件驱动器120、照相机130、视频编码器140、中央处理器(CPU)150、存储器160、外部接口170、功率管理模块180以及电源190。
虽然分开示出这些模块,但是CPU 150执行构成了用户应用程序110和软件驱动器120的多种软件指令。一般来讲,CPU 150执行存储器160中的指令以提供相应的功能。
外部接口170可以包括输入部件(例如,键盘、指示设备、触摸屏、按钮、USB输入等)和输出部件(例如,显示器、扬声器),可以使用这些部件来提供不同的用户接口。可以通过已知的方式,经由软件驱动器120将接收到的输入提供给用户应用程序110。相似地,也可以通过已知的方式,经由软件驱动器120使得用户应用程序110可以将输出数据(用于显示/可听见的再现)提供给外部接口170。
当通过CPU 150执行时,每一个用户应用程序110提供一组相应的功能(例如,看电影,捕捉视频,播放歌曲等)。即使本发明的特征可以用在其他不同的应用环境中,但以下仍以在压缩格式下捕捉视频信号来说明示出的实例。响应用户通过外部接口170提供的一组适当的输入来启动该视频捕捉。
功率管理模块180从电源190上接收功率,并被设计为用以估计不同部件(例如,CPU 150、存储器160)的当前功率需求。功率管理模块180还可以跟踪在系统上执行的每一个用户应用程序110(例如,编码、解码、网络浏览)的功率需求。基于这种估计(或者其他方面),功率管理模块180可以为视频编码器140计算可用功率量。一般来讲,所有部件消耗的功率之和需要少于电源190提供的功率水平。基于这种一般性要求,可以计算编码器140的可用功率。
软件驱动器120可以包括与每一部件130/140/150/160/170以及180接口的相应的驱动器。这样,当用户请求视频捕捉时,相应的软件驱动器可以在路径123上向照相机130发送捕捉请求。作为响应,软件驱动器120可以在路径132上接收代表捕捉到的图像/图片帧序列的数据流。数据流可以被送往视频编码器140进行编码。已编码的数据可以被接收,然后送到CPU 150进行进一步的处理(例如,存储在二级存储器中或传送到外部设备)。
编码器140对从软件驱动器120上接收到的数据进行编码。在编码期间,可以如以下说明的实例那样最优地使用功率。
3、编码技术
图2是示出了在本发明的一个实施例中的编码技术的流程图。以下将仅参考图1示意性的说明本流程图。但是,可以在其他环境中以及为其他类型的数据(例如,音频)实施不同的特征。通过阅读此处的公开,对于相关领域的技术人员来讲显而易见的是,还可以在不背离本发明一些方面的范围和精神的情况下,在其他环境的可选实施例中,执行不同顺序的步骤。该流程图开始于步骤201,控制传递到步骤210。
在步骤210中,软件驱动器120接收输入数据流和用于编码操作的可用功率量。输入数据流包括代表关注信息的数字值序列。在图1所示的情况中,数字值可以代表由照相机130捕获的帧序列。功率量可以用于与编码器140的实施相一致的任意持续时间段(例如,持续一段时间除非之后发生变化)。
在步骤220中,软件驱动器120选择要求少于或等于可用功率量的信号处理技术。例如,如果可用功率很低(例如,当前时间点下的功率源190对应于电池,而不是来自公用事业公司的外部电源的源),则可以选择低质量(假设其需要消耗较少功率的资源)的编码技术。
在步骤240中,软件驱动器120使用选定的信号处理技术对输入数据流进行编码。可以理解的是,通过信号处理技术的实现(通过硬件、软件和固件的相应结合)来确定资源需求。这样,通过指示功率量,可以最优地使用合计可用功率。流程图结束于步骤299。
当相对于单一实例中编码技术的选择说明上述流程图的同时,应该理解的是,随着适用于具体的环境中,此处的特征可以被重复多次。另外,可以使用不同的方法来实现相应的编码技术。以下说明示出这些特征的实现实例。
4、实例实现
图3是示出了本发明的实施例中的编码器一部分细节的框图。所示框图包括驱动器310,整像素运动估计(ME)320,半像素ME 330,四分之一像素ME 340和逻辑模块380。以下进一步详细说明每一个模块。
驱动器310可以响应软件驱动器120中的一个驱动器或可替换地在视频编码器140中实现。一般来讲,驱动器310接收可用功率量并仅打开/关闭期望的运动估计模块。另外,驱动器310与以编码为目的而操作的特定估计模块通信,以便逻辑模块380可以基于仅来自操作性(未关断)部件的可用数据执行其余的编码操作。
逻辑模块380表示所有编码操作(“其余操作”)而不是仅由模块320/330/340实现的运动估计操作。其余操作基于相应环境中使用的特定编码算法和输入/输出格式。应该理解的是,基于打开/关闭模块320/330和340中的哪些模块,逻辑模块380可以利用不同数量的可用的运动估计(在相应的精度下)来实现。逻辑模块380的实现对于相关领域中的技术人员来讲是显而易见的。
如现有技术中公知的,整像素运动估计(ME)320在两个连续的图像帧(或其部分)之间以整像素值为精度进行运动估计。例如,整像素ME 320可以将第二/当前图像帧置于距离在该序列中接收的第一/上一个帧一个像素的位置处,并计算该差异。
图4中的位置410A到410H示出了相对整像素位置的实例。随着输出至逻辑模块380,提供每一位置(例如8个位置)的计算估计。为了以期望的速度实现运动估计,可以使用任意已知的技术实现整像素ME 320,并相应地可以消耗每帧X的功率量。
半像素ME 330在两个连续帧(或其部分)之间以半个像素的距离为精度进行运动估计。例如,半像素ME 330可以将第二图像帧置于距离在该序列中接收的相应的第一帧半个像素的位置处。
图4中的位置420A到420H示出了相对半个像素位置的实例。提供每一位置(例如8个位置)的计算估计作为路径142上的输出。为了以期望的速度实现运动估计,可以使用任意已知的技术实现半像素ME 320,并相应地可以消耗每帧Y的功率量。
相似地,四分之一像素ME 340在两个连续图像帧之间以四分之一个像素值为精度进行运动估计。图4中的位置430A到430H示出了相对四分之一个像素位置的实例。为了以期望的速度实现运动估计,可以使用任意已知的技术实现四分之一像素ME 340,并相应地可以消耗每帧Z的功率量。
驱动器310基于接收到的功率预算控制整像素ME 320、半像素ME330和四分之一像素ME 340的操作。接收到的功率预算(可用功率量)可以指示用于实现编码操作/运动估计的可用功率。驱动器还可以保持整像素ME 320、半像素ME 330和四分之一像素ME 340的功率需求的细节。
在一个实施例中,假设逻辑模块380中的计算可以忽略,当用于编码的可用功率等于或大于(X+Y+Z;其中X=用于整像素的功率,Y=用于半像素的功率,且Z=用于四分之一像素的功率)时,驱动器310可以打开整像素ME 320、半像素ME 330和四分之一像素ME 340(例如第一编码技术)。这样,在更多数量的相对位置(这种情况下为24个)处实现运动估计。相应地,逻辑模块380可以为24个位置中的每一个接收估计后的数值(表示两个连续帧之间的匹配度),选择24个位置中最匹配的一个用以压缩当前处理的图像帧。由于为了编码考虑了子像素水平上更多的位置,因此这样编码的帧(数字值序列)产生了高质量(较少信息损失)的编码信号。
作为替换,当用于编码的可用功率大于X+Y且小于X+Y+Z时,驱动器310可以仅打开整像素ME 320和半像素ME 330(第二编码技术的实例)。这样,在相对较少数量的相对位置(这种情况下为16个)处实现运动估计。相应地,在16个位置中(由逻辑模块380)选择最匹配的,以便对提供中等质量的编码信号的帧进行编码。
相似地,当可用功率小于X+Y且大于X时,驱动器310可以仅打开整像素ME 320。这样,在8个相对位置处实现运动估计。相应地,在8个位置中选择最匹配的,以便对提供低质量的编码信号的帧进行编码。
在备选实施例中,驱动器310可以分别针对可用功率量X、Y、Z选择整像素ME 320、半像素ME 330和四分之一像素ME 340之一。
综上所述,可以理解的是,可以在潜在地编码每一个连续图像帧时最优地使用功率。如以下所述的实例,可以动态地调整功率消耗。
5、编码技术的动态选择
图5是示出了在本发明的一个实施例的可用功率的基础上处理(编码/解码)技术的动态选择的状态图。所示状态图包括状态“查询用以功率预算的功率管理模块”510、高质量520、中等质量530、低质量540,以及“低质量和帧丢弃”550。将在以下更进一步详细的说明每一个状态和相应的转换。
用以功率预算状态510的查询PM表示编码器300的初始状态。在这种状态下,驱动器120/310查询功率管理系统(PM)180的可用功率以编码数据流。驱动器120/310接收可用功率512、513和514的值并分别将编码器的状态改变到高质量520、中等质量530和低质量540。这种改变需要接通/关断相应运动估计模块并将其通信至逻辑模块380。
在高质量状态520、中等质量状态530和低质量状态540的每一个中,视频编码器140操作以分别产生高质量、中等质量、和低质量(低质量具有更多信息损失)的编码信号。例如,参考图3的说明,功率512、513和514可以分别表示X+Y+Z、X+Y、和X的值。
相应地,状态高质量520代表整像素ME 320,亚像素ME 330和四分之一像素ME 340正被打开。相似地,中状态530和低状态540分别表示当整像素ME 320和亚像素ME 330都被打开以及仅当整像素ME 320被打开时的状态。
在“低质量和帧丢弃”550状态下,操作视频编码器140以丢弃帧从而减小帧速率到小于期望值,使得在可用功率量内实现编码。由于帧的丢弃,编码链中存在的每一模块的功率使用可以随着每个丢弃的帧而下降。
但是,丢弃帧会导致以期望比特率输出的编码器的比特率发生变化(减小)。如相关领域中公知的,比特率的这种下降可以通过调整速率控制参数(RC)来补偿。例如,每帧平均比特(一般由比特控制(RC)参数进行分类)由比特率/帧速率给定并编入视频编码器(例如逻辑模块380)。
当丢弃帧以保持目标比特率时,编码器可以调整RC参数。另外,帧的丢弃提供更多的比特预算以编码帧。这样,在一个实施例中,已编码的帧的主观质量不会急剧下降。而且,可以通过I-slices/帧和/或更多的Intra刷新编码宏块来提高已编码序列的质量。
另外,驱动器310/120可以定期接收功率分配(可用性)。在编码操作阶段由于一个或多个用户应用程序的启动/结束,可以改变先前分配的功率。相应地,基于可用功率的降低(功率-)或增加(功率+)使得驱动器可以改变编码器的状态。转换532、543和554表示由于可用功率(用于编码)增加(+)而产生的转换,转换523、534和545表示由于可用功率降低(-)而产生的转换。这样,可用功率相应的增加或降低引发了这些转换。
对于相关领域中的技术人员来讲显而易见的是,可以基于环境的具体要求确定转换的选择。例如,如果在编码过程中可用功率降低至小于X+Y+Z,则驱动器310可以将编码器的操作从高质量切换到中等质量。
根据上述说明,以下参考H.264编码器说明编码技术的功率动态选择的实现方式。
6、实例H.264编码器
图6示出了H.264编码器在720p分辨率(图像尺寸为1280x720)下的编码技术与相应的功率需求细节的列表的表格。列610列出了编码技术,列620表示编码一帧数据所需要的时钟周期数量,列630表示完成30fps(帧每秒)吞吐量的时钟周期的频率,列640表示用30fps执行相应编码技术所需的功率。
在该示出的实例中,行650表示低质量编码技术的细节,行660表示中等编码技术的细节,行670表示高质量编码技术的细节。根据H.264标准实现低、中、高质量的编码技术。图示进一步假定,在视频编码器140于每一质量水平上耗费的功率逐渐增加的同时,整个视频编码过程耗费值为332mW的恒定功率(例如,在结合模块140一起操作以对视频信号进行编码的同时,由所有模块130、150、160、170耗费的功率)。
以标准锂离子4000mWh电池和在单电池充电至少5个小时的设备期望寿命(运行任意数量的应用程序)来继续说明实施例。这样,功率管理模块180将任意时间点上汲取的最大功率限制为800mW(4000mwh/5)。
如果在720p的分辨率下启动视频编码应用程序时,设备已经运行且消耗了400mW,软件驱动器120(根据状态510)查询功率管理(PM)模块180发现仅400mW(转变513的例子)可用,则由于所示的中等质量仅需要399mW,所以设置中等质量(状态530)用于编码。
这样,从上述描述中,可以理解的是,可以选择编码技术以对应于可用功率,那么可以最优化地使用功率。
除此之外,虽然描述了运动估计模块320/330/340的关断或接通作为最优化使用功率的方法,但是对于相关领域的技术人员来将显而易见的是,可以在编码器中使用其他技术(例如,即使仅以软件实现,也可以只禁用一部分电路,使用要求降低计算量的方法)以降低功耗而不背离本发明的一些方面的范围和精神。
相似地,虽然根据视频数据的处理提供了以上说明,但应该理解的是,可以用这些特征确定其他类型的信号数据(例如,音频)。
7、结论
在以上说明本发明的各种实施例的同时,应该理解的是,这些实施例仅通过实例而非限制性的方式提出。因此,不应该通过上述示例性实施例限制本发明的宽度和范围,但应该仅根据权利要求及其等同限定。
进一步的,以下摘要的目的是使得美国专利和商标局以及公众,特别是不熟悉专利或法律术语和措辞的本领域的科学家、工程师和从业者可以从本申请的技术公开的本质和性质的粗略描述中做出快速地决定。摘要不会以任何方式对本发明的范围进行限制。

Claims (20)

1.一种设备包括:
编码器,用以对数据流进行编码;以及
功率管理模块,用以指示可用功率量,
其中所述编码器被设计为如果所述量超过阈值则使用第一编码技术对所述数据流进行编码,否则使用第二编码技术进行编码。
2.根据权利要求1所述的设备,其中所述功率管理模块被设计为在相应的时间点中指示可用功率量的序列,
其中所述数据流包括数字值序列,
其中所述编码器响应接收的每一个所述序列量以选择所述第一编码技术或所述第二编码技术,并根据选定的编码技术对所述的数字值序列的相应子集进行编码。
3.根据权利要求2所述的设备,其中所述第一编码技术相比所述第二编码技术需要更多功率以对相同量的数字值进行编码,由此当所述可用功率量更多时选择需要更多功率的所述第一编码技术。
4.根据权利要求3所述的设备,其中所述编码器包括分别执行所述第一编码技术和所述第二编码技术的第一模块和第二模块,其中当选择所述第二编码技术时可操作的关断所述第一模块,当选择所述第一编码技术时可操作的接通所述第一模块。
5.根据权利要求4所述的设备,其中所述数字值序列表示图像帧序列,其中所述第一模块被设计为在第一分辨率下的连续图像帧之间进行运动估计,所述第二模块被设计为在第二分辨率下的连续图像帧之间进行运动估计,其中所述第一分辨率高于所述第二分辨率。
6.根据权利要求5所述的设备,其中所述第一分辨率等于图像帧的像素的一部分,所述第二分辨率等于图像帧的一个像素。
7.根据权利要求6所述的设备,进一步包括软件驱动器,用以接收所述可用功率量、选择所述第一编码技术或所述第二编码技术,以及关断所述第一模块和所述第二模块之一。
8.根据权利要求7所述的设备,进一步包括中央处理器(CPU)和存储器,基于从电源处接收的功率以及所述CPU和所述存储器的功率需求,所述功率管理模块计算所述可用功率量。
9.根据权利要求7所述的设备,其中所述第二编码技术进一步包括;
丢弃中间图像帧;以及
调整速率控制参数以在期望的比特率下提供输出。
10.一种编码数字值序列的编码器,所述编码器包括:
第一模块,基于第一编码技术执行编码操作;
第二模块,基于第二编码技术执行编码操作;
驱动器,接收可用功率量,如果所述量超过阈值则确定使用所述第一编码技术对所述数据流进行编码,否则使用所述第二编码技术进行编码,
如果要使用所述第二编码技术对所述数字值序列进行编码,则所述驱动器关断所述第一模块,如果要使用所述第一编码技术对所述数字值序列进行编码,则所述驱动器关断所述第二模块。
11.根据权利要求10所述的编码器,其中所述驱动器被设计为在相应时刻接收可用功率量的序列,
其中所述数据流包括所述数字值序列,
其中所述驱动器响应接收的每一个所述序列量以选择所述第一编码技术或所述第二编码技术,并根据选定的编码技术对所述的数字值序列的相应子集进行编码。
12.根据权利要求11所述的编码器,其中所述第一编码技术相比所述第二编码技术需要更多功率以对相同量的数字值进行编码,因此当所述可用功率量更多时选择需要更多功率的所述第一编码技术。
13.根据权利要求12所述的编码器,其中所述数字值序列表示图像帧序列,其中所述第一模块被设计为在第一分辨率下的连续图像帧之间进行运动估计,所述第二模块被设计为在第二分辨率下的连续图像帧之间进行运动估计,其中所述第一分辨率高于所述第二分辨率。
14.根据权利要求13所述的编码器,其中所述第一分辨率等于图像帧的像素的一部分,所述第二分辨率等于图像帧的一个像素。
15.根据权利要求14所述的编码器,其中根据H.264标准对所述图像帧进行编码。
16.一种处理数字数据流的方法,所述方法包括:
接收可用功率量的指示;
如果所述量超过阈值则选择第一编码技术,否则选择第二编码技术;以及
根据所述选定的编码技术对所述数字比特流进行编码。
17.根据权利要求16所述的方法,其中所述接收步骤在相应的时刻接收可用功率量的序列,
其中所述数据流包括数字值序列,
其中所述选择步骤响应接收的每一个所述序列量以选择所述第一编码技术或第二编码技术,以及
所述编码步骤根据选定的编码技术对所述数字值序列的相应子集进行编码。
18.根据权利要求17所述的方法,其中第一编码技术相比所述第二编码技术需要更多功率以对相同量的数字值进行编码,其中当所述可用功率量更多时选择需要更多功率的所述第一编码技术。
19.根据权利要求18所述的方法,其中使用多个部件执行所述编码操作,所述方法进一步包括接通或关断所述多个部件中的一些。
20.根据权利要求19所述的方法,其中所述多个部件的每一个被设计为在相应精度下执行运动估计。
CN200910223588A 2008-11-24 2009-11-24 在编码数据流中的最优功率使用 Pending CN101742311A (zh)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US12/277,287 2008-11-24
US12/277,287 US8442111B2 (en) 2008-11-24 2008-11-24 Optimal power usage in encoding data streams

Publications (1)

Publication Number Publication Date
CN101742311A true CN101742311A (zh) 2010-06-16

Family

ID=42196234

Family Applications (1)

Application Number Title Priority Date Filing Date
CN200910223588A Pending CN101742311A (zh) 2008-11-24 2009-11-24 在编码数据流中的最优功率使用

Country Status (7)

Country Link
US (1) US8442111B2 (zh)
JP (1) JP5404339B2 (zh)
KR (1) KR101097636B1 (zh)
CN (1) CN101742311A (zh)
DE (1) DE102009046945B9 (zh)
GB (1) GB2465486B (zh)
TW (1) TWI415472B (zh)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10171815B2 (en) 2013-06-05 2019-01-01 Huawei Device (Dongguan) Co., Ltd. Coding manner switching method, transmit end, and receive end

Families Citing this family (27)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE112008001577T5 (de) * 2007-06-13 2010-04-29 EnterMo Ltd., Ballarat Intelligentes Gehäuse für Handheld-Computer
CN102547272B (zh) * 2010-12-30 2015-03-11 中国移动通信集团公司 一种解码方法、装置及终端
US9735778B1 (en) 2014-08-20 2017-08-15 Altera Corporation Method and apparatuses for optimizing power management on an integrated circuit device
US10882453B2 (en) 2017-04-01 2021-01-05 Intel Corporation Usage of automotive virtual mirrors
US10904535B2 (en) 2017-04-01 2021-01-26 Intel Corporation Video motion processing including static scene determination, occlusion detection, frame rate conversion, and adjusting compression ratio
US10506255B2 (en) 2017-04-01 2019-12-10 Intel Corporation MV/mode prediction, ROI-based transmit, metadata capture, and format detection for 360 video
US10506196B2 (en) 2017-04-01 2019-12-10 Intel Corporation 360 neighbor-based quality selector, range adjuster, viewport manager, and motion estimator for graphics
US11054886B2 (en) 2017-04-01 2021-07-06 Intel Corporation Supporting multiple refresh rates in different regions of panel display
US10638124B2 (en) 2017-04-10 2020-04-28 Intel Corporation Using dynamic vision sensors for motion detection in head mounted displays
US10574995B2 (en) 2017-04-10 2020-02-25 Intel Corporation Technology to accelerate scene change detection and achieve adaptive content display
US10453221B2 (en) 2017-04-10 2019-10-22 Intel Corporation Region based processing
US10587800B2 (en) 2017-04-10 2020-03-10 Intel Corporation Technology to encode 360 degree video content
US10402932B2 (en) 2017-04-17 2019-09-03 Intel Corporation Power-based and target-based graphics quality adjustment
US10547846B2 (en) 2017-04-17 2020-01-28 Intel Corporation Encoding 3D rendered images by tagging objects
US10726792B2 (en) 2017-04-17 2020-07-28 Intel Corporation Glare and occluded view compensation for automotive and other applications
US10456666B2 (en) 2017-04-17 2019-10-29 Intel Corporation Block based camera updates and asynchronous displays
US10623634B2 (en) 2017-04-17 2020-04-14 Intel Corporation Systems and methods for 360 video capture and display based on eye tracking including gaze based warnings and eye accommodation matching
US10565964B2 (en) 2017-04-24 2020-02-18 Intel Corporation Display bandwidth reduction with multiple resolutions
US10908679B2 (en) 2017-04-24 2021-02-02 Intel Corporation Viewing angles influenced by head and body movements
US10643358B2 (en) 2017-04-24 2020-05-05 Intel Corporation HDR enhancement with temporal multiplex
US10424082B2 (en) 2017-04-24 2019-09-24 Intel Corporation Mixed reality coding with overlays
US10475148B2 (en) 2017-04-24 2019-11-12 Intel Corporation Fragmented graphic cores for deep learning using LED displays
US10525341B2 (en) 2017-04-24 2020-01-07 Intel Corporation Mechanisms for reducing latency and ghosting displays
US10158833B2 (en) 2017-04-24 2018-12-18 Intel Corporation High dynamic range imager enhancement technology
US10939038B2 (en) 2017-04-24 2021-03-02 Intel Corporation Object pre-encoding for 360-degree view for optimal quality and latency
US10979728B2 (en) 2017-04-24 2021-04-13 Intel Corporation Intelligent video frame grouping based on predicted performance
US11683550B2 (en) * 2017-09-18 2023-06-20 Intel Corporation Apparatus, system and method of video encoding

Family Cites Families (24)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH10248063A (ja) * 1997-03-04 1998-09-14 Toshiba Corp 携帯型情報端末装置
JP3269031B2 (ja) * 1997-08-26 2002-03-25 松下電器産業株式会社 動きベクトル検出装置および動きベクトル検出方法、並びに画像符号化装置
US6028631A (en) * 1997-09-08 2000-02-22 Hitachi, Ltd. Portable terminal apparatus for multimedia communication
US6690835B1 (en) * 1998-03-03 2004-02-10 Interuniversitair Micro-Elektronica Centrum (Imec Vzw) System and method of encoding video frames
JP3928292B2 (ja) * 1999-03-01 2007-06-13 ソニー株式会社 電子機器
JP2001186469A (ja) * 1999-12-27 2001-07-06 Toshiba Corp 画像間欠記録装置及びその記録方法
KR100779498B1 (ko) * 2001-06-15 2007-11-27 엘지전자 주식회사 비디오 코덱의 메모리 액세스 장치 및 방법
JP2003199002A (ja) * 2001-12-27 2003-07-11 Sharp Corp 情報記録装置
JP2003208343A (ja) * 2002-01-10 2003-07-25 Ricoh Co Ltd ファイル作成・閲覧方法、ファイル作成方法、ファイル閲覧方法、ファイル構造及びプログラム
US7039246B2 (en) * 2002-05-03 2006-05-02 Qualcomm Incorporated Video encoding techniques
US7372999B2 (en) * 2002-09-09 2008-05-13 Ricoh Company, Ltd. Image coder and image decoder capable of power-saving control in image compression and decompression
EP1590965A2 (en) * 2003-01-29 2005-11-02 Koninklijke Philips Electronics N.V. Method of video coding for handheld apparatus
CA2522870A1 (en) * 2003-04-15 2004-10-28 Kanazawa University Technology Licensing Organization Ltd. System for encoding or decoding motion picture and metthod for encoding or decoding motion picture
US7953283B2 (en) * 2005-01-27 2011-05-31 Panasonic Corporation Portable terminal
US7852940B2 (en) * 2005-10-20 2010-12-14 Qualcomm Incorporated Scalable motion estimation for video encoding
KR101208517B1 (ko) * 2006-03-07 2012-12-05 엘지전자 주식회사 Ofdm 또는 ofdma 통신 시스템에서의 전력 경감방법 및 그 장치
US7925136B2 (en) * 2006-05-25 2011-04-12 Qualcomm Incorporated Method and apparatus for recording information in battery operated devices
KR100800748B1 (ko) * 2006-07-28 2008-02-01 삼성전자주식회사 블루투스를 이용한 동영상 스트림 전송 장치 및 방법
US9883202B2 (en) * 2006-10-06 2018-01-30 Nxp Usa, Inc. Scaling video processing complexity based on power savings factor
TWI339073B (en) * 2006-11-13 2011-03-11 Univ Nat Chiao Tung Video coding method using image data skipping
KR100800815B1 (ko) * 2006-11-21 2008-02-01 삼성전자주식회사 디지털 방송을 수신하는 이동 단말기 및 방법
JP4656529B2 (ja) * 2006-12-22 2011-03-23 日本ビクター株式会社 携帯型記録装置
US8511901B2 (en) * 2007-02-06 2013-08-20 Canon Kabushiki Kaisha Image recording apparatus and method
TW200840366A (en) * 2007-03-28 2008-10-01 Univ Nat Central Complexity control method of video encoder

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10171815B2 (en) 2013-06-05 2019-01-01 Huawei Device (Dongguan) Co., Ltd. Coding manner switching method, transmit end, and receive end

Also Published As

Publication number Publication date
GB2465486A (en) 2010-05-26
DE102009046945B4 (de) 2012-12-13
DE102009046945B9 (de) 2013-04-04
TWI415472B (zh) 2013-11-11
TW201028012A (en) 2010-07-16
GB0920338D0 (en) 2010-01-06
JP2010124468A (ja) 2010-06-03
US8442111B2 (en) 2013-05-14
KR101097636B1 (ko) 2011-12-22
KR20100058408A (ko) 2010-06-03
GB2465486B (en) 2011-07-06
US20100128777A1 (en) 2010-05-27
DE102009046945A1 (de) 2010-08-19
JP5404339B2 (ja) 2014-01-29

Similar Documents

Publication Publication Date Title
CN101742311A (zh) 在编码数据流中的最优功率使用
CN102986211A (zh) 视频编码中的速率控制
CN101090493B (zh) 活动图像编码/解码方法和设备
CN102792689B (zh) 能够进行增量压缩以及对运动估计和元数据的修改以用于将图像呈现给远程显示器
CN101547349B (zh) 一种对视频信号的二次avs编码码率控制的方法
CN102918839B (zh) 用于视频编码的功率高效的运动估计技术
CN101867811A (zh) 图像编码装置和图像编码方法
CN101127907A (zh) 低复杂度的压缩和/或重构图像信息的方法、介质和系统
CN101253761A (zh) 图像编码设备和图像编码方法
CN102647586A (zh) 用在视频编码系统中的码率控制方法和装置
CN101511014A (zh) 一种视频编码的方法和设备
CN103067700A (zh) 编码装置,编码方法
US20240040127A1 (en) Video encoding method and apparatus and electronic device
CN105227955A (zh) 超高清低延时视频编码系统及超高清低延时码率控制方法
CN102427536A (zh) 数字视频编码用可变精度图像间定时规定的方法和装置
US11197021B2 (en) Coding resolution control method and terminal
CN104244004A (zh) 低功耗编码方法及装置
CN101511026A (zh) 一种基于场景的avs二次编码码率控制方法
CN100521794C (zh) 视频数据流的编码设备
Lee et al. ESC-DVS: Dynamic voltage scaling using entropy-based scene change detection for AMOLED displays
CN101409835B (zh) 利用拉格朗日乘子和视觉掩蔽来控制速率-失真折中的方法和装置
JP2004208146A (ja) 動画像符号化装置および動画像符号化方法
CN102318203B (zh) 用于编码包含光变的视频帧的方法及设备
Na et al. Lifetime maximization of video blackbox surveillance camera
US10129551B2 (en) Image processing apparatus, image processing method, and storage medium

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
C02 Deemed withdrawal of patent application after publication (patent law 2001)
WD01 Invention patent application deemed withdrawn after publication

Application publication date: 20100616