首页> 中国专利> 具有对压缩帧缓冲区的随机访问的视频处理器及其方法

具有对压缩帧缓冲区的随机访问的视频处理器及其方法

摘要

描述了具有对压缩帧缓冲区的随机访问的视频处理器及其方法。具体而言,一种视频处理设备包括视频处理单元,其基于未压缩视频帧数据,根据视频压缩协议将视频输入信号解码成经解码的视频信号。数据对象压缩/解压缩模块通过将多个视频数据对象压缩成多个压缩视频数据对象来生成压缩视频帧数据,将多个压缩视频数据对象存储在压缩帧缓冲区中。数据对象压缩/解压缩模块通过识别多个压缩视频数据对象中与视频帧数据的所选部分相对应的所选压缩视频数据对象、取回多个压缩视频数据对象中的所选压缩视频数据对象并通过对多个压缩视频数据对象中的所选压缩视频数据对象解压缩以生成未压缩视频帧数据,来从压缩视频帧缓冲区中取回视频帧数据的所选部分。

著录项

  • 公开/公告号CN103986934A

    专利类型发明专利

  • 公开/公告日2014-08-13

    原文格式PDF

  • 申请/专利权人 VIXS系统公司;

    申请/专利号CN201410031026.2

  • 发明设计人 I·莱克索诺;杨奇;郭欣;趙勗罡;

    申请日2014-01-22

  • 分类号

  • 代理机构中国国际贸易促进委员会专利商标事务所;

  • 代理人边海梅

  • 地址 加拿大安大略

  • 入库时间 2023-12-17 00:45:42

法律信息

  • 法律状态公告日

    法律状态信息

    法律状态

  • 2019-02-12

    授权

    授权

  • 2016-02-24

    实质审查的生效 IPC(主分类):H04N19/174 申请日:20140122

    实质审查的生效

  • 2014-08-13

    公开

    公开

说明书

相关申请的交叉引用

本申请根据35U.S.C.119要求2013年1月22日递交的申请序号 为61/755,280、标题为VIDEO PROCESSOR WITH FRAME BUFFER  COMPRESSION AND METHODS FOR USE THEREWITH的临时 递交的申请的优先权;本文通过引用并入该申请的内容。

技术领域

本发明涉及在诸如视频编码器、解码器和转码器之类的设备中使 用的编码。

背景技术

视频编码已成为现代视频处理设备的一个重要问题。鲁棒的编码 算法允许了视频信号被以更小的带宽来传送并且以更少的存储器来存 储。然而,这些编码方法的精确性面临着正变得习惯于更大的分辨率 和更高的图片质量的用户的审查。对于许多编码方法已颁布了标准, 其中包括H.264标准,其也被称为MPEG-4第10部分或者高级视频 编码(AVC)。虽然此标准记载了许多强大的技术,但进行进一步改 进以改进这种方法的性能和实现速度是有可能的。

在诸如视频处理集成电路之类的处理视频的现代设备中,存在许 多这样的情况:视频或图形数据必须被存储在设备外部的存储器中。 这经常是在视频或图形帧太大以至于不能存储在设备本身内的存储器 中时进行的。随着视频或图形帧的像素分辨率增大,这些视频帧的处 理所需的存储器带宽也增大。存储器带宽可能是设计这种视频设备时 的一个考虑因素。

本领域普通技术人员通过将这种系统与本发明相比较将清楚常规 和传统方案的更多局限和缺点。

发明内容

根据本发明的一方面,提供了一种视频处理设备,包括:视频处 理单元,其基于未压缩视频帧数据,根据视频压缩协议将视频输入信 号解码成经解码的视频信号;瓦片引擎,其包括:将未压缩视频帧数 据累积成多个瓦片单元的瓦片累积模块,其中多个瓦片单元中的每一 个包括多个视频跨度单元,每个视频跨度单元包括来自视频帧的相应 行的至少一部分的像素数据;以及耦合到瓦片累积模块的瓦片压缩/ 解压缩模块,其通过将多个视频跨度单元压缩成多个压缩视频跨度单 元来生成压缩视频帧数据以便存储在压缩视频帧缓冲区中,并且还通 过取回多个压缩视频跨度单元并通过对多个压缩视频跨度单元解压缩 以生成未压缩视频帧数据,来从压缩视频帧缓冲区中取回压缩视频帧 数据。

视频处理设备还可包括耦合到瓦片引擎和视频帧缓冲区的跨度引 擎,其包括限定与压缩视频帧缓冲区相对应的存储器地址的范围的至 少一个寄存器。

视频处理设备还可包括图形处理单元,其基于未压缩图形帧数据, 处理视频帧的至少一个图形平面;并且其中跨度引擎还包括跨度压缩/ 解压缩模块,其通过将未压缩图形帧数据压缩成多个压缩图形跨度单 元来生成压缩图形帧数据以便存储在压缩图形帧缓冲区中,并且还通 过取回多个压缩图形跨度单元并通过对多个压缩图形跨度单元解压缩 以生成未压缩图形帧数据,来从压缩图形帧缓冲区中取回压缩图形帧 数据。

至少一个寄存器可限定与压缩图形帧缓冲区相对应的存储器地址 的范围。

跨度引擎可在与来自图形处理单元的写入命令相对应的存储器地 址落在与压缩图形帧缓冲区相对应的存储器地址的范围内时,将该写 入命令识别为对应于压缩图形帧缓冲区;并且跨度引擎可在与来自图 形处理单元的读取命令相对应的存储器地址落在与压缩图形帧缓冲区 相对应的存储器地址的范围内时,将该读取命令识别为对应于压缩图 形帧缓冲区。

视频处理设备还可包括耦合到跨度引擎的显示处理单元,其基于 未压缩视频帧数据和未压缩图形帧数据,处理视频帧和视频帧的至少 一个图形平面,其中跨度压缩/解压缩模块通过取回多个压缩视频跨度 单元并通过对多个压缩视频跨度单元解压缩以生成未压缩视频帧数据, 来从压缩视频帧缓冲区中取回压缩视频帧数据。

跨度引擎还可包括用于存储未压缩图形帧数据的缓存;其中跨度 引擎通过在未压缩图形帧数据中的所选数据存储在缓存中时从缓存取 回未压缩图形帧数据中的所选数据来响应来自图形处理单元和显示处 理单元的请求,并且还在未压缩图形帧数据中的所选数据未存储在缓 存中时,从压缩图形帧缓冲区取回未压缩图形帧数据中的所选数据。

跨度引擎可通过在未压缩视频帧数据中的所选数据存储在缓存中 时从缓存取回未压缩视频帧数据中的所选数据来响应来自显示处理单 元的请求,并且还在未压缩视频帧数据中的所选数据未存储在缓存中 时,通过取回相应的压缩视频跨度单元并通过对相应的压缩视频跨度 单元进行解压缩以生成未压缩视频帧数据中的所选数据,来从压缩视 频帧缓冲区中取回未压缩视频帧数据中的所选数据。

可基于经解码的视频信号生成经处理的视频信号。

视频处理单元可通过将经解码的视频信号再编码成经处理的视频 信号来将视频输入信号转码成经处理的视频信号。

