CN105830444A - 进行视频编码时的热及功率管理 - Google Patents

进行视频编码时的热及功率管理 Download PDF

Info

Publication number
CN105830444A
CN105830444A CN201480069030.6A CN201480069030A CN105830444A CN 105830444 A CN105830444 A CN 105830444A CN 201480069030 A CN201480069030 A CN 201480069030A CN 105830444 A CN105830444 A CN 105830444A
Authority
CN
China
Prior art keywords
video data
video
coding
coding parameter
power
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
CN201480069030.6A
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.)
Qualcomm Inc
Original Assignee
Qualcomm Inc
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 Qualcomm Inc filed Critical Qualcomm Inc
Publication of CN105830444A publication Critical patent/CN105830444A/zh
Pending legal-status Critical Current

Links

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/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/146Data rate or code amount at the encoder output
    • 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/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/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/182Methods 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 a pixel
    • 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/189Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the adaptation method, adaptation tool or adaptation type used for the adaptive coding
    • H04N19/196Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the adaptation method, adaptation tool or adaptation type used for the adaptive coding being specially adapted for the computation of encoding parameters, e.g. by averaging previously computed encoding parameters
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/40Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using video transcoding, i.e. partial or full decoding of a coded input stream followed by re-encoding of the decoded output stream
    • 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/57Motion estimation characterised by a search window with variable size or shape
    • 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/577Motion compensation with bidirectional frame interpolation, i.e. using B-pictures
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N5/00Details of television systems
    • H04N5/76Television signal recording

Abstract

在实例中,方法包含:使用编码参数以第一视频质量对视频数据进行编码,及确定经配置以录制所述视频数据的电子装置的一或多个组件的操作特性。所述方法还包含:至少部分地基于所述经确定操作特性来调整所述编码参数且同时维持所述第一视频质量,及使用所述经调整编码参数以所述第一视频质量对所述视频数据进行编码。

Description

