能够进行增量压缩以及对运动估计和元数据的修改以用于将图像呈现给远程显示器.pdf

上传人:32 文档编号:4332092 上传时间:2018-09-14 格式:PDF 页数:13 大小:1.99MB
返回 下载 相关 举报
摘要
申请专利号:

CN201180011850.6

申请日:

2011.03.02

公开号:

CN102792689A

公开日:

2012.11.21

当前法律状态:

授权

有效性:

有权

法律详情:

授权|||实质审查的生效IPC(主分类):H04N 7/26申请日:20110302|||公开

IPC分类号:

H04N7/26; H04N7/50

主分类号:

H04N7/26

申请人:

高通股份有限公司

发明人:

V·R·拉韦恩德朗

地址:

美国加利福尼亚

优先权:

2010.03.02 US 61/309,765; 2011.03.01 US 13/038,316

专利代理机构:

永新专利商标代理有限公司 72002

代理人:

张扬;王英

PDF下载: PDF下载
内容摘要

可以通过以减少或者避免压缩过程的运动估计的方式对用于无线传输的视频数据进行处理来实现增量压缩。可以在合成引擎处捕获视频数据和相应的元数据。可以从数据和元数据中创建帧缓冲器更新。帧缓冲器更新可以包括与包括像素数据和头部信息的视频宏块相关的数据。帧缓冲器更新可以包括用于重新创建视频图像的像素参考数据、运动矢量、宏块类型、以及其它数据。可以将宏块数据和头部信息转换成压缩算法(诸如MPEG-2)可识别的格式,然后进行编码并进行无线发送。

权利要求书

1.一种用于对帧缓冲器更新进行编码的方法,所述方法包括:存储帧缓冲器更新;以及将所述帧缓冲器更新转换成混合压缩格式的运动信息,从而回避运动估计。2.如权利要求1所述的方法,其中,所述帧缓冲器更新包括像素信息和元数据。3.如权利要求2所述的方法,其中,所述元数据包括处理器指令。4.如权利要求1所述的方法,其中,所述混合压缩格式是基于块的。5.如权利要求4所述的方法,其中,所述帧缓冲器更新包含宏块头部和宏块数据。6.如权利要求5所述的方法,其中,所述宏块头部包括宏块ID、宏块类型、运动矢量、以及参考图片中的至少一个。7.如权利要求6所述的方法,其中,所述宏块类型包括宏块模式,并且所述宏块模式是静态宏块(跳过)、帧内(I)和预测(P或B)之一。8.如权利要求5所述的方法,其中,所述宏块头部和宏块数据是以MPEG-2可识别格式。9.如权利要求5所述的方法,其中,所述宏块数据包括像素差值数据和绝对像素数据。10.如权利要求5所述的方法,其中,所述宏块头部包括周期性和时序数据。11.一种用于对帧缓冲器更新进行编码的装置,所述装置包括:用于存储帧缓冲器更新的模块;以及用于将所述帧缓冲器更新转换成混合压缩格式的运动信息,从而回避运动估计的模块。12.一种用于对帧缓冲器更新进行编码的计算机程序产品,所述计算机程序产品包括:具有记录在其上的程序代码的计算机可读介质,所述程序代码包括:用于存储帧缓冲器更新的程序代码;以及用于将所述帧缓冲器更新转换成混合压缩格式的运动信息,从而回避运动估计的程序代码。13.一种可操作以对帧缓冲器更新进行编码的装置,所述装置包括:至少一个处理器;以及耦合到所述至少一个处理器的存储器,所述至少一个处理器配置为:存储帧缓冲器更新的工具;以及将所述帧缓冲器更新转换成混合压缩格式的运动信息,从而回避运动估计。14.如权利要求13所述的装置,其中,所述帧缓冲器更新包括像素信息和元数据。15.如权利要求14所述的装置,其中,所述元数据包括处理器指令。16.如权利要求13所述的装置,其中,所述混合压缩格式是基于块的。17.如权利要求16所述的装置,其中,所述帧缓冲器更新包含宏块头部和宏块数据。18.如权利要求17所述的装置,其中,所述宏块头部包括宏块ID、宏块类型、运动矢量、以及参考图片中的至少一个。19.如权利要求18所述的装置,其中,所述宏块类型包括宏块模式,并且所述宏块模式是静态宏块(跳过)、帧内(I)和预测(P或B)之一。20.如权利要求17所述的装置,其中,所述宏块头部和宏块数据是以MPEG-2可识别格式。21.如权利要求17所述的装置,其中,所述宏块数据包括像素差值数据和绝对像素数据。22.如权利要求17所述的装置,其中,所述宏块头部包括周期性和时序数据。

说明书

能够进行增量压缩以及对运动估计和元数据的修改以用于将图像呈现给远程显示器

相关申请的交叉引用

本申请要求于2010年3月2日以V.RAVEENDRAN的名义提交的美国
临时专利申请No.61/309,765的权益,故明确地通过引用的方式将其公开内
容作为整体并入本文。

技术领域

概括地说,本公开内容涉及数据压缩。更具体地说,本公开内容涉及
减少在视频信号的无线传输之前执行的数据压缩期间的运动估计。

背景技术

期望向电视(TV)和其它监视器无线地递送内容。作为一个例子,在
一些实例中,可能期望将从用户设备所递送的内容在TV设备上输出。例如,
与许多TV设备输出能力相比,诸如移动电话、个人数字助理(PDA)、媒
体播放器设备(例如,APPLE IPOD设备、其它MP3播放器设备等)、膝上
型计算机、笔记本计算机等许多便携式用户设备具有的有限的/受约束的输
出能力,诸如较小的显示器大小等。例如,如果递送视频内容以在TV设备
上输出,则期望在便携式用户设备上观看视频的用户就可以获得改善的视
听体验。因此,在一些实例中,为了改善在接收(观看和/或收听)内容时
的视听体验,用户可以期望从用户设备递送内容以便在电视设备(例如,
HDTV设备)上输出。