根据本发明的一方面,提供了一种用于将视频输入信号处理成经 处理的视频信号的方法,该方法包括:基于未压缩视频帧数据,根据 视频压缩协议将视频输入信号解码成经解码的视频信号;将未压缩视 频帧数据累积成多个瓦片单元,其中多个瓦片单元中的每一个包括多 个视频跨度单元,每个视频跨度单元包括来自视频帧的相应行的至少 一部分的像素数据;通过将多个视频跨度单元压缩成多个压缩视频跨 度单元来生成压缩视频帧数据以便存储在压缩视频帧缓冲区中;以及 通过取回多个压缩视频跨度单元并通过对多个压缩视频跨度单元解压 缩以生成未压缩视频帧数据,来从压缩视频帧缓冲区中取回压缩视频 帧数据。

该方法还可包括在寄存器中存储与压缩视频帧缓冲区相对应的存 储器地址的范围。

该方法还可包括:基于未压缩图形帧数据,处理视频帧的至少一 个图形平面;通过将未压缩图形帧数据压缩成多个压缩图形跨度单元 来生成压缩图形帧数据以便存储在压缩图形帧缓冲区中;通过取回多 个压缩图形跨度单元并通过对多个压缩图形跨度单元解压缩以生成未 压缩图形帧数据,来从压缩图形帧缓冲区中取回压缩图形帧数据。

至少一个寄存器可限定与压缩图形帧缓冲区相对应的存储器地址 的范围。

该方法还可包括:当与写入命令相对应的存储器地址落在与压缩 图形帧缓冲区相对应的存储器地址的范围内时,将写入命令识别为对 应于压缩图形帧缓冲区;以及当与读取命令相对应的存储器地址落在 与压缩图形帧缓冲区相对应的存储器地址的范围内时,将读取命令识 别为对应于压缩图形帧缓冲区。

该方法还可包括:基于未压缩视频帧数据和未压缩图形帧数据, 处理视频帧和视频帧的至少一个图形平面;以及通过取回多个压缩视 频跨度单元并通过对多个压缩视频跨度单元解压缩以生成未压缩视频 帧数据,来从压缩视频帧缓冲区中取回压缩视频帧数据。

该方法还可包括:将未压缩图形帧数据存储在缓存中;当未压缩 图形帧数据中的所选数据存储在缓存中时,从缓存取回未压缩图形帧 数据中的所选数据;以及当未压缩图形帧数据中的所选数据未存储在 缓存中时,从压缩图形帧缓冲区取回未压缩图形帧数据中的所选数据。

该方法还可包括:将未压缩视频帧数据存储在缓存中;当未压缩 视频帧数据中的所选数据存储在缓存中时,从缓存取回未压缩视频帧 数据中的所选数据;以及当未压缩视频帧数据中的所选数据未存储在 缓存中时,从压缩视频帧缓冲区取回未压缩视频帧数据中的所选数据。

根据本发明的一方面,提供了一种视频处理单元,其基于未压缩 视频帧数据,根据视频压缩协议将视频输入信号解码成经解码的视频 信号;耦合到视频处理单元的数据对象压缩/解压缩模块,其通过将多 个视频数据对象压缩成多个压缩视频数据对象来生成压缩视频帧数据; 将多个压缩视频数据对象存储在压缩帧缓冲区中;通过识别多个压缩 视频数据对象中与视频帧数据的所选部分相对应的所选压缩视频数据 对象、取回多个压缩视频数据对象中的所选压缩视频数据对象并通过 对多个压缩视频数据对象中的所选压缩视频数据对象解压缩以生成未 压缩视频帧数据,来从压缩视频帧缓冲区中取回视频帧数据的所选部 分。

每个压缩视频数据对象可存储在压缩帧缓冲区中、存储器中的相 应预定位置处的基本存储器地址处。

数据对象压缩/解压缩模块可为多个压缩视频数据对象中的每一 个生成指示其中包含的压缩数据的大小的头部文件。

数据对象压缩/解压缩模块可为多个压缩视频数据对象中的每一 个生成压缩数据字段。

数据对象压缩/解压缩模块可通过以下操作来取回多个压缩视频 数据对象中的所选压缩视频数据对象:确定与多个压缩视频数据对象 中的所选压缩视频数据对象中的每一个相对应的基本存储器地址;读 取与多个压缩视频数据对象中的所选压缩视频数据对象中的每一个相 对应的头部文件以确定与多个压缩视频数据对象中的所选压缩视频数 据对象中的每一个相对应的压缩数据的大小;以及基于相应的基本存 储器地址和相应的大小,取回与多个压缩视频数据对象中的所选压缩 视频数据对象中的每一个相对应的压缩数据字段。

多个视频数据对象的第一子集可经由无损压缩来压缩,并且多个 视频数据对象的第二子集可经由有损压缩来压缩。

多个视频数据对象的第一子集中的相应一个可通过以下操作来压 缩:

(a)对多个视频数据对象中的相应一个进行压缩;

(b)将视频数据对象的压缩量与压缩目标相比较;以及

(c)当视频数据对象的压缩量与压缩目标相比较是有利的时,将 压缩视频数据对象存储在压缩视频帧缓冲区中;并且

其中,多个视频数据对象的第二子集中的相应一个可通过以下操 作来压缩:

(d)当视频数据对象的压缩量与压缩目标相比较是不利的时, 丢弃压缩视频数据对象;

(e)量化多个视频数据对象中的相应一个;以及

(f)重复(a)-(e),直到视频数据对象的压缩量与压缩目标 相比较有利为止。

多个视频数据对象中的每一个可包括来自视频帧的多行的至少一 部分的像素数据。

多个视频数据对象的每一个可包括来自视频帧的相应行的至少一 部分的像素数据。

数据对象压缩/解压缩模块可通过将未压缩视频帧数据累积成多 个瓦片单元来为数据对象生成压缩视频帧数据,其中多个瓦片单元之 一包括多个视频数据对象。

视频处理设备还可包括图形处理单元,其基于未压缩图形帧数据, 处理视频帧的至少一个图形平面;并且其中,数据对象压缩/解压缩模 块通过将未压缩图形帧数据压缩成多个压缩图形跨度单元来生成压缩 图形帧数据以便存储在压缩图形帧缓冲区中,并且还通过取回多个压 缩图形跨度单元并通过对多个压缩图形跨度单元解压缩以生成未压缩 图形帧数据,来从压缩图形帧缓冲区中取回压缩图形帧数据。

根据本发明的一方面,提供了一种用于将视频输入信号处理成经 处理的视频信号的方法,该方法包括:基于未压缩视频帧数据,根据 视频压缩协议将视频输入信号解码成经解码的视频信号;通过将多个 视频数据对象压缩成多个压缩视频数据对象来生成压缩视频帧数据; 将多个压缩视频数据对象存储在压缩帧缓冲区中;以及通过识别多个 压缩视频数据对象中与视频帧数据的所选部分相对应的所选压缩视频 数据对象、取回多个压缩视频数据对象中的所选压缩视频数据对象并 通过对多个压缩视频数据对象中的所选压缩视频数据对象解压缩以生 成未压缩视频帧数据,来从压缩视频帧缓冲区中取回视频帧数据的所 选部分。

每个压缩视频数据对象可被存储在压缩帧缓冲区中、存储器中的 相应预定位置处的基本存储器地址处;其中,每个压缩视频数据对象 可包括指示其中包含的压缩数据的大小的头部文件;并且其中,每个 压缩视频数据对象可包括压缩数据字段。