进行视频编码时的热及功率管理
本申请案主张在2013年12月20日提交的美国临时申请案第61/919,513号的权益。
技术领域
本发明涉及用于借助计算装置呈现视频数据的技术。
背景技术
移动装置可采取以下各项的形式:移动电话、平板计算机、膝上型计算机、具有无线通信卡的便携式计算机、个人数字助理(PDA)、数码相机、视频游戏装置、便携式媒体播放器、具有无线通信能力的快闪存储器装置、包含所谓“智能”电话及“智能”板或平板的无线通信装置、电子阅读器或广泛各种其它类型的便携式装置中的其它。随着加入高功率处理器、处理媒体内容的功能及在云中与网络交互的能力,移动装置变得越来越强大。装置的处理能力及功能的提升也可能致使装置消耗功率及/或产生热。
发明内容
本发明的技术包含:确定电子装置的一或多个操作特性,及至少部分地基于所述装置的所述经确定操作特性来确定用于借助所述装置对视频数据进行编码的编码参数。在一些实例中,可选择所述编码参数来维持经编码视频的质量同时也使所述装置保持操作低于特定温度及/或功率阈值。
在实例中,方法包含:使用编码参数以第一视频质量对视频数据进行编码;确定经配置以录制所述视频数据的电子装置的一或多个组件的操作特性;至少部分地基于所述经确定操作特性来调整所述编码参数且同时维持所述第一视频质量;及使用所述经调整编码参数以所述第一视频质量对所述视频数据进行编码。
在另一实例中,电子装置包含经配置以录制视频数据的一或多个组件及一或多个处理器。所述一或多个处理器经配置以使用编码参数以第一视频质量对视频数据进行编码;确定经配置以录制所述视频数据的所述电子装置的所述一或多个组件的操作特性;至少部分地基于所述经确定操作特性来调整所述编码参数且同时维持所述第一视频质量;及使用所述经调整编码参数以所述第一视频质量对所述视频数据进行编码。
在另一实例中,设备包含:用于使用编码参数以第一视频质量对视频数据进行编码的装置;用于确定经配置以录制所述视频数据的电子装置的一或多个组件的操作特性的装置;用于至少部分地基于所述经确定操作特性来调整所述编码参数且同时维持所述第一视频质量的装置;及用于使用所述经调整编码参数以所述第一视频质量对所述视频数据进行编码的装置。
在另一实例中,非暂时性计算机可读媒体其上存储有指令,所述指令在被执行时致使电子装置的一或多个处理器:使用编码参数以第一视频质量对视频数据进行编码;确定经配置以录制所述视频数据的电子装置的一或多个组件的操作特性;至少部分地基于所述经确定操作特性来调整所述编码参数且同时维持所述第一视频质量;及使用所述经调整编码参数以所述第一视频质量对所述视频数据进行编码。
下文的随附图式及描述中阐明本发明的一或多个方面的细节。根据描述及图式以及根据权利要求书将明了本发明中所描述的技术的其它特征、目的及优点。
附图说明
图1说明可实施本发明的技术的实例性装置。
图2是说明可实施本发明的技术的实例性视频编码及解码系统的框图。
图3是说明可实施本发明的技术的实例性视频编码器的框图。
图4是说明可实施本发明的技术的实例性视频解码器的框图。
图5是展示可经配置以实施本发明的技术的装置的实例的框图。
图6是视频序列中的图片组(GOP)的概念图。
图7是说明参考图片中的搜索区域的概念图。
图8A及8B是分别说明帧内预测及帧内预测模式的概念图。
图9说明根据本发明的方面的用于对视频数据进行编码的实例性过程。
图10说明根据本发明的方面的用于对视频数据进行编码的另一实例性过程。
图11说明根据本发明的方面的用于对经编码视频数据进行转码的实例性过程。
图12说明根据本发明的方面的用于确定装置的功率消耗的实例性过程。
图13说明根据本发明的方面的用于确定编码参数的实例性曲线图。
图14是根据本发明的方面的说明用于对视频数据进行编码的实例性过程的流程图。
具体实施方式
本发明的技术包含:确定电子装置的一或多个操作特性,及至少部分地基于所述装置的所述经确定操作特性来确定用于借助所述装置对视频数据进行编码的编码参数。在一些实例中,可选择所述编码参数来维持经编码视频的质量同时也使所述装置保持操作低于特定温度及/或功率阈值。
图1说明可实施本发明的技术的实例性装置。在图1的实例中,装置4A包含显示器5A及画中画(PIP)窗口6A。另外,装置4B包含显示器5B、第一PIP窗口6B及第二PIP窗口7B。
装置4A及4B可包括广泛范围的装置中的任一者,举例来说,包含例如所谓“智能”电话的电话手机、平板计算机、相机、笔记本(即,膝上型)计算机、数字媒体播放器、视频游戏主机、视频流式装置或其类似者。虽然装置4A及4B可为便携式装置,但本发明的技术并不限于此方式。举例来说,根据其它态样,技术可与桌上型计算机、机顶盒、电视机或其它装置一起使用。
显示器5A及5B可包含液晶显示器(LCD)、发光二极管(LED)、有机发光二极管(OLED),或可向用户产生可理解的输出的任何其它类型的装置。在一些例子中,显示器5A及5B可经配置为触敏式及/或存在敏感式显示器。
在图1中所展示的实例中,装置4A包含PIP窗口6A且装置4B包含PIP窗口6B及7B。在一些实例中,PIP窗口可提供用于独立于在显示器5A及5B处显示的其它内容来显示内容的区域。举例来说,装置4A及/或4B可经配置以执行画中画视频录制。在此实例中,装置4A可录制在显示器5A处显示的图像,而PIP窗口6A可显示正在捕获所录制图像的用户的图像。在另一实例中,装置4A及/或4B可连同游戏执行视频会议。举例来说,装置4B可将视频游戏输出到显示器5B,同时还在PIP窗口6B中显示玩视频游戏的用户的图像且在PIP窗口7B中显示用户的对手或同伴(也在玩视频游戏)。其它实例也是可能的。
在一些例子中,装置4A及4B可接近或超过操作参数。作为实例,随着装置4A及4B执行越来越多数目个功能(例如,捕获视频、呈现图形、编码/解码视频、显示视频或其类似者),装置4A及4B所消耗的功率可上升。另外,在一些例子中,装置4A及4B的一或多个组件(例如,中央处理单元(CPU)、图形处理单元(GPU)、相机子系统、显示器5A及5B或其类似者)可产生热作为副产物。一些实例性功能包含宽四边高清晰度(WQHD)画中画(PIP)视频录制、超高清晰度(UHD)视频录制、游戏及视频会议、高分辨率三维(3D)图形呈现或其类似者。
装置4A及4B可接近或超过操作参数,例如功率预算(例如,2瓦特)或温度限制。举例来说,装置4A及4B的一或多个组件的温度可上升超过预定操作阈值,尤其在并行使用装置4A及4B的多个组件及/或特征(举例来说,例如UHD视频录制、WQHDPIP视频录制或其类似者)的例子中。
在一些实例中,视频编码器及/或视频解码器(组合或其可称作编解码器,如下文更详细所描述)可促使温度的增加。举例来说,对视频数据进行编码可消耗处理资源且具有相关联功率汲取。另外,对视频数据进行编码可包含:在编解码器与装置4A及/或4B的存储器(例如,易失性存储器,例如双数据速率(DDR)随机存取存储器(RAM))之间传送视频数据。因此,存储器使用率也可促使功率消耗的上升及/或温度的增加。
一些装置(例如装置4A及/或4B)可对视频编解码器及/或存储器无任何热控制。此外,配置视频编码器以汲取较少功率(例如,较小存储器读取/写入及/或较少计算)可导致经编码视频文件中的较低图像质量或较大经编码视频文件大小。
本发明的技术包含确定电子装置(例如,装置4A或装置4B)的一或多个操作特性,及至少部分地基于所述装置的所述经确定操作特性来确定用于借助所述装置对视频数据进行编码的编码参数。可选择所述编码参数来维持经编码视频的质量同时也使所述装置保持操作低于特定温度或功率阈值。
如本文中所描述,经编码视频的质量可基于各种编码参数,所述编码参数在已对视频进行解码且加以呈现(例如,显示)之后影响经解码视频的感知质量。举例来说,可基于经编码数据的帧速率来确定经编码视频的质量,其中相对较高时间帧速率产生相对较高质量的经编码视频数据。在另一实例中,可基于经编码视频数据的空间分辨率来确定经编码视频数据的质量,其中相对较高清晰度产生经编码视频数据的相对较高质量。在其它实例中,可基于其它因素(例如经编码视频数据的信噪比(SNR)、峰值信噪比(PSNR)或其类似者)来确定经编码视频数据的质量。
在一些例子中,设置及/或调整编码参数同时维持经编码视频数据的特定质量可致使经编码视频数据的压缩速率(也称作压缩比)及/或位速率改变。举例来说,压缩速率通常表示相对于原始未经编码视频数据已压缩经编码视频数据的数量。位速率通常表示每单位时间位流中所包含的视频数据的位的数目。因此,在压缩速率增加(例如,相对于原始数据更多地压缩经编码视频数据)时,经编码视频数据的位速率通常减少(例如,每单位时间表示经编码视频数据需要较少位)。
设置及/或调整编码参数同时维持经编码视频数据的特定质量可影响视频压缩速率(或增加位速率)。另外,对视频数据进行编码的压缩速率(或位速率)可影响所得文件大小。举例来说,针对视频数据(例如,给定数目个帧)的给定质量,相对较高压缩速率(或较低位速率)可产生相对较小经编码文件大小,而较低压缩速率(或较高位速率)可产生相对较大经编码文件大小。因此,设置及/或调整编码参数同时维持视频数据的特定质量也可影响经编码视频数据的文件大小(经由对压缩速率/位速率的影响)。
因此,根据本发明的方面,装置可通过调整一或多个编码参数以及对压缩及/或位速率的对应调整来维持视频质量。即,如下文更详细地描述,本发明的方面可允许压缩及/或位速率在调整编码参数时波动。另外或替代地,装置可通过调整一或多个编码参数同时还将一或多个其它编码参数固定到预定值(或值范围)来维持视频质量。举例来说,如下文更详细描述,本发明的方面可包含在调整其它编码参数时使一些编码参数(例如,分辨率、帧速率、SNR/PSNR或其类似者)保持处于或接近特定值。
本发明的方面可包含动态地改变视频编码设置以减少存储器流量及/或视频编解码器工作负荷。减少存储器流量及/或视频编解码器工作负荷可致使装置的一或多个组件中的减少的功率消耗及/或减少的温度,且本文中可称作“低功率模式”。举例来说,装置4A或装置4B可使用技术来平衡伴随视频压缩的功率消耗及/或热产生。即,随着视频压缩速率增加,对装置4A或装置4B的视频编解码器的计算需求也增加。另外,如下文更详细描述,装置4A或装置4B的存储器的读取/写入存取也可增加。
根据本发明的方面,装置4A或装置4B可控制编解码器的一或多个编码参数以控制装置4A或装置4B的功率消耗及/或由其产生的热,且利用(视频编解码器、存储器或装置的其它组件的)功率使用率与视频压缩速率之间的权衡。举例来说,装置4A或装置4B可调整一或多个编码参数以减少装置4A或装置4B的功率消耗及/或由其产生的热。为维持视频数据的特定质量,装置4A或装置4B可调整一或多个编码参数同时还将一或多个其它编码参数(例如,分辨率、帧速率、SNR/PSNR或其类似者)固定到预定值(或值范围)且允许压缩速率减少,借此使经编码视频文件的大小(例如,字节)增加(例如,相对于以较高压缩速率编码有初始编码参数的视频数据)。
出于说明目的作为实例,装置4A或装置4B可基于装置4A或装置4B的一或多个组件的温度超过预定温度阈值来初始地设置一或多个视频编码参数。另外或替代地,装置4A或装置4B可基于装置4A或装置4B的一或多个组件的温度超过预定温度阈值来动态地控制视频编码参数。即,装置4A或装置4B可基于装置的一或多个组件的温度上升超过温度阈值来在操作(录制及/或编码)期间调整视频编码参数。设置及/或调整视频编码参数可有助于降低装置4A或装置4B的组件的温度。
在另一实例中,装置4A或装置4B可基于由装置4A或装置4B的编码器处理的像素的数目来初始地设置(及/或在编码期间调整)一或多个视频编码参数。举例来说,随着每秒经编码的像素的数目增加,编解码器及/或装置的其它组件(例如存储器)的温度也可能增加。因此,经处理的数目或像素可充当装置的热产生及/或功率消耗的代理。根据本发明的方面,装置4A或装置4B可基于特定持续时间中经处理(例如,经编码)的像素的数目超过像素处理阈值来初始地设置一或多个视频编码参数。另外或替代地,装置4A或装置4B可基于经处理的像素的数目超过预定像素处理阈值来动态地控制视频编码参数。即,装置4A或装置4B可基于经编码的像素的数目上升超过像素处理阈值来调整操作(录制及/或编码)期间的视频编码设置。此外,设置及/或调整视频编码参数可有助于降低装置4A或装置4B的组件的温度。
在录制及/或编码期间,编解码器可自内部电源(例如,装置4A或装置4B的电池)汲取功率。因此,在视频录制需要电池的意义上,可认为电池经配置以录制视频数据。根据本发明的方面,装置4A或装置4B可基于装置4A或装置4B的电源的状态而初始地设置一或多个视频编码参数。举例来说,装置4A或装置4B可基于电源中可用的功率量来初始地设置一或多个视频编码参数。另外或替代地,装置4A或装置4B可基于功率被耗尽低于预定阈值及/或快于预定速率来动态地控制视频编码参数。即,装置4A或装置4B可基于功率被耗尽低于预定阈值及/或快于预定速率来调整在操作(录制及/或编码)期间的视频编码设置。设置及/或调整视频编码参数可有助于防止电源被编解码器耗尽。
在一些实例中,装置4A或装置4B可使用上文所描述的实例阈值(例如,温度、像素处理、电源状态或其类似者)的任何组合。如上文所述,随着视频压缩速率增加,对装置4A或装置4B的视频编解码器的计算需求也增加。相反地,减少视频压缩速率可致使功率及/或热节省。然而,减少视频压缩速率可致使经编码视频文件具有相对较大文件大小(与以较高压缩速率编码的经编码文件相比)。
本发明的技术包含将经编码视频文件自较低压缩速率转码成较高压缩速率,借此减少经编码视频文件的大小。技术可连同上文所描述的视频编码器参数控制一起用于减少以低功率模式(例如,以相对低压缩速率)编码的文件的大小以节省功率及/或降低温度。举例来说,在其中装置4A或装置4B使用低功率模式来产生经编码视频文件的例子中,装置4A或装置4B可将视频文件转码成较小文件大小(例如,使用较高压缩速率)。
在一些实例中,根据本发明的方面,可在满足预定转码条件时执行转码。举例来说,转码可本身消耗功率。因此,装置4A或装置4B可在转码操作对装置的功率及/或温度具有不利影响的可能性最小时起始转码。用于起始转码的条件也可称作“触发”或“触发条件”。举例来说,在装置4A或装置4B空闲(一或多个组件未操作/未被用户使用)的情况下,当装置4A或装置4B的电池电源具有超过预定量的剩余电荷时,及/或当装置4A或装置4B(例如)通过交流AC适配器连接到外部电源时,装置4A或装置4B可起始转码。在此些实例中,转码初始化条件可为以下各项中的至少一者:装置的预定空闲持续时间、装置4A或装置4B的电池的电池状态(例如,剩余电荷超过预定电平、电荷耗散比预定速率慢或其类似者)或装置的电源状态。
如下文更详细描述,根据本发明的方面,装置4A或装置4B也可在满足预定转码终止条件(或“触发”)时终止转码。在一些实例中,转码终止条件可包含以下各项中的至少一者:状态从空闲状态到活动状态的改变、装置4A或装置4B的电池的状态(例如,剩余电荷下降低于预定电平、电荷耗散比预定速率快或其类似者)或电源状态从外部电源到内部电源的改变。
根据本发明的其它方面,一或多个功率模型可用于评估视频编码设置的芯片组级或系统级功率影响且确定较低功率消耗的参数。举例来说,如上文所述,可基于视频编码参数(例如,对存储器的读取/写入存取)而影响存储器使用率及相关联功率汲取。作为另一实例,可将经编码的视频存储到本地存储位置(例如,非易失性存储器,例如可拆卸安全数字(SD)存储器或其它存储器(包含不可拆卸存储器)或可使用无线通信技术传输到远程存储器(例如,基于云的存储器)。与存储经编码数据相关联的功率汲取可取决于视频文件的大小、存储位置及存储数据中所设计的组件(例如,存储器总线、无线发射器或其类似者)。
根据本发明的方面,一或多个功率模型可用于确定经估计功率消耗,所述经估计功率消耗可用于控制视频编码参数。实例功率模型包含视频编码器功率模型、存储器功率模型、本地存储功率模型及远程存储功率模型(其可基于与远程存储相关联的传输技术而变化)。在实例中,当功率消耗被估计为高时,技术可用于减少视频编解码器的功率消耗。
图2是说明可利用本发明的技术的实例性视频编码及解码系统10的框图。如图2中所展示,系统10包含提供待稍后由目的地装置14解码的经编码视频数据的源装置12。特定来说,源装置12经由链路16将视频数据提供到目的地装置14。源装置12及目的地装置14可包括广泛范围的装置中的任何者,包含桌上型计算机、笔记本(即,膝上型)计算机、平板计算机、机顶盒、例如所谓“智能”电话的电话手机、所谓“智能”板、电视机、相机、显示装置、数字媒体播放器、视频游戏主机、视频流式装置或其类似者。在一些状况中,源装置12及目的地装置14可经配备以用于无线通信。
目的地装置14可经由链路16接收待解码的经编码视频数据。链路16可包括能够使经编码视频数据从源装置12移动到目的地装置14的任何类型的媒体或装置。在一个实例中,链路16可包括用以使得源装置12能够将经编码视频数据实时直接地传输到目的地装置14的通信媒体。经编码视频数据可根据通信标准(例如无线通信协议)进行调制,且被传输到目的地装置14。通信媒体可包括任何无线或有线通信媒体,例如射频(RF)频谱或一或多个物理传输线路。通信媒体可形成基于数据包的网络的部分,例如局域网、广域网或例如因特网的全球网。通信媒体可包含路由器、交换机、基站或可用于促进从源装置12到目的地装置14的通信的任何其它设备。
替代地,可将经编码数据从输出接口22输出到存储装置32。类似地,可通过输入接口从存储装置32存取经编码数据。存储装置32可包含各种分布式或本地存取数据存储媒体中的任何者,例如硬盘驱动器、蓝光光盘、DVD、CD-ROM、快闪存储器、易失性或非易失性存储器或任何其它适于存储经编码视频数据的数字存储媒体。在又一实例中,存储装置32可对应于文件服务器或可保持由源装置12产生的经编码视频的另一中间存储装置。目的地装置14可经由流化或下载来从存储装置32存取所存储视频数据。文件服务器可为能够存储经编码视频数据且将彼经编码视频数据传输到目的地装置14的任何类型的服务器。实例性文件服务器包含网页服务器(例如,用于网站)、FTP服务器、网络附加存储(NAS)装置或本地磁盘驱动器。
目的地装置14可经由流化或下载从存储装置32存取所存储视频数据。文件服务器可为能够存储经编码视频数据且将彼经编码视频数据传输到目的地装置14的任何类型的服务器。实例性文件服务器包含网页服务器(例如,用于网站)、FTP服务器、网络附加存储(NAS)装置或本地磁盘驱动器。目的地装置14可通过任何标准数据连接(包含因特网连接)来存取经编码视频数据。此可包含无线信道(例如,Wi-Fi连接)、有线连接(例如,DSL、电缆调制解调器等等),或适于存取存储于文件服务器上的经编码视频数据的两者的组合。来自存储装置的经编码视频数据的传输可为流式传输、下载传输或其组合。
本发明的技术未必限于无线应用或设置。所述技术可应用于支持各种多媒体应用中的任何者的视频编码,例如无线电视广播、有线电视传输、卫星电视传输、因特网流式视频传输,例如经由HTTP的动态自适应流化(DASH)、经编码到数据存储媒体上的数字视频、对存储于数据存储媒体上的数字视频的解码或其它应用。在一些实例中,系统10可经配置以支持单向或双向视频传输以支持例如视频流化、视频播放、视频广播及/或视频电话的应用。
在图2的实例中,源装置12包含视频源18、视频编码器20及输出接口22。目的地装置14包含输入接口28、视频解码器30及显示装置34。根据本发明,源装置12的视频编码器20可经配置以应用用于视频编码的技术。在其它实例中,源装置及目的地装置可包含其它组件或布置。举例来说,源装置12可从外部视频源18(例如,外部相机)接收视频数据。同样地,目的地装置14可与外部显示装置介接,而非包含整合式显示装置。
图2的所说明系统10仅为一个实例。本发明的技术可由任何数字视频编码及/或解码装置来执行。尽管本发明的技术通常由视频编码装置执行,但技术也可由视频编码器/解码器(通常称作为“CODEC”)执行。源装置12及目的地装置14仅为此些编码装置的实例,其中源装置12产生经编码视频数据以供传输到目的地装置14。在一些实例中,装置12、14可以大体上对称方式操作使得装置12、14中的每一者包含视频编码及解码组件。因此,系统10可支持视频装置12、14之间的单向或双向视频传输,例如,用于视频流化、视频播放、视频广播或视频电话。
源装置12的视频源18可包含视频捕获装置,例如视频相机、含有先前所捕获视频的视频存档,及/或用以从视频内容提供者接收视频的视频馈送接口。作为又一替代方案,视频源18可产生基于计算机图形数据作为源视频,或直播视频、经存档视频及计算机产生视频的组合。在一些状况下,如果视频源18为视频相机,那么源装置12及目的地装置14可形成所谓相机电话或视频电话。然而,本发明中所描述的技术通常可应用于视频编码,且可应用于无线及/或有线应用。
所捕获、预捕获或计算机产生视频可通过视频编码器12进行编码。可经由源装置20的输出接口22将经编码的视频数据直接传输到目的地装置14。经编码视频数据也可(或替代地)存储到存储装置32上以供由目的地装置14或其它装置稍后存取以进行解码及/或播放。
目的地装置14包含输入接口28、视频解码器30及显示装置31。在一些状况下,输入接口28可包含接收器及/或调制解调器。目的地装置14的输入接口28经由链路16接收经编码视频数据。经由链路16通信或提供在存储装置32上的经编码视频数据可包含由视频编码器20产生供由视频解码器(例如,视频解码器30)用于对视频数据进行解码的各种语法元素。此些语法元素可与在通信媒体上传输的经编码视频数据一起被包含,被存储在存储媒体上,或存储在文件服务器上。
显示装置34可与目的地装置14整合或在目的地装置14外部。在一些实例中,目的地装置14可包含整合式显示装置且还经配置以与外部显示装置介接。在其它实例中,目的地装置14可为显示装置。一般来说,显示装置34向用户显示经解码视频数据,且可包括各种显示装置中的任一者,例如液晶显示器(LCD)、等离子显示器、有机发光二极管(OLED)显示器或另一类型的显示装置。
视频编码器20及视频解码器30各自可实施为各种适合编码器或解码器电路中的任一者(如可适用),例如一或多个微处理器、数字信号处理器(DSP)、专用集成电路(ASIC)、场可编程门阵列(FPGA)、离散逻辑电路、软件、硬件、固体或其任一组合。当技术部分地以软件实施时,装置可将用于软件的指令存储在适合非暂时性计算机可读媒体中且在硬件中使用一或多个处理器来执行指令以执行本发明的技术。视频编码器20及视频解码器30中的每一者可包括在一或多个编码器或解码器中,其中的任一者可整合为组合式视频编码器/解码器(CODEC)的部分。包含视频编码器20及/或视频解码器30的装置可包括集成电路、微处理器及/或无线通信装置(例如,蜂窝式电话)。
尽管图2中未展示,但在一些方面中,视频编码器20及视频解码器30可各自与音频编码器及解码器整合,且可包含适当MUX-DEMUX单元或其它硬件及软件以在共用数据流或单独数据流中处置音频及视频两者的编码。如果适用,或其它协议,例如用户数据报协议(UDP)。
视频编码器20及视频解码器30可根据视频压缩标准(例如ITU-TH.264标准(替代地称作MPEG-4,第10部分高级视频编码(AVC))或此些标准的扩展)操作。ITU-TH.264/MPEG-4(AVC)标准是由ITU-T视频编码专家组(VCEG)连同ISO/IEC运动图片专家组(MPEG)一起制定作为称作联合视频组(JVT)的共同合作伙伴的产物。在一些方面中,本发明中所描述的技术可应用于通常符合H.264标准的装置。H.264标准是由ITU-T研究组在2005年3月描述在ITU-T推荐H.264,用于一般视听服务的高级视频编码(其在本文中可称作H.264标准或H.264规范或H.264/AVC标准或规范)中。视频压缩标准的其它实例包含MPEG-2及ITU-TH.263。
JCT-VC最近研发HEVC标准。虽然本发明的技术并不限于任何特定编码标准,但技术可与(例如)关于UHD视频编码/解码的HEVC标准相关。一般来说,关于HEVC,图片可划分成一系列包含亮度样本及色度样本两者的树块或最大编码单元(LCU)。位流内的语法数据可定义LCU的大小,所述LCU是在像素数目方面最大的编码单元。图块包含呈编码次序的多个连续树块。视频图片可分割成一或多个图块。每一树块可根据四叉树拆分成编码单元(CU)。一般来说,四叉树数据结构包含每CU一个节点,其中根节点对应于树块。如果将CU拆分成四个子CU,那么对应于CU的节点包含四个叶节点,所述叶节点中的每一者对应于子CU中的一者。
四叉树数据结构的每一节点可提供用于对应CU的语法数据。举例来说,四叉树中的节点可包含拆分旗标,指示是否将对应于节点的CU拆分成子CU。用于CU的语法元素可为递归定义,且可取决于是否将CU拆分成子CU。如果CU未进一步拆分,那么其称作叶CU。在本发明中,叶CU的四个子CU也将称作叶CU,即使不存在原始叶CU的任何显式拆分。举例来说,如果16×16大小的CU未进一步拆分,那么四个8×8子CU也将称作叶CU,尽管16×16CU从未被拆分。
CU具有与H.264标准的宏块类似的用途,除了CU不具有大小定义之外。举例来说,树块可被拆分成四个子节点(也称作为子CU),且每一子节点又可为父节点且被拆分成另外四个子节点。最终未拆分子节点(称作四叉树的叶节点)包括编码节点,也称作叶CU。与经编码位流相关联的语法数据可定义树块可拆分的最大次数(称作最大CU深度),且还可定义编码节点的最小大小。因此,位流还可定义最小编码单元(SCU)。本发明使用术语“块”来指代HEVC背景中的CU、PU或TU中的任何者,或其它标准的背景中的类似数据结构(例如,H.264/AVC中的宏块及其子块)。
CU包含编码节点及与编码节点相关联的预测单元(PU)和转换单元(TU)。CU的大小对应于编码节点的大小且必须为正方形形状。CU的大小的范围可介于从8×8个像素直到具有最大64×64个像素的树块的大小或更大。每一CU可含有一或多个PU及一或多个TU。
一般来说,PU表示对应于对应CU的全部或部分的空间区域,且可包含用于检索关于PU的参考样本的数据。此外,PU包含与预测相关的数据。举例来说,当PU为帧内模式编码时,关于PU的数据可被包含在残差四叉树(RQT)内,其可包含描述关于对应于PU的TU的帧内预测模式的数据。作为另一实例,当PU为帧间模式编码时,PU可包含定义关于PU的一或多个运动矢量的数据。
TU可包含在将转换(例如,离散余弦变换(DCT)、整数转换、小波转换或概念上类似的变换)应用于残差视频数据之后的转换领域中的系数。残差数据可对应于未经编码图片的像素与对应于PU的预测值之间的像素差。视频编码器20可形成包含关于CU的残差数据的TU,且接着变换TU以产生关于CU的变换系数。
在变换之后,视频编码器20可执行变换系数的量化。量化通常指代其中将变换系数量化以可能减少用于表示系数的数据的量,从而提供进一步压缩的过程。量化过程可减少与系数中的一些或全部相关联的位深度。举例来说,n位值可在量化期间向下舍入到m位值,其中n大于m。
视频编码器20可接着扫描变换系数此,自包含经量化变换系数的二维矩阵产生单维矢量。扫描可经设计以将较高能量(且因此较低频率)系数放置在阵列前端且将较低能量(且因此较高频率)系数放置在阵列后端。在一些实例中,视频编码器20可利用预定义扫描次序来扫描量化变换系数以产生可经熵编码的串行化矢量。在其它实例中,视频编码器20可执行自适应扫描。
在扫描经量化变换系数以形成单维矢量之后,视频编码器20可(例如)根据背景自适应可变长度编码(CAVLC)、背景自适应二进制算法编码(CABAC)、基于语法的背景自适应二进制算法编码(SBAC)、概率区间分割熵(PIPE)编码或另一熵编码方法对单维矢量进行熵编码。视频编码器20还可对与在解码视频数据中供由视频解码器30使用的经编码视频数据相关联的语法元素进行熵编码。
视频编码器20可将语法数据(例如,基于块的语法数据、基于图片的语法数据及基于图片组(GOP)的语法数据)进一步发送到视频解码器30(例如)在图片标头、块标头、图块标头或GOP标头中。GOP语法数据可描述相应GOP中的图片的数目,且图片语法数据可指示用于对对应图片进行编码的编码/预测模式。
视频解码器30在接收到经编码视频数据时可执行解码遍次(dcodingpass),所述解码遍次通常与关于视频编码器20所描述的编码遍次互逆,如(例如)下文关于图4更详细描述。
本发明的技术包含确定电子装置(例如,源装置12)的一或多个操作特性,及至少部分地基于所述装置的所述经确定操作特性来确定用于借助所述装置的编码器对视频数据进行编码的编码参数。编码参数可经选择(例如,经初始选择或在视频编码期间经调整)以维持经编码视频的质量。在一些实例中,源装置12可通过维持一或多个编码参数(例如,分辨率、帧速率、SNR/PSNR或其类似者)处于特定值或相对小值范围来维持质量。如上文所述,设置及/或调整编码参数同时维持经编码视频数据的特定质量可影响视频压缩速率(或增加位速率)。根据本发明的方面,源装置12可在无需维持特定压缩速率及/或位速率的情况下设置及/或调整编码参数。
在一些实例中,源装置12可使用技术来平衡伴随视频压缩的功率消耗及/或热产生。举例来说,根据本发明的方面,源装置12可控制视频编码器20的一或多个编码参数来控制源装置12的功率消耗及/或由其产生的热。在一些实例中,源装置12可基于源装置12的一或多个组件的温度超过预定温度阈值来初始地控制视频编码器20的一或多个视频编码参数。在其它实例中,源装置12可最初基于电源经耗尽低于预定阈值或快于预定速率地被耗尽来控制视频编码器20的一或多个视频编码参数。在其它实例中,源装置12可最初基于经编码的像素的数目超过像素处理阈值来控制视频编码器20的一或多个视频编码参数。控制视频编码参数可有助于降低装置4A或装置4B的组件的温度及/或延缓装置4A或装置4B的电源的耗尽。
虽然上文的实例描述设置初始编码参数(例如,在编码前设置),但根据本发明的方面,源装置12可另外或替代地在编码期间(例如,实时或接近实时)动态地调整视频编码器20的视频编码参数。另外,源装置可使用条件(例如,温度、像素处理速率、电池状态或其类似者)的任何组合作为控制视频编码器20的参数的基础。
图3是说明可使用本发明的技术的视频编码器20的实例的框图。视频编码器20出于说明的目的将在HEVC编码的背景中进行描述,但不限制本发明以便其它编码标准或方法也可与本发明的技术一起使用。
视频编码器20可在视频图块内执行对视频块的帧内及帧间编码。帧内编码依赖于空间预测以减少或移除给定视频图片内的视频中的空间冗余。帧间编码依赖于时间预测以减少或移除视频序列的邻近图片内的视频中的时间冗余。帧内模式(I模式)可指代数个基于空间的压缩模式中的任一者。帧间模式(例如,单向预测(P模式)或双向预测(B模式))可指代数个基于时间的压缩模式中的任一者。
如图3中所展示,视频编码器20在待编码的视频图片内接收当前视频块。在图3的实例中,视频编码器20包含模式选择单元40、参考图片存储器64、加法器50、变换处理单元52、量化单元54及熵编码单元56。模式选择单元40又包含运动补偿单元44、运动估计单元42、帧内预测单元46及分割单元48。对于视频块重构,视频编码器20还包含反量化单元58、反变换单元60及加法器62。还可包含去块滤波器(图3中未展示)以对块边界进行滤波以将块效应伪像从重构视频移除。视需要,去块滤波器将通常对加法器62的输出进行滤波。除去块滤波器外,还可使用额外滤波器(环路中滤波器或环后滤波器)。此些滤波器为简洁起见未加以展示,但视需要可对加法器50的输出进行滤波(作为环中滤波器)。
在编码过程期间,视频编码器20接收待编码的视频图片或图块。图片或图块可被划分成多个视频块。运动估计单元42及运动补偿单元44相对于一或多个参考图片中的一或多个块执行对所接收视频块的帧间预测编码以提供时间压缩。帧内预测单元46可替代地相对于与待编码的块相同的图片或图块中的一或多个相邻块执行对所接收视频块的帧内预测编码。视频编码器20可执行多个编码遍次(例如)以为视频数据的每一块选择适当编码模式。
此外,分割单元48可基于前一编码遍次中的前一分割方案的评估而将视频数据块分割成子块。举例来说,分割单元48可初始地将图片或图块分割成LCU,且基于速率失真分析(例如,速率失真最优化)来将LCU中的每一者分割成子CU。模式选择单元40可进一步产生指示将LCU分割成子CU的四叉树数据结构。四叉树的叶节点CU可包含一或多个PU及一或多个TU。
模式选择单元40可(例如)基于错误结果而选择编码模式中的一者(帧内或帧间),且将所得帧内或帧间编码块提供到加法器50以产生残差块数据且提供到加法器62以重构经编码块以供用作参考图片。模式选择单元40还将语法元素(例如运动矢量、帧间模式指示符、分割信息及其它此类语法信息)提供到熵编码单元56。
运动估计单元42及运动补偿单元44可高度整合,但出于概念目的予以单独说明。由运动估计单元42执行的运动估计为产生运动矢量的过程,所述运动矢量估计视频块的运动。举例来说,运动矢量可指示当前视频图片内的视频块的PU相对于参考图片(或其它经编码单元)内相对于在当前图片(或其它经编码单元)内经编码的当前块的预测块的位移。
预测块为经发现在像素差方面接近匹配待编码的块,所述像素差可通过以下各项来确定:绝对差值和(SAD)、平方差值和(SSD)或其它差值度量。在一些实例中,视频编码器20可计算存储在参考图片存储器64中的参考图片的分段整数(sub-integer)像素位置的值。举例来说,视频编码器20可内插参考图片的四分之一像素位置、八分之一像素位置或其它分数像素位置的值。因此,运动估计单元42可相对于全像素位置及分数像素位置执行运动搜索且输出具有分数像素精度的运动矢量。
运动估计单元42通过将帧间编码图块中的视频块的PU的位置与参考图片的预测块的位置进行比较来计算所述PU的运动矢量。参考图片可选自第一参考图片列表(列表0)或第二参考图片列表(列表1),所述列表中的每一者识别存储在参考图片存储器64中的一或多个参考图片。运动估计单元42将所计算运动矢量发送到熵编码单元56及运动补偿单元44。
由运动补偿单元44执行的运动补偿可涉及基于由运动估计单元42所确定的运动矢量来提取或产生预测块。此外,在一些实例中,运动估计单元42及运动补偿单元44可在功能上整合。在接收到关于当前视频块的PU的运动矢量时,运动补偿单元44可将运动矢量指向的预测块定位于参考图片列表中的一者中。
加法器50通过将预测块的像素值从所编码的当前视频块的像素值减去从而形成像素差值来形成残差视频块,如下文所论述。一般来说,运动估计单元42执行关于亮度分量的运动估计,且运动补偿单元44将基于亮度分量所计算的运动矢量用于色度分量及亮度分量两者。模式选择单元40还可产生与在解码视频图块的视频块中供视频解码器30使用的视频块及视频图块相关联的语法元素。
帧内预测单元46可帧内预测当前块,作为由运动估计单元42及运动补偿单元44执行的帧间预测的替代方案,如上文所描述。特定来说,帧内预测单元46可确定帧内预测模式以用于对当前块进行编码。在一些实例中,帧内预测单元46可(例如)在单独编码遍次期间使用各种帧内预测模式来对当前块进行编码,且帧内预测单元46(或模式选择单元40,在一些实例中)可从所测试模式选择适当帧内预测模式来使用。
举例来说,帧内预测单元46可针对各种所测试帧内预测模式使用速率失真分析来计算速率失真值,且在所测试模式中选择具有最佳速率失真特性的帧内预测模式。速率失真分析通常确定经编码块与原始未经编码块(其经编码以产生经编码块)之间的失真(或错误)量,以及用于产生经编码块的位速率(即,位数目)。帧内预测单元46可依据各种经编码块的失真及速率来计算比率以确定哪一帧内预测模式展现块的最佳速率失真值。
视频编码器20通过将来自模式选择单元40的预测数据从所编码的原始视频块减去来形成残差视频块。加法器50表示执行此减法运算的(多个)组件。
变换处理单元52将变换(例如,离散余弦变换(DCT)或概念上类似变换)应用于残差块,从而产生包括残差变换系数值的视频块。变换处理单元52可执行概念上类似于DCT的其它变换。还可使用小波形变换、整数变换、子带变换或其它类型的变换。在任何状况下,变换处理单元52将变换应用于残差块,从而产生残差变换系数的块。变换可将残差信息从像素值域转换到变换域,例如,频域。
变换处理单元52可将所得变换系数发送到量化单元54。量化单元54使变换系数量化以进一步减少位速率。量化过程可减少与系数中的一些或全部相关联的位深度。量化程度可通过调整量化参数来修改。在一些实例中,量化单元54可接着对包含经量化变换系数的矩阵执行扫描。替代地,熵编码单元56可执行扫描。
在量化之后,熵编码单元56对经量化变换系数进行熵编码。举例来说,熵编码单元56可执行背景自适应可变长度编码(CAVLC)、背景自适应二进制算法编码(CABAC)、基于语法的背景自适应二进制算法编(SBAC)、概率区间分割熵(PIPE)编码或另一熵编码技术。在基于背景的熵编码的状况下,背景可基于相邻块。
在由熵编码单元56进行的熵编码之后,可将经编码位流传输到另一装置(例如,视频解码器30)或存档以供稍后传输或检索。反量化单元58及反变换单元60分别应用反量化及反变换以重构像素域中的残差块(例如)以供稍后用作参考块。运动补偿单元44可通过将残差块加入到参考图片存储器64的图片中的一者的预测块来计算参考块。运动补偿单元44还可将一或多个内插滤波器应用到经重构残差块以计算分段整数像素值以供用于运动估计。
加法器62将经重构的残差块加入到由运动补偿单元44产生的运动补偿预测块以产生经重构的视频块以存储在参考图片存储器64中。经重构视频块可由运动估计单元42及运动补偿单元44用作参考块以对随后视频图片中的块进行帧间编码。
根据本发明的方面,视频编码器20可经配置以至少部分地基于装置的操作特性来设置及/或调整用于对视频数据进行编码的一或多个编码参数。举例来说,根据本发明的方面,视频编码器20的一或多个编码参数可经控制以调节视频编码器20及/或含有视频编码器20的装置的功率消耗及/或由其产生的热。
在一些实例中出于说明的目的,可基于以下各项来设置及/或调整视频编码器20的一或多个编码参数:视频编码器20及/或装置含有视频编码器20的装置的其它组件的温度、视频编码器20的像素处理速率、含有视频编码器20的装置的电源的状态或其类似者。
根据本发明的方面,实例性编码参数可包含B帧参数、搜索区域参数及预测模式参数。可单独地或以组合的方式控制此些参数。另外,然而,应理解,这些实例经提供仅出于解释及说明的目的,且技术可连同其它编码参数一起使用,所述其它编码参数可影响视频编码器20或含有视频编码器20的装置的其它组件的功率汲取及/或热特性(例如,CU或PU的大小、量化速率、其它预测限制、对存储到参考图片存储器64的图片数目及/或数据量的限制或其类似者)。
在实例中,根据本发明的方面,视频编码器20可基于视频编码器20及/或含有视频编码器20的装置的操作特性来在视频编码中启用或禁用B帧。禁用B帧可(举例来说)减少编码所需要的存储器流量的量,借此减少在编码期间视频编码器20及/或由视频编码器20所利用的存储器的功率消耗。为了禁用B帧,视频编码器20可调整运动估计单元42及运动补偿单元44使得在帧间预测编码期间使用仅一个参考图片。将视频编码器20限制于单个参考图片列表可相对于使用两个列表减少执行运动估计/补偿所需要的计算资源及/或存储器存取。
在另一实例中,视频编码器20可限制及/或调整用于执行帧间预测的搜索区域。举例来说,限制用于执行帧间预测的搜索区域可减少与发现接近匹配当前所编码的块(例如,称作“最佳匹配”)的预测块相关联的计算量,借此减少视频编码器20的功率消耗。另外,相对较小搜索区域可减少从存储器存取的数据量,借此进一步减少功率消耗,如上文所述。视频编码器20可通过限制运动估计单元44可将预测块(例如,如由运动矢量所识别)定位于其中的其它图片或图块的区域来限制搜索区域。
在另一实例中,视频编码器20可限制及/或调整预测模式。举例来说,视频编码器20可确定一组可用预测模式。在一些实例中,视频编码器20可完全地启用或禁用帧间预测(如由运动估计单元42及运动补偿单元44所执行)。在其它实例中,视频编码器20可减少由帧内预测单元46应用的帧内模式的数目。减少可用的预测模式的数目及/或类型可经由减少的计算负荷及/或存储器存取的减少来减少功率消耗。举例来说,通过减少可用的预测模式的数目及/或类型,视频编码器20可执行相对少速率失真最优化,此可经由减少的计算负荷及/或存储器存取的减少来产生减少的功率消耗。
上文所描述的调整视频编码器20的参数可影响经编码视频数据的压缩速率及/或位速率。举例来说,在视频编码器20处应用限制(举例来说,例如限制B帧的使用、预测模式的数目、搜索区域的数目或其类似者)可产生相对于在无限制的情况下所编码的视频文件具有相对较大文件大小的经编码视频文件。本发明的技术包含将经编码视频文件自较低压缩速率转码成较高压缩速率,借此减少经编码视频文件的大小。在一些例子中,视频编码器20可用于转码视频数据。举例来说,在其中使用较低功率模式产生经编码视频文件的例子中,视频编码器20可将较大视频文件转码成较小文件大小(例如,使用较高压缩速率及/或较低位速率)。
在一些实例中,根据本发明的方面,可在满足预定转码条件时执行转码。在一些实例中,含有视频编码器20的装置可在装置中的一或多个组件空闲时,在装置的电池电源具有比预定量多的剩余电荷时,在装置连接到电源时或其类似者可起始转码。在此些实例中,触发条件可为以下各项中的至少一者:装置的预定空闲持续时间、装置的电池的电池状态(例如,剩余电荷、电荷耗散速率或其类似者)或装置的电源状态。
另外,根据本发明的方面,可在满足预定终止条件时终止转码。作为非限制性实例,终止条件可包含包含视频编码器20的装置的状态从空闲状态到活动状态的改变,或包含视频编码器20的装置的电源状态从外部电源到装置的内部电源的改变。
图4是说明可实施本发明的技术的视频解码器30的实例的框图。在图4的实例中,视频解码器30包含熵解码单元70、运动补偿单元72、帧内预测单元74、反量化单元76、反变换单元78、参考图片存储器82及加法器80。
在解码程序期间,视频解码器30从视频编码器20接收表示经编码视频图块的视频块的经编码视频位流及相关联语法元素。视频解码器30的熵解码单元70对位流进行熵解码以产生量化系数、运动矢量或帧内预测模式指示符及其它语法元素。熵解码单元70将运动矢量及其它语法元素转发到运动补偿单元72。视频解码器30可接收视频图块级及/或视频块级的语法元素。
在视频图块被编码为帧内编码(I)图块时,帧内预测单元74可基于来自当前图片的先前经解码块的所发信帧内预测模式及数据来产生关于当前视频图块的视频块的预测数据。
当视频图片被编码为帧间编码(即,B或P)图块时,运动补偿单元72基于从熵解码单元70接收的运动矢量及其它语法元素来产生当前视频图块的视频块的预测块。可由参考图片列表中的一者内的参考图片中的一者产生预测块。视频解码器30可基于参考图片存储器82中所存储的参考图片来使用默认构造技术构造参考图片列表(列表0及列表1)。
运动补偿单元72通过剖析运动矢量及其它语法元素来确定当前视频图块的视频块的预测信息,且使用预测信息来产生所解码的当前视频块的预测块。举例来说,运动补偿单元72使用所接收的语法元素中的一些来确定用于对视频图块的视频块进行编码的预测模式(例如,帧内或帧间预测)、帧间预测图块类型(例如,B图块或P图块)、关于图块的参考图片列表中的一或多者的构造信息、关于图块的每一帧间编码视频块的运动矢量、关于图块的每一帧间编码视频块的帧间预测状态及用以对当前视频图块中的视频块进行解码的其它信息。
运动补偿单元72还可基于内插滤波器执行内插。运动补偿单元72可使用如在对视频块进行编码期间由视频编码器20所使用的内插滤波器来计算参考块的分段整数像素的内插值。在此状况下,运动补偿单元72可依据所接收语法元素来确定由视频编码器20所使用的内插滤波器且使用内插滤波器来产生预测块。
反量化单元76可使在位流中提供且由熵解码单元70解码的经量化变换系数反量化,即,解量化。反量化过程可包含使用视频图块中的每一视频块的由视频解码器30计算的量化参数QPY来确定量化程度及同样地应应用的反量化的程度。
反变换单元78将反变换(例如,反DCT、反整数变换或概念上类似反变换过程)应用于变换系数以便在像素域中产生残差块。反变换可与在视频编码(例如,由视频编码器20进行)期间所应用的前向变换互逆。
在运动补偿单元72基于运动矢量及其它语法元素来产生当前视频块的预测块之后,视频解码器30通过对来自反变换单元78的残差块与由运动补偿单元72产生的对应预测块求和来形成经解码的视频块。加法器80表示执行此加法运算的(多个)组件。
视需要,还可应用去块滤波器来对经解码块进行滤波以便移除块效应伪像。也可使用其它环路滤波器(在编码环路中或在编码环路之后)来平滑像素过渡,或以其它方式改进视频质量。接着将给定图片中的经解码视频块存储在参考图片存储器82中,所述参考图片存储器存储用于随后运动补偿的参考图片。参考图片存储器82还存储用于稍后在显示装置(例如,图2的显示装置34)上呈现的经解码视频。
根据本发明的方面,视频解码器30可对由视频编码器20(如上文关于图2及图3所描述)编码的视频数据进行解码。在其中对视频进行转码的例子中,可在转码过程期间使用视频解码器30来对视频进行解码。
图5是展示可经配置以实施本发明的技术的装置100的一个实例的框图。在一些实例中,关于装置100所展示及所描述的一或多个组件可并入于装置4A及/或装置4B(图1)中。
在图5中所展示的实例中,装置100包含一或多个处理器104、存储一或多个应用程序110的存储器108、显示处理器114、本地显示器116、音频处理器120、扬声器122、输送单元126、无线调制解调器128、输入装置132、相机系统140、视频编码器/视频解码器(编解码器)144、电源146以及热/功率管理器148。其它实例可包含比图5中所展示的那些组件多或少的组件。另外,虽然出于论述的目的单独地描述某些组件,但应理解,关于图5所展示及描述的一些组件可高度整合或组合以形成单个组件。
组件104、108、114、120、126、132、136、140、144及148中的每一者可互连(以物理、通信及/或操作方式)以经由通信信道150进行组件间通信。在一些实例中,通信信道150可包含系统总线、网络连接、进程间通信数据结构或用于传达数据的任何其它信道。
一或多个处理器104可能够处理存储在存储器108中的指令。处理器104中的一或多者可形成装置100的中央处理单元(CPU)。处理器104可包含(例如)一或多个微处理器、DSP、ASIC、FPGA、离散逻辑或其任何组合。在一些实例中,处理器104可包含固定功能逻辑及/或可编程逻辑,且可执行软件及/或固件。当技术部分地以软件实施时,装置可将用于软件的指令存储在适合非暂时性计算机可读媒体中且在硬件中使用一或多个处理器来执行指令以执行本发明的技术。
图5的存储器108可包括广泛各种易失性或非易失性存储器中的任何者,包含但不限于随机存取存储器(RAM),例如,同步动态随机存取存储器(SDRAM)、只读存储器(ROM)、非易失性随机存取存储器(NVRAM)、电可擦除可编程只读存储器(EEPROM)、磁性随机存取存储器(MRAM)、FLASH存储器及其类似者。存储器108可包括用于存储音频/视频数据以及其它种类的数据的计算机可读存储媒体。
在一些实例中,存储器108可存储由处理器104执行作为执行本发明中所描述的各种技术的部分的应用程序110。存储器108还可存储某些音频/视频(A/V)数据以供由装置100呈现。举例来说,存储器108可存储整个A/V文件,或可包括较小缓冲器,所述较小缓冲器仅仅存储(例如)从另一装置或源流化的A/V文件的部分。在任何情形下,存储器108可在由装置100呈现数据之前缓冲A/V数据。存储器108还可在对视频数据进行编码时以及在已产生经编码视频文件之后存储视频数据(通过编解码器,下文描述为144)。
在一些实例中,装置100可本地处理及显示A/V数据。特定来说,显示处理器114可形成用于处理待在本地显示器116上显示的视频数据的平台的部分。就此来说,显示处理器114可包含编解码器(如上文关于处理器104所描述)。显示器116可包含液晶显示器(LCD)、发光二极管(LED)、有机发光二极管(OLED),或可向用户产生可理解的输出的任何其它类型的装置。另外,音频处理器120可处理音频数据以在一或多个扬声器122上输出。
输送单元126可处理经编码A/V数据以用于网络输送。举例来说,经编码A/V数据可由处理器104进行处理且由输送单元126封装到网络接入层(NAL)单元以用于跨越网络进行传达。NAL单元可通过调制解调器128经由网络连接发送到另一装置。就此来说,调制解调器128可根据任何数目个通信技术操作,所述通信技术包含(例如)正交频分多路复用(OFDM)技术、时分多重存取(TDMA)、频分多重存取(FDMA)、码分多重存取(CDMA)或OFDM、FDMA、TDMA及/或CDMA的任何组合、WiFi、蓝牙、以太网、IEEE802.11标准系列或任何其它无线或有线通信技术。在一些例子中,装置100的调制解调器128可接收经封装的数据包(例如,NAL单元),且将经封装的数据单元发送到输送单元126以进行解封装。举例来说,输送单元126可从NAL单元提取数据包,且处理器104可剖析数据包以提取用户输入命令。
一或多个输入装置132可经配置以通过触觉、音频或视频反馈接收来自用户的输入。输入装置132的实例包含触敏式及/或存在敏感式屏幕、鼠标、键盘、话音响应系统、麦克风或用于检测来自用户的命令的任何其它类型的装置。
图形处理单元(GPU)136表示一或多个用于执行图形操作的专用处理器。即,举例来说,GPU136可为具有固定功能的专用硬件单元及/或用于呈现图形且执行GPU应用程序的可编程组件。在一些实例中,GPU136还可包含DSP、通用微处理器、ASIC、FPGA或其它等效集成或离散逻辑电路。尽管GPU136在图5的实例中被说明为单独单元,但在一些实例中,GPU136可与一或多个其它处理器104(例如,CPU)整合成单个单元。
相机系统140可包含图像处理器、图像传感器以及用于捕获图像的多个其它组件。相机系统140可包含用于所谓相机电话或视频电话的一或多个组件。在一些例子中,相机系统140可结合GPU136操作以产生基于计算机图形的数据作为源视频,或直播视频、经存档视频及/或计算机产生视频的组合。所捕获、预捕获或计算机产生视频可由视频编码器(上文所描述)进行编码。
编解码器144可经配置以对A/V数据进行编码及/或解码以用于输送、存储及显示。举例来说,编解码器144可包含视频编码器20及视频解码器30中的一者或两者且可作为视频编码器或视频解码器操作,视频编码器或视频解码器中的任一者可整合为组合式视频编码器/解码器(编解码器)的部分,如上文关于图2至4所描述。在一些例子中,编解码器144可根据视频压缩标准(例如,ITU-TH.264标准,替代地称作MPEG-4,第10部分,高级视频编码(AVC),或此些标准的扩展)操作。视频压缩标准的其它实例包含MPEG-2及ITU-TH.263以及高效视频编码(HEVC)标准。
热/功率管理器148可管理装置100中的一或多个组件以使一或多个组件以一或多个操作特性目标或低于一或多个操作特性目标操作。在实例中,操作特性此目标可为指示装置100的操作温度的热目标,使得调整装置的至少一个操作参数以产生操作特性目标包括:调整装置的至少一个操作参数以维持装置的温度等于或小于热目标。在另一实例中,操作特性目标包括指示由操作装置所消耗的功率量的功率目标,使得调整装置100的至少一个操作参数以产生操作特性目标包括:调整装置的至少一个操作参数以维持装置的功率消耗等于或小于功率目标。
电源146可为通过使存储在电源146内的电荷放电来将功率提供到装置100的组件的任何单元。在一些实例中,电源146可为可再充电电池且可耦接到功率电路。即,电源146可为并联或串联捆绑在一起以形成单个电源的一或多个可再充电电池。在另一实例中,电源146可包括一或多个一次性电池(例如,不可再充电)、一或多个电容器及/或超级电容器。另外,虽然在图5经展示为单个电源146,但装置100可包含多个不同电源146。
如上文所述,电源146可包含一或多个可再充电电池或不可再充电电池或电池组,例如一或多个原电池。电源146的实例包含但不限于铅酸电池、镍镉(NiCad)电池、镍金属氢化物(NiMH)电池、锂离子(Li离子)电池及锂离子聚合物(Li离子聚合物)电池。
电源146可将功率提供到装置100的各种组件中的一者、一些或全部。因此,可由于装置100的各种组件消耗功率而使电源146放电。由于放电,可需要周期性使电源146再充电或将其替换以确保电源146不会完全耗尽。电源146可包含用以促进电源146的充电的充电单元。举例来说,电源146可经由外部电源再充电,所述外部电源包含(例如)交流(AC)有线电源及/或电磁电源。因此,在一些例子中,电源146可包含用于电感能量转移的AC适配器或充电线圈。
根据本发明的方面,热/功率管理器148可设置及/或调整由编解码器144实施的一或多个编码参数以至少部分地基于装置100的操作特性成对视频数据进行编码。热/功率管理器148可控制编解码器144的一或多个编码参数以调节编解码器144、存储器108或装置100的其它组件的功率消耗及/或由其产生的热。举例来说,热/功率管理器148可采取前瞻性方法来通过初始设定一或多个操作参数来进行调节及/或采取反应性方法来通过调整/修改一或多个操作参数来进行调节。
在实例中,热/功率管理器148可基于编解码器144、存储器108或装置100的其它组件(例如,装置100的CPU、GPU136、输送单元126及/或调制解调器128或各种其它组件)来设置及/或调整编解码器144的一或多个编码参数。在另一实例中,热/功率管理器148可基于编解码器144的像素处理速率来设置及/或调整编解码器144的一或多个编码参数。在另一实例中此,热/功率管理器148可基于电源146的状态(例如,电源146的放电速率、电源146的电容、电源146的剩余电荷、电源146的充电状态或其类似者)来设置及/或调整编解码器144的一或多个编码参数。
如上文关于图2的实例所述,实例性编码参数可包含B帧参数、搜索区域参数及预测模式参数。举例来说,热/功率管理器148可基于装置100的操作特性来启用或禁用编解码器144中的B帧编码。在另一实例中,热/功率管理器148可限制及/或调整运动搜索区域以在编解码器144中执行帧间预测。在另一实例中,热/功率管理器148可限制及/或调整由编解码器144所使用的预测模式,例如,帧内预测模式。调整这些或其它参数可有助于热/功率管理器148经由编解码器144上的减少的计算负荷、对存储器108的读取/写入的减少及/或其类似者来减少功率消耗。
在一些例子中,编解码器144的编码参数可称作“旋钮”。举例来说,“旋钮”的数目可经调整以提供具有特定处理参数/功能的特定编解码器144配置。下文在表1中展示实例性旋钮及相关联编码参数:
表1
虽然如上文所述参考B帧、搜索区域及预测模式,但应理解热/功率管理器148可控制编解码器144的其它操作参数以实现功率及/或热能的减少。因此,技术可用于在起始热缓和之前提供相对较长全性能持续时间以及较长电池寿命。另外,虽然经编码视频文件的大小可变更,但技术不影响经编码数据的质量。
根据本发明的一些方面,热/功率管理器148可使用一或多个功率模型来评估视频编码设置的功率影响。热/功率管理器148可至少部分地基于这些功率模型来确定编解码器144的参数。
举例来说,如上文所述,可基于视频编码参数(例如,对存储器的读取/写入存取)而影响存储器使用率及相关联功率汲取。作为另一实例,装置100可将来自编解码器144的经编码视频存储到存储器108,或可经由输送单元126及/或调制解调器128将经编码视频数据传输到远程存储器(例如,基于云的存储装置)。与存储经编码数据相关联的功率汲取可取决于视频文件的大小、存储位置及存储数据中所涉及的组件(例如,存储器总线、无线发射器或其类似者)。
根据本发明的方面,热/功率管理器148可使用一或多个功率模型来确定所估计功率消耗,且可使用所估计功率消耗来控制编解码器144的视频编码参数。实例性功率模型包含用于编解码器144的功率模型、用于存储器108的功率模型及用于输送单元126及/或调制解调器128的功率模型。在实例中,当所估计功率汲取超过预定阈值时,热/功率管理器可实施设置及/或调整以对编解码器144的参数进行编码以减少装置100的功率消耗。
在一个实例中出于说明的目的,用户可规定使用率要求。举例来说,用户可规定装置100必须保持可操作达某一时间长度(例如,一小时的视频录制及/或编码)。在此实例中,热/功率管理器148可确定电源146的电荷状态及装置100的所估计功率汲取(例如,使用一或多个功率模型)且可设置及/或调整编解码器144的编码参数以试图满足用户规定持续时间。在其它实例中,功率参数不需要为用户规定。即,可将功率使用率数据存储到存储器108且用于使电源146的寿命最大化。
根据本发明的方面,热/功率管理器148可设置及/或调整编码参数同时维持特定视频质量。举例来说,用于控制装置100的温度的一些技术可包含处理器节流、帧速率的减少及/或分辨率的减少。然而,此些技术通常致使经编码视频数据的质量的损失。
根据本发明的方面,热/功率管理器148可设置及/或调整编码参数同时维持特定视频质量。如上文所述,在一些例子中,设置及/或调整编码参数同时维持经编码视频数据的特定质量可致使经编码视频数据的压缩速率(也称作压缩比)及/或位速率改变。在一些实例中,热/功率管理器148可通过允许经编码视频数据的压缩速率及/或位速率视需要上升或下降来保持经编码视频数据的质量。
对视频数据进行编码的压缩速率(或位速率)可影响所得文件大小。举例来说,针对视频数据(例如,给定数目个帧)的给定质量,相对较高压缩速率(或较低位速率)可产生相对较小经编码文件大小,而较低压缩速率(或较高位速率)可产生相对较大经编码文件大小。因此,设置及/或调整编码参数同时维持视频数据的特定质量也可影响经编码视频数据的文件大小(经由对压缩速率/位速率的影响)。
根据本发明的方面,热/功率管理器148可起始一或多个视频文件的转码过程来将视频文件从第一文件大小转码成第二较小文件大小(例如,具有增加的压缩速率)。举例来说,转码可包含在以特定水平(例如,位速率)对内容进行编码之后应用额外编码环路。转码可通过编解码器144或装置100的另一组件实施。
在一些实例中,根据本发明的方面,热/功率管理器148可在满足预定转码条件时起始转码。举例来说,热/功率管理器148可在装置100的一或多个组件(例如,处理器104、显示处理器114/显示器116或其类似者)空闲时起始由编解码器144进行的转码。
在另一实例中,热/功率管理器148可在电源146超过预定剩余功率阈值(例如,电源146含有预定剩余电荷)时起始转码。在另一实例中,热/功率管理器148可在电源146放电比预定速率慢时起始转码。在另一实例中,热/功率管理器148可在电源146连接到外部电源(例如,AC电源)时起始转码。在另一实例中,热/功率管理器148可在由装置100的用户指示进行转码时起始转码。其它实例也是可能的。
图6是图片组(GOP)的至少一部分的概念图。一般来说,预测由箭头指示,其中所指向图片使用指自对象作为预测参考。图6的实例说明帧内编码图片I1(即,I帧)、在一个方向P1及P2上进行帧间编码的两个图片(即,作为P帧)及在多个方向B1及B2上进行帧间编码的两个图片(即,作为P帧)。
在一些实例中,视频编码器(例如,视频编码器20及/或编解码器144)可确定(例如,在固件中)是否在对帧进行编码之前将所述帧编码为B帧或P帧。在将图片编码为P帧时,视频编码器可从一个参考列表(例如,RefPicList0或RefPicList1)搜索预测数据。然而,当将图片编码为B帧时,视频编码器在两个方向上(即,在两个参考图片列表中)搜索预测数据。在额外位置中搜索预测数据产生额外存储器读取,此增加存储器带宽使用率。
根据本发明的方面,装置的功率管理器(例如,装置100(图5)的热/功率管理器148)可基于装置的操作特性在视频编码中启用或禁用B帧的使用。就此来说,当禁用B帧编码时,可将图6的图片B1及B2编码为P帧或I帧。因此,视频编码器在一个方向(即,用一个参考图片列表)而非两个上执行对帧间预测数据的运动搜寻。举例来说,禁用B帧可减少编码所需要的存储器流量(例如,从存储器读取且写入到存储器)的量,借此减少装置的功率消耗。
在一些实例中,如上文所述,禁用B帧可产生具有较低压缩速率的视频文件。作为实例,禁用B帧可致使相同质量的经编码视频数据增加大约15%的位速率。
图7是说明参考图片155中的当前所编码的块152及搜索区域154(所有阴影方框)的概念图。举例来说,搜索区域154是参考图片155中的视频编码器(例如,视频编码器20(图2及3)及编解码器144)可定位用于对当前块152进行帧间编码的预测块的区域。搜索区域154可为参考图片155的其中准许视频编码器定位且识别用于对当前块进行帧间预测的最佳匹配156(标记有“X”)的区域。视频编码器可在最佳匹配156与当前块152之间产生残差。在一些实例中,视频编码器可在对帧进行编码之前确定(例如,在固件中)用于运动搜索的搜索区域的大小(例如,在像素数目及/或块数目方面)。
根据本发明的方面,装置的功率管理器(例如,装置100(图5)的热/功率管理器148)可基于装置的操作特性来调整搜索区域154。举例来说,功率管理器可基于装置的操作特性(例如,当装置的功率消耗及/或温度超过预定阈值时)来将搜索区域154从第一大小(包含所有阴影块)减少到第二较小大小158(包含更深阴影块且称作“减少搜索区域”)。一般来说,如上文关于图3所述,搜索区域可为运动搜索的区。举例来说,搜索区域154可用于识别接近匹配当前所编码的块(当前块152)的块,使得所识别块可在运动估计/补偿期间用作参考块。在一些实例中,可基于平方差值和(SSD)、绝对差值和(SAD)或用以识别参考块的其它度量来相对于当前块152对搜索区域154的区域(例如,块)进行评估。举例来说,减少搜索区域的大小可减少编码所需的存储器流量(例如,从存储器读取以定位用于帧间预测的参考块)的量。另外,可减少与块匹配相关联的计算。因此,技术可减少装置的功率消耗。
然而,减少搜索区域也可导致定位用于对当前块进行帧间编码的最佳匹配的较低概率。举例来说,如图7中所展示,减少的搜索区域158不再包含最佳匹配156。因此,视频编码器可从减少的搜索区域158选择不匹配当前块152以及最佳匹配156的块,借此增加残差的大小且降低编码效率。因此,虽然技术可节省存储器带宽(借此降低功率汲取及/或温度),但节省可能是以较低压缩效率为代价来实现。如本文中所描述,视频编码器可在适当时间对数据进行转码以重新获得所损失的压缩。
在一些例子中,减少搜索区域(如在图7中所展示)可为具有大尺寸的图片(例如,具有4000个像素(称作“4K”)的水平分辨率的图片)及具有相对有限芯片上存储器的视频编码器提供相对显著的存储器带宽节省。在一些实例中,可在搜索区域从±256×±128减少到±112×±64(以像素为单位)的条件下获得平均3%的速率增加。
图8A及8B是分别说明帧内预测及帧内预测模式的概念图。在帧内预测中,如在图8A中所展示,相对于相同图块或图片的相邻像素的信息对视频数据159的块(“经编码块”)进行编码。即,视频编码器(例如,视频编码器20及/或编解码器144)可基于所编码的块的样本与相邻样本之间的差来确定残差。
可以各种不同方式对像素进行帧内预测。图8B是说明在HEVC中使用的帧内预测模式的图。图8B大体说明与可用于在HEVC中进行帧内编码的各种方向性帧内预测模式相关联的预测方向。在当前HEVC中,针对每一预测单元(PU)的亮度分量,帧内预测方法与33个方向性(角度)预测模式(索引编号为从2到34)、DC模式(索引编号为1)及平面模式(索引编号为0)一起使用,如图8B中所展示。
在平面模式(索引编号为0)中,使用所谓“平面”函数来执行预测以确定视频数据块(例如,PU)内的像素中的每一者的预测器值。在DC模式(索引编号为1)中,使用块内的像素值的平均值来执行预测以确定块内的像素中的每一者的预测器值。在方向性预测模式中,沿着特定方向(如由模式所指示)基于相邻块的重构像素执行预测,其中此些重构像素用作帧内预测参考样本。一般来说,图8B中所展示的箭头的尾端表示从其检索一值的相邻像素中的相对者,而箭头的头部表示传播所检索值以形成预测块的方向。
针对HEVC帧内预测模式,视频编码器及/或视频解码器使用上文所论述的各种模式(例如,通过将PU的相邻样本用于模式2到34)来产生关于PU中的每一像素的像素特定预测器值。视频编码器(例如,以编解码器144实施的编码器20)基于块的像素的实际深度值与预测器值之间的差而确定视频块的残差值,且将残差值提供到视频解码器(例如,实施在编解码器144中的解码器30)。视频编码器变换残差值且使变换系数量化,且还可对经量化的变换系数进行熵编码。视频解码器在熵编码、反量化及反变换之后通过使残差值与预测器值相加来确定关于块的像素的重构值。
在一些实例中,视频编码器可在对帧进行编码之前确定(例如,在固件中)预测模式(例如,帧内预测模式或帧间预测模式)。如上文所述,帧间预测(其中针对预测块搜索参考图片)可由于从存储器提取及读取参考图片而需要相对高存储器带宽。然而,如上文所述,帧内预测仅使用当前所编码的图片的相邻像素作为参考。因此,在帧内编码的状况下可不需要从外部存储器读取参考数据。
根据本发明的方面,装置的功率管理器(例如,装置100(图5)的热/功率管理器148)可基于装置的操作特性来选择预测模式。举例来说,功率管理器可减少可获得的可用预测模式的数目,包含禁用帧内预测模式及/或帧内模式中的一或多者(例如,如上文关于图8B所描述)。举例来说,减少可获得的预测模式可减少编码所需要的存储器流量的量及/或计算资源,借此减少装置的功率消耗。
然而,减少可获得的预测模式的类型及/或数目也可导致较低压缩效率。因此,虽然技术可节省带宽及/或计算,但节省可能以较低压缩效率为代价来实现。举例来说,从帧间预测模式切换到帧内预测模式可相对显著地减少存储器带宽,但经编码视频数据的位流可相对大量地增加。如本文中所描述,视频编码器可在适当时间对数据进行转码以重新获得所损失的压缩。
图9说明根据本发明的方面的用于对视频数据进行编码的实例性过程。举例来说,图9说明其中可基于装置(例如,装置100)的一或多个操作特性(例如)在编码之前初始地设置视频编解码器160(其可经配置成类似于视频编码器20及/或编解码器144或与其相同)的一或多个操作参数的实例。
作为实例,操作特性可包含所编码的视频数据的帧速率(例如,以帧/秒(FPS)为单位)、所编码的视频数据的分辨率、所编码的视频数据的像素处理速率或其任何组合。在一些实例中,像素处理速率可通过序列中的图片的分辨率乘以序列的帧速率(例如,录制分辨率*FPS信息)来确定。虽然出于说明的目的在图9的实例中单独展示,但操作特性还可包含装置的电池的电池状态(例如,电池的电容、电池的剩余电荷、电池的充电状态或其类似者)。
在图9的实例中,装置可使用参数/阈值164的查找表或其它列表或模型来确定视频编解码器160的操作参数。在一些实例中,参数的列表可被包含在装置的驱动器中及/或由其存取。因此,查找表或阈值方框164表示使用查找表(LUT)或其它比较函数来确定视频编解码器160的操作参数。举例来说,热及/或功率管理器(举例来说,例如热/功率管理器148)可并入有LUT或阈值方框164以确定视频编解码器160的设置/调整。即,热及/或功率管理器可接收操作特性及/或电池状态信息且使用数据作为指标值以获得视频编解码器160的设置及/或调整。
如在本发明中他处所述,设置及/或调整(例如,编码参数)可经选择以在压缩速率与功率消耗之间获得最佳权衡。即,可使用技术来降低功率消耗及/或由装置所产生的热,但可导致经编码文件的大小增加。
可经确定用于视频编解码器160的实例性编码参数包含启用抑或禁用B帧、是否调整与帧间预测模式相关联的搜索区域及是否启用一或多个预测模式。本发明的技术并不限于这些实例性参数。其它编码参数的调整也是可能的(例如,块的大小、量化速率、其它预测限制、对经存储到经解码图片缓冲器的图片的数目及/或数据的量的限制或其类似者)。
在一些实例中,编码参数可为静态的。在其它实例中,编码参数可为动态的。即,查找表164的编码参数可基于装置的操作条件而改变。在实例中出于说明的目的,假定表164包含用于维持视频编解码器160低于预定操作温度及/或功率消耗阈值的第一参数集。进一步假定编解码器160使用参数来对视频数据进行编码但超过预定操作温度及/或功率消耗阈值。在此实例中,在对文件进行编码之后但在对随后文件进行编码之前,可用可实现更积极功率节省的操作参数来更新表164。
图10说明根据本发明的方面的用于对视频数据进行编码的另一实例性过程。举例来说,图10说明其中可基于装置(例如,装置100)的一或多个操作特性在编码期间动态地改变视频编解码器170(其可经配置成类似于视频编码器20及/或编解码器144或与其相同)的一或多个操作参数的实例。
作为实例,操作特性可包含所编码的视频数据的帧速率(例如,以帧/秒(FPS)为单位)、所编码的视频数据的分辨率、所编码的视频数据的像素处理速率、装置的电池的电池状态(例如,电池的电容、电池的剩余电荷、电池的充电状态或其类似者)或其任何组合。在一些实例中,像素处理速率可通过序列中的图片的分辨率乘以序列的帧速率(例如,录制分辨率*FPS信息)来确定。
在图10的实例中,系统级热引擎174可从装置的一或多个功能块接收温度读数。系统级热引擎可向视频热/功率管理器178(其可对应于热/功率管理器148(图5))发出热缓和请求(以减少装置的温度)或功率预算限制请求(以减少装置的功率消耗)。
视频热/功率管理器178可确定关于视频编解码器170的操作参数的设置及/或调整以满足热缓和请求或功率预算限制请求,且可基于上文所描述的操作特性(包含电池状态)。在一些实例中,视频热/功率管理器178可被包含在装置的驱动程序内及/或由其存取。此外,如在本发明中他处所述,可使用技术来降低功率消耗及/或由装置所产生的热,但可导致经编码文件的大小增加。
视频热/工管理器178可调整的实例性编码参数包含启用抑或禁用B帧、是否调整与帧间预测模式相关联的搜索区域及是否启用一或多个预测模式。本发明的技术并不限于这些实例性参数。其它编码参数的调整也是可能的(例如,块的大小、量化速率、其它预测限制、对经存储到经解码图片缓冲器的图片的数目及/或数据的量的限制或其类似者)。
在一些实例中,系统热引擎174及视频热功率管理器178可一起操作以控制包含视频编解码器170的装置的功率汲取及/或温度。举例来说,系统热引擎174及视频热功率管理器178可基于预定优先次序操作以控制包含视频编解码器170的装置的功率汲取及/或温度。在一些例子中,根据本发明的技术,视频热功率管理器178可初始地负责调整编码参数同时维持特定质量的视频数据。如果由视频热功率管理器178应用的技术未使装置的功率消耗及/或温度减少低于特定阈值,那么系统级热引擎174可应用其它技术(例如,处理器节流、FPS的减少、分辨率的减少或其类似者)来进一步降低包含视频编解码器170的装置的功率汲取及/或温度而完全忽略视频质量。
图11说明根据本发明的方面的用于对经编码视频数据进行转码的实例性过程。图11的实例包含转码单元180。转码单元180可为装置(例如,装置100)的单独单元,或可被包含在编解码器(例如,编解码器144)中。举例来说,转码单元180可表示使用不同于第一遍次的编码参数通过编解码器144的第二遍次。
如上文所述,调整上文所描述的参数(或本发明中未特别描述的其它编码参数)可影响经编码视频数据的位速率。根据本发明的方面,转码单元180可使一或多个视频文件从第一文件大小转码成第二较小文件大小(例如,具有增加压缩速率)。
在一些实例中,根据本发明的方面,转码单元180可在满足预定转码条件时(例如,在初始化触发及/或终止触发时)起始转码。举例来说,转码单元180可在含有转码单元180的装置的一或多个组件空闲时起始转码。在另一实例中,转码单元180可在电源超过预定剩余功率阈值时起始转码。在另一实例中,转码单元180可在使电源以比预定速率慢的速率放电时起始转码。在另一实例中,转码单元180可在电源连接到外部电源(例如,AC电源)时启动转码。在另一实例中,热/功率管理器148可在由装置100的用户指示进行转码时起始转码。其它实例也是可能的。
同样地,转码单元180可在预定终止触发发生时使转码停止(终止)。在一些实例中,转码终止触发可基于转码初始化触发。在实例中,如果转码单元180在装置的一或多个组件空闲(例如,触发器处于空闲持续时间)时起始转码,那么转码单元180可在装置的一或多个组件变得活动时终止转码。在另一实例中,如果转码单元180在电源超过预定剩余功率阈值时起始转码,那么转码单元180可在电源具有比阈值小的功率时终止转码进程等等。
根据本发明的方面,转码180可继续在活动转码(在满足触发时)与不转码(在满足终止条件时)之间双态切换直到特定文件已完成转码为止。
图12说明用于确定装置(诸如装置100)的功率消耗的实例性过程。举例来说,如上文所述,根据本发明的方面,装置可使用一或多个功率模型来评估视频编码设置的功率影响。装置可至少部分地基于这些功率模型来确定视频编码器(例如,视频编码器20及/或编解码器144)的一或多个编码参数。在图12的实例中,功率模型包含视频编码器功率模型200、存储器功率模型202、本地存储装置功率模型204、蜂窝式功率模型206及无线局域网(WLAN)功率模型208。
可将经编码视频数据存储到各种位置,其中的每一者可影响存储视频数据所需要的功率。举例来说,装置可使用比将视频数据存储到远程存储位置少的功率来将视频数据存储到本地存储位置(例如,存储器108(图5))。举例来说,由于来自调制解调器或用于将数据传输到远程存储位置的其它组件的功率汲取,远程存储位置可需要相对更多功率。根据本发明的方面,装置可使用功率模型200到208来评估视频编码设置的芯片组或系统级功率影响,且决定关于较低功率消耗的最佳设置。
视频编码器功率模型200可基于一或多个视频编码参数对装置的视频编码器的功率使用率进行建模。举例来说,视频编码器功率模型200可确定所编码的视频数据的像素处理参数。在一些实例中,像素处理参数可为基于所编码的视频数据的分辨率乘以所编码的视频数据的帧速率而确定的像素处理速率。举例来说,像素处理速率(以像素/秒为单位)可等于图片的水平像素的数目乘以图片的垂直像素的数目乘以视频数据的帧速率(FPS)。视频编码器功率模型200还可考虑多个其它视频编码器设置及/或参数(例如,预测模式、B帧是否经启用、搜索区域或其类似者)。
本地存储装置功率模型204可在将经编码视频数据存储到本地存储器(例如,装置的存储器,例如,SD卡)时对装置的功率使用率进行建模。蜂窝式功率模型206可在使用无线传输技术(例如,蜂窝式或其它无线技术)将经编码视频数据存储到远程存储器时对装置的功率使用率进行建模。在一些实例中,蜂窝式功率模型206可对3G/4G蜂窝式调制解调器、射频(RF)发射器及功率放大器(PA)的功率进行建模。WLAN功率模型208可在使用无线传输技术(例如,WiFi或其它无线技术)将经编码视频数据存储到远程存储器时对装置的功率使用率进行建模。在一些实例中,WLAN208可对WiFi调制解调器及功率放大器PA的功率进行建模。
功率模型可用于在装置的视频编码器实施特定视频编码参数时确定对装置的功率消耗的所估计影响。即,功率模型可由影响单元210用于确定由特定编码参数(或编码参数的调整)所致的总功率影响。举例来说,影响单元210可计算视频编码器功率模型200、存储器功率模型202、本地存储装置功率模型204、蜂窝式功率模型206及无线局域网(WLAN)功率模型208的和。在一些实例中,所述和可为加权和,将更多权重赋予功率模型200到208中的一或多者而非其它功率模型200到208。
根据本发明的方面,装置可使用功率模型200到208来控制视频编码器的视频编码参数。在实例中,当所估计功率汲取超过预定阈值时,装置可实施编码参数以减少装置的功率消耗,如在本发明中他处所描述(例如,禁用B帧、减少搜索区域、禁用一或多个预测模式或其类似者)。
关于图9到12(以及在本发明中的他处)所描述的技术可在一些例子中使用由装置执行的一或多个算法来实施。下文在表2的实例中说明实例算法及细节:
表2
图13说明功率消耗对多个编码参数的实例性曲线图(例如,B帧编码参数(如上文关于图6所描述)、搜索区域参数(如上文关于图7所描述)及编码模式参数(如上文关于图8A及8B所描述))。图13的实例性曲线图可表示在对给定量的视频数据进行编码时图12的蜂窝式功率模型206的应用。
举例来说,线180表示对给定量的视频数据进行编码时由装置的视频编码器及/或存储器所消耗的功率量。线182表示将经编码视频数据以无线方式传输到远程存储位置(假定装置与和所述装置通信的基站的距离相对长)所需要的功率量。线184表示将经编码视频数据以无线方式传输到远程存储位置(假定装置与和所述装置通信的基站的距离相对短)所需要的功率量。
如由线180所说明,在启用B帧、搜索区域相对大且视频数据是以帧间模式进行编码时,与对视频数据进行编码相关联的功率消耗相对大。大功率消耗可归因于在执行视频编码时的计算及数据传送(视频编码器与存储器之间)。在禁用B帧,使用较小搜索区域及/或执行帧内模式编码时,存储器带宽及处理的减少可致使对视频数据进行编码所需要的功率量的减少。
然而,如由线182及184所说明,与将经编码视频文件存储到远程存储位置相关联的功率消耗可在禁用B帧,使用较小搜索区域或执行帧内模式编码时增加。举例来说,在维持视频数据的特定质量且禁用B帧时,经编码视频的大小增加(相对于B帧经启用)。因此,与传输较大文件大小相关联的功率消耗也增加。
与传输视频数据相关联的功率可基于多个因素变化。举例来说,如图13中所展示,如果传输经编码视频数据的装置经定位离蜂窝式基站相对远(线182),那么蜂窝式调制解调器、RF发射器及PA的功率汲取可相对高以产生更强大传输(TXdBm)。如果所述装置经定位离蜂窝式基站相对近(线184),那么蜂窝式调制解调器、RF发射器及PA的功率汲取可相对低,因为传输(TXdBm)需要较低功率。
根据本发明的方面,装置可基于与编码及存储视频数据相关联的功率量来确定编码参数(例如,B帧编码参数、搜索区域参数、编码模式参数或其类似者)。举例来说,装置可基于由调整所致的功率汲取的改变来使编码参数调整最优化。
在实例中出于说明的目的,装置可基于与对视频数据进行编码相关联的功率(线180)和与存储视频数据相关联的功率(线182或线184)的交集来调整视频编码参数。通过基于交集来选择编码参数,装置可定位与产生经编码文件及传输/存储经编码文件相关联的最优化功率消耗。
关于线182及184,举例来说,经定位相对接近于基站且因此在传输经编码视频数据时消耗相对小量的功率(线184)的装置可选择产生相对大文件大小的编码参数。即,线180与184的交集经定位在曲线图的右侧,其中B帧被禁用,搜索区域较小及/或使用帧内模式编码,此致使大文件大小。然而,准许大文件大小,因为与传输经编码文件相关联的功率量相对小且功率节省可通过禁用编码参数来实现。
然而,经定位离基站相对远且因此在传输经编码视频数据时消耗相对大量的功率(线182)的装置可选择产生相对小文件大小的编码参数。即,线180与182的交集经定位较远在曲线图的左边,其中可启用B帧,搜索区域可为大的及/或可使用帧间模式编码,此致使较小文件大小。然而,准许与启用此些参数相关联的功率汲取,因为与传输经编码文件相关联的功率量相对大且功率节省可通过传输较小文件来实现。
图13的实例经呈现仅出于说明的目的。可产生类似曲线图以用于确定其它操作参数(例如,搜索区域、预测模式或其类似者)的任何组合。下文所展示的表3说明针对以30FPS及24FPS捕获的给定量的视频数据禁用B帧的结果。
图14是说明与本发明的技术一致地使用调色板编码模式来对视频数据进行编码的实例性过程的流程图。关于具有编解码器的装置(例如,装置100及编解码器144(图5))来解释图14的过程。然而,应理解,具有用于视频编码的一或多个其它组件的其它装置可经配置以执行类似方法。此外,可以不同次序或并行执行方法中的某些步骤。同样地,在各种实例中,可省略某些步骤,且可添加其它步骤。
在图14的实例中,装置100确定用于编解码器144的一组初始编码参数(190)。举例来说,根据本发明的方面,装置100可确定初始参数,包含B帧参数、搜索区域参数及预测模式参数。装置100可选择初始参数以基于装置100及/或编解码器144的操作特性预先控制装置100操作的温度及/或装置100的功率汲取。
举例来说,装置100可基于由编解码器144编码的视频数据的像素处理速率来确定一或多个初始编码参数。高像素处理速率可与大计算负荷及对应高温度及/或功率汲取相关联。因此,装置可确定一或多个编码参数以减少计算负荷及/或减少与编码相关联的存储器流量,借此预先控制装置100的温度及/或功率汲取。在一些实例中,装置100可基于查找表或参数值的其它列表来确定初始编码参数。
编解码器144可接着开始使用初始编码参数来对视频数据进行编码(192)。装置100还可确定装置100的一或多个操作特性(194)。举例来说,装置100可确定装置的一或多个组件的温度。在另一实例中,装置100可确定用于对视频数据进行编码的像素处理速率,此可基于视频数据的分辨率及视频数据的帧速率。在另一实例中,装置100可确定装置的电池的状态(例如,电池中剩余的电荷、电池当前经充电抑或正充电或其类似者)。
装置100可确定操作特性中的一或多者是否超过相应特性的阈值(196)。在一些实例中,装置100可实施预定或动态阈值以维持装置100操作低于特定操作温度及/或延缓电源146的耗尽。在一些实例中,装置100可直接确定温度阈值。在其它实例中此,装置100可确定代理阈值,所述代理阈值可指示装置100的一或多个组件的温度,例如,像素处理速率阈值。在其它实例中,装置100可确定电源阈值,例如,防止电源146耗尽超过预定量或比预定速率快。
如果操作特性不大于相应阈值,那么装置100可维持所述编码参数不改变(198)。然而,如果操作特性大于相应阈值,那么装置100可调整一或多个编码参数(200)。举例来说,根据本发明的方面,装置100可调整B帧参数(例如,禁用B帧的使用),调整搜索区域参数(例如,约束用于帧间预测的搜索区域),调整预测模式参数(例如,禁用帧间预测)或其任何组合。在一些实例中,装置100可基于预定层次来调整编码参数(例如,初始调整B帧参数,后续接着搜索区域参数,后续接着预测模式参数)。在其它实例中,装置100可(例如)根据参数调整算法同时选择性地调整一个以上编码参数。
装置100可确定编码是否完成(202)。如果编码未完成,那么装置100可继续确定一或多个操作特性(194)以确定是否调整编码参数。如果编码完成,那么装置100可对经编码视频数据进行转码(204),假定使用致使相对大经编码文件大小的低功率模式来对视频数据中的至少一些进行编码。
因此,根据本发明的方面,方法包括确定电子装置的操作特性,其中电子装置的一或多个组件经配置以录制视频数据;至少部分地基于所述装置的所述经确定操作特性来确定用于对视频数据进行编码的编码参数;使用所述经确定编码参数对所述视频数据进行编码。
在实例中,上述方法,其中所述装置的所述操作特性包括用于录制所述视频数据的分辨率,使得确定所述编码参数包括:至少部分地基于所述分辨率来确定所述编码参数。
在另一实例中,上述方法进一步包含:确定用于录制所述视频数据的分辨率阈值,且其中确定用于对所述视频数据进行编码的所述编码参数进一步包括:相对于所述分辨率阈值基于用于录制所述视频数据的所述分辨率来确定所述编码参数。
在另一实例中,上述方法,其中所述装置的所述操作特性包括用于录制所述视频数据的录制帧速率,使得确定所述编码参数包括:至少部分地基于所述帧速率来确定所述编码参数。
在另一实例中,上述方法进一步包含:确定用于录制所述视频数据的帧速率阈值,且其中确定用于对所述视频数据进行编码的所述编码参数进一步包括:相对于所述帧速率阈值基于用于录制所述视频数据的所述帧速率来确定所述编码参数。
在另一实例中,上述方法,其中所述装置的所述操作特性包括所述装置的电池的状态,使得确定所述编码参数包括:至少部分地基于所述电池的所述状态来确定所述编码参数。
在另一实例中,上述方法进一步包含:确定关于所述装置的一或多个组件的温度阈值,且其中确定用于对所述视频数据进行编码的所述编码参数进一步包括:相对于所述温度阈值基于所述装置中的所述一或多个组件的温度来确定所述编码参数。
在另一实例中,上述方法,其中所述装置的所述操作特性包括所述装置的一或多个组件的温度,使得确定所述编码参数包括:至少部分地基于所述温度来确定所述编码参数。
在另一实例中,上述方法进一步包含:确定关于所述装置的一或多个组件的温度阈值,且其中确定用于对所述视频数据进行编码的所述编码参数进一步包括:相对于所述温度阈值基于所述装置中的所述一或多个组件的温度来确定所述编码参数。
在另一实例中,上述方法,其中所述装置的所述操作特性包括所述视频数据中每秒经编码的像素的数目,使得确定所述编码参数包括:至少部分地基于每秒经编码的像素的所述数目来确定所述编码参数。
在另一实例中,上述方法进一步包含:确定像素处理阈值,且其中确定用于对所述视频数据进行编码的所述编码参数进一步包括:相对于所述像素处理阈值基于所述视频数据中每秒经编码的像素的所述数目来确定所述编码参数。
在另一实例中,上述方法进一步包含:确定关于所述装置的一或多个组件的功率预算,且其中确定用于对所述视频数据进行编码的所述编码参数进一步包括:相对于所述功率预算基于由所述装置的所述一或多个组件所消耗的功率量来确定所述编码参数。
在另一实例中,上述方法进一步包含基于功率模型来确定由所述装置的一或多个组件所消耗的所述功率量。
在另一实例中,上述方法,其中确定所述编码参数包括:启用用于对所述视频数据进行编码的B帧。
在另一实例中,上述方法,其中确定所述编码参数包括:确定用于执行对所述视频数据的帧间预测编码的搜索区域。
在另一实例中,上述方法,其中确定所述编码参数包括:确定是否用帧间预测编码及帧内预测编码中的一者来对所述视频数据进行编码。
在另一实例中,上述方法,其中确定所述编码参数包括:确定一组用于对所述视频数据进行编码的可用预测模式。
在另一实例中,上述方法进一步包含:将所述视频数据从第一位速率转码成第二较低位速率。
在另一实例中,上述方法,其中对所述视频数据进行转码包括:确定转码初始化触发且在发生所述转码初始化触发时对所述视频数据进行转码。
在另一实例中,上述方法,其中所述转码初始化触发包括所述装置的预定空闲持续时间,使得对所述视频数据进行转码包括:在所述装置已空闲达所述空闲持续时间之后对所述视频数据进行转码。
在另一实例中,上述方法,其中所述转码初始化触发包括所述装置的电池的电池状态,使得对所述视频数据进行转码包括:在所述电池状态达到预定电量(chargelevel)时对所述视频数据进行转码。
在另一实例中,上述方法,其中所述转码初始化触发包括所述装置的电源状态,使得对所述视频数据进行转码包括:在所述装置由外部电源供电时对所述视频数据进行转码。
在另一实例中,上述方法,其中对所述视频数据进行转码包括:确定转码终止触发且在发生所述转码终止触发时停止对所述视频数据进行转码。
在另一实例中,上述方法,其中所述转码终止触发包括所述装置的状态从空闲状态到活动状态的改变。
在另一实例中,上述方法,其中所述转码终止触发器包括所述装置的电源状态从外部电源到所述装置的内部电源的改变。
在另一实例中,上述方法,其中确定用于对所述视频数据进行编码的所述编码参数包括:至少部分地基于所述装置的一或多个组件的所估计功率消耗来确定所述编码参数。
在另一实例中,上述方法进一步包含:基于所述装置的所述一或多个组件的一或多个功率模型来确定所述估计功率消耗。
在另一实例中,上述方法进一步包含:确定用于存储所述经编码视频数据的存储位置,及基于所述经确定存储位置来确定所述经估计功率消耗。
在另一实例中,上述方法,其中所述存储位置包括本地存储位置及远程存储位置中的一者。
在另一实例中,上述方法进一步包含:确定用于传输所述经编码视频数据的传输过程,及基于所述经确定传输过程来确定所述经估计功率消耗。
在另一实例中,上述方法,其中所述传输过程包括蜂窝式传输过程及无线局域网(WLAN)传输过程中的一者。
在另一实例中,上述方法,其中所述一或多个功率模型包括编码功率模型、存储器功率模型、本地存储功率模型、蜂窝式功率模型及无线局域网(WLAN)功率模型中的至少一者。
应理解,虽然已一起描述本发明的某些方面,但在一些例子中,可独立地执行所述方面。举例来说,通常用编码参数确定/调整技术来描述上文所描述的转码技术。然而,在其它例子中,可单独地执行转码技术。
因此,还应理解,一般来说,取决于实例,本文中所描述的方法中的任一者的特定动作或事件可以不同顺序执行,可经添加、合并或完全省去(例如,并非所有所描述动作或事件是实践方法所必需的)。此外,在某些实例中,可(例如)经由多线程处理、中断处理或多处理器同时地而非依序地执行动作或事件。
此外,在一或多个实例中,本文中所描述的功能可以硬件、软件、固件或其任何组合实施。如果以软件实施,那么所述功能可作为一或多个指令或代码存储于计算机可读媒体上或者经由计算机可读媒体传输且由基于硬件的处理单元执行。计算机可读媒体可包含计算机可读存储媒体,其对应于例如数据存储媒体的有形媒体,或包含促进(例如)根据通信协议将计算机程序自一个位置传送至另一位置的任一媒体的通信媒体。
以此方式,计算机可读媒体通常可对应于(1)非暂时性的有形计算机可读存储媒体或(2)例如信号或载波的通信媒体。数据存储媒体可为可由一或多个计算机或一或多个处理器存取以检索用于实施本发明中所描述的技术的指令、代码及/或数据结构的任何可用媒体。计算机程序产品可包含计算机可读媒体。通过实例的方式且非限制性,此些计算机可读存储媒体可包括RAM、ROM、EEPROM、CD-ROM或其它光学磁盘存储器、磁盘存储器或其它磁性存储装置、快闪存储器或可用于以指令或数据结构的形式存储所要代码且可由计算机存取的其它媒体。
此外,可将任何连接适当地称为计算机可读媒体。举例来说,如果使用同轴电缆、光纤电缆、双绞线、数字订户线(DSL)或例如红外线、无线电及微波等无线技术从网站、服务器或其它远程源传输指令,那么所述同轴电缆、光纤电缆、双绞线、DSL或例如红外线、无线电及微波等无线技术皆包含于媒体的定义中。
然而,应理解计算机可读存储媒体及数据存储媒体不包含连接、载波、信号或其它暂时性媒体,但替代地是针对非暂时性、有形存储媒体。如本文中所使用,磁盘及光盘包含紧密光盘(CD)、激光光盘、光学光盘、数字多功能光盘(DVD)、软盘及蓝光光盘,其中磁盘通常以磁性方式再现数据,而光盘通过激光以光学方式再现数据。上述各项的组合还应包含在计算机可读媒体的范围内。
指令可由一或多个处理器执行,例如一或多个DSP、通用微处理器、ASIC、FPGA或其它等效集成或离散逻辑电路。因此,如本文中所使用的术语“处理器”可是指前述结构或适于实施本文中所描述的技术的任何其它结构中的任一者。另外,在一些方面中,本文中所描述的功能性可提供在经配置以用于编码及解码或并入于组合式编解码器中的专用硬件及/或软件模块内。此外,技术可以一或多个电路或逻辑元件来完全实施。
本发明的技术可以广泛各种装置或设备(包含无线手机、集成电路(IC)或IC组(例如,芯片组))实施。各种组件、模块或单元在本发明中经描述以强调经配置以执行所揭示技术的装置的功能方面,而未必需要由不同硬件单元实现。确切来说,如上文所描述,各种单元可以编解码硬件单元组合或通过交互操作硬件单元(包含如上文所描述的一或多个处理器)的集合结合适合软件及/或固件提供。
已描述本发明的各种方面。这些及其它方面在以下权利要求书的范围内。

Claims (30)

1.一种方法,其包括:
使用编码参数以第一视频质量对视频数据进行编码;
确定经配置以录制所述视频数据的电子装置的一或多个组件的操作特性;
至少部分地基于所述经确定操作特性来调整所述编码参数且同时维持所述第一视频质量;及
使用所述经调整编码参数以所述第一视频质量对所述视频数据进行编码。
2.根据权利要求1所述的方法,其中所述操作特性包括所述装置的所述一或多个组件的温度,所述方法进一步包括:
获得所述装置的所述一或多个组件的温度阈值;及
其中调整所述编码参数进一步包括:相对于所述温度阈值基于所述装置的所述一或多个组件的所述温度来调整所述编码参数。
3.根据权利要求1所述的方法,其中所述操作特性包括用于对所述视频数据进行编码的像素处理速率,所述方法进一步包括:
获得像素处理速率阈值;且
其中调整所述编码参数进一步包括:相对于所述像素处理速率阈值基于所述像素处理速率来调整所述编码参数。
4.根据权利要求1所述的方法,其中所述一或多个组件包含电池,其中所述操作特性包括所述电池的状态,所述方法进一步包括:
获得电池状态阈值;及
其中调整用于对所述视频数据进行编码的所述编码参数包括:相对于所述电池状态阈值基于所述电池的所述状态来调整所述编码参数。
5.根据权利要求1所述的方法,其进一步包括:
获得所述一或多个组件的功率预算;及
其中调整所述编码参数进一步包括:相对于所述功率预算基于指示由所述一或多个组件所消耗的功率量的功率模型来调整所述编码参数。
6.根据权利要求1所述的方法,其中调整用于对所述视频数据进行编码的所述编码参数包括:至少部分地基于所述一或多个组件的经估计功率消耗来调整所述编码参数。
7.根据权利要求6所述的方法,其中确定所述经估计功率消耗包括:基于所述经编码视频数据的存储目的地或用于传输所述经编码视频数据的传输过程中的至少一者来确定所述经估计功率消耗。
8.根据权利要求7所述的方法,其中确定所述估计功率消耗包括:基于一或多个功率模型来确定所述经估计功率消耗,所述功率模型包含编码功率模型、存储器功率模型、本地存储功率模型、蜂窝式功率模型或无线局域网WLAN功率模型中的至少一者。
9.根据权利要求1所述的方法,其中调整所述编码参数包括:启用或禁用用于对所述视频数据进行编码的B帧。
10.根据权利要求1所述的方法,其中调整所述编码参数包括:调整用于执行对所述视频数据的帧间预测编码的搜索区域大小。
11.根据权利要求1所述的方法,其中调整所述编码参数包括:确定是否用帧间预测编码及帧内预测编码中的一者来对所述视频数据进行编码。
12.根据权利要求1所述的方法,其进一步包括:
确定转码初始化条件,其中所述转码初始化条件包括所述装置的预定空闲持续时间、所述装置的电池的电池状态或所述装置的电源状态中的至少一者;
在发生所述转码初始化条件时,将所述视频数据从使用所述经调整编码参数产生的第一位速率转码成第二较低位速率;
确定转码终止条件,其中所述转码终止条件包括所述装置的状态从空闲状态到活动状态的改变及所述装置的电源状态从外部电源到所述装置的内部电源的改变中的至少一者;及
在发生所述转码终止条件时,停止所述视频数据的所述转码。
13.根据权利要求1所述的方法,其中维持所述第一视频质量包括:变更经编码视频数据的压缩比。
14.根据权利要求1所述的方法,其中维持所述第一质量包括:在对所述视频数据进行编码时,将所述视频数据的分辨率、所述视频数据的帧速率及所述视频数据的信噪比中的至少一者设定处于固定水平。
15.一种电子装置,其包括:
一或多个组件,其经配置以录制视频数据;及
一或多个处理器,其经配置以:
使用编码参数以第一视频质量对视频数据进行编码;
确定经配置以录制所述视频数据的所述电子装置的所述一或多个组件的操作特性;
至少部分地基于所述经确定操作特性来调整所述编码参数且同时维持所述第一视频质量;及
使用所述经调整编码参数以所述第一视频质量对所述视频数据进行编码。
16.根据权利要求15所述的电子装置,其中所述操作特性包括所述装置的所述一或多个组件的温度,且其中所述一或多个处理器进一步经配置以:
获得所述装置的所述一或多个组件的温度阈值;及
其中为了调整所述编码参数,所述一或多个处理器经配置以相对于所述温度阈值基于所述装置的所述一或多个组件的所述温度来调整所述编码参数。
17.根据权利要求15所述的电子装置,其中所述操作特性包括用于对所述视频数据进行编码的像素处理速率,且其中所述一或多个处理器进一步经配置以:
获得像素处理速率阈值;及
其中为了调整所述编码参数,所述一或多个处理器经配置以相对于所述像素处理速率阈值基于所述像素处理速率来调整所述编码参数。
18.根据权利要求15所述的电子装置,其中所述一或多个组件包含电池,其中所述操作特性包括所述电池的状态,且其中所述一或多个处理器经配置以:
获得电池状态阈值;及
其中为了调整用于对所述视频数据进行编码的所述编码参数,所述一或多个处理器经配置以相对于所述电池状态阈值基于所述电池的所述状态来调整所述编码参数。
19.根据权利要求15所述的电子装置,其中所述一或多个处理器进一步经配置以:
获得所述一或多个组件的功率预算;及
其中为了调整所述编码参数,所述一或多个处理器经配置以相对于所述功率预算基于指示由所述一或多个组件所消耗的功率量的功率模型来调整所述编码参数。
20.根据权利要求15所述的电子装置,其中为了调整用于对所述视频数据进行编码的所述编码参数,所述一或多个处理器经配置以至少部分地基于所述一或多个组件的所估计功率消耗来调整所述编码参数。
21.根据权利要求20所述的电子装置,其中为了确定所述所估计功率消耗,所述一或多个处理器经配置以基于所述经编码视频数据的存储目的地或用于传输所述经编码视频数据的传输过程中的至少一者来确定所述经估计功率消耗。
22.根据权利要求21所述的电子装置,其中为了确定所述经估计功率消耗,所述一或多个处理器经配置以基于一或多个功率模型来确定所述经估计功率消耗,所述功率模型包含编码功率模型、存储器功率模型、本地存储功率模型、蜂窝式功率模型或无线局域网WLAN功率模型中的至少一者。
23.根据权利要求15所述的电子装置,其中为了调整所述编码参数,所述一或多个处理器经配置以启用或禁用用于对所述视频数据进行编码的B帧。
24.根据权利要求15所述的电子装置,其中为了调整所述编码参数,所述一或多个处理器经配置以调整用于执行对所述视频数据的帧间预测编码的搜索区域大小。
25.根据权利要求15所述的电子装置,其中为了调整所述编码参数,所述一或多个处理器经配置以确定是否用帧间预测编码及帧内预测编码中的一者来对所述视频数据进行编码。
26.根据权利要求15所述的电子装置,其中所述一或多个处理器进一步经配置以:
确定转码初始化条件,其中所述转码初始化条件包括所述装置的预定空闲持续时间、所述装置的电池的电池状态或所述装置的电源状态中的至少一者;
在发生所述转码初始化条件时,将所述视频数据从使用所述经调整编码参数产生的第一位速率转码成第二较低位速率;
确定转码终止条件,其中所述转码终止条件包括所述装置的状态从空闲状态到活动状态的改变及所述装置的电源状态从外部电源到所述装置的内部电源的改变中的至少一者;及
在发生所述转码终止条件时,停止所述视频数据的所述转码。
27.根据权利要求15所述的电子装置,其中为了维持所述第一视频质量,所述一或多个处理器经配置以变更经编码视频数据的压缩比。
28.根据权利要求15所述的电子装置,其中为了维持所述第一质量,所述一或多个处理器经配置以在对所述视频数据进行编码时,将所述视频数据的分辨率、所述视频数据的帧速率及所述视频数据的信噪比中的至少一者设定处于固定水平。
29.一种设备,其包括:
用于使用编码参数以第一视频质量对视频数据进行编码的装置;
用于确定经配置以录制所述视频数据的电子装置的一或多个组件的操作特性的装置;
用于至少部分地基于所述经确定操作特性来调整所述编码参数且同时维持所述第一视频质量的装置;及
用于使用所述经调整编码参数以所述第一视频质量对所述视频数据进行编码的装置。
30.一种非暂时性计算机可读媒体,其上存储有指令,所述指令在被执行时致使电子装置的一或多个处理器:
使用编码参数以第一视频质量对视频数据进行编码;
确定经配置以录制所述视频数据的电子装置的一或多个组件的操作特性;
至少部分地基于所述经确定操作特性来调整所述编码参数且同时维持所述第一视频质量;及
使用所述经调整编码参数以所述第一视频质量对所述视频数据进行编码。
CN201480069030.6A 2013-12-20 2014-12-08 进行视频编码时的热及功率管理 Pending CN105830444A (zh)

Applications Claiming Priority (5)

Application Number Priority Date Filing Date Title
US201361919513P 2013-12-20 2013-12-20
US61/919,513 2013-12-20
US14/327,271 2014-07-09
US14/327,271 US20150181208A1 (en) 2013-12-20 2014-07-09 Thermal and power management with video coding
PCT/US2014/069157 WO2015094776A2 (en) 2013-12-20 2014-12-08 Thermal and power management with video coding

Publications (1)

Publication Number Publication Date
CN105830444A true CN105830444A (zh) 2016-08-03

Family

ID=53401544

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201480069030.6A Pending CN105830444A (zh) 2013-12-20 2014-12-08 进行视频编码时的热及功率管理

Country Status (7)

Country Link
US (2) US20150181208A1 (zh)
EP (1) EP3085084A2 (zh)
JP (1) JP2017504255A (zh)
KR (1) KR20160099699A (zh)
CN (1) CN105830444A (zh)
BR (1) BR112016014214A2 (zh)
WO (1) WO2015094776A2 (zh)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107071264A (zh) * 2017-01-13 2017-08-18 维沃移动通信有限公司 一种图像分辨率调整方法及移动终端
CN110087078A (zh) * 2019-05-10 2019-08-02 东华大学 一种面向图像组分块压缩感知的测量端观测效能调控方法
WO2022206153A1 (zh) * 2021-04-01 2022-10-06 Oppo广东移动通信有限公司 电子设备控制方法、装置、存储介质及电子设备

Families Citing this family (23)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2015185897A (ja) 2014-03-20 2015-10-22 パナソニックIpマネジメント株式会社 画像符号化方法及び画像符号化装置
GB201405649D0 (en) * 2014-03-28 2014-05-14 Sony Corp Data encoding and decoding
US10204433B2 (en) 2014-10-01 2019-02-12 Sony Corporation Selective enablement of sign language display
US10097785B2 (en) * 2014-10-01 2018-10-09 Sony Corporation Selective sign language location
US9697630B2 (en) 2014-10-01 2017-07-04 Sony Corporation Sign language window using picture-in-picture
AU2015345649A1 (en) * 2014-11-12 2017-06-08 Hfi Innovation Inc. Methods of escape pixel coding in index map coding
US10154266B2 (en) * 2014-11-17 2018-12-11 Nippon Telegraph And Telephone Corporation Video quality estimation device, video quality estimation method, and video quality estimation program
KR102247741B1 (ko) * 2014-12-04 2021-05-04 삼성전자주식회사 이미지 프로세서, 상기 이미지 프로세서의 동작 방법, 및 상기 이미지 프로세서를 포함하는 애플리케이션 프로세서
WO2016158401A1 (ja) * 2015-03-30 2016-10-06 ソニー株式会社 画像符号化装置および方法
KR102330262B1 (ko) * 2015-06-02 2021-11-23 삼성전자주식회사 전자장치에서 디스플레이 제어 방법 및 그 장치
KR102437698B1 (ko) * 2015-08-11 2022-08-30 삼성전자주식회사 전자 장치 및 전자 장치의 이미지 인코딩 방법
US10218983B2 (en) * 2015-09-30 2019-02-26 Apple Inc. Adapting mode decisions in video encoder
US10477233B2 (en) * 2015-09-30 2019-11-12 Apple Inc. Predictor candidates for motion estimation search systems and methods
US10225572B2 (en) * 2015-09-30 2019-03-05 Apple Inc. Configurable motion estimation search systems and methods
JP6875821B2 (ja) * 2016-10-19 2021-05-26 キヤノン株式会社 画像符号化装置、撮像装置、画像符号化方法およびプログラム
US10812810B2 (en) * 2018-02-06 2020-10-20 Tencent America LLC Method and apparatus for video coding in merge mode
KR102010692B1 (ko) * 2018-02-09 2019-08-13 인하대학교 산학협력단 트랜스코딩 서버의 소모 전력을 제한하면서 트랜스코딩 처리율을 최대화하는 방법
WO2020051599A1 (en) 2018-09-06 2020-03-12 Dinh Nam NGUYEN Non-real-time data processing method for image or video data
MX2022002617A (es) 2019-09-12 2022-03-25 Bytedance Inc Uso de predictor de paleta en codificacion de video.
CN111510740B (zh) * 2020-04-03 2022-08-30 咪咕文化科技有限公司 转码方法、装置、电子设备和计算机可读存储介质
US11483569B1 (en) 2021-06-09 2022-10-25 Snap Inc. Device with dynamic transcode throttling
KR20240018607A (ko) * 2021-06-09 2024-02-13 스냅 인코포레이티드 동적 트랜스코드 스로틀링을 갖는 디바이스
CN115150508B (zh) * 2022-05-19 2023-10-24 东莞市步步高教育软件有限公司 一种视频通话处理方法、装置、设备及存储介质

Citations (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5966120A (en) * 1995-11-21 1999-10-12 Imedia Corporation Method and apparatus for combining and distributing data with pre-formatted real-time video
US20010036231A1 (en) * 1999-06-08 2001-11-01 Venkat Easwar Digital camera device providing improved methodology for rapidly taking successive pictures
CN1666529A (zh) * 2002-06-28 2005-09-07 高通股份有限公司 计算受限的视频编码
US20080084491A1 (en) * 2006-10-06 2008-04-10 Freescale Semiconductor Inc. Scaling video processing complexity based on power savings factor
CN101658035A (zh) * 2007-04-23 2010-02-24 高通股份有限公司 用于质量受控编码的方法和系统
CN102334341A (zh) * 2008-12-19 2012-01-25 斯灵媒体有限公司 用于控制媒体流的编码的系统及方法
CN102668579A (zh) * 2010-10-05 2012-09-12 英特尔公司 用于动态调整视频质量的方法和装置
CN102685472A (zh) * 2011-03-08 2012-09-19 华为技术有限公司 数据传输的方法、装置和系统
US20130002798A1 (en) * 2010-03-18 2013-01-03 Nec Corporation Mobile telephone set having video-phone function low in amount of heat generation

Family Cites Families (29)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6037991A (en) * 1996-11-26 2000-03-14 Motorola, Inc. Method and apparatus for communicating video information in a communication system
JP3779066B2 (ja) * 1998-06-30 2006-05-24 株式会社東芝 動画像符号化装置
JP3719482B2 (ja) * 1998-07-29 2005-11-24 株式会社デンソー 無線通信装置
WO2000078053A1 (en) * 1999-06-14 2000-12-21 Nikon Corporation Compression encoding method, recorded medium on which compression encoding program is recorded, and imaging device
JP3825615B2 (ja) * 2000-08-11 2006-09-27 株式会社東芝 動画像符号化装置および動画像符号化方法およびプログラムを記録した媒体
US20110058036A1 (en) * 2000-11-17 2011-03-10 E-Watch, Inc. Bandwidth management and control
EP1461954B1 (en) * 2001-12-28 2006-06-07 Matsushita Electric Industrial Co., Ltd. Data reproduction apparatus and data reproduction method
FR2844935B1 (fr) * 2002-09-25 2005-01-28 Canon Kk Transcodage de donnees numeriques
US7330509B2 (en) * 2003-09-12 2008-02-12 International Business Machines Corporation Method for video transcoding with adaptive frame rate control
US20070291131A1 (en) * 2004-02-09 2007-12-20 Mitsuru Suzuki Apparatus and Method for Controlling Image Coding Mode
US7676590B2 (en) * 2004-05-03 2010-03-09 Microsoft Corporation Background transcoding
WO2005116927A1 (en) * 2004-05-31 2005-12-08 Phase One A/S Image compression for rapid high-quality imaging
US7454692B2 (en) * 2005-03-10 2008-11-18 Seiko Epson Corporation Encoder based error resilience method in a video codec
JP4778343B2 (ja) * 2006-03-28 2011-09-21 Necカシオモバイルコミュニケーションズ株式会社 動画撮像機能を有する端末、および、プログラム
US9961372B2 (en) * 2006-12-08 2018-05-01 Nxp Usa, Inc. Adaptive disabling of deblock filtering based on a content characteristic of video information
US8953685B2 (en) * 2007-12-10 2015-02-10 Qualcomm Incorporated Resource-adaptive video interpolation or extrapolation with motion level analysis
US8542727B2 (en) * 2007-12-31 2013-09-24 Intel Corporation Systems and apparatuses for performing CABAC parallel encoding and decoding
US8594191B2 (en) * 2008-01-03 2013-11-26 Broadcom Corporation Video processing system and transcoder for use with layered video coding and methods for use therewith
US8457662B2 (en) * 2008-12-18 2013-06-04 At&T Mobility Ii Llc System and method for providing user names for network addresses
JP5383276B2 (ja) * 2009-02-25 2014-01-08 京セラ株式会社 携帯電子機器
US8826108B1 (en) * 2010-11-03 2014-09-02 Marvell International Ltd. Pre-scaling soft-decoder inputs
JP5583638B2 (ja) * 2011-06-10 2014-09-03 セイコープレシジョン株式会社 羽根駆動装置及び光学機器
KR101813035B1 (ko) * 2011-10-10 2017-12-28 엘지전자 주식회사 휴대 단말기 및 그 제어 방법
US9277230B2 (en) * 2011-11-23 2016-03-01 Qualcomm Incorporated Display mode-based video encoding in wireless display devices
US9432694B2 (en) * 2012-03-06 2016-08-30 Apple Inc. Signal shaping techniques for video data that is susceptible to banding artifacts
EP2870770A2 (en) * 2012-07-09 2015-05-13 VID SCALE, Inc. Power aware video decoding and streaming
US9307235B2 (en) * 2012-12-03 2016-04-05 Vixs Systems, Inc. Video encoding system with adaptive hierarchical B-frames and method for use therewith
US20150163486A1 (en) * 2013-12-09 2015-06-11 Vixs Systems Inc. Variable bitrate encoding
US9740596B1 (en) * 2013-12-18 2017-08-22 EMC IP Holding Company LLC Method of accelerated test automation through unified test workflows

Patent Citations (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5966120A (en) * 1995-11-21 1999-10-12 Imedia Corporation Method and apparatus for combining and distributing data with pre-formatted real-time video
US20010036231A1 (en) * 1999-06-08 2001-11-01 Venkat Easwar Digital camera device providing improved methodology for rapidly taking successive pictures
CN1666529A (zh) * 2002-06-28 2005-09-07 高通股份有限公司 计算受限的视频编码
US20080084491A1 (en) * 2006-10-06 2008-04-10 Freescale Semiconductor Inc. Scaling video processing complexity based on power savings factor
CN101658035A (zh) * 2007-04-23 2010-02-24 高通股份有限公司 用于质量受控编码的方法和系统
CN102334341A (zh) * 2008-12-19 2012-01-25 斯灵媒体有限公司 用于控制媒体流的编码的系统及方法
US20130002798A1 (en) * 2010-03-18 2013-01-03 Nec Corporation Mobile telephone set having video-phone function low in amount of heat generation
CN102668579A (zh) * 2010-10-05 2012-09-12 英特尔公司 用于动态调整视频质量的方法和装置
CN102685472A (zh) * 2011-03-08 2012-09-19 华为技术有限公司 数据传输的方法、装置和系统

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107071264A (zh) * 2017-01-13 2017-08-18 维沃移动通信有限公司 一种图像分辨率调整方法及移动终端
CN110087078A (zh) * 2019-05-10 2019-08-02 东华大学 一种面向图像组分块压缩感知的测量端观测效能调控方法
CN110087078B (zh) * 2019-05-10 2023-06-02 东华大学 一种面向图像组分块压缩感知的测量端观测效能调控方法
WO2022206153A1 (zh) * 2021-04-01 2022-10-06 Oppo广东移动通信有限公司 电子设备控制方法、装置、存储介质及电子设备

Also Published As

Publication number Publication date
JP2017504255A (ja) 2017-02-02
BR112016014214A2 (pt) 2017-08-08
WO2015094776A2 (en) 2015-06-25
WO2015094776A3 (en) 2015-09-03
US20160007024A1 (en) 2016-01-07
KR20160099699A (ko) 2016-08-22
US20150181208A1 (en) 2015-06-25
EP3085084A2 (en) 2016-10-26

Similar Documents

Publication Publication Date Title
CN105830444A (zh) 进行视频编码时的热及功率管理
TWI556648B (zh) 解碼影像的方法
TWI666918B (zh) 決定在視訊寫碼中之調色板寫碼區塊的調色板大小、調色板單元及過濾
CN104519354B (zh) 视频编码器及其操作方法
CN104221375B (zh) 速率失真优化量化中的等级决定
KR102167350B1 (ko) 동화상 부호화 장치 및 그 동작 방법
EP2685739B1 (en) Real-time encoding system of multiple spatially scaled video based on shared video coding information
RU2740164C2 (ru) Устройство и способ обработки изображений
CN107005698B (zh) 支持尽力服务解码的元数据提示
KR101502611B1 (ko) 공유된 비디오 코딩 정보에 기반된 다수의 프로파일 및 표준들 그리고 다수의 시간적으로 스케일된 비디오를 갖는 실시간 비디오 코딩 시스템
CN104038762A (zh) 视频编码器、检测场景改变和控制视频编码器的方法
US20090296812A1 (en) Fast encoding method and system using adaptive intra prediction
KR101955374B1 (ko) 고속 코딩 단위(Coding Unit) 모드 결정을 통한 부호화/복호화 방법 및 장치
CN101584219A (zh) 基于帧内预测进行编码和解码的方法和设备
JP2022537064A (ja) エンコーダ、デコーダ、および対応する方法
CN105556970A (zh) 使用修正矢量推导的视频编码方法及其设备、视频解码方法及其设备
JP2018509067A (ja) ほぼ視覚的無損失なビデオ再圧縮
TW202126042A (zh) 基於歷史的運動向量預測
Sharrab et al. Aggregate power consumption modeling of live video streaming systems
KR102621958B1 (ko) 후보 모션 벡터 리스트 획득 방법, 장치, 인코더 및 디코더
CN105915905A (zh) 图像编码装置和方法以及图像解码装置和方法
TWI806212B (zh) 視訊編碼器、視訊解碼器及相應方法
CN107278373A (zh) 用于使用自适应瓦片大小的视频译码的方法和设备
TW201330633A (zh) 量子化參數決定的方法與裝置以及電腦可讀記錄媒體
CN104885464A (zh) 图像处理装置和方法

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
RJ01 Rejection of invention patent application after publication
RJ01 Rejection of invention patent application after publication

Application publication date: 20160803