CN104221393A - 内容自适应视频处理 - Google Patents
内容自适应视频处理 Download PDFInfo
- Publication number
- CN104221393A CN104221393A CN201380009820.0A CN201380009820A CN104221393A CN 104221393 A CN104221393 A CN 104221393A CN 201380009820 A CN201380009820 A CN 201380009820A CN 104221393 A CN104221393 A CN 104221393A
- Authority
- CN
- China
- Prior art keywords
- video
- time
- video unit
- instruction
- store
- 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
Links
- 238000012545 processing Methods 0.000 title claims abstract description 38
- 230000003044 adaptive effect Effects 0.000 title description 2
- 238000000034 method Methods 0.000 claims abstract description 41
- 230000008569 process Effects 0.000 claims description 21
- 230000008859 change Effects 0.000 claims description 8
- 238000003860 storage Methods 0.000 claims description 6
- 238000004891 communication Methods 0.000 description 10
- 230000033001 locomotion Effects 0.000 description 10
- 238000004422 calculation algorithm Methods 0.000 description 8
- 238000005516 engineering process Methods 0.000 description 5
- 230000006870 function Effects 0.000 description 4
- 238000004519 manufacturing process Methods 0.000 description 4
- 239000004065 semiconductor Substances 0.000 description 4
- 230000000007 visual effect Effects 0.000 description 4
- 239000012634 fragment Substances 0.000 description 3
- 238000012986 modification Methods 0.000 description 3
- 230000004048 modification Effects 0.000 description 3
- 239000003990 capacitor Substances 0.000 description 2
- 230000001413 cellular effect Effects 0.000 description 2
- 238000004590 computer program Methods 0.000 description 2
- 238000013461 design Methods 0.000 description 2
- 238000001228 spectrum Methods 0.000 description 2
- 230000003068 static effect Effects 0.000 description 2
- 230000001133 acceleration Effects 0.000 description 1
- 230000006978 adaptation Effects 0.000 description 1
- 238000004458 analytical method Methods 0.000 description 1
- 230000000712 assembly Effects 0.000 description 1
- 238000000429 assembly Methods 0.000 description 1
- 230000009286 beneficial effect Effects 0.000 description 1
- 230000005540 biological transmission Effects 0.000 description 1
- 238000004883 computer application Methods 0.000 description 1
- 230000003750 conditioning effect Effects 0.000 description 1
- 239000004020 conductor Substances 0.000 description 1
- 230000008878 coupling Effects 0.000 description 1
- 238000010168 coupling process Methods 0.000 description 1
- 238000005859 coupling reaction Methods 0.000 description 1
- 230000009977 dual effect Effects 0.000 description 1
- 238000005259 measurement Methods 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 239000013307 optical fiber Substances 0.000 description 1
- 238000005192 partition Methods 0.000 description 1
- 230000002093 peripheral effect Effects 0.000 description 1
- 238000011002 quantification Methods 0.000 description 1
- 238000000926 separation method Methods 0.000 description 1
- 238000004088 simulation Methods 0.000 description 1
- GOLXNESZZPUPJE-UHFFFAOYSA-N spiromesifen Chemical compound CC1=CC(C)=CC(C)=C1C(C(O1)=O)=C(OC(=O)CC(C)(C)C)C11CCCC1 GOLXNESZZPUPJE-UHFFFAOYSA-N 0.000 description 1
- 238000005728 strengthening Methods 0.000 description 1
- 230000001360 synchronised effect Effects 0.000 description 1
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
- H04N19/134—Methods 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/156—Availability of hardware or computational resources, e.g. encoding based on power-saving criteria
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
- H04N19/102—Methods 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/119—Adaptive subdivision aspects, e.g. subdivision of a picture into rectangular or non-rectangular coding blocks
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
- H04N19/102—Methods 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/127—Prioritisation of hardware or computational resources
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
- H04N19/134—Methods 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/136—Incoming video signal characteristics or properties
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
- H04N19/102—Methods 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/103—Selection of coding mode or of prediction mode
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
- H04N19/102—Methods 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/124—Quantisation
Landscapes
- Engineering & Computer Science (AREA)
- Multimedia (AREA)
- Signal Processing (AREA)
- Computing Systems (AREA)
- Theoretical Computer Science (AREA)
- Compression Or Coding Systems Of Tv Signals (AREA)
Abstract
在一些实施例中,可以快速自动地权衡视频质量和处理速度这两者。因此,可以调用不同方法和参数以实现速度和质量之间的动态变化平衡。
Description
背景技术
本申请一般涉及包括视频编码和解码的视频处理和用于图形处理单元的硬件加速。
在传统的视频处理应用中,例如视频编码器和解码器,在质量和速度之间存在权衡。一般来说,使用更加复杂的处理算法带来更好的质量,但是代价是速度或其他资源。
视频软件可以提供一个界面,以允许用户选择多个预定选项中的一个,以进行速度和质量的权衡。通过选择不同的模式或选项,视频软件使用不同的预定算法,从最快的、最简单的算法到最复杂、最慢的算法。那些预定算法中的每一个对于所有图片都使用相同的方法和参数。
附图说明
参照以下附图来描述一些实施例:
图1是本发明的一个实施例的高级流程图;
图2是本发明的更加详细实施例的流程图;
图3是本发明的一个实施例的系统示意图;以及
图4是根据本发明的一个实施例的系统的正视图。
具体实施方式
在一些实施例中,可以自动地快速地权衡视频质量和处理速度两者。因此,可以调用不同的方法和参数以实现速度和质量之间的动态变化平衡。
视频处理速度根据视频内容而变化。一些视频内容在本质上比其他内容需要更多的处理时间。例如,具有大量运动的视频图片通常比不具有运动的图片需要更多的时间。在视频编码或处理中,速度随着宏块、片段和/或帧而发生变化是常见的。
作为一个示例,在视频编码中,一些宏块与它们的邻居如此相似,以至于它们能够被编码为跳过或直接类型。因此,可以不需要耗时的运动搜索来获得最佳质量。在另一方面,一些宏块可能包含大量运动,以至于它们将需要半像素或者四分之一像素运动搜索来获得相同的质量。
在一些实施例中,速度计被用来进行性能状态的测量。速度计基本上记录已经花费了多少处理时间预算。接下来,基于速度计输出,系统基于性能状态自动地选择速度或质量路径。例如,用户或应用可以指定整体目标速度或目标质量。接下来,视频内核或软件在性能目标内最大化视频质量,或者在质量目标内最小化处理时间。
如本文所使用的,视频单元可以是视频数据的任意部分,包括像素、块、宏块、片段、图片或图片组。
在一些实施例中,视频内核或软件可以根据当前速度计动态地决定应当使用哪种算法用于视频处理。换而言之,如果之前的视频单元已经花费了比目标量或预算量多的时间,则针对当前宏块或图片选择更简单的或更快的算法。如果之前的视频单元已经花费了比目标少的时间,则可以将更复杂的并且更慢的算法应用于当前宏块或图片。例如,在媒体内核中,基于当前性能状态并基于处理的视频内容的复杂度,可以对于每个宏块或每个图片不同地实现分层运动搜索和其他特征的使能和禁止,以动态地调整视频编码或处理速度,并实现期望的速度和质量权衡。
在一些实施例中,给不同的视频内容自适应地提供不同的编码和处理时间。因为视频内容的时间可变编码或处理的本质,在一些实施例中可以提高性能和质量。
在一些实施例中,应用可以是编码、解码或其他视频处理,包括视频分析、硬件图形加速或者任何其他视频处理或媒体处理应用。
参见图1,初始地,在10处指示的用户或应用提供输入到系统,以选择用于视频处理的初始模式或设置参数,如方框12中所指示的。接下来,如方框14中所指示的,检查速度计状态,并且可以更新或改变初始选择作为缺省的模式或参数集合。可以使用确定当前时间状态的速度计来检查性能。例如,用户可以为给定的视频处理任务提供时间预算。在一个实施例中,该时间可以被平均地分配给一组视频单元。速度计指示当前序列相对于初始分配的时间预算位于何处。因此,如果花费了太多时间,那么当前时间状态将需要速度的提高,并且如果在预算上已经花费了较少的时间,则可以提高质量。
接下来,在方框16中,可以编码或处理一个视频单元,例如宏块、片段或图片。接下来,该流程迭代到下一个视频单元,检查性能并且更新所需的模式或参数集,如方框14中所指示的。在一些实施例中,可以改变的模式包括导致不同质量或速度水平的模式。可能改变的参数的例子包括参考数量、运动搜索方法、重构的图片、栅格量化、多向预测、宏块或子宏块划分选择以及任意其他可能影响速度或质量的参数。
参见图2,序列20可以在视频处理期间被用来动态调整不同类型的内容。可以通过软件、固件和/或硬件来实现序列20。例如,其可被实现在视频应用或视频内核中。在软件和固件实施例中,其可以被实现为存储在诸如半导体、磁或光存储器等的非暂时性计算机可读媒介中的计算机可执行指令。
如方框22中所指示的,序列20开始于获得整体时间目标。作为两个示例,可以在应用中或由用户指定时间目标。接下来,在方框24中获得当前时间状态。这也是从速度计获得的。可以用硬件、软件和/或固件实现速度计。其提供了与以下有关的信息:当前视频处理在时间预算内处于何处,以及特别是相对于已经处理了多少视频,已经使用了多少可用的时间预算。
接下来,在方框26,获得已经处理或者压缩的视频单元的数量。接下来,在方框28,获得仍要被压缩或处理的单元的数量。
最后,基于性能计输入来确定用于视频单元的时间。也就是说,基于已经被处理的视频的量和留下来要被处理的视频的量,如果已经比预期的进行了更多的处理,那么可以放慢速度并且提高质量,通过选择参数或模式来实现这种结果。相反地,如果处理落后于期望的进度,那么通过选择提高速度的参数或模式来增加速度。因此,如方框32中的所指示的,选择模式或参数集(或者两者)以实现应用的用户初始设置的目标。当然,该目标受到视频中实际包含的内容的影响。对于更复杂的视频,处理可能落后于进度,而对于更简单的视频(例如具有更少的运动),处理可能超前,从而使能速度和性能的自适应权衡。
图3示出了系统700的实施例。在实施例中,系统700可以是媒体系统,尽管系统700并不限于此。例如,系统700可以被并入个人计算机(PC)、膝上型计算机、超膝上型计算机、平板、触摸板、便携式计算机、手持计算机、掌上计算机、个人数字助理(PDA)、蜂窝电话、组合型蜂窝电话/PDA、电视、智能设备(例如智能电话、智能平板或智能电视)、移动互联网设备(MID)、消息传送设备、数据通信设备等等。
在实施例中,系统700包括耦合于显示器720的平台702。平台702可以从诸如内容服务设备730或者内容传递设备740或者其他类似的内容源之类的内容设备接收内容。包括一个或多个导航特征的导航控制器750可以被用于与例如平台702和/或显示器720进行交互。以下将更详细地描述这些组件中的每一个。
在实施例中,平台702可以包括芯片组705、处理器710、存储器712、储存器714、图形子系统715、应用716、全球定位系统(GPS)721、照相机723和/或无线电单元718的任意组合。芯片组705可以提供处理器710、存储器712、储存器714、图形子系统715、应用716和/或无线电单元718之间的互相通信。例如,芯片组705可以包括能够提供与储存器714互相通信的储存适配器(未示出)。
另外,平台702可以包括操作系统770。到处理器772的接口可以连接操作系统和处理器710。
可以提供固件790来实现诸如引导序列等的功能。可以提供能够允许从平台702之外更新固件的更新模块。例如,更新模块可以包括以下代码,用于确定试图更新是否可信,并且识别固件790的最新更新以利于确定需要更新的时间。
在一些实施例中,可以通过外部电源向平台702供电。在一些情况下,平台702还可以包括内置电池780,在不采用外部电源的实施例中,或者在允许电池供电和外部供电的实施例中,内置电池被用作电源。
图2中所示的序列可以被实现在软件和固件实施例中,举例来说,通过将它们并入在储存器714内或者在处理器710或图形子系统715的存储器内来实现。在一个实施例中,图形子系统715可以包括图形处理单元,并且处理器710可以是中央处理单元。
处理器710可以被实现为复杂指令集计算机(CISC)或者精简指令集计算机(RISC)处理器、x86指令集兼容处理器、多核、或任意其他微处理器或中央处理单元(CPU)。在实施例中,处理器710可以包括双核处理器、双核移动处理器等等。
存储器712可以被实现为易失性存储设备,例如但不限于随机存取存储器(RAM)、动态随机存取存储器(DRAM)或静态RAM(SRAM)。
储存器714可以被实现为非易失性储存设备,例如但不限于磁盘驱动器、光盘驱动器、带驱动器、内置储存设备、附接储存设备、闪存、电池备份SDRAM(同步DRAM)和/或网络可访问储存设备。在实施例中,在包括多个硬盘驱动器时,储存器714可以包括用于增加有价值的数字媒体的储存性能增强保护的技术。
图形子系统715可以执行对诸如静态或视频之类的图像的处理,以便进行显示。例如,图形子系统715可以是图形处理单元(GPU)或可视处理单元(VPU)。模拟或数字接口可被用于可通信地耦合图形子系统715和显示器720。例如,接口可以是高清多媒体接口、显示端口、无线HDMI和/或无线HD兼容技术中的任意一种。图形子系统715可以集成到处理器710或芯片组705。图形子系统715可以是与芯片组705通信耦合的单独的卡。
本文中描述的图形和/或视频处理技术可以用多种硬件架构来实现。例如,图形和/或视频功能可以被集成到芯片组内。可替换地,可以使用分离的图形和/或视频处理器。作为另一个实施例,可以由包括多核处理器在内的通用处理器来实现图形和/或视频功能。在另一个实施例中,可以在消费电子设备中实现这些功能。
无线电单元718可以包括一个或多个能够使用多种适当的无线通信技术来发射和接收信号的无线电单元。这些技术可以涉及跨越一个或多个无线网络的通信。示例性无线网络包括(但不限于)无线局域网(WLAN)、无线个域网(WPAN)、无线城域网(WMAN)、蜂窝网络和卫星网络。在跨越这些网络进行通信时,无线电单元718可以依据一个或多个任意版本的可适用标准进行操作。
在实施例中,显示器720可以包括任意电视机类型的监视器或显示器。例如,显示器720可以包括例如计算机显示屏幕、触摸屏显示器、视频监视器、电视机类的设备和/或电视机。显示器720可以是数字的和/或模拟的。在实施例中,显示器720可以是全息显示器。同样的,显示器720可以是可接收可视投影的透明表面。这些投影可以传输多种形式的信息、图像和/或对象。例如,这些投影可以是移动增强实现(MAR)应用的可视覆盖。在一个或多个软件716的控制下,平台702可以在显示器720上显示用户界面722。
在实施例中,内容服务设备730可以是任意国内、国际和/或独立服务商所提供的,并且可以由平台702通过互联网访问。内容服务设备730可以耦合到平台702和/或显示器720。平台702和/或内容服务设备730可以耦合到网络760以向和从网络760传输(例如发送和/或接收)媒体信息。内容传递设备740也可以耦合到平台702和/或显示器720。
在实施例中,内容服务设备730可以包括有线电视盒、个人计算机、网络、电话、支持互联网的设备或能够传递数字信息和/或内容的电器以及任意其他能够通过网络760或者直接地在内容提供商与平台702和/或显示器720之间单向地或双向地传输内容的类似设备。可以理解的是,可以通过网络760单向地和/或双向地向以及从系统700中的任意一个组件和内容提供商传输内容。内容的示例可以包括任意媒体信息,例如包括视频、音乐、医疗和游戏信息等等。
内容服务设备730接收诸如有线电视节目之类的内容,包括媒体信息、数字信息和/或其他内容。内容提供商的示例可以包括任意有线或卫星电视或电台或互联网内容提供商。所提供的示例并非用来限制本发明的实施例。
在实施例中,平台702可以从具有一个或多个导航特征的导航控制器750接收控制信号。例如,控制器750的导航特征可以被用来与用户界面722进行交互。在实施例中,导航控制器750可以是指点设备,其可以是允许用户将空间(例如连续的以及多维的)数据输入到计算机中的计算机硬件组件。诸如图形用户界面(GUI)和电视机以及监视器之类的许多系统允许用户使用身体姿势来控制计算机或电视以及向计算机或电视提供数据。
控制器750的导航特征的移动可以通过在显示器(例如显示器720)上显示的指针、光标、焦点环或其他可视指示符的移动而反映在所述显示器上。例如,在软件应用716的控制之下,位于导航控制器750中的导航特征可以被映射到在用户界面722上显示的虚拟导航特征。在实施例中,控制器750可以不是单独的组件,而是集成在平台702和/或显示器720中。然而,实施例并非限于本文所示或所描述的元件或限于本文所示或所描述的上下文中。
在实施例中,驱动器(未示出)可以包括使得用户例如在初始引导之后、在使能时能够像电视一样通过触摸按钮来立刻打开以及关闭平台702的技术。当平台被“关闭”时,程序逻辑可以允许平台702将内容流式传输到媒体适配器或其他内容服务设备730或内容传递设备740。另外,例如,芯片组705可以包括5.1环绕声音频和/或高清晰度7.1环绕声音频的硬件和/或软件支持。驱动器可以包括用于集成的图形平台的图形驱动器。在实施例中,图形驱动器可以包括外围组件互联(PCI)快速图形卡。
在多种实施例中,可以集成系统700中所示的组件中的任意一个或多个。例如,可以集成平台702和内容服务设备730,或者可以集成平台702和内容传递设备740,或者可以集成平台702、内容服务设备730和内容传递设备740。在多种实施例中,平台702和显示器720可以是集成的单元。例如,可以集成显示器720和内容服务设备730,或者可以集成显示器720和内容传递设备740。这些实施例并非限制本发明。
在多种实施例中,系统700可以被实现为无线系统、有线系统或这两者的组合。当实现为无线系统时,系统700可以包括适用于通过诸如一个或多个天线、发射机、接收机、收发机、放大器、滤波器、控制逻辑等之类的无线共享介质进行通信的组件和接口。无线共享介质的示例可以包括无线频谱(例如RF频谱等)的一部分。当实现为有线系统时,系统700可以包括适用于通过诸如输入/输出(I/O)适配器、连接I/O适配器和相应的有线通信介质的物理连接器、网络接口卡(NIC)、磁盘控制器、视频控制器、音频控制器等之类的有线通信介质进行通信的组件和接口。有线通信介质的示例可以包括电线、电缆、金属导线、印刷电路板(PCB)、底板、交换机结构、半导体材料、双绞线、同轴电缆、光纤等。
平台702可以建立一个或多个逻辑或物理信道以传输信息。信息可以包括媒体信息和控制信息。媒体信息可以是指表示对用户有意义的内容的任何数据。内容的示例可以包括例如来自语音对话的数据、视频会议、流式视频、电子邮件(email)消息、语音邮箱消息、字母数字符号、图形、图像、视频、文本等。来自语音对话的数据可以是例如语音信息、沉默期、背景噪音、舒适噪声、音调等。控制信息是指表示对自动系统有意义的命令、指令或控制字的任何数据。例如,控制信息可以被用来通过系统路由媒体信息,或者指示节点以预定方式处理媒体信息。然而,这些实施例并非限于在图3中所示的或描述的元件或者限于图3中所示的或所描述的上下文中。
如上所述,系统700可以用各种各样的物理风格或形式因子来实施。图5示出了可以实施系统700的小型形式因子设备800的实施例。在实施例中,例如,设备800可以被实现为具有无线能力的移动计算设备。例如,移动计算设备可以是指具有处理系统和移动电源或供应(例如一个或多个电池)的任意设备。
如上所述,移动计算设备的示例可以包括个人计算机(PC)、膝上型计算机、超级膝上型计算机、平板、触摸板、便携式计算机、手持式计算机、掌上型计算机、个人数字助理(PDA)、蜂窝电话、组合蜂窝电话/PDA、电视机、智能设备(例如智能电话、智能平板或智能电视机)、移动互联网设备(MID)、消息传送设备、数据通信设备等。
移动计算设备的示例还可以包括被设置为由人穿戴的计算机,例如手环计算机、手指计算机、戒指计算机、眼镜计算机、腰带夹计算机、臂带计算机、鞋子计算机、衣服计算机和其他可穿戴计算机。在实施例中,例如,移动计算设备可以被实现为能够执行计算机应用以及语音通信和/或数据通信的智能电话。尽管可以通过例子的方式使用被实现为智能电话的移动计算设备来描述一些实施例,但是可以理解的是,还可以使用其他无线移动计算设备来实现其他实施例。实施例并不限于这种上下文中。
如图4中所示,设备800可以包括外壳802、显示器804、输入/输出(I/O)设备806和天线808。设备800还可以包括导航特征812。显示器804可以包括用于显示适于移动计算设备的信息的任意合适的显示单元。I/O设备806可以包括用于输入信息到移动计算设备的任意合适的I/O设备。I/O设备806的示例可以包括字母数字键盘、数字键盘、触摸板、输入按键、按钮、开关、摇杆开关、麦克风、扬声器、语音识别设备和软件等。还可以通过麦克风的方式将信息输入到设备800中。这些信息可以被语音识别设备数字化。实施例并不限于这种上下文。
可以使用硬件元件、软件元件或者两者的组合来实现多种实施例。硬件元件的示例可以包括处理器、微处理器、电路、电路元件(例如晶体管、电阻器、电容器、电感器等)、集成电路、专用集成电路(ASIC)、可编程逻辑设备(PLD)、数字信号处理器(DSP)、现场可编程门阵列(FPGA)、逻辑门、寄存器、半导体设备、芯片、微芯片、芯片组等。软件的示例可以包括软件组件、程序、应用、计算机程序、应用程序、系统程序、机器程序、操作系统软件、中间件、固件、软件模块、例程、子例程、函数、方法、过程、软件接口、应用程序接口(API)、指令集、计算代码、计算机代码、代码段、计算机代码段、字、值、符号或以上这些的任意组合。确定是否使用硬件元件和/或软件元件来实现实施例可以依据任意数量的因素而改变,例如期望的计算速率、功率水平、耐热性、处理周期预算、输入数据速率、输出数据速率、存储器资源、数据总线速度和其他设计或性能约束。
至少一个实施例的一个或多个方面可以由存储在机器可读介质上的代表性指令来实现,这些指令表示处理器内的多种逻辑,所述指令在被机器读取时使得机器构建用于执行本文所述的技术的逻辑。被称为“IP内核”的这样的表示可以被存储在有形的机器可读介质上,并且被提供给各种客户或制造商,以加载到实际制造所述逻辑或处理器的制造机器中。
可以使用硬件元件、软件元件或者两者的组合来实现多种实施例。硬件元件的示例可以包括处理器、微处理器、电路、电路元件(例如晶体管、电阻器、电容器、电感器等)、集成电路、专用集成电路(ASIC)、可编程逻辑设备(PLD)、数字信号处理器(DSP)、现场可编程门阵列(FPGA)、逻辑门、寄存器、半导体设备、芯片、微芯片、芯片组等。软件的示例可以包括软件组件、程序、应用、计算机程序、应用程序、系统程序、机器程序、操作系统软件、中间件、固件、软件模块、例程、子例程、函数、方法、过程、软件接口、应用程序接口(API)、指令集、计算代码、计算机代码、代码段、计算机代码段、字、值、符号或以上这些的任意组合。确定是否使用硬件元件和/或软件元件来实现实施例可以依据任意数量的因素而改变,例如期望的计算速率、功率水平、耐热性、处理周期预算、输入数据速率、输出数据速率、存储器资源、数据总线速度和其他设计或性能约束。
至少一个实施例的一个或多个方面可以由存储在机器可读介质上的代表性指令来实现,这些指令表示处理器内的多种逻辑,所述指令在被机器读取时使得机器构建用于执行本文所述的技术的逻辑。被称为“IP内核”的这样的表示可以被存储在有形的机器可读介质上,并且被提供给各种客户或制造商,以加载到实际制造所述逻辑或处理器的制造机器中。
可以用各种硬件架构来实现本文所述的图形处理技术。例如,图形功能可以集成到芯片组内。可替换地,可以使用单独的图形处理器。作为另一个实施例,可以由包括多核处理器在内的通用处理器来实现图形功能。
贯穿本说明书中提及“一个实施例”或“实施例”表示结合该实施例所描述的特定特征、结构或特性包括在本发明内所涵盖的至少一个实现方式中。因此,短语“一个实施例”或“在实施例中”的出现并非必须是指相同的实施例。此外,所述特定特征、结构或特性可以用除了所示的特定实施例以外的其他合适的形式所构成,并且所有这些形式都可以涵盖在本申请的权利要求内。
虽然已经针对有限数量的实施例描述了本发明,但是本领域技术人员将清楚从其而来的各种修改和变型。所附权利要求旨在覆盖落入本发明的真实精神和范围内的所有这些修改和变型。
Claims (33)
1.一种方法,包括:
基于视频内容的性质来自适应地改变对视频单元的处理。
2.根据权利要求1所述的方法,包括:改变用于处理所述视频单元的模式或参数集中的至少一个。
3.根据权利要求1所述的方法,包括:改变对所述视频单元的编码或解码中的一个。
4.根据权利要求1所述的方法,包括:确定视频处理任务的整体目标时间。
5.根据权利要求4所述的方法,包括:获得所述整体目标时间内的当前时间。
6.根据权利要求5所述的方法,包括:获得已处理的视频单元的数量。
7.根据权利要求6所述的方法,包括:获得要处理的视频单元的数量。
8.根据权利要求7所述的方法,包括:确定能够使用多少时间来处理下一个视频单元。
9.根据权利要求8所述的方法,包括:基于用于所述下一个视频单元的时间来选择用于视频处理的模式或参数集。
10.根据权利要求1所述的方法,包括:给包括子任务的视频处理任务分配时间,并且确定在所述处理任务期间所述时间剩余多少。
11.一种非暂时性计算机可读介质,存储用于使得处理器能够基于视频内容的性质来自适应地改变对视频单元的处理的指令。
12.根据权利要求11所述的介质,还存储用于改变用于处理所述视频单元的模式或参数集中的至少一个的指令。
13.根据权利要求11所述的介质,还存储用于改变对视频单元的编码或解码中的一个的指令。
14.根据权利要求11所述的介质,还存储用于确定视频处理任务的整体目标时间的指令。
15.根据权利要求14所述的介质,还存储用于获得所述整体目标时间内的当前时间的指令。
16.根据权利要求15所述的介质,还存储用于获得已处理的视频单元的数量的指令。
17.根据权利要求16所述的介质,还存储用于获得要处理的视频单元的数量的指令。
18.根据权利要求17所述的介质,还存储用于确定能够使用多少时间来处理下一个视频单元的指令。
19.根据权利要求18所述的介质,还存储用于基于用于所述下一个视频单元的时间来选择用于视频处理的模式或参数集的指令。
20.根据权利要求11所述的介质,还存储用于给包括子任务的视频处理任务分配时间,并且确定在所述处理任务期间所述时间剩余多少的指令。
21.一种装置,包括:
处理器,用于基于视频内容的性质来自适应地改变对视频单元的处理;以及
耦合到所述处理器的存储器。
22.根据权利要求21所述的装置,所述处理器用于改变用于处理所述视频单元的模式或参数集中的至少一个。
23.根据权利要求21所述的装置,还存储用于改变对视频单元的编码或解码中的一个的指令。
24.根据权利要求21所述的装置,所述处理器用于确定视频处理任务的整体目标时间。
25.根据权利要求24所述的装置,所述处理器用于获得所述整体目标时间内的当前时间。
26.根据权利要求25所述的装置,所述处理器用于获得已处理的视频单元的数量。
27.根据权利要求26所述的装置,所述处理器用于获得要处理的视频单元的数量。
28.根据权利要求27所述的装置,所述处理器用于确定能够使用多少时间来处理下一个视频单元。
29.根据权利要求28所述的装置,所述处理器用于基于用于所述下一个视频单元的时间来选择用于视频处理的模式或参数集。
30.根据权利要求21所述的装置,所述处理器用于给包括子任务的视频处理任务分配时间,并且根据所述处理任务确定所述时间剩余多少。
31.根据权利要求21所述的装置,包括操作系统。
32.根据权利要求21所述的装置,包括电池。
33.根据权利要求21所述的装置,包括位于模块中的固件,所述模块用于更新所述固件。
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US13/396,741 | 2012-02-15 | ||
US13/396,741 US20130208786A1 (en) | 2012-02-15 | 2012-02-15 | Content Adaptive Video Processing |
PCT/US2013/026332 WO2013123322A1 (en) | 2012-02-15 | 2013-02-15 | Content adaptive video processing |
Publications (1)
Publication Number | Publication Date |
---|---|
CN104221393A true CN104221393A (zh) | 2014-12-17 |
Family
ID=48945521
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201380009820.0A Pending CN104221393A (zh) | 2012-02-15 | 2013-02-15 | 内容自适应视频处理 |
Country Status (5)
Country | Link |
---|---|
US (1) | US20130208786A1 (zh) |
EP (1) | EP2815581A4 (zh) |
CN (1) | CN104221393A (zh) |
TW (1) | TWI642029B (zh) |
WO (1) | WO2013123322A1 (zh) |
Families Citing this family (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US10262462B2 (en) * | 2014-04-18 | 2019-04-16 | Magic Leap, Inc. | Systems and methods for augmented and virtual reality |
US9524536B2 (en) * | 2014-07-25 | 2016-12-20 | Intel Corporation | Compression techniques for dynamically-generated graphics resources |
US10506235B2 (en) * | 2015-09-11 | 2019-12-10 | Facebook, Inc. | Distributed control of video encoding speeds |
Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20080291995A1 (en) * | 2007-05-25 | 2008-11-27 | Carl Norman Graham | Adaptive video encoding apparatus and methods |
Family Cites Families (15)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP1243141B1 (en) * | 1999-12-14 | 2011-10-19 | Scientific-Atlanta, LLC | System and method for adaptive decoding of a video signal with coordinated resource allocation |
US6789058B2 (en) * | 2002-10-15 | 2004-09-07 | Mindspeed Technologies, Inc. | Complexity resource manager for multi-channel speech processing |
US20050024487A1 (en) * | 2003-07-31 | 2005-02-03 | William Chen | Video codec system with real-time complexity adaptation and region-of-interest coding |
JP4025260B2 (ja) * | 2003-08-14 | 2007-12-19 | 株式会社東芝 | スケジューリング方法および情報処理システム |
GB2406184B (en) * | 2003-09-17 | 2006-03-15 | Advanced Risc Mach Ltd | Data processing system |
TWI253304B (en) * | 2004-09-13 | 2006-04-11 | Newsoft Technology Corp | Method and system for improving fluency of video and audio data display |
US8514933B2 (en) * | 2005-03-01 | 2013-08-20 | Qualcomm Incorporated | Adaptive frame skipping techniques for rate controlled video encoding |
US7974193B2 (en) * | 2005-04-08 | 2011-07-05 | Qualcomm Incorporated | Methods and systems for resizing multimedia content based on quality and rate information |
US7929599B2 (en) * | 2006-02-24 | 2011-04-19 | Microsoft Corporation | Accelerated video encoding |
US20080022320A1 (en) * | 2006-06-30 | 2008-01-24 | Scientific-Atlanta, Inc. | Systems and Methods of Synchronizing Media Streams |
CA2672339C (en) * | 2006-12-12 | 2018-12-04 | Vantrix Corporation | An improved video rate control for video coding standards |
FR2925818A1 (fr) * | 2007-12-21 | 2009-06-26 | France Telecom | Procede de decodage a complexite variable d'un signal d'images, terminal de decodage, procede de codage, dispositif de codage, signal et programmes d'ordinateur correspondants |
KR101439847B1 (ko) * | 2008-01-02 | 2014-09-16 | 삼성전자주식회사 | 부호화 정보의 압축률 향상을 이용한 영상 부호화, 복호화방법 및 장치 |
US20100058320A1 (en) * | 2008-09-04 | 2010-03-04 | Microsoft Corporation | Managing Distributed System Software On A Gaming System |
EP3145189B1 (en) * | 2010-01-06 | 2019-06-19 | Dolby Laboratories Licensing Corporation | Complexity-adaptive scalable decoding and streaming for multi-layered video systems |
-
2012
- 2012-02-15 US US13/396,741 patent/US20130208786A1/en not_active Abandoned
-
2013
- 2013-02-15 CN CN201380009820.0A patent/CN104221393A/zh active Pending
- 2013-02-15 EP EP13749781.4A patent/EP2815581A4/en not_active Withdrawn
- 2013-02-15 WO PCT/US2013/026332 patent/WO2013123322A1/en active Application Filing
- 2013-02-18 TW TW102105581A patent/TWI642029B/zh not_active IP Right Cessation
Patent Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20080291995A1 (en) * | 2007-05-25 | 2008-11-27 | Carl Norman Graham | Adaptive video encoding apparatus and methods |
Also Published As
Publication number | Publication date |
---|---|
US20130208786A1 (en) | 2013-08-15 |
TWI642029B (zh) | 2018-11-21 |
TW201340030A (zh) | 2013-10-01 |
EP2815581A4 (en) | 2015-12-30 |
WO2013123322A1 (en) | 2013-08-22 |
EP2815581A1 (en) | 2014-12-24 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN104782136B (zh) | 在云中处理视频数据 | |
CN103577269B (zh) | 媒体工作负荷调度器 | |
CN103959235B (zh) | 在操作系统初始化过程中显示多媒体数据的技术 | |
CN104704469B (zh) | 动态地重新平衡图形处理器资源 | |
CN103797805B (zh) | 使用变更区域的媒体编码 | |
CN104205161B (zh) | 用于块压缩图象的解压缩的系统、方法和计算机程序产品 | |
CN103501439B (zh) | 使用运动估计失真的帧级率控制 | |
CN103959200A (zh) | 自适应图像子系统功率和性能管理 | |
CN103518227B (zh) | 用于随机运动模糊栅格化的深度缓冲器压缩 | |
CN103581728B (zh) | 基于焦点确定对解码的视频帧的选择性后处理背景 | |
CN104050040A (zh) | 媒体重放工作负荷调度器 | |
CN104756150A (zh) | 深度缓冲 | |
CN103959198A (zh) | 降低3d工作负荷的功率 | |
CN104049967A (zh) | 暴露媒体处理特征 | |
CN103533286A (zh) | 用于带静态区域排除的时间帧内插的方法和系统 | |
CN104915916A (zh) | 使用选择性色彩变换的色彩压缩 | |
CN104937551B (zh) | 用于管理设备中的功率的计算机实现的方法和用于管理设备中的功率的系统 | |
CN104090849A (zh) | 用于图形处理单元的存储器映射 | |
KR20150038428A (ko) | 일반화된 플레인 인코딩을 이용한 확률적 깊이 버퍼 압축 | |
CN105103512A (zh) | 分布式图形处理 | |
CN103369324A (zh) | 视频剪辑的硬件加速分布式转码 | |
CN104012090B (zh) | 内容自适应的高精度宏块速率控制 | |
CN104221393A (zh) | 内容自适应视频处理 | |
CN104067309A (zh) | 流水线化的图像处理序列发生器 | |
JP6005292B2 (ja) | ビデオ符号化及び復号のためのヒストグラム分割ベースのローカル適応フィルタ |
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 |
Application publication date: 20141217 |
|
RJ01 | Rejection of invention patent application after publication |