取回多个压缩视频数据对象中的所选压缩视频数据对象可包括: 确定与多个压缩视频数据对象中的所选压缩视频数据对象中的每一个 相对应的基本存储器地址;读取与多个压缩视频数据对象中的所选压 缩视频数据对象中的每一个相对应的头部文件以确定与多个压缩视频 数据对象中的所选压缩视频数据对象中的每一个相对应的压缩数据的 大小;以及基于相应的基本存储器地址和相应的大小,取回与多个压 缩视频数据对象中的所选压缩视频数据对象中的每一个相对应的压缩 数据字段。

多个视频数据对象的第一子集可经由无损压缩来压缩,并且多个 视频数据对象的第二子集可经由有损压缩来压缩。

该方法还可包括:通过将未压缩图形帧数据压缩成多个压缩图形 跨度单元来生成压缩图形帧数据以便存储在压缩图形帧缓冲区中;以 及通过取回多个压缩图形跨度单元并通过对多个压缩图形跨度单元解 压缩以生成未压缩图形帧数据,来从压缩图形帧缓冲区中取回压缩图 形帧数据。

附图说明

图1-3呈现了根据本发明实施例的各种视频处理设备的示意图表 示。

图4呈现了根据本发明实施例的视频处理设备125的框图表示。

图5呈现了根据本发明实施例的视频编码器/解码器102的框图表 示。

图6呈现了根据本发明实施例的视频帧216的图形表示。

图7呈现了示出根据本发明实施例的示例瓦片单元218的图形表 示。

图8呈现了根据本发明实施例的存储器模块202和处理模块222 的框图表示。

图9-14呈现了根据本发明实施例的示例读取和写入操作的框图 表示。

图15呈现了根据本发明实施例的数据对象压缩的框图表示。

图16呈现了根据本发明实施例的压缩数据对象264的图形表示。

图17呈现了根据本发明实施例的视频处理设备125’的框图表示。

图18呈现了根据本发明实施例的区域识别信号生成器150的框图 表示。

图19呈现了根据本发明实施例的图像310的图形表示。

图20呈现了根据本发明实施例的视频存储系统179的框图表示。

图21呈现了根据本发明实施例的视频分发系统375的框图表示。

图22呈现了根据本发明实施例的方法的流程图表示。

图23呈现了根据本发明实施例的方法的流程图表示。

图24呈现了根据本发明实施例的方法的流程图表示。

图25呈现了根据本发明实施例的方法的流程图表示。

图26呈现了根据本发明实施例的方法的流程图表示。

图27呈现了根据本发明实施例的方法的流程图表示。

图28呈现了根据本发明实施例的方法的流程图表示。

图29呈现了根据本发明实施例的方法的流程图表示。

图30呈现了根据本发明实施例的方法的流程图表示。

图31呈现了根据本发明实施例的方法的流程图表示。

图32呈现了根据本发明实施例的方法的流程图表示。

图33呈现了根据本发明实施例的方法的流程图表示。

具体实施方式

图1-3呈现了根据本发明实施例的各种视频处理设备的示意图表 示。具体地,具有内置的数字视频记录器功能或独立的数字视频记录 器的机顶盒10、电视计算机20和便携式计算机30例示了包含包括本 发明的一个或多个特征或功能的视频处理设备125的电子设备。虽然 例示了这些具体设备,但视频处理设备125包括任何能够根据结合图 4-33和所附权利要求描述的方法和系统对视频内容进行编码和/或解 码的设备。

图4呈现了根据本发明实施例的视频处理设备125的框图表示。 具体地,视频处理设备125包括接收模块100,例如电视接收器、有 线电视接收器、卫星广播接收器、宽带调制解调器、3G收发器或其他 信息接收器或收发器,其能够接收一接收信号98并经由时分解复用、 频分解复用或其他解复用技术提取一个或多个视频信号110。视频编 码/解码模块102耦合到接收模块100以按与视频显示设备104相对应 的格式对视频信号进行编码、解码或转码。

在本发明的一个实施例中,接收信号98是广播视频信号,例如高 清晰度电视信号、增强型高清晰度电视信号或者其他广播视频信号, 其直接地或者通过一个或多个卫星或其他中继站经由无线介质来传送 或者通过线缆网络、光网络或其他传送网络来传送。此外,接收信号 98可从存储的视频文件生成、从诸如磁带、磁盘或光盘之类的记录介 质回放,并且可包括经由诸如局域网、广域网、城域网或因特网之类 的公共或私有网络传送的流视频信号或视频下载信号。

视频信号110和经处理的视频信号112可以是数字视频信号,这 些数字视频信号是根据诸如H.264、MPEG-4第10部分高级视频编码 (AVC)VC1或其他数字格式之类的编解码器标准来格式化的,所述 其他数字格式例如是运动图片专家组(MPEG)格式(例如MPEG1、 MPEG2或MPEG4)、Quicktime格式、真实媒体(Real Media)格 式、或者Windows媒体视频(WMV)或另外的数字视频格式,这些 格式或者是标准的或者是专有的。具体地,视频信号110一旦被解码, 则有时被显示器使用,有时也与一个或多个图形平面混合,然后被输 出到TV;或者视频可被处理、缩放、与元数据、字幕、闭合字幕或 图形对象或菜单混合和/或被重压缩成一种压缩格式以便其可被重传 到远程设备。

视频显示设备104可包括电视、监视器、计算机、手持设备或其 他视频显示设备,其基于以流视频信号的形式或通过存储的数字视频 文件的回放对经处理的视频信号112的解码来直接或间接的——例如 通过投影——创建光学图像流。

视频编码器/解码器102根据本发明来操作,并且具体地,包括结 合接下来的图5-33描述的许多可选功能和特征。

图5呈现了根据本发明实施例的视频编码器/解码器102的框图表 示。具体地,视频编码器/解码器102根据H.264或H.265标准、MPEG-4 标准、VC-1(SMPTE标准421M)高清晰度媒体接口(HDMI)或其 他标准的许多功能和特征来操作,以将视频输入信号110编码、解码 或转码成经处理的视频信号112。经由信号接口198接收视频信号110 和输出视频信号112。信号接口198包括一个或多个设备接口,这些 设备接口将视频编码器/解码器102与主机设备的其他组件和/或与其 他外部设备相接口,所述其他外部设备例如是调制解调器、网络接口、 无线收发器、数据总线或其他能够接收和/或输出视频信号110和经处 理的视频信号112的数字接口。

视频编码器102包括处理模块200,其包括一个或多个处理设备, 例如中央处理单元(CPU)204、音频处理单元(APU)206、视频处 理单元(VPU)208、图形处理单元(GPU)210和显示处理单元(DPU) 212。这些处理单元中的每一个可利用单个处理设备或多个处理设备来 实现。这种处理设备可以是微处理器、协处理器、微控制器、数字信 号处理器、微计算机、中央处理单元、现场可编程门阵列、可编程逻 辑器件、状态机、逻辑电路、模块电路、数字电路和/或任何基于存储 器——例如存储器模块202——中存储的操作指令来操纵(模拟和/或 数字的)信号的设备。存储器模块202可以是单个存储器设备或多个 存储器设备。这种存储器设备可包括硬盘驱动器或其他盘驱动器、只 读存储器、随机访问存储器、易失性存储器、非易失性存储器、静态 存储器、动态存储器、闪存存储器、缓存存储器和/或任何存储数字信 息的设备。注意,当处理模块经由状态机、模拟电路、数字电路和/ 或逻辑电路来实现其功能中的一个或多个时,存储相应的操作指令的 存储器可嵌入在包括该状态机、模拟电路、数字电路和/或逻辑电路的 电路内或者在该电路外部。

处理模块200和存储器模块202经由总线214耦合到信号接口198 并且可选地耦合到没有具体示出的、能够以硬件、软件或固件实现的 其他模块。虽然示出了特定的总线体系结构,但根据本发明也可类似 地实现利用一个或多个模块之间的直接连通性和/或额外的总线的替 换体系结构。

在操作中,处理模块200进行操作以对视频信号110进行编码、 解码或转码以生成经处理的视频信号112。这个编码、解码和/或转码 经由存储器模块202中存储的一个或多个压缩帧缓冲区205来操作。 特别地,存储器模块202提供一种体系结构来对存储器中存储的视频 和/或图形帧缓冲区所需的数据进行压缩以便减小存储器带宽。

在编码、解码和/或转码期间可使用两类存储器对象。一类存储器 对象是可表征为顺序数据对象的“跨度单元”(span unit)。在顺序 数据对象中,处理是本质上线性且一维的并且在一定跨度内是连续的。 第二类存储器对象是“瓦片单元”(tile unit),其可表征为诸如二维 矩阵或者其他要以二维方式处理的数据结构之类的数据对象。特别地, 瓦片单元可具有相互依赖性或者可包括在同一操作内创建的多个跨度 单元。

将结合接下来的图6-7论述跨度单元和瓦片单元的示例实现方式。

图6呈现了根据本发明实施例的视频帧216的图形表示。具体地,

示出了包括具有二维像素阵列的图片(帧或场)的视频帧216。视频 帧216被分隔成布置为二维矩阵或阵列的多个跨度单元(SU)。每个 跨度单元包括视频帧216的像素数据的一行的至少一部分。在所示出 的实施例中,视频帧216的第一行像素数据包含在SU(1,1),SU(1,2)… 内,并且视频帧216的第二行像素数据包含在SU(2,1),SU(2,2)…内, 等等。每个跨度单元具有在编码器/解码器102的初始化期间预定的大 小。在操作中,每个SU被压缩以便存储在压缩帧缓冲区中。SU的长 度将是为了平衡增大压缩算法的效率的需求与将粒度损失最小化到尽 可能小的大小的需求而选择的大小。注意,当例如结合存储器模块202 实现多个压缩帧缓冲区205时,可以有一类或多类SU。视频帧缓冲区 中存储的关于视频的SU可具有与图形帧缓冲区中存储的关于图形的 SU不同的长度。另外,对于每种不同类型的跨度单元,基础的压缩方 法也可以是不同的。例如,图形SU和视频SU可被不同地压缩以存储 在其各自的压缩帧缓冲区中。

图7呈现了示出根据本发明实施例的示例瓦片单元218的图形表 示。在所示出的示例中,瓦片单元(TU)218由一系列垂直布置以形 成二维块的SU组成。TU的尺寸是在编码器/解码器102的初始化期 间预定的大小。在所示出的示例中,TU具有与SU相同的长度,然而, 在其他实施例中可实现SU长度的其他整数倍。另外,TU的高度被示 为整数个——N个——SU。可以选择TU的高度来优化基础视频处理 的处理要求。

图8呈现了根据本发明实施例的存储器模块202和处理模块222 的框图表示。具体地,处理模块,即CPU204、APU206、VPU208、 GPU210和DPU212,经由跨度引擎230和内部存储器总线220耦合 到存储器240,该内部存储器总线220包括对于存储器240的读取通 道和写入通道。VPU208也经由瓦片引擎250耦合。虽然呈现了单个 CPU204、APU206、VPU208、GPU210和DPU212,但以类似的方 式可以实现每种类型的多个处理单元。

视频处理单元208根据视频压缩协议将视频输入信号——例如视 频信号110——解码成经处理的视频信号112。VPU208基于以压缩格 式存储在存储器240的压缩视频帧缓冲区242中的未压缩视频帧数据 来操作。瓦片引擎250包括将未压缩视频帧数据累积成多个瓦片单元 的瓦片累积模块254。瓦片压缩/解压缩模块252通过将每个瓦片单元 的视频跨度单元压缩成压缩视频跨度单元来生成压缩视频帧数据以便 存储在压缩视频帧缓冲区242中。瓦片压缩/解压缩模块252通过取回 相应的压缩视频跨度单元并通过对压缩视频跨度单元解压缩以生成未 压缩视频帧数据,来从压缩视频帧缓冲区242中取回压缩视频帧数据。

跨度引擎230包括至少一个寄存器232,该至少一个寄存器232 限定与压缩视频帧缓冲区以及压缩图形帧缓冲区244相对应的存储器 地址的范围。图形处理单元210基于未压缩图形帧数据处理视频帧的 一个或多个图形平面。跨度引擎还包括跨度压缩/解压缩模块234,该 跨度压缩/解压缩模块234通过将未压缩图形帧数据压缩成多个压缩图 形跨度单元来生成压缩图形帧数据以便存储在压缩图形帧缓冲区242 中,并且还通过取回相应的压缩图形跨度单元并通过对多个压缩图形 跨度单元解压缩以生成未压缩图形帧数据,来从压缩图形帧缓冲区中 取回压缩图形帧数据。跨度引擎230可对视频跨度单元执行类似的压 缩和解压缩——除了由VPU208通过瓦片引擎250执行的读取和写入 操作绕过跨度引擎230的压缩和解压缩以外。跨度引擎维护包括一组 缓存缓冲区的缓存236,其缓存跨度单元、维持一致性并且服务通过 该缓存的所有的读取和写入。

在操作中,每个范围寄存器232限定每个压缩帧缓冲区在存储器 240中的开始地址和长度。除了经由瓦片引擎250处理压缩和解压缩 的绕过读取操作以外,任何具有在范围寄存器内的地址的读取操作都 首先被对照缓存236来检查。如果跨度单元数据被缓存,则其可立即 被服务。如果跨度单元数据未在缓存236中,则在返回未压缩跨度单 元数据之前,可从存储器240中取回压缩SU并对其进行解压缩。除 了绕过写入操作以外,任何具有在范围寄存器内的地址的写入操作都 将被累积在缓存236的缓存缓冲区内并被跨度引擎所维护。绕过读取 和写入操作可被跨度引擎230忽略并被直接发送到存储器240。

处理模块200和存储器模块202的操作是结合压缩视频流被VPU 208所解码的示例来定义的。存储器240内的范围将被指定为压缩的 并且此范围将大到足以应对GPU210、VPU208和DPU212所要求的 所有视频和图形缓冲区。这些压缩缓冲区将由相应的寄存器232来指 定。CPU204和APU206可选地对未压缩数据进行操作,因为它们与 VPU208、GPU210和DPU212相比以非常低的存储器带宽要求操作。 在存储器240中可为这些目的留出未压缩音频缓冲区246和未压缩数 据空间248。与未压缩音频缓冲区246和未压缩数据空间248的存储 器空间相对应的读取和写入地址可被直接传递到存储器240。

压缩视频流被VPU208解码。经解码的YUV数据被写入到外部 存储器。此数据将作为缓存被累积在瓦片引擎250的瓦片累积模块254 内,在这里它们被组合成若干个SU的跨度。一旦跨度被填满并压缩, 压缩TU就可作为为每个压缩SU的输出预留的存储器地址处的一系 列压缩SU写入被直接写出到主存储器。如果TU在只被部分填满时 被冲刷,则将从压缩视频帧缓冲区242收集填满整个TU所需的缺失 数据。每个压缩SU将被读入,被瓦片压缩/解压缩模块252解压缩, 并且被组合在TU的其他跨度单元内以创建完整TU。然后,重组的 TU可被压缩并且作为为每个压缩SU的输出预留的存储器地址处的一 系列压缩SU写入被写出。如果需要图形平面,则每个图形平面将由 描绘每个元素的GPU210创建以便存储在压缩图形帧缓冲区244中。 图形帧缓冲区数据也被分解成一系列压缩SU读取和写入。去往和来 自存储器240的这些读取和写入将由跨度引擎230经由其缓存236缓 冲区来服务。当DPU212需要构造每个视频和图形平面以便显示时, 所有读取将经由跨度引擎230来解压缩。

将结合接下来的图9-14呈现存储器模块202的读取和写入操作的 更多示例。

图9-14呈现了根据本发明实施例的示例读取和写入操作的框图 表示。如图9中所示,CPU204生成对未压缩数据248进行操作的读 取和写入命令。未压缩写入数据302耦合到内部存储器总线220。因 为写入地址不对应于存储器240的压缩区域,所以未压缩写入数据302 被直接传递到存储器240、到与未压缩数据的存储器空间相对应的写 入地址。类似地,因为读取地址不对应于存储器240的压缩区域,所 以未压缩读取数据300被直接从存储器240通过跨度引擎230传递到 内部存储器总线220以提供给CPU204。

如图10中所示,APU206生成对未压缩音频数据246进行操作的 读取和写入命令。未压缩写入数据306耦合到内部存储器总线220。 因为写入地址不对应于存储器240的压缩区域,所以未压缩写入数据 306被直接传递到存储器240、到与未压缩音频缓冲区246的存储器空 间相对应的写入地址,并且未压缩数据空间248可被直接传递到存储 器240。类似地,因为读取地址不对应于存储器240的压缩区域,所 以未压缩读取数据304被直接从存储器240通过跨度引擎230传递到 内部存储器总线220以提供给APU206。

如图11中所示,VPU208生成对压缩视频帧数据242进行操作的 读取和写入命令。未压缩写入数据314被瓦片引擎350累积并且作为 一系列压缩跨度单元写入被输出到内部存储器总线220作为压缩写入 数据316。压缩写入数据316是绕过操作,其被直接传递到存储器240、 为这些压缩跨度单元预留的压缩视频帧数据242的存储器空间中。类 似地,压缩读取数据310绕过跨度引擎230并且被直接从存储器240 通过跨度引擎230传递到内部存储器总线220。瓦片引擎250对压缩 读取数据310解压缩以作为未压缩读取数据312提供给VPU208。

如图12中所示,采取例如经解码的YUV数据的形式的未压缩视 频帧数据320作为缓存被累积在瓦片引擎250的瓦片累积模块254内, 在这里它们被组合成若干个SU的未压缩跨度322。一旦跨度被填满并 被压缩模块256压缩成压缩跨度单元324,压缩TU就可作为为每个 压缩SU的输出预留的存储器地址处的一系列压缩SU写入经由内部存 储器总线220被直接写出到存储器。如果TU在只被部分填满时被冲 刷,则将从压缩视频帧缓冲区收集填满整个TU所需的缺失数据。每 个压缩SU326将被读入,被瓦片解压缩模块258解压缩,并且被组合 在TU的其他跨度单元内以创建完整TU。然后,重组的TU可被压缩 并且作为为每个压缩SU的输出预留的存储器地址处的一系列压缩SU 写入被写出。

如图13中所示,GPU204生成在压缩图形帧缓冲区244上操作 的读取和写入命令。未压缩写入数据334耦合到内部存储器总线220。 因为写入地址对应于存储器240的压缩区域,所以未压缩写入数据334 被跨度引擎230缓存并被压缩以形成压缩写入数据336,然后被存储 在存储器中。类似地,因为读取地址对应于存储器240的压缩区域, 所以未压缩读取数据330被从缓存236取回或通过对从存储器240取 回的压缩读取数据332解压缩来生成,并经由内部存储器总线220被 作为未压缩读取数据330提供给VPU204。

如图14中所示,DPU204生成在压缩图形帧缓冲区244和压缩视 频帧缓冲区242上操作的读取和写入命令。未压缩写入数据344耦合 到内部存储器总线220。因为写入地址对应于存储器240的压缩区域, 所以未压缩写入数据344被跨度引擎230缓存并被压缩以形成压缩写 入数据346,然后被存储在存储器中。类似地,因为读取地址对应于 存储器240的压缩区域,所以未压缩读取数据340被从缓存236取回 或通过对从存储器240取回的压缩读取数据342解压缩来生成,并经 由内部存储器总线220被作为未压缩读取数据340提供给VPU204。

图15呈现了根据本发明实施例的数据对象压缩的框图表示。具体 地,呈现了由压缩解压缩模块252或234执行的数据压缩和解压缩。 整体上压缩整个视频参考帧或图形帧经常是不可行的,因为后来的图 片处理可能只需要该帧的一小部分。如前所述,诸如跨度单元之类的 较小数据对象被以提供对帧数据的各部分的随机可访问性的方式压缩 成诸如压缩跨度单元之类的压缩数据对象。

如图所示,每个数据对象(DO)260随后被单独压缩成相应的压 缩数据对象(CDO)262。如图所示,压缩数据对象262基于对每个 数据对象260的压缩量可具有不同大小。每个压缩数据对象262被存 储在存储器240的一部分中的预定位置中,例如为压缩数据或该类型 的压缩数据(视频帧数据、图形帧数据,等等)预留的地址范围。具 体地,每个压缩数据对象262被存储在存储器中的相应预定位置处的 基本存储器地址处。例如,视频帧或图形帧中的诸如跨度单元之类的 数据对象的位置可基于帧的大小、分辨率等等来预定。每个数据对象 260可与存储器240的一部分中的与将存储对应于该特定数据对象260 的压缩数据对象262的位置相对应的基本存储器地址相关联。

图16呈现了根据本发明实施例的压缩数据对象264的图形表示。 如图15中所示,压缩数据对象262基于对每个数据对象260的压缩量 可具有不同大小。在操作中,压缩解压缩模块252或234对数据对象 进行压缩,生成指示每个压缩数据对象262的压缩数据的大小的头部 文件并且将压缩数据存储在压缩数据字段268中。

当需要帧的一区域时,解压缩模块首先识别压缩数据对象262中 与帧的所选部分相对应的所选压缩数据对象。压缩解压缩模块252随 后通过确定每个压缩数据对象262的相应基本存储器地址来计算所需 数据对象在存储器中的位置。压缩解压缩模块252通过读取相应的头 部文件266来取得每个压缩数据对象262的正确大小,基于该大小取 回压缩数据字段268,并且对压缩数据字段解压缩以再生成数据对象 260。

应当注意,虽然先前结合跨度单元的压缩进行了描述,但在其他 实施例中,压缩解压缩模块252可进行操作以直接压缩瓦片单元,而 不是单独压缩跨度单元。另外的不同压缩解压缩模块252或234可以 可选地对于与例如压缩视频跨度单元和压缩图形跨度单元相对应的不 同数据对象采用不同的压缩方法。

在本发明的一实施例中,利用有损和无损压缩的混合来对诸如视 频帧数据之类的帧数据进行压缩以便更灵活地实现特定比率的带宽减 小。要理解,在有损压缩的情况下,存储的帧将与原始的不同。当这 些帧被显示或用作参考帧时,将存在失配。用图像质量的降低交换了 存储器带宽效率的增大。

在一实施例中,可以设定压缩目标并且只要为特定数据对象260 实现的实际压缩满足或超过压缩目标就采用无损压缩。在无损压缩不 足以满足或超过压缩目标的情况下,采用有损压缩来满足或超过压缩 目标。例如,压缩/解压缩模块252或234可进行操作以最初利用无损 方案来压缩数据对象260。如果未达到压缩目标,则数据对象260被 量化并再次压缩。重复此过程,直到实现压缩目标为止。

压缩、特别是为每个数据对象260选择无损/有损压缩的过程可结 合下文来描述:

(g)对数据对象260进行压缩;

(h)将数据对象260的压缩量与压缩目标相比较;

(i)当数据对象260的压缩量与压缩目标相比是有利的时,将压 缩数据对象262存储在压缩视频帧缓冲区中;

(j)当数据对象的压缩量与压缩目标相比是不利的时,丢弃压缩 视频数据对象260并且量化数据对象260;以及

(k)重复步骤(a)-(d),直到数据对象260的压缩量与压缩 目标相比有利为止。

如上所述,当无损压缩不足以达到压缩目标时,数据对象260被 反复量化,直到量化的数据对象的压缩满足或超过压缩目标为止。这 可产生如下的数据帧压缩:其中,数据对象260的第一子集是经由无 损压缩来压缩的,并且数据对象260的第二子集是经由有损压缩来压 缩的——这取决于所选择的特定压缩目标和对于要压缩的帧数据上的 每个特定数据对象260可能的压缩量。还应当注意,视频帧可被划分 成区域,并且使用此方案为不同区域实现不同的压缩目标。例如,屏 幕的中央区域与帧的外围部分可采用更轻的压缩目标以保持逼真。此 外,可识别视频帧中与重要图像相对应的兴趣区域。视频帧中的一个 或多个兴趣区域与帧的在该一个或多个兴趣区域以外的部分相比可采 用更轻的压缩目标以保持逼真。

将结合接下来的图17-19进一步论述包括若干个选项功能和特征 的这种基于视频帧的所识别的一个或多个区域来使用不同压缩目标的 方式。

图17呈现了根据本发明实施例的视频处理设备125’的框图表示。 具体地,呈现了功能上与视频处理设备125类似的视频处理设备125’, 但视频编码器/解码器102’包括区域识别信号生成器150,用于识别视 频帧中的一个或多个兴趣区域。在证明压缩合格时使用的压缩目标是 基于此区域识别信号从多个可能的目标值中选择的。

如结合图16论述的,视频帧中的一个或多个兴趣区域与帧的在该 一个或多个兴趣区域以外的部分相比可采用更轻的压缩目标以保持逼 真。具体地,选择压缩目标以向对应于兴趣区域的数据对象应用第一 压缩目标并且向不对应于兴趣区域的数据对象应用第二压缩目标—— 其中第二压缩目标与第一压缩目标相比要求更多压缩。例如,区域识 别信号可识别视频帧中的与脸部相对应的一个或多个区域,这些区域 在被视频处理设备125’的用户查看时可受到更多的审查。

在一实施例中,为兴趣区域选择的压缩目标可以是0%压缩的平 凡目标。这将强制压缩/解压缩模块252或234接受任何量的无损压缩 ——消除了在这些区域中对有损压缩的可能使用。在其他实施例中, 在兴趣区域将采用非平凡但仍更轻的压缩目标。这将使得压缩判决在 这些区域中偏向接受无损压缩并且还偏向接受对数据对象的更轻量化, 从而使得采用有损压缩时损失更少。

图18呈现了根据本发明实施例的区域识别信号生成器150的框图 表示。具体地,区域识别信号生成器150包括区域检测模块320,用 于检测要被压缩来存储在压缩视频帧缓冲区242中的诸如视频帧之类 的至少一个图像中的检测到的区域322。在操作中,区域检测模块320 可检测特定图案或其他可要求更高图像质量的兴趣区域的存在。这种 图案的示例是人脸或其他脸部,然而,可类似地实现其他图案,包括 符号、文本、重要图像以及专用图案和其他图案。区域识别信号生成 器150可选地包括区域清洁模块324,其例如经由形态学操作基于检 测到的区域322生成清洁区域326。区域识别信号生成器150还可包 括区域生长模块,其扩展清洁区域326以生成识别包含兴趣图案的区 域的区域识别信号330。

考虑例如图像310包括人脸并且区域识别信号生成器150生成与 人脸相对应的区域的情况,区域检测模块320可基于对与诸如皮肤色 调之类的脸部特征相对应的像素颜色值的检测来生成检测到的区域 322。区域清洁模块可生成包含这些脸部特征的更连续区域,并且区域 生成模块可生长此区域以包括周围的毛发和其他图像部分以确保整个 脸部都包括在由区域识别信号330识别的区域中。编码部分可利用区 域识别信号330来操作以强调此脸部区域中的质量,同时可能不强调 图像的其他区域。应当注意,考虑到对脸部的更高敏感性和鉴别力, 整个图像对于观看者而言可能是质量更高的。

图19呈现了根据本发明实施例的图像310的图形表示。如图所示, 兴趣区域350已被区域识别信号生成器150所识别,区域识别信号生 成器150生成相应的区域识别信号330,该区域识别信号330指示兴 趣区域350的边界或者包括兴趣区域350的特定数据对象260。

如结合图16-18论述的,与图像310的在兴趣区域350以外的部 分相比,当对兴趣区域350的数据对象进行压缩时可采用更轻的压缩 目标以保持逼真。具体地,可选择压缩目标以向对应于兴趣区域的数 据对象应用第一压缩目标并且向不对应于兴趣区域的数据对象应用第 二压缩目标——第二压缩目标与第一压缩目标相比要求更多压缩。

图20呈现了根据本发明实施例的视频存储系统179的框图表示。 具体地,设备11是具有内置的数字视频记录器功能的机顶盒、独立的 数字视频记录器、DVD记录器/播放器或者存储经处理的视频信号112 以便在诸如电视12之类的视频显示设备上显示的其他设备。虽然视频 编码器/解码器102被示为包含到设备11中,但其可以是单独的设备。 在此配置中,视频编码器/解码器102还可进行操作以在从存储装置取 回时将视频信号110解码成经处理的视频信号112以生成具有适合于 供视频显示设备12显示的格式的视频信号。虽然例示了这些特定设备, 但视频存储系统179可包括硬盘驱动器、闪存设备、计算机、DVD刻 录器或者任何其他能够根据结合如本文所述的本发明的特征和功能描 述的方法和系统来生成、存储、解码和/或显示经处理的视频信号112 的视频内容的设备。

图21呈现了根据本发明实施例的视频分发系统375的框图表示。 具体地,通过对视频信号110进行编码或转码而创建的经处理的视频 信号111被从第一视频编码器/解码器102经由传送路径122传送到作 为解码器操作的第二视频编码器/解码器102。第二视频编码器/解码器 102进行操作以对经处理的视频信号111进行解码以便显示在诸如电 视10、计算机20或其他显示设备之类的显示设备上。

传送路径122可包括根据诸如802.11协议、WIMAX协议、蓝牙 协议等等之类的无线局域网协议操作的无线路径。另外,传送路径可 包括根据诸如通用串行总线协议、以太网协议或其他高速协议之类的 有线协议操作的有线路径。

图22呈现了根据本发明实施例的方法的流程图表示。具体地,呈 现了一种方法来结合联系图1-21描述的特征和功能中的一个或多个 使用。步骤400包括基于未压缩视频帧数据,根据视频压缩协议将视 频输入信号解码成经解码的视频信号。步骤402包括将未压缩视频帧 数据累积成多个瓦片单元,其中多个瓦片单元中的每一个包括多个视 频跨度单元,每个视频跨度单元包括来自视频帧的相应行的至少一部 分的像素数据。步骤404包括通过将多个视频跨度单元压缩成多个压 缩视频跨度单元来生成压缩视频帧数据以便存储在压缩视频帧缓冲区 中。步骤406包括通过取回多个压缩视频跨度单元并通过对多个压缩 视频跨度单元解压缩以生成未压缩视频帧数据,来从压缩视频帧缓冲 区中取回压缩视频帧数据。

图23呈现了根据本发明实施例的方法的流程图表示。具体地,呈 现了一种方法来结合联系图1-22描述的特征和功能中的一个或多个 使用。步骤410包括在寄存器中存储与压缩视频帧缓冲区相对应的存 储器地址的范围。

图24呈现了根据本发明实施例的方法的流程图表示。具体地,呈 现了一种方法来结合联系图1-23描述的特征和功能中的一个或多个 使用。步骤420包括基于未压缩图形帧数据,处理视频帧的至少一个 图形平面。步骤422包括通过将未压缩图形帧数据压缩成多个压缩图 形跨度单元来生成压缩图形帧数据以便存储在压缩图形帧缓冲区中。 步骤424包括通过取回多个压缩图形跨度单元并通过对多个压缩图形 跨度单元解压缩以生成未压缩图形帧数据,来从压缩图形帧缓冲区中 取回压缩图形帧数据。至少一个寄存器可限定与压缩图形帧缓冲区相 对应的存储器地址的范围。

图25呈现了根据本发明实施例的方法的流程图表示。具体地,呈 现了一种方法来结合联系图1-24描述的特征和功能中的一个或多个 使用。步骤430包括当与写入命令相对应的存储器地址落在与压缩图 形帧缓冲区相对应的存储器地址的范围内时,将写入命令识别为对应 于压缩图形帧缓冲区。步骤432包括当与读取命令相对应的存储器地 址落在与压缩图形帧缓冲区相对应的存储器地址的范围内时,将读取 命令识别为对应于压缩图形帧缓冲区。

图26呈现了根据本发明实施例的方法的流程图表示。具体地,呈 现了一种方法来结合联系图1-25描述的特征和功能中的一个或多个 使用。步骤440包括基于未压缩视频帧数据和未压缩图形帧数据,处 理视频帧和视频帧的至少一个图形平面。步骤442包括通过取回多个 压缩视频跨度单元并通过对多个压缩视频跨度单元解压缩以生成未压 缩视频帧数据,来从压缩视频帧缓冲区中取回压缩视频帧数据。

图27呈现了根据本发明实施例的方法的流程图表示。具体地,呈 现了一种方法来结合联系图1-26描述的特征和功能中的一个或多个 使用。步骤450包括将未压缩图形帧数据存储在缓存中。步骤452包 括当未压缩图形帧数据中的所选数据存储在缓存中时,从缓存取回未 压缩图形帧数据中的所选数据。步骤454包括当未压缩图形帧数据中 的所选数据未存储在缓存中时,从压缩图形帧缓冲区取回未压缩图形 帧数据中的所选数据。

图28呈现了根据本发明实施例的方法的流程图表示。具体地,呈 现了一种方法来结合联系图1-27描述的特征和功能中的一个或多个 使用。步骤460包括将未压缩视频帧数据存储在缓存中。步骤462包 括当未压缩视频帧数据中的所选数据存储在缓存中时,从缓存取回未 压缩视频帧数据中的所选数据。步骤464包括当未压缩视频帧数据中 的所选数据未存储在缓存中时,从压缩视频帧缓冲区取回未压缩视频 帧数据中的所选数据。

图29呈现了根据本发明实施例的方法的流程图表示。具体地,呈 现了一种方法来结合联系图1-28描述的特征和功能中的一个或多个 使用。步骤470包括基于未压缩视频帧数据,根据视频压缩协议将视 频输入信号解码成经解码的视频信号。步骤472包括通过将多个视频 数据对象压缩成多个压缩视频数据对象来生成压缩视频帧数据以便存 储在压缩视频帧缓冲区中,其中多个视频数据对象的第一子集是经由 无损压缩来压缩的并且多个视频数据对象的第二子集是经由有损压缩 来压缩的。步骤474包括通过取回多个压缩视频数据对象来从压缩视 频帧缓冲区中取回压缩视频帧数据。步骤476包括通过对多个压缩视 频数据对象解压缩来生成未压缩视频帧数据。

在一实施例中,多个视频数据对象中的相应一个包括来自视频帧 的相应一行或视频帧的多行的至少一部分的像素数据。

图30呈现了根据本发明实施例的方法的流程图表示。具体地,呈 现了一种方法来结合联系图1-29描述的特征和功能中的一个或多个 使用。步骤480包括对多个视频数据对象中的相应一个进行压缩。步 骤482包括将视频数据对象的压缩量与压缩目标相比较。步骤484包 括当视频数据对象的压缩量与压缩目标相比有利时将压缩视频数据对 象存储在压缩视频帧缓冲区中。步骤486包括当视频数据对象的压缩 量与压缩目标相比不利时丢弃压缩视频数据对象。步骤488包括对多 个视频数据对象中的相应一个进行量化。重复步骤480、482、486和 488,直到多个视频数据对象中的相应一个的压缩量与压缩目标相比有 利为止并且可执行步骤484。压缩目标可基于识别视频帧内的区域的 区域识别信号从多个可能的目标值中选择。

图31呈现了根据本发明实施例的方法的流程图表示。具体地,呈 现了一种方法来结合联系图1-30描述的特征和功能中的一个或多个 使用。步骤490包括处理视频帧以在检测到兴趣区域时生成区域识别 信号。

在一实施例中,选择压缩目标以向对应于兴趣区域的视频数据对 象应用无损压缩。可以选择压缩目标来向对应于兴趣区域的视频数据 对象应用第一压缩目标并且向不对应于兴趣区域的视频数据对象应用 第二压缩目标,并且其中第二压缩目标与第一压缩目标相比要求更多 压缩。

图32呈现了根据本发明实施例的方法的流程图表示。具体地,呈 现了一种方法来结合联系图1-31描述的特征和功能中的一个或多个 使用。步骤500包括基于未压缩视频帧数据,根据视频压缩协议将视 频输入信号解码成经解码的视频信号。步骤502包括通过将多个视频 数据对象压缩成多个压缩视频数据对象来生成压缩视频帧数据。步骤 504包括将多个压缩视频数据对象存储在压缩帧缓冲区中。步骤506 包括通过识别多个压缩视频数据对象中与视频帧数据的所选部分相对 应的所选压缩视频数据对象、取回多个压缩视频数据对象中的所选压 缩视频数据对象并通过对多个压缩视频数据对象中的所选压缩视频数 据对象解压缩以生成未压缩视频帧数据,来从压缩视频帧缓冲区中取 回视频帧数据的所选部分。

在一实施例中,每个压缩视频数据对象被存储在压缩帧缓冲区中、 存储器中的相应预定位置处的基本存储器地址处。多个视频数据对象 中的每一个可包括来自视频帧的相应一行或视频帧的多行的至少一部 分的像素数据。

图33呈现了根据本发明实施例的方法的流程图表示。具体地,呈 现了一种方法来结合联系图1-32描述的特征和功能中的一个或多个 使用。在一实施例中,每个压缩视频数据对象包括指示其中包含的压 缩数据的大小的头部文件和压缩数据字段。步骤510包括确定与多个 压缩视频数据对象中的所选压缩视频数据对象中的每一个相对应的基 本存储器地址。步骤512包括读取与多个压缩视频数据对象中的所选 压缩视频数据对象中的每一个相对应的头部文件以确定与多个压缩视 频数据对象中的所选压缩视频数据对象中的每一个相对应的压缩数据 的大小。步骤514包括基于相应的基本存储器地址和相应的大小,取 回与多个压缩视频数据对象中的所选压缩视频数据对象中的每一个相 对应的压缩数据字段。

如本文可使用的,术语“基本上”和“大致”提供了对其相应的 术语和/或项目之间的相对性的业界接受的容差。这种业界接受的容差 从小于百分之一到百分之五十不等,并且对应于——但不限于——成 分值、集成电路工艺变化、温度变化、上升和下降时间和/或热噪声。 项目之间的这种相对性从百分之几的差异到量级差异不等。如本文还 可使用的,术语“可操作地耦合到”、“耦合到”和/或“耦合”包括 项目之间的直接耦合和项目之间经由居间项目(例如,包括但不限于 组件、元件、电路和/或模块的项目)的间接耦合,其中,对于间接耦 合,居间项目不修改信号的信息,而是可调节其电流水平、电压水平 和/或功率水平。如本文还可使用的,推断耦合(即,一个元件按照推 断耦合到另一元件)包括两个项目之间的以与“耦合到”相同的方式 的直接和间接耦合。如本文还可使用的,术语“可操作来”或“可操 作地耦合到”表明项目包括电源连接、(一个或多个)输入、(一个 或多个)输出等等中的一个或多个以在被激活时执行一个或多个其相 应的功能并且还可包括到一个或多个其他项目的推断耦合。如本文还 可使用的,术语“与……相关联”包括分开的项目的直接和/或间接耦 合和/或一个项目嵌入在另一项目内。如本文可使用的,术语“相比有 利”表明两个或更多个项目、信号等等之间的比较提供期望的关系。 例如,当期望的关系是信号1具有比信号2更大的幅值时,当信号1 的幅值大于信号2的幅值时或者当信号2的幅值小于信号1的幅值时, 可实现有利的比较。

如本文还可使用的,术语“处理模块”、“处理电路”和/或“处 理单元”可以是单个处理设备或多个处理设备。这种处理设备可以是 微处理器、微控制器、数字信号处理器、微计算机、中央处理单元、 现场可编程门阵列、可编程逻辑器件、状态机、逻辑电路、模拟电路、 数字电路和/或任何基于电路的硬编码和/或操作指令来操纵(模拟和/ 或数字的)信号的设备。处理模块、模块、处理电路和/或处理单元可 以是或者进一步包括存储器和/或集成存储器元件,其可以是单个存储 器设备、多个存储器设备和/或另一处理模块、模块、处理电路和/或 处理单元的嵌入式电路。这种存储器设备可以是只读存储器、随机访 问存储器、易失性存储器、非易失性存储器、静态存储器、动态存储 器、闪存存储器、缓存存储器和/或任何存储数字信息的设备。注意, 如果处理模块、模块、处理电路和/或处理单元包括多于一个处理设备, 则这些处理设备的位置可以是集中的(例如,经由有线和/或无线总线 结构直接耦合在一起)或者可以是分布式的(例如,经由通过局域网 和/或广域网的间接耦合的云计算)。还要注意,如果处理模块、模块、 处理电路和/或处理单元经由状态机、模拟电路、数字电路和/或逻辑 电路来实现其功能中的一个或多个,则存储相应的操作指令的存储器 和/或存储器元件可嵌入在包括该状态机、模拟电路、数字电路和/或 逻辑电路的电路内或者在该电路外部。还要注意,存储器元件可存储 并且处理模块、模块、处理电路和/或处理单元执行与一幅或多幅附图 中图示的步骤和/或功能中的至少一些相对应的硬编码和/或操作指令。 这种存储器设备或存储器元件可包括在制品中。

上文已借助于例示指定功能的执行及其关系的方法步骤来描述了 本发明。本文为了便于描述起见任意定义了这些功能构建块和方法步 骤的边界和顺序。只要适当地执行指定的功能和关系,就可定义替换 边界和顺序。任何这种替换边界或顺序从而都在要求保护的发明的范 围和精神内。另外,为了便于描述起见任意定义了这些功能构建块的 边界。只要适当地执行某些重要功能,就可定义替换边界。类似地, 本文还可能任意定义了流程图块来图示某些重要功能。在所使用的程 度上,流程图块边界和顺序可以被以其他方式定义,而仍执行某些重 要功能。对功能构建块和流程图块和顺序的这种替换定义从而在要求 保护的发明的范围和精神内。本领域普通技术人员还将认识到,功能 构建块以及其他例示块、模块和其中的组件可以如图所示那样实现或 者由分立的组件、专用集成电路、执行适当软件的处理器等等或者其 任何组合来实现。

还可能已经——至少部分地——按照一个或多个实施例来描述了 本发明。本发明的实施例在本文中用于例示本发明、其方面、其特征、 其概念和/或其示例。装置、制品、机器和/或实现本发明的过程的物 理实施例可包括参考本文论述的实施例中的一个或多个描述的方面、 特征、概念、示例等等中的一个或多个。另外,在附图与附图之间, 实施例可包含相同或相似命名的功能、步骤、模块等等,它们可使用 相同或不同的标号,因此,这些功能、步骤、模块等等可以是相同或 相似的功能、步骤、模块等等或者是不同的。

除非有相反的具体声明,否则本文呈现的任何附图的图中的去往、 来自和/或在元件之间的信号可以是模拟的或数字的、连续时间的或离 散时间的、单端的或差动的。例如,如果信号路径被示为单端路径, 则其也表示差动信号路径。类似地,如果信号路径被示为差动路径, 则其也表示单端信号路径。虽然本文描述了一个或多个特定体系结构, 但可类似地实现其他体系结构,这些其他体系结构使用没有明确示出 的一个或多个数据总线、元件之间的直接连通、和/或其他元件之间的 间接耦合,这是本领域普通技术人员将会认识到的。

在对本发明的各种实施例的描述中使用了术语“单元”,也称为 “模块”。模块包括处理模块、功能块、硬件和/或存储在存储器上供 处理设备执行的软件,该处理设备执行如本文可描述的一个或多个功 能。注意,如果模块是经由硬件实现的,则硬件可独立地和/或结合软 件和/或固件操作。如本文使用的,模块可包含一个或多个子模块,其 中每个子模块可以是一个或多个模块。

虽然本文已明确描述了本发明的各种功能和特征的特定组合,但 这些特征和功能的其他组合也同样是可能的。本发明不受本文公开的 特定示例所限,并且明确包含这些其他组合。

去获取专利,查看全文>

相似文献

  • 专利
  • 中文文献
  • 外文文献
获取专利

客服邮箱:kefu@zhangqiaokeyan.com

京公网安备:11010802029741号 ICP备案号:京ICP备15016152号-6 六维联合信息科技 (北京) 有限公司©版权所有
  • 客服微信

  • 服务号