发明内容

提供了一种用于对帧缓冲器更新进行编码的方法。该方法包括存储帧
缓冲器更新。该方法还包括将帧缓冲器更新转换成混合压缩格式的运动信
息,从而回避运动估计。

提供了一种用于对帧缓冲器更新进行编码的装置。该装置包括用于存
储帧缓冲器更新的模块。该装置还包括用于将帧缓冲器更新转换成混合压
缩格式的运动信息,从而回避运动估计的模块。

提供了一种用于对帧缓冲器更新进行编码的计算机程序产品。该计算
机程序产品包括具有记录在其上的程序代码的计算机可读介质。所述程序
代码包括用于存储帧缓冲器更新的程序代码。所述程序代码还包括用于将
帧缓冲器更新转换成混合压缩格式的运动信息,从而回避运动估计的程序
代码。

提供了一种可操作用于对帧缓冲器更新进行编码的装置。该装置包括
处理器和耦合到该处理器的存储器。所述处理器配置为存储帧缓冲器更新。
所述处理器还配置为将帧缓冲器更新转换成混合压缩格式的运动信息,从
而回避运动估计。

附图说明

为了对本公开内容更加完整的理解,现在结合附图参考下面的描述。

图1是示出用于处理和发送多媒体数据的组件的框图;

图2表示示出根据本公开内容的一个方面的增量压缩的框图;

图3是示出准备用于无线传输的宏块数据和头部信息的框图;

图4示出了用于静态宏块的采样宏块头部;

图5示出了根据本公开内容的一个方面的增量压缩。

具体实施方式

本文中使用词语“示例性”意味着“作为例子、实例或例证”。本文描
述的作为“示例性”的任何方面不必被解释为优选的或优于其它方面。

可以利用多种方法来无线地发送视频数据。一种方法可以利用通过如
图1中所示的Express卡接口连接到内容主机的无线通信设备。如所示出的,
主机100通过Express卡接口连接到Express卡150。主机100可以利用多
个处理组件来处理多媒体数据以便输出到主显示器102和音频输出104,或
者主机可以处理多媒体数据以便通过缓冲器输出到发射机(图1中表示为
外部设备,诸如Express卡150),该发射机可以对数据进行进一步处理以
便最终通过天线152进行无线传输。图1中所示的逻辑和硬件仅是为了说
明性的目的。可以使用主机、外部设备等的其它配置来实现下面描述的方
法和教导。

通常,当处理视频数据时,由显示处理器106来渲染和合成图像数据,
并且典型地以像素数据的形式发送到帧缓冲器108。然后,将该数据输出到
主显示器102。在某些情况下,输出的视频数据可以来自单个源(诸如观看
电影),在其它情况下(诸如玩视频游戏或者操作具有多个应用的设备),
可以将包括图形覆盖对象或者发音器的多个图形输入组合和/或覆盖在视频
图像上,以便创建最终在显示器上显示的复合视频帧。在对多个视频分量
进行组合的情况下,负责生成这些视频分量的每个媒体处理器可以具有其
自己的输出语言,输出语言用于将视频信息(诸如帧更新信息)传送到合
成引擎,合成引擎用于对来自各个输入/媒体处理器的数据进行组合。合成
引擎将获得来自各个处理器的输入(包括视频数据、图形对象等)的组合,
根据需要对其进行覆盖和组合,将它们合成为单个图像(其可以包括诸如
适当的颜色合成之类的额外处理等),并且将它们组合成最终将在显示器上
显示的图像。

来自各个处理器的输入可以是不同的语言、不同的形式、并且可以具
有不同的属性。例如,来自一个设备的输入可以以与另一输入不同的帧更
新速率提供视频数据。作为另一个例子,一个设备可以反复提供新的像素
信息,而另一个设备可以仅提供以像素更新形式的视频数据,像素更新指
示从特定的参考像素的变化。某些处理器还可以仅在帧的不同区域或者合
成在一起以创建帧的不同类型的数据上进行操作。通过合成引擎将来自不
同处理器的各个输入转换成模式信息,并且将来自各个处理器的输入变换
成像素数据以创建帧。在由合成引擎进行处理之后,帧信息将被发送到帧
缓冲器108以进行最终显示。

用于视频数据的无线传输的常见方法仅是从帧缓冲器108捕获准备显
示的数据、对视频数据进行编码/压缩以易于传输、并且随后发送视频数据。
可以由诸如显示器连接驱动器110之类的组件进行这些操作。

视频数据压缩的一种常见方法是MPEG-2,出于示例性目的在本文中对
其进行讨论,但是还可以使用诸如MPEG-4之类的其它压缩标准。数据压
缩的使用可能采用额外的处理器和存储器容量,可能更耗时并且更耗功率,
并且可能导致最终传输中的延迟。延迟可能起因于在可以使用第一帧作为
参考对下一帧进行解码之前对第一帧进行完全解码的压缩过程。

用于减少这些延迟的一种方法是将多个后续帧的视频数据处理为与参
考帧的递增变化。在该方法中,将更新或变化信息(称为差值(Δ)信息或
者显示帧更新)发送到显示处理器以便在最终的显示器上进行呈现(相对
于参考帧)。该增量信息可以是运动估计的形式(例如,包括运动矢量)或
者其它数据。在压缩期间计算这种增量信息时可以利用额外的处理功率。

在本公开内容的一个方面,可以避免在压缩期间确定增量信息,和/或
可以减少或者避免专用于该确定的处理功率。各种媒体处理器(诸如上述
所讨论的那些将信息输出到压缩引擎的处理器)可能已经以一种方式计算
了增量信息,使得可以捕获该增量信息并且可以在压缩期间不需要重新计
算。通过查看进入合成引擎的输入,可获得更多与每个像素所发生的相关
的原始信息。可以将该信息转换为模式信息,编码器将针对每个像素组(称
为宏块或者MB)输出该模式信息。然后,可以对以可由压缩技术(例如,
MPEG-2)理解的格式的宏块的数据和该宏块的头部信息(其可以包括运动
信息)进行编码,并且将其组合成压缩比特流以用于无线传输。在这种方
式中,可以减少在传统压缩期间对运动估计的处理和对增量信息的计算。

图2表示示出了根据本公开内容的一个方面的增量压缩的框图。可以
由解码器208对来自视频源206的视频数据进行解码,并且发送到显示处
理器212。视频数据从显示处理器212输出到帧缓冲器214,以便最终递送
给设备上的嵌入式显示器216或者不同的显示器(未示出)。来自音频处理
器218的数据被输出到音频缓冲器220,以便最终递送给扬声器224。显示
处理器212还可以接收来自GPU 210的图像数据。GPU 210可以生成各种
图形、图标、图像或者可以与视频数据组合或者覆盖在视频数据上的其它
图形数据。

应用202可以与合成引擎/显示驱动器204进行通信。在一个例子中,
引擎/显示驱动器204可以是如图1中所示的显示器连接驱动器110。引擎
204命令显示处理器212接收来自GPU 210、解码器208、和/或其它源的信
息,以便进行组合并输出到帧缓冲器214。如上所述,在典型的无线传输系
统中,帧缓冲器中所包含的是输出到A/V编码器并且在传输之前进行复用
的最终图像。

然而,在本公开内容中,使用来自引擎204的信息而不是帧缓冲器中
的数据来创建无线输出流。引擎知道来自视频源206、GPU 210等的数据。
引擎还意识到去往与生成对帧缓冲器的更新相关联的显示处理器212的命
令。这些命令包括关于视频显示数据的部分更新的信息。这些命令还包括
来自GPU 210的图形覆盖信息。引擎204习惯上将使用对其已知的各种数
据来生成要发送到帧缓冲器的帧缓冲器更新。

根据本公开内容的一个方面,诸如引擎204或者引擎204的扩展250
之类的设备组件可以如本文所描述地对帧缓冲器更新进行编码。帧缓冲器
更新可以存储在寄存器252中,并且可以包含元数据。元数据可以包括处
理器指令。帧缓冲器更新可以包括像素信息。帧缓冲器更新可以是针对帧
速率和/或刷新速率的。帧缓冲器更新可以包括与绝对像素、像素差异、周
期性和/或时序有关的数据。组件可以执行混合压缩,其中包括运动估计元
数据的修正和存储器管理功能。混合压缩可以是基于块的。可以将帧缓冲
器更新分割成MB数据和MB头部。

从引擎204捕获主要像素信息226和增量/周期时序信息228。还可以
捕获元数据。可以针对某些宏块(MB)聚集信息。像素数据226可以包括
索引(例如(1,1)),其指示表示其数据的像素的位置。从参考像素(诸如
(1,1))中,稍后像素(例如(1,2))的数据可以仅包括增量信息,其指示
稍后像素和先前的参考像素之间的差异。

从引擎204捕获的数据可以是旨在去往主显示器的数据,或者其可以
旨在去往辅显示器(例如,旨在单独地用于远程显示器的视频数据)。使用
所描述的技术,可以从任何媒体处理器捕获所期望的像素数据,然后将其
转换为压缩信息并且进行发送,而无需在压缩期间执行传统的运动估计。

在某些情况下,从一个宏块到下一个宏块可能不存在变化。当宏块未
与其各自的参考宏块不同时,将其称为静态宏块。如方框230中所示,可
以由引擎204捕获宏块是静态的指示。可以将MB数据转换为由压缩格式
(例如,MPEG-2)识别的格式,并且输出为MB数据234以用于传输。可
以将包括时序数据、类型(诸如静态宏块(跳过(skip))、帧内(I)、预测
(P或者B))增量信息等的关于宏块232的进一步的信息转换成由压缩格
式(例如,MPEG-2)识别的格式,并且包括为MB头部信息236以用于传
输。头部信息是有效运动信息,并且可以包括运动矢量238、MB模式240
(例如,预测模式(P、B)等)、或者MB类型242(例如,新帧)。

图3示出了准备用于传输的MB信息。在被包括在用于无线传输的输
出MPEG-2比特流中之前,对MB数据234(其包括像素数据)进行变换
和编码。在被包括在MPEG-2比特流中之前,通过熵编码对MB头部236
进行处理。

图4示出了静态块的样本MB头部。在图4中,MB 1,1是帧中的第一
个宏块。所示的头部包括MB ID(1,1)、MB类型(跳过)、运动矢量(当
MB为静态时,表示为(0,0)),并且将参考图片示为0。

在上面参照图2和3所描述的过程中,减少或者消除了在传输之前的
传统压缩期间所执行的运动估计。典型地,不对在显示处理器212处可用
的增量信息进行压缩。如上所述,若来自显示处理器212的期望的运动数
据是期望用于传输的,增量信息可以转换/编码成可由压缩技术(例如,
MPEG-2)理解的格式或者以其它方式进行处理。一旦转换,如上所述,增
量信息可以结合参考帧使用。

因为运动估计可能在传统压缩的总复杂度的50-80%之间,所以移除运
动估计导致改善的效率、减少的功耗、以及减少当无线发送视频数据时的
延迟。

例如,在定制硬件(诸如专用集成电路(ASIC))中的MPEG-2编码
可以消耗100mW用于在720p分辨率的HD编码(对于1080p甚至更高)。
本文针对MPEG-2压缩描述的技术可以通过减小与输入视频中的熵成比例
的压缩周期/复杂度来显著减小该数字。具体地说,本文描述的技术利用了
大量不需要更新的视频帧。

如下所述,即使利用传统上被认为具有许多运动的视频,在逐帧基础
上也存在足够大百分比的静态MB(定义为如在对等宏块、零残差、作为参
考的前一个图片中没有运动矢量):

表1静态MB在视频中的比例

  内容
  静态MB的%
  具有>80%的静态MB



  的帧的%
 ESPN新闻
  85.04%
  91.43%
 天气
  83.21%
  79.29%
 CNN新闻
  88.59%
  92.14%
 Bloomberg新闻
  84.61%
  85.71%
 动画片
  87.79%
  90.71%
 MTV
  55.08%
  2.14%
 HBO
  36.73%
  0.71%
 音乐视频
  16.25%
  0.00%
 棒球
  35.69%
  0.00%
 足球
  33.50%
  0.00%
 平均
  60.65%

表1示出了对从卫星上的数字TV捕获的30个不同的十分钟序列的采
样得出的数据。从采样的节目中,平均60%的视频包含不需要在显示器上
更新的静态宏块。表1的第三列还示出了,在新闻和动画片类型的视频中,
超过80%的时间中,超过80%的帧不需要更新。使得编码器能够仅处理更
新或者一部分帧而不是整个帧可以导致显著节电。有些时候这可以开始时
完成(例如,当多于80%的帧包含MB时)。

相当大百分比的视频内容落入新闻或者动画片分类内(即,低运动、
低纹理):

表2基于运动和纹理的视频分类

  内容类型
  样本集合的比例
  低运动、低纹理
  47%
  中运动、中纹理
  17%
  高运动、高纹理
  36%

在视频中应用适当的冗余以便最优化(或者减少)视频处理负载,并
且机制的识别(例如,使用跳过(skip)或者静态信息)将促进低功率或者
集成应用平台。

在传统的运动估计和压缩期间,取得大量数据并且进行处理,典型地
在计算差值度量(绝对差值之和(SAD)或者平方差值之和(SSD))之前
进行内插以便改善精度。针对可以是给定的块或者MB的预测器的所有候
选重复该过程,直到获得所期望的匹配(最低的差值或者SAD)为止。从
参考图片取得该数据的过程是耗时的,并且构成了处理延迟和计算功率的
主要因素。典型地,对计算差值的算法进行手动编码以便减少所消耗的处
理器循环的数目。然而,由于所要取得的数据可以在位置上很广泛(如果
使用多个参考图片预测,最接近在多帧上的帧中的最远的MB),并且可以
不与MB边界对齐,存储器寻址添加了额外的开销。另外,针对之前的MB
取得的数据可能不合适于当前MB,其限制了对数据取得和存储器传送带宽
的优化。

图5示出了根据本公开内容的一个方面的增量压缩。如在方框502中
所示,存储帧缓存器更新。如在方框504中所示,将帧缓冲器更新转换成
混合压缩格式的运动信息,从而回避运动估计。

在一个方面,一种装置包括用于存储帧缓冲器更新的模块,以及用于
将帧缓冲器更新转换成混合压缩格式的运动信息的模块。设备还可以包括
用于捕获用户输入命令的时间戳的模块,以及用于捕获从用户输入命令产
生的相应的显示数据的模块。在一个方面,前述模块可以是显示驱动器110、
引擎204、帧缓冲器108或214、寄存器252、引擎扩展250、解码器208、
GPU 210、或者显示处理器106或212。

虽然已经对本公开内容及其优点进行了详细描述,但是应该理解的是,
在不脱离由所附权利要求所定义的本公开内容的技术的前提下,在本文中
可以进行各种变化、替换和变更。此外,本申请的范围并非旨在限于说明
书中所描述的过程、机器、制品、事物的组合、手段、方法和步骤的特定
方面。本领域的普通技术人员将从本公开内容中容易意识到的是,根据本
公开内容,可以利用目前存在或者稍后将要开发的、执行与本文所描述的
相应方面实质上相同的功能或者实现实质上相同结果的过程、机器、制品、
事物的组合、手段、方法或步骤。因此,所附权利要求旨在将这些过程、
机器、制品、事物的组合、手段、方法或者步骤包括在其范围内。

能够进行增量压缩以及对运动估计和元数据的修改以用于将图像呈现给远程显示器.pdf_第1页
第1页 / 共13页
能够进行增量压缩以及对运动估计和元数据的修改以用于将图像呈现给远程显示器.pdf_第2页
第2页 / 共13页
能够进行增量压缩以及对运动估计和元数据的修改以用于将图像呈现给远程显示器.pdf_第3页
第3页 / 共13页
点击查看更多>>
资源描述

《能够进行增量压缩以及对运动估计和元数据的修改以用于将图像呈现给远程显示器.pdf》由会员分享,可在线阅读,更多相关《能够进行增量压缩以及对运动估计和元数据的修改以用于将图像呈现给远程显示器.pdf(13页珍藏版)》请在专利查询网上搜索。

1、(10)申请公布号 CN 102792689 A (43)申请公布日 2012.11.21 C N 1 0 2 7 9 2 6 8 9 A *CN102792689A* (21)申请号 201180011850.6 (22)申请日 2011.03.02 61/309,765 2010.03.02 US 13/038,316 2011.03.01 US H04N 7/26(2006.01) H04N 7/50(2006.01) (71)申请人高通股份有限公司 地址美国加利福尼亚 (72)发明人 VR拉韦恩德朗 (74)专利代理机构永新专利商标代理有限公司 72002 代理人张扬 王英 (54) 。

2、发明名称 能够进行增量压缩以及对运动估计和元数据 的修改以用于将图像呈现给远程显示器 (57) 摘要 可以通过以减少或者避免压缩过程的运动估 计的方式对用于无线传输的视频数据进行处理来 实现增量压缩。可以在合成引擎处捕获视频数据 和相应的元数据。可以从数据和元数据中创建帧 缓冲器更新。帧缓冲器更新可以包括与包括像素 数据和头部信息的视频宏块相关的数据。帧缓冲 器更新可以包括用于重新创建视频图像的像素参 考数据、运动矢量、宏块类型、以及其它数据。可 以将宏块数据和头部信息转换成压缩算法(诸如 MPEG-2)可识别的格式,然后进行编码并进行无线 发送。 (30)优先权数据 (85)PCT申请进入国。

3、家阶段日 2012.08.31 (86)PCT申请的申请数据 PCT/US2011/026920 2011.03.02 (87)PCT申请的公布数据 WO2011/109555 EN 2011.09.09 (51)Int.Cl. 权利要求书2页 说明书6页 附图4页 (19)中华人民共和国国家知识产权局 (12)发明专利申请 权利要求书 2 页 说明书 6 页 附图 4 页 1/2页 2 1.一种用于对帧缓冲器更新进行编码的方法,所述方法包括: 存储帧缓冲器更新;以及 将所述帧缓冲器更新转换成混合压缩格式的运动信息,从而回避运动估计。 2.如权利要求1所述的方法,其中,所述帧缓冲器更新包括像素。

4、信息和元数据。 3.如权利要求2所述的方法,其中,所述元数据包括处理器指令。 4.如权利要求1所述的方法,其中,所述混合压缩格式是基于块的。 5.如权利要求4所述的方法,其中,所述帧缓冲器更新包含宏块头部和宏块数据。 6.如权利要求5所述的方法,其中,所述宏块头部包括宏块ID、宏块类型、运动矢量、以 及参考图片中的至少一个。 7.如权利要求6所述的方法,其中,所述宏块类型包括宏块模式,并且所述宏块模式是 静态宏块(跳过)、帧内(I)和预测(P或B)之一。 8.如权利要求5所述的方法,其中,所述宏块头部和宏块数据是以MPEG-2可识别格式。 9.如权利要求5所述的方法,其中,所述宏块数据包括像素。

5、差值数据和绝对像素数据。 10.如权利要求5所述的方法,其中,所述宏块头部包括周期性和时序数据。 11.一种用于对帧缓冲器更新进行编码的装置,所述装置包括: 用于存储帧缓冲器更新的模块;以及 用于将所述帧缓冲器更新转换成混合压缩格式的运动信息,从而回避运动估计的模 块。 12.一种用于对帧缓冲器更新进行编码的计算机程序产品,所述计算机程序产品包 括: 具有记录在其上的程序代码的计算机可读介质,所述程序代码包括: 用于存储帧缓冲器更新的程序代码;以及 用于将所述帧缓冲器更新转换成混合压缩格式的运动信息,从而回避运动估计的程序 代码。 13.一种可操作以对帧缓冲器更新进行编码的装置,所述装置包括:。

6、 至少一个处理器;以及 耦合到所述至少一个处理器的存储器,所述至少一个处理器配置为: 存储帧缓冲器更新的工具;以及 将所述帧缓冲器更新转换成混合压缩格式的运动信息,从而回避运动估计。 14.如权利要求13所述的装置,其中,所述帧缓冲器更新包括像素信息和元数据。 15.如权利要求14所述的装置,其中,所述元数据包括处理器指令。 16.如权利要求13所述的装置,其中,所述混合压缩格式是基于块的。 17.如权利要求16所述的装置,其中,所述帧缓冲器更新包含宏块头部和宏块数据。 18.如权利要求17所述的装置,其中,所述宏块头部包括宏块ID、宏块类型、运动矢量、 以及参考图片中的至少一个。 19.如权。

7、利要求18所述的装置,其中,所述宏块类型包括宏块模式,并且所述宏块模式 是静态宏块(跳过)、帧内(I)和预测(P或B)之一。 20.如权利要求17所述的装置,其中,所述宏块头部和宏块数据是以MPEG-2可识别格 式。 权 利 要 求 书CN 102792689 A 2/2页 3 21.如权利要求17所述的装置,其中,所述宏块数据包括像素差值数据和绝对像素数 据。 22.如权利要求17所述的装置,其中,所述宏块头部包括周期性和时序数据。 权 利 要 求 书CN 102792689 A 1/6页 4 能够进行增量压缩以及对运动估计和元数据的修改以用于 将图像呈现给远程显示器 0001 相关申请的交。

8、叉引用 0002 本申请要求于2010年3月2日以V.RAVEENDRAN的名义提交的美国临时专利申请 No.61/309,765的权益,故明确地通过引用的方式将其公开内容作为整体并入本文。 技术领域 0003 概括地说,本公开内容涉及数据压缩。更具体地说,本公开内容涉及减少在视频信 号的无线传输之前执行的数据压缩期间的运动估计。 背景技术 0004 期望向电视(TV)和其它监视器无线地递送内容。作为一个例子,在一些实例中, 可能期望将从用户设备所递送的内容在TV设备上输出。例如,与许多TV设备输出能力相 比,诸如移动电话、个人数字助理(PDA)、媒体播放器设备(例如,APPLE IPOD设备。

9、、其它MP3 播放器设备等)、膝上型计算机、笔记本计算机等许多便携式用户设备具有的有限的/受约 束的输出能力,诸如较小的显示器大小等。例如,如果递送视频内容以在TV设备上输出,则 期望在便携式用户设备上观看视频的用户就可以获得改善的视听体验。因此,在一些实例 中,为了改善在接收(观看和/或收听)内容时的视听体验,用户可以期望从用户设备递送内 容以便在电视设备(例如,HDTV设备)上输出。 发明内容 0005 提供了一种用于对帧缓冲器更新进行编码的方法。该方法包括存储帧缓冲器更 新。该方法还包括将帧缓冲器更新转换成混合压缩格式的运动信息,从而回避运动估计。 0006 提供了一种用于对帧缓冲器更新。

10、进行编码的装置。该装置包括用于存储帧缓冲器 更新的模块。该装置还包括用于将帧缓冲器更新转换成混合压缩格式的运动信息,从而回 避运动估计的模块。 0007 提供了一种用于对帧缓冲器更新进行编码的计算机程序产品。该计算机程序产品 包括具有记录在其上的程序代码的计算机可读介质。所述程序代码包括用于存储帧缓冲器 更新的程序代码。所述程序代码还包括用于将帧缓冲器更新转换成混合压缩格式的运动信 息,从而回避运动估计的程序代码。 0008 提供了一种可操作用于对帧缓冲器更新进行编码的装置。该装置包括处理器和耦 合到该处理器的存储器。所述处理器配置为存储帧缓冲器更新。所述处理器还配置为将帧 缓冲器更新转换成混。

11、合压缩格式的运动信息,从而回避运动估计。 附图说明 0009 为了对本公开内容更加完整的理解,现在结合附图参考下面的描述。 0010 图1是示出用于处理和发送多媒体数据的组件的框图; 说 明 书CN 102792689 A 2/6页 5 0011 图2表示示出根据本公开内容的一个方面的增量压缩的框图; 0012 图3是示出准备用于无线传输的宏块数据和头部信息的框图; 0013 图4示出了用于静态宏块的采样宏块头部; 0014 图5示出了根据本公开内容的一个方面的增量压缩。 具体实施方式 0015 本文中使用词语“示例性”意味着“作为例子、实例或例证”。本文描述的作为“示 例性”的任何方面不必被。

12、解释为优选的或优于其它方面。 0016 可以利用多种方法来无线地发送视频数据。一种方法可以利用通过如图1中所示 的Express卡接口连接到内容主机的无线通信设备。如所示出的,主机100通过Express卡 接口连接到Express卡150。主机100可以利用多个处理组件来处理多媒体数据以便输出 到主显示器102和音频输出104,或者主机可以处理多媒体数据以便通过缓冲器输出到发 射机(图1中表示为外部设备,诸如Express卡150),该发射机可以对数据进行进一步处理 以便最终通过天线152进行无线传输。图1中所示的逻辑和硬件仅是为了说明性的目的。 可以使用主机、外部设备等的其它配置来实现下面。

13、描述的方法和教导。 0017 通常,当处理视频数据时,由显示处理器106来渲染和合成图像数据,并且典型地 以像素数据的形式发送到帧缓冲器108。然后,将该数据输出到主显示器102。在某些情况 下,输出的视频数据可以来自单个源(诸如观看电影),在其它情况下(诸如玩视频游戏或者 操作具有多个应用的设备),可以将包括图形覆盖对象或者发音器的多个图形输入组合和/ 或覆盖在视频图像上,以便创建最终在显示器上显示的复合视频帧。在对多个视频分量进 行组合的情况下,负责生成这些视频分量的每个媒体处理器可以具有其自己的输出语言, 输出语言用于将视频信息(诸如帧更新信息)传送到合成引擎,合成引擎用于对来自各个输 。

14、入/媒体处理器的数据进行组合。合成引擎将获得来自各个处理器的输入(包括视频数据、 图形对象等)的组合,根据需要对其进行覆盖和组合,将它们合成为单个图像(其可以包括 诸如适当的颜色合成之类的额外处理等),并且将它们组合成最终将在显示器上显示的图 像。 0018 来自各个处理器的输入可以是不同的语言、不同的形式、并且可以具有不同的属 性。例如,来自一个设备的输入可以以与另一输入不同的帧更新速率提供视频数据。作为 另一个例子,一个设备可以反复提供新的像素信息,而另一个设备可以仅提供以像素更新 形式的视频数据,像素更新指示从特定的参考像素的变化。某些处理器还可以仅在帧的不 同区域或者合成在一起以创建帧。

15、的不同类型的数据上进行操作。通过合成引擎将来自不同 处理器的各个输入转换成模式信息,并且将来自各个处理器的输入变换成像素数据以创建 帧。在由合成引擎进行处理之后,帧信息将被发送到帧缓冲器108以进行最终显示。 0019 用于视频数据的无线传输的常见方法仅是从帧缓冲器108捕获准备显示的数据、 对视频数据进行编码/压缩以易于传输、并且随后发送视频数据。可以由诸如显示器连接 驱动器110之类的组件进行这些操作。 0020 视频数据压缩的一种常见方法是MPEG-2,出于示例性目的在本文中对其进行讨 论,但是还可以使用诸如MPEG-4之类的其它压缩标准。数据压缩的使用可能采用额外的处 理器和存储器容量。

16、,可能更耗时并且更耗功率,并且可能导致最终传输中的延迟。延迟可能 说 明 书CN 102792689 A 3/6页 6 起因于在可以使用第一帧作为参考对下一帧进行解码之前对第一帧进行完全解码的压缩 过程。 0021 用于减少这些延迟的一种方法是将多个后续帧的视频数据处理为与参考帧的递 增变化。在该方法中,将更新或变化信息(称为差值()信息或者显示帧更新)发送到显示 处理器以便在最终的显示器上进行呈现(相对于参考帧)。该增量信息可以是运动估计的形 式(例如,包括运动矢量)或者其它数据。在压缩期间计算这种增量信息时可以利用额外的 处理功率。 0022 在本公开内容的一个方面,可以避免在压缩期间确定。

17、增量信息,和/或可以减少 或者避免专用于该确定的处理功率。各种媒体处理器(诸如上述所讨论的那些将信息输出 到压缩引擎的处理器)可能已经以一种方式计算了增量信息,使得可以捕获该增量信息并 且可以在压缩期间不需要重新计算。通过查看进入合成引擎的输入,可获得更多与每个像 素所发生的相关的原始信息。可以将该信息转换为模式信息,编码器将针对每个像素组(称 为宏块或者MB)输出该模式信息。然后,可以对以可由压缩技术(例如,MPEG-2)理解的格 式的宏块的数据和该宏块的头部信息(其可以包括运动信息)进行编码,并且将其组合成压 缩比特流以用于无线传输。在这种方式中,可以减少在传统压缩期间对运动估计的处理和 。

18、对增量信息的计算。 0023 图2表示示出了根据本公开内容的一个方面的增量压缩的框图。可以由解码器 208对来自视频源206的视频数据进行解码,并且发送到显示处理器212。视频数据从显示 处理器212输出到帧缓冲器214,以便最终递送给设备上的嵌入式显示器216或者不同的显 示器(未示出)。来自音频处理器218的数据被输出到音频缓冲器220,以便最终递送给扬声 器224。显示处理器212还可以接收来自GPU 210的图像数据。GPU 210可以生成各种图 形、图标、图像或者可以与视频数据组合或者覆盖在视频数据上的其它图形数据。 0024 应用202可以与合成引擎/显示驱动器204进行通信。在一。

19、个例子中,引擎/显 示驱动器204可以是如图1中所示的显示器连接驱动器110。引擎204命令显示处理器 212接收来自GPU 210、解码器208、和/或其它源的信息,以便进行组合并输出到帧缓冲器 214。如上所述,在典型的无线传输系统中,帧缓冲器中所包含的是输出到A/V编码器并且 在传输之前进行复用的最终图像。 0025 然而,在本公开内容中,使用来自引擎204的信息而不是帧缓冲器中的数据来创 建无线输出流。引擎知道来自视频源206、GPU 210等的数据。引擎还意识到去往与生成对 帧缓冲器的更新相关联的显示处理器212的命令。这些命令包括关于视频显示数据的部分 更新的信息。这些命令还包括来。

20、自GPU 210的图形覆盖信息。引擎204习惯上将使用对其 已知的各种数据来生成要发送到帧缓冲器的帧缓冲器更新。 0026 根据本公开内容的一个方面,诸如引擎204或者引擎204的扩展250之类的设备 组件可以如本文所描述地对帧缓冲器更新进行编码。帧缓冲器更新可以存储在寄存器252 中,并且可以包含元数据。元数据可以包括处理器指令。帧缓冲器更新可以包括像素信息。 帧缓冲器更新可以是针对帧速率和/或刷新速率的。帧缓冲器更新可以包括与绝对像素、 像素差异、周期性和/或时序有关的数据。组件可以执行混合压缩,其中包括运动估计元数 据的修正和存储器管理功能。混合压缩可以是基于块的。可以将帧缓冲器更新分割。

21、成MB 数据和MB头部。 说 明 书CN 102792689 A 4/6页 7 0027 从引擎204捕获主要像素信息226和增量/周期时序信息228。还可以捕获元数 据。可以针对某些宏块(MB)聚集信息。像素数据226可以包括索引(例如(1,1),其指示 表示其数据的像素的位置。从参考像素(诸如(1,1)中,稍后像素(例如(1,2)的数据可以 仅包括增量信息,其指示稍后像素和先前的参考像素之间的差异。 0028 从引擎204捕获的数据可以是旨在去往主显示器的数据,或者其可以旨在去往辅 显示器(例如,旨在单独地用于远程显示器的视频数据)。使用所描述的技术,可以从任何媒 体处理器捕获所期望的像素。

22、数据,然后将其转换为压缩信息并且进行发送,而无需在压缩 期间执行传统的运动估计。 0029 在某些情况下,从一个宏块到下一个宏块可能不存在变化。当宏块未与其各自的 参考宏块不同时,将其称为静态宏块。如方框230中所示,可以由引擎204捕获宏块是静态 的指示。可以将MB数据转换为由压缩格式(例如,MPEG-2)识别的格式,并且输出为MB数据 234以用于传输。可以将包括时序数据、类型(诸如静态宏块(跳过(skip)、帧内(I)、预测 (P或者B)增量信息等的关于宏块232的进一步的信息转换成由压缩格式(例如,MPEG-2) 识别的格式,并且包括为MB头部信息236以用于传输。头部信息是有效运动信。

23、息,并且可 以包括运动矢量238、MB模式240(例如,预测模式(P、B)等)、或者MB类型242(例如,新 帧)。 0030 图3示出了准备用于传输的MB信息。在被包括在用于无线传输的输出MPEG-2比 特流中之前,对MB数据234(其包括像素数据)进行变换和编码。在被包括在MPEG-2比特 流中之前,通过熵编码对MB头部236进行处理。 0031 图4示出了静态块的样本MB头部。在图4中,MB 1,1是帧中的第一个宏块。所 示的头部包括MB ID(1,1)、MB类型(跳过)、运动矢量(当MB为静态时,表示为(0,0),并且 将参考图片示为0。 0032 在上面参照图2和3所描述的过程中,减。

24、少或者消除了在传输之前的传统压缩期 间所执行的运动估计。典型地,不对在显示处理器212处可用的增量信息进行压缩。如上 所述,若来自显示处理器212的期望的运动数据是期望用于传输的,增量信息可以转换/编 码成可由压缩技术(例如,MPEG-2)理解的格式或者以其它方式进行处理。一旦转换,如上 所述,增量信息可以结合参考帧使用。 0033 因为运动估计可能在传统压缩的总复杂度的50-80%之间,所以移除运动估计导 致改善的效率、减少的功耗、以及减少当无线发送视频数据时的延迟。 0034 例如,在定制硬件(诸如专用集成电路(ASIC)中的MPEG-2编码可以消耗100mW用 于在720p分辨率的HD编。

25、码(对于1080p甚至更高)。本文针对MPEG-2压缩描述的技术可 以通过减小与输入视频中的熵成比例的压缩周期/复杂度来显著减小该数字。具体地说, 本文描述的技术利用了大量不需要更新的视频帧。 0035 如下所述,即使利用传统上被认为具有许多运动的视频,在逐帧基础上也存在足 够大百分比的静态MB(定义为如在对等宏块、零残差、作为参考的前一个图片中没有运动矢 量): 0036 表1静态MB在视频中的比例 0037 说 明 书CN 102792689 A 5/6页 8 内容 静态MB的% 具有80%的静态MB 的帧的% ESPN新闻 85.04% 91.43% 天气 83.21% 79.29% C。

26、NN新闻 88.59% 92.14% Bloomberg新闻 84.61% 85.71% 动画片 87.79% 90.71% MTV 55.08% 2.14% HBO 36.73% 0.71% 音乐视频 16.25% 0.00% 棒球 35.69% 0.00% 足球 33.50% 0.00% 平均 60.65% 0038 0039 表1示出了对从卫星上的数字TV捕获的30个不同的十分钟序列的采样得出的数 据。从采样的节目中,平均60%的视频包含不需要在显示器上更新的静态宏块。表1的第 三列还示出了,在新闻和动画片类型的视频中,超过80%的时间中,超过80%的帧不需要更 新。使得编码器能够仅处理。

27、更新或者一部分帧而不是整个帧可以导致显著节电。有些时候 这可以开始时完成(例如,当多于80%的帧包含MB时)。 0040 相当大百分比的视频内容落入新闻或者动画片分类内(即,低运动、低纹理): 0041 表2基于运动和纹理的视频分类 0042 内容类型 样本集合的比例 低运动、低纹理 47% 中运动、中纹理 17% 高运动、高纹理 36% 0043 在视频中应用适当的冗余以便最优化(或者减少)视频处理负载,并且机制的识别 (例如,使用跳过(skip)或者静态信息)将促进低功率或者集成应用平台。 说 明 书CN 102792689 A 6/6页 9 0044 在传统的运动估计和压缩期间,取得大量。

28、数据并且进行处理,典型地在计算差值 度量(绝对差值之和(SAD)或者平方差值之和(SSD)之前进行内插以便改善精度。针对可 以是给定的块或者MB的预测器的所有候选重复该过程,直到获得所期望的匹配(最低的差 值或者SAD)为止。从参考图片取得该数据的过程是耗时的,并且构成了处理延迟和计算功 率的主要因素。典型地,对计算差值的算法进行手动编码以便减少所消耗的处理器循环的 数目。然而,由于所要取得的数据可以在位置上很广泛(如果使用多个参考图片预测,最接 近在多帧上的帧中的最远的MB),并且可以不与MB边界对齐,存储器寻址添加了额外的开 销。另外,针对之前的MB取得的数据可能不合适于当前MB,其限制了。

29、对数据取得和存储器 传送带宽的优化。 0045 图5示出了根据本公开内容的一个方面的增量压缩。如在方框502中所示,存储 帧缓存器更新。如在方框504中所示,将帧缓冲器更新转换成混合压缩格式的运动信息,从 而回避运动估计。 0046 在一个方面,一种装置包括用于存储帧缓冲器更新的模块,以及用于将帧缓冲器 更新转换成混合压缩格式的运动信息的模块。设备还可以包括用于捕获用户输入命令的时 间戳的模块,以及用于捕获从用户输入命令产生的相应的显示数据的模块。在一个方面,前 述模块可以是显示驱动器110、引擎204、帧缓冲器108或214、寄存器252、引擎扩展250、解 码器208、GPU 210、或者。

30、显示处理器106或212。 0047 虽然已经对本公开内容及其优点进行了详细描述,但是应该理解的是,在不脱离 由所附权利要求所定义的本公开内容的技术的前提下,在本文中可以进行各种变化、替换 和变更。此外,本申请的范围并非旨在限于说明书中所描述的过程、机器、制品、事物的组 合、手段、方法和步骤的特定方面。本领域的普通技术人员将从本公开内容中容易意识到的 是,根据本公开内容,可以利用目前存在或者稍后将要开发的、执行与本文所描述的相应方 面实质上相同的功能或者实现实质上相同结果的过程、机器、制品、事物的组合、手段、方法 或步骤。因此,所附权利要求旨在将这些过程、机器、制品、事物的组合、手段、方法或者步骤 包括在其范围内。 说 明 书CN 102792689 A 1/4页 10 图1 说 明 书 附 图CN 102792689 A 10 2/4页 11 图2 说 明 书 附 图CN 102792689 A 11 3/4页 12 图3 图4 说 明 书 附 图CN 102792689 A 12 4/4页 13 图5 说 明 书 附 图CN 102792689 A 13 。

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 电学 > 电通信技术


copyright@ 2017-2020 zhuanlichaxun.net网站版权所有
经营许可证编号:粤ICP备2021068784号-1