专利名称:一种视频播放器电路及视频显示方法
技术领域:
本发明涉及视频处理设备,更具体地说,涉及一种对显示在视频播放器上 的视频信息的处理。
背景技术:
电影和其他视频内容通常使用35mm胶片以16: 9的宽高比进行拍摄。在 电影进入一级市场时,将该35mm胶片复制并分发给各个电影院,从而将电影 卖给电影观众。例如,电影院一般通过使用高流明光束透射35mm胶片来将电 影投射在"大屏幕"上,进而供付费观众观看。 一旦脱离"大屏幕",电影通 常就进入二级市场,通过销售其中包含电影的影碟或影带(例如VHS影带、 DVD、高清(HD) -DVD、蓝光DVD和其他录制媒体)来将电影分发给个人 观众。其他用于在二级市场中分发电影的方法,还包括通过互联网下载和通过 电视网络提供商广播。
为能通过二级市场进行分发,35mm电影内容将以每胶片帧为单位转换为 原始数字视频。要想达到HD的分辨率(resolution),每个胶片帧至少需要1920 X1080像素,对于片长为两小时的电影,这种原始数字视频需要大约25GB 的存储空间。为避免如此高的存储需求,通常使用编码器对原始数字视频进行 编码和压縮,从而大大降低存储需求。编码标准包括例如但不限于运动图象专 家组(MPEG) -1 、 MPEG-2、用于HD的增强型MPEG-2、 MPEG-4 AVC、 H.261 、 H.263以及活动图像和电视工程师协会(society of motion picture and television engineer,简称SMPTE) VC-l。
为了满足在电话机、个人数字助理(PDA)和其他手持设备上显示电影的 要求,通常通过互联网将压縮数字视频数据下载、上传或存储到手持设备上, 然后由手持设备对该视频数据进行解压和解码,以便显示在手持设备的视频显
示器上,进而展示给用户。然而,这种手持设备的尺寸通常会限制其上的视频
显示器(屏幕)的尺寸。例如,手持设备上的小屏幕通常只有2英寸(5.08cm) 长(对角线)。相比之下,电视机的屏幕通常为30—60英寸(76.2cm— 152.4cm)
(对角线测量)或更大。屏幕尺寸的差异对观众所能感觉得到的图象质量有着 较大的影响。
例如,常见的传统PDA和高端电话机屏幕具有与人眼相同的宽高比 (mtio)。在小屏幕上,人眼往往无法察觉微小细节,例如文本、面部特征和 远处的物体。例如,在电影院中,对于包含位于远处的演员和铁路标记的全景 场景来说,观众可以轻易地识别演员的面部表情并阅读标记上的文字。在HD 电视机屏幕上,观众也有可能做到这一点。但是,在转换到手持设备的小屏幕 上时,由于人眼的限制,往往不可能识别其面部特征和文字。
无论屏幕有多大,其分辨率不是受技术限制,就是受人眼的限制。但是, 在小屏幕上,这种限制更加明显。例如,常见的传统PDA和高端电话机屏幕 的宽高比为4: 3,通常能够显示分辨率为320X240像素的QVGA视频。相 比之下,HD电视机屏幕的宽高比通常为16: 9,且能显示分辨率高达1920X 1080像素的视频。在转换HD视频以便使其适合像素值小得多的小屏幕的过 程中,像素数据将进行合并,且将损失较多视频细节。将小屏幕上的像素值增 加到HD电视机的像素值水平能够避免上述转换过程,但是,如上所述,由于 人眼自身的限制,视频细节仍会损失。
通常使用视频编码转换和编辑系统将视频从一种格式和分辨率转换到另 一种格式和分辨率,以便在特定的屏幕上进行回放。例如,该系统可输入DVD 视频,且在进行转换过程之后,输出将在QVGA屏幕上重新播放的视频。转 换过程中还可使用交互编辑功能来生成经过编辑和转换后的输出视频。为了能 够支持多种不同的屏幕尺寸、分辨率和编码标准,需要生成多种输出视频流或 文件。
视频通常是以"大屏幕"格式拍摄的,这种格式在供电影院观看时会收到 良好的效果。因为视频随后将进行编码转换,所以"大屏幕"格式视频可能不 足以支持转换到小屏幕尺寸。在这种情况下,还没有一种转换过程能够生成可
供小屏幕显示的合适视频。通过本文的介绍并参考附图,与本发明技术方案相 比,现有和传统方法的局限性和缺点对于本领域的技术人员来说将变得更加明 显。
发明内容
本发明涉及一种装置和操作方法,在
具体实施方式
和权利要求 中进行了详细的描述。
根据本发明的一方面,提供了一种与编码源视频和显示器结合使用的视频 播放器电路,该视频播放器电路包括
解码器电路,用于接收所述编码源视频,并对所述编码源视频进行解码, 以生成视频数据全帧序列;
预处理电路,用于根据子帧信息,从所述视频数据全帧序列中生成多个视 频数据子帧序列,所述多个视频数据子帧序列中的第一序列在所述视频数据全 帧序列中的中心点不同于所述多个视频数据子帧序列中的第二序列在所述视 频数据全帧序列中的中心点;
后处理电路,用于根据补充信息调整所述多个视频数据子帧序列,以生成 输出;
接口电路,用于传送所述输出以便随后在所述显示器上显示。 在本发明所述的视频播放器电路中,所述视频播放器电路和所述显示器设 置在单一壳体中。
在本发明所述的视频播放器电路中,所述视频播放器电路设置在第一壳体 中,所述显示器设置在第二壳体中。
在本发明所述的视频播放器电路中,所述解码器电路和用于生成所述多个 视频数据子帧序列的所述预处理电路是集成在一起的。
在本发明所述的视频播放器电路中,所述解码器电路在所述预处理电路生 成所述多个视频数据子帧序列之前对所述编码源视频进行解码。
在本发明所述的视频播放器电路中,所述子帧信息包括子帧元数据,所述 预处理电路包括子帧元数据处理电路。
8 4确定区域间的距离是否小于 一 个预定的阈值。
当步骤S54上的确定结果表明拼接区域与考虑的初始区域之间的距离小 于预定的阈值时,流程前进到步骤S55。在步骤S55,区域拼接部分84把考 虑的初始区域拼接到拼接区域,从而形成一个新的拼接区域。此后,流程前 进到步骤S56。
相反,当步骤S54上的确定结果表明拼接区域与考虑的初始区域之间的 距离不小于预定的阈值时,流程前进到步骤S56,跳过步骤S55。换句话说, 区域拼接部分84不把考虑的初始区域拼接到拼接区域。在步骤S56,区域拼 接部分84确定邻近拼接区域的所有初始区域是否已经都被搜索。当步骤S56 上的确定结果表明邻近拼接区域的所有初始区域还未被搜索时,流程返回到 步骤S52。在步骤S52,区域拼接部分84搜索未被搜索到的邻近初始区域。 此后,区域拼接部分84重复相似的处理。
时,流程前进到步骤S57。在步骤S57,区域拼接部分84确定在前帧中含有 的所有对象的每个是否已经被指定为考虑对象。当步骤S57上的确定结果表 明在前帧中含有的所有对象的每个都未被指定为考虑对象时,流程返回到步 骤S51。在步骤S51,区域拼接部分84把在前帧中含有的一个对象指定为考 虑对象,然后为新近考虑的对象重复相似的处理。
相反,当步骤S57上的确定结果表明在前帧中含有的所有对象的每个已 经被指定为考虑对象时,流程返回到被调用进程。
下面,结合图23所示的流程图详细说明在图21所示的步骤S44上由拼 接区域处理部分85执行的拼接区域处理。
首先,在步骤S61上,拼接区域处理部分85把处理的一个帧指定为一个 考虑帧,核对对象信息存储器88,在在前帧的对象在空间上与考虑帧的考虑 对象重叠的条件下认同前一帧(在前帧)中含有的对象数目(即,考虑帧的 在前帧的对象数目),并把对象的数目调整到一个变量N。
此后流程前进到步骤S62。在步骤S62,拼接区域处理部分85确定变量 N是否为2或是否大于2。当变量N小于2(即,在前帧中不含有空间上与考 虑对象重叠的对象或对象的数目为1)时,流程前进到步骤S65,跳过步骤 S63和S64。
相反,当步骤S62上的确定结果表明变量N等于2或大于2 (即,在前
中所述第一补充信息不同于所述第二补充信息。
在本发明所述的方法中,所述显示器具有显示器参数,所述方法还包括基 于所述显示器参数处理所述输出视频序列。
在本发明所述的方法中,本方法还包括
接收编码源视频;
对所述编码源视频进行解码,生成所述视频数据全帧序列。 根据本发明的一个方面,提供了一种与编码源视频和显示器结合使用的视
频播放器软件应用,包括
解码器,用于从所述编码源视频中生成视频数据全帧序列;
子帧处理器,用于从所述视频数据全帧序列中,基于第一位置和尺寸信息
生成视频数据子帧第一序列,基于第二位置和尺寸信息生成视频数据子帧第二
序列;
显示器接口 ,用于传送所述视频数据子帧第一序列和所述视频数据子帧第 二序列,进而在所述显示器上进行全屏显示。
在本发明所述的视频播放器软件应用中,所述视频播放器软件应用运行在 视频播放器设备上。
在本发明所述的视频播放器软件应用中,所述视频播放器软件应用运行在 终端客户端设备上。
在本发明所述的视频播放器软件应用中,所述第一位置和尺寸信息以及所 述第二位置和尺寸信息共同包含从所述子帧处理器接收到的子帧元数据。
在本发明所述的视频播放器软件应用中,所述子帧元数据还包括显示器信 息;所述视频播放器软件应用还包括补充处理,其基于所述显示器信息剪裁所 述视频数据子帧第一序列和所述视频数据子帧第二序列。
通过下面参考附图对本发明进行的具体描述,本发明的多个方面和^;点将
变得更加清晰。
图1是根据本发明多个实施例构造的多个视频播放器系统的结构示意图;图2是根据本发明一实施例构造的视频播放器系统的结构示意图; 图3是根据本发明对应实施例构造的多个视频播放器系统间的通信互连 示意图4是根据本发明一实施例构造的视频拍摄/子帧元数据生成系统的结构 示意图5是说明示范性原始视频帧和对应子帧的方框示意图6是包含用于创建子帧的视频编辑工具的图形用户接口的视频处理系
统显示器一实施例的示意图7是示范性原始视频帧和对应子帧的结构示意图8是子帧序列的示范性子帧元数据的示意图9是包含子帧编辑信息的示范性子帧元数据的示意图10是根据本发明一实施例构造的视频播放器系统的结构示意图11是根据本发明一实施例构造的视频播放器系统的结构示意图12是根据本发明的分布式视频播放器系统第一实施例的结构示意图13是根据本发明的分布式视频播放器系统第二实施例的结构示意图14是根据本发明的分布式视频播放器系统第三实施例的结构示意图15是根据本发明的分布式视频播放器系统第四实施例的结构示意图16是根据本发明的用于在分布式视频播放器系统中传送视频数据、元
数据和其他信息的示意图17是根据本发明一实施例的视频处理和播放过程的流程图。
具体实施例方式
图1是根据本发明多个实施例构造的多个视频播放器系统的结构示意图。 如图所示,本发明的视频播放器系统可包含在单个设备中,也可分布在多个设 备中。视频播放器26和34展示了将本发明的视频播放器系统包含在单个设备 中的方式。视频播放器系统20和28展示了将本发明的视频播放器系统分布在 多个设备中的方式。视频播放器系统20包含视频播放器22和视频显示设备 24。视频播放器系统28包括视频播放器和视频显示设备30。
图1所示的视频播放器系统通常包含三种功能。第一种功能是多模式视频
电路和应用(MC&A)功能。MC&A功能可工作在第一模式或第二模式下, 也可同时工作这两种模式下。当MC&A功能工作在第一模式下时,例如视频 显示设备30通过通信链路或者从诸如DVD等媒介中接收源视频11和元数据 (metadata) 15。当MC&A功能工作在第一模式下时,视频显示设备30在处 理和播放操作过程中同时使用源视频11和元数据15,以此来显示视频。
视频显示设备30收到的源视频11可以是编码源视频12或者原始源视频 14。元数据15可以是相似显示器元数据16或目标显示器元数据18。通常, 编码源视频12和原始源视频14包含相似的内容,区别在于前者进行了编码, 而后者未进行编码。通常,源视频11包含由视频摄像机拍摄的视频数据的全 帧序列。将参考图4一图9对全帧的拍摄进行详细的描述。
元数据15是用于在视频处理操作过程中调整视频数据全帧序列的附加信 息,特别是用于生成在目标视频播放器的目标视频显示器上回放的视频。元数 据15的创建方式以及其与源视频11之间的关系将参考图4一图9做进一步描 述。在MC&A第一模式操作中,视频显示设备30结合使用源视频11和元数 据15生成用于其视频显示器的输出。通常,相似显示器元数据16具有专门为 一类或一组目标视频播放器而剪裁(tailored)的属性。该类或该组中的目标视 频播放器具有近似的屏幕分辨率、近似的宽高比或其他相似的特征,这些特征 非常适合于调整源视频以生成可在该类视频播放器的视频显示器上显示的调 整后源视频。可选地,目标显示器元数据18包含专门应用于某一品牌(make) /某一型号/某一种视频播放器的信息。当视频播放器,例如视频显示设备30, 使用目标显示器元数据18来调整源视频11,则调整后视频是专门为视频显示 设备30的视频显示器而剪裁的。
当本发明视频播放器系统的MC&A功能处于第二操作模式时,视频显示 设备30接收并显示先前已由另一视频播放器32使用元数据15进行处理后的 视频(编码视频或原始视频)。例如,在视频播放器系统28中,视频播放器 32先前已经使用元数据15对源视频11进行处理,并生成传送至视频显示设 备30的输出视频。通过MC&A功能的第二操作模式,视频显示设备30接收
用于显示的视频播放器32的输出,并将这种输出显示在视频显示器上。视频 显示设备30的MC&A功能还可进一步调整从视频播放器32接收到的视频数 据。
图1中一个或多个视频播放器系统26和/或34所加载的另一功能包括集 成视频电路和应用功能(IC&A)。图1中的视频播放器系统26和34的IC&A 功能接收源视频11和元数据15,并对它们进行处理,以生成视频输出,进而 在如视频播放器34等对应视频播放器上显示。视频播放器系统26和34中的 每一个均通过各自的通信链路接收源视频11和元数据15,且其各自的IC&A 功能对源视频11和元数据15进行处理以生成视频,进而在对应视频播放器系 统26和34的视频显示器上显示。
根据图1的另一方面,视频播放器系统还可包括分布式视频电路和应用 (DC&A)功能。视频播放器32的DC&A功能接收源视频11和元数据15, 并结合元数据15对源视频11进行处理,以生成子帧视频数据。视频播放器 22和32的DC&A功能将其各自的输出分别传送至对应的视频显示设备24和 30。对应的视频播放器24和30使用其各自的功能对收到的视频输入进行调整, 然后将视频显示在其各自的显示器上。
根据图1中视频播放器系统的具体实现方式和特定操作,它们的功能可分 布在多个设备上,例如,对于视频播放器系统20而言,视频播放器22和视频 显示设备24均具备DC&A功能。该分布式DC&A功能可配置在多种操作中, 以便共同承担可由二者之一或者二者共同执行的处理任务。此外,对于视频播 放器系统28而言,根据其当前的特定配置,视频播放器32和视频显示设备 30可共享随时间变化的处理功能。
图2是根据本发明一实施例构造的视频播放器系统的结构示意图。图2 所示的视频播放器系统40包括可由硬件、软件或硬软件的结合来实现的功能 部件。视频播放器系统40包括目标显示器42、解码器44、元数据处理电路 46、目标显示剪裁(tailoring)电路48、数字权限电路52和计费电路54。视 频播放器系统40接收源视频11,该源视频中可包含编码源视频12和原始源 视频14中的一个或两个。视频播放器系统40进一步接收元数据15,该元数
据包括一个或多个相似显示器元数据15和目标显示元数据18。通常,视频播 放器系统40的目标显示器42显示由元数据处理电路46或目标显示剪裁电路 48生成的输出视频。
解码器44用于接收和解码编码源视频12,生成视频数据全帧序列。元数 据处理电路46用于接收从解码器44接收得到的视频数据全帧序列。作为选择 地,元数据处理电路46还可直接将原始源视频14接收为视频数据全帧序列。 在每一种情况下,元数据处理电路46都可根据元数据15 (或者是相似显示元 数据16或者是目标显示元数据18)来处理视频数据全帧序列。通常,根据元 数据15,元数据处理电路46可从视频数据全帧序列中生成多个视频数据子帧 序列。在一项操作中,上述多个视频数据子帧序列中的第一序列与其第二序列 相比,在视频数据全帧序列中的中心点不尽相同。这些概念将参考图5 —图9 做进一步地详细描述。
目标视频剪裁电路48可根据补充信息例如目标显示器参数50执行后处理 操作,以此来调整多个视频数据子帧序列,生成输出。目标视频剪裁电路48 的输出随后通过目标显示器42显示出来。若未使用目标视剪裁电路48对多个 视频数据子帧序列进行后处理,则元数据处理电路46的输出将直接发往目标 显示器42。
视频播放器系统40的数字权限电路52用于判断视频播放器系统40是否 有权使用/修改源视频11和/或元数据15,和/或以此来生成在目标显示器42 上显示的视频。数字权限电路52可与远端服务器或其它交换系统(commuting system)交互,以此确定是否存在这种数字权限。然而,数字权限电路52还 可简单地査看部分源视频11和/或元数据15,来判断视频播放器系统40是否 有权对这些数据进行操作。视频播放器系统40的计费电路54用于在本地或远 端生成计费记录,以此来对源视频11和/或元数据15的使用情况进行计费。 计费电路54还可与远端服务器协同操作,以发起该计费记录的生成。
图3是根据本发明对应实施例构造的多个视频播放器系统的通信互连示 意图。通常源视频11和元数据15通过通信链路/网络304或可触式媒体 (tangible media) 306传送到视频播放器系统308、 310、 320和314。通信链路/网络304可包括互联网、局域网(LAN)、无线局域网(WLAN)、广域网 (WAN)、电话网、有线调制解调器网络、卫星通信网络、全球微波接入互通 (WiMAX)网络和/或其他有线和/或无线通信链路中的一个或多个。若源视频 11和/或元数据15是包含在媒体如DVD或CD 306中的,对应的视频播放器 系统308、 310、 312或314便从媒体驱动器中接收媒体306,使用媒体驱动器 来读取媒体306。如图所示,上文参考图1描述的多种电路和应用功能DC&A、 MC&A和IC&A由视频播放器系统308、 310、 312和314来实现。正如将要 通过下文参考图12_图15所描述的那样,这些电路/应用的功能可分布在多个 设备上。
图4是根据本发明一实施例构造的视频拍摄/子帧元数据生成系统的结构 示意图。图4中的视频拍摄/子帧元数据生成(SMG)系统100包括摄像机110 和SMG系统120。视频摄像机110拍摄与场景102有关的视频数据的原始全帧 序列。视频摄像机110还可通过麦克风llla和lllb来获取音频。视频摄像机 110可将视频数据的全帧发往控制台140或运行SMG系统120。视频摄像机110 或控制台140的SMG系统120通过用户输入设备121或123从用户处接收输入。 根据用户的输入,SMG系统120在视频显示器上显示一个或多个子帧,该视频 显示器上同样显示视频数据的全帧序列。根据从用户输入和其他信息创建的子 帧,SMG系统120创建元数据15。视频拍摄/子帧元数据生成系统100的视频 数据输出是一个或多个编码源视频12或原始源视频14。视频拍摄/子帧元数 据生成系统100还输出元数据15,该元数据可以是相似显示元数据16和/或 目标显示元数据18。视频拍摄/子帧元数据生成系统100还可输出目标显示信 息20。
摄像机IIO拍摄的原始视频帧序列为场景102。场景102可以是摄像机110 拍摄的任一种场景。例如,场景102可以是有很多细节的相对较大撷取区域的 风景。此外,场景102还可以是互相对话的演员的头部照。另外,场景102 还可以是狗追球的动作画面。在拍摄原始视频帧的过程中,场景102的类型通 常会随时间发生变化。
在现有的视频拍摄系统中,用户操作摄像机IIO来拍摄场景102的原始视
频帧,这些帧进行了优化,以适应"大屏幕"格式。在本发明中,这些原始视 频帧随后才会进行转换,以便最终由配有各自的视频显示器的目标视频播放器 显示出来。因为子帧元数据生成系统120会随时间拍摄不同类型的场景,对所
拍摄的视频进行转换以生成用于在目标视频播放器上观看的子帧的方式也会 随时间发生变化。"大屏幕"格式并不总是能够很好的转换为小屏幕类型上。
因此,本发明的子帧元数据生成系统120支持这样一种原始视频帧拍摄方式,
即在转换到较小格式时,这种方式可以提供高质量的视频子帧,以供显示在目 标视频播放器的一个或多个视频显示器上。
编码源视频12可使用基于离散余弦变换(DCT)的编码/压縮格式(例如 MPEG-l、MPEG-2、用于HD的增强型MPEG-2、MPEG-4 AVC、H.261和H.263)
中的一种或几种来编码,使用运动向量来从相邻帧或场(field)构建基于帧 或场的预测,这是通过通常存在的帧间或场间的运动来实现的。例如,在使用 MPEG编码标准时,原始视频帧序列将被编码为由三种不同类型的帧组成的序 列"I"帧、"B"帧和"P"帧。"I"帧是帧内编码的,"P"帧和"B"帧是帧 间编码的。因此,"I"帧是独立的,也就是说它们无需参考其他帧即可进行重 建,而"P"帧和"B"帧是相关的,也就是说,它们需要依靠其他帧来进行重 建。具体来说,P帧是从上一I帧或P帧向前预测的,B帧是同时从上一/下一 I帧或P帧向前预测和向后预测的。IPB帧序列将使用DCT进行压縮,将"I"、 "P"或"B"帧中的NXN (N通常设置为8)像素数据块转换到DCT域,以便 更容易进行量化。随后对量化后的比特流应用游程编码和熵编码,生成压縮比 特流,与原始的未压縮视频数据相比,压縮比特流的比特率明显降低。
图5是示范性原始视频帧和对应子帧的结构示意图。如图所示,视频显示 器400包含一个可视区域,其中显示了代表图4中场景102的原始视频帧序列。 根据图5所示的实施例,SMG系统120还用于响应代表用户输入的其他信号, 除子帧402以外,在视频显示器400上还显示与原始视频帧序列相关联的其他 子帧404和406。这些子帧402中的每一个都具有与多个目标视频显示器其中 之一相对应的宽高比和尺寸。此外,SMG系统120生成与每一个子帧402、 404 和406相关的元数据15。子帧元数据生成系统120所生成的与子帧402、 404
和406相关的元数据15使得对应的目标视频显示器在其视频显示器上生成对 应的显示场景。在图5所示的实施例中,SMG系统120包括单个视频显示器400, 每个子帧402、 404和406正是通过该显示器显示出来的。在另一实施例中, 视频处理系统生成的多个子帧中的每一个将独立地显示在对应的目标视频播 放器上。
在图5所示的实施例中,在子帧组中至少有两个子帧404和406与原始视 频帧序列中的一个帧相对应。因此,例如,在特定的目标视频播放器中,子帧 404和406以及其中包含的相关视频信息将会在不同的时间显示在单个目标视 频播放器上。在图5所示的实施例中,目标视频播放器所显示视频的第一部分 展示的是子帧404中包含的狗追球的场景,而目标视频播放器所显示视频的第 二部分展示的是子帧406中描述的反弹球的场景。因此,在本实施例中,目标 视频播放器中在时间上相邻的视频序列是由单个原始视频帧序列生成的。
此外,在图5所示的实施例中,在子帧组中至少有两个子帧包含空间位置 随原始视频帧序列变化的物体。在这种帧中,显示狗的子帧404的空间位置会 随与显示反弹球的子帧406有关的原始视频帧序列变化。此外,在图5所示的 实施例中,在子帧组中的两个子帧可对应于原始视频帧序列中的至少两个不同 的帧。在该实施例中,子帧404和406会对应显示在视频显示器400上的原始 视频帧序列中的不同帧。在该实施例中,在第一时间段,选择子帧404以便在 一段时间内显示狗的图象。此外,在该实施例中,子帧406对应不同的时间段, 用于显示反弹球。在该实施例中,子帧组404和406中的至少一部分对应由原 始视频帧序列所描述场景的一个子场景。所描述的序列可在整个显示器400 上显示,也可在子帧402中显示。
图6是包含用于创建子帧的视频编辑工具的图形用户接口 (GUI)的视频 处理系统显示器一实施例的示意图。视频处理显示器502上显示的是当前帧 504及其子帧506。子帧506包括由用户指定的感兴趣区域内的视频数据。一 旦指定了子帧506,用户便可使用通过GUI 508提供给用户的一种或多种视频 编辑工具来编辑子帧506。例如,如图6所示,通过点击或选择GUI 508中的 一种编辑工具,用户可对子帧506应用滤光镜、色彩修正、叠加或其他编辑工
具。此外,GUI 508还可使得用户在原始帧和/或子帧之间移动,以便观看和
比较原始子帧序列和子帧序列。
图7是示范性原始视频帧和对应子帧的示意图。在图7中,第一场景602 由原始视频帧606的第一序列604描述,第二场景608由原始视频帧606的第 二序列610描述。因此,每个场景602和608包含原始视频帧606的各自序列 604和610,通过顺序的显示原始视频帧606的各序列604和610中的每个原 始视频帧606来观看。
但是,要想在小视频显示器上显示每个场景602和608,而又不会降低观 众所能感觉得到的视频质量,每个场景602和608可分割为分开显示的子场景。 例如,如图7所示,在第一场景602中,存在两个子场景612和614,在第二 场景608中,存在一个子场景616。如同每个场景602和608可以通过顺序显 示原始视频帧606的各自序列604和610来观看一样,每个子场景612、 614 和616也可通过显示各自的子帧618 (618a、 618b和618c)序列来观看。
例如,来看原始视频帧第一序列604中的第一帧606a,用户可指定两个 子帧618a和618b,每一个子帧包含代表不同子场景612和614的视频数据。 假设子场景612和614连续贯穿于原始视频帧的606第一序列604之中,用户 可进一步在原始视频帧606的第一序列604中随后的每个原始视频帧606a中 为每个子场景612和614分别指定两个子帧618a和618b。这样便得到子帧618a 第一序列620,其中包含的每个子帧618a都包含代表子场景612的视频内容; 还可得到子帧618b第二序列630,其中包含的每个子帧618b都包含代表子场 景614的视频内容。子帧618a和618b的各序列620和630可顺序显示。例如, 按顺序显示对应于第一子场景612的每个子帧618a,然后顺序显示对应于第 二子场景614的每个子帧618b。通过这种方式,电影仍能保持场景602的逻 辑流,并且能让观众看到场景602的细微细节。
同理,来看原始视频帧606第二序列610中的第一帧606b,用户可指定 对应子场景616的子帧618c。再次假设子场景616连续贯穿于原始视频帧606 第二序列610,用户可进一步在原始视频帧606第二序列610中的后续每个原 始视频帧606中指定包含子场景616的子帧618c。这样便得到子帧618c序列
640,其中的每个子帧618c都包含代表子场景616的视频内容。
图8是子帧序列的示范性子帧元数据的示意图。图8中展示的子帧元数据 150中包含的是顺序元数据(sequencing metadata) 700,用于指示子帧的顺 序(也就是显示顺序)。例如,顺序元数据700可标识子场景序列和各子场景 的子帧序列。使用图8中展示的例子,顺序元数据700可分成子帧元数据150 的多个组720,其中每个组720对应特定的子场景。
例如,在第一个组720中,顺序元数据700开始于子帧第一序列(也就是 序列620)中的第一子帧(例如子帧618a),其后是第一序列620中的各其他 子帧。在图8中,第一序列中的第一子帧被标记为原始视频帧A的子帧A,第 一序列中的最后一个子帧被标记为原始视频帧F的子帧F。在第一序列620的 最后一个子帧之后,顺序元数据700延续到第二个组720,其开始于子帧第二 序列(例如序列630)中的第一子帧(例如子帧618b),结束于第二序列630 的最后一个子帧。在图8中,第二序列中的第一子帧被标记为原始视频帧A 的子帧G,第二序列中的最后一个子帧被标记为原始视频帧F的子帧L。最后 一个组720开始于子帧第三序列(也就是序列640)的第一子帧(例如子帧 618c),结束于第三序列640中的最后一个子帧。在图8中,第三序列中的第 一子帧被标记为原始视频帧G的子帧M,第三序列中的最后一个子帧被标记为 原始视频帧I的子帧P。
每个组720中包含的是该组720中每一个单独子帧的子帧元数据。例如第 一个组720包括子帧第一序列620中每个子帧的子帧元数据150。在一个示范 性实施例中,子帧元数据150可组成其中包含一定数量的条目710的元数据文 本文件。元数据文本文件中的每个条目710包括该特定子帧的子帧元数据150。 因此,元数据文本文件中的每个条目710包含标识与该元数据相关联的特定子 帧的子帧标识符,并引用原始视频帧序列中的一个帧。
编辑信息包括但不限于,摇摄方向和摇摄率、縮放率、对比度调整、亮度 调整、滤光镜参数和视频效果参数。具体来说,与子帧相关联,存在几种类型 可以应用的编辑信息,它们与下列内容有关a)视觉调整,例如亮度、滤光、 视频效果、对比度和色彩调整;b)运动信息,例如摇摄、加速、速率、子帧
在原始帧序列上的移动方向;c)尺寸调整信息,例如子帧在原始帧序列上的 縮放(包括放大、縮小和縮放比例);d)与原始视频数据落入子帧中的那些部 分相关联、合并或被其叠加的任何类型的补充媒介(例如叠加的文本或图形或 补充的音频)。
图9是包含子帧编辑信息的示范性子帧元数据的示意图。子帧元数据包括 元数据报头802。元数据(MD)报头802包括元数据参数、数字权限管理(DRM) 参数和计费管理参数。元数据参数包括与该元数据有关的信息,如创建日期、 过期日期、创建者标识、目标视频设备种类、目标视频设备类别、源视频信息 和通常与所有元数据有关的其他信息。元数据报头802中的数字权限管理部分 包括用于判断子帧元数据是否可用以及将该子帧元数据可用到何种程度的信 息。元数据报头802中的计费管理参数包括在元数据开始使用时用于启动计费 操作的信息。
子帧元数据包含在子帧文本文件的条目804中。每个子帧的子帧元数据 150包括子帧常规信息806,例如分配给该子帧的子帧标识符(SF ID)、与从 中提取除该子帧的原始视频帧相关联的信息(OF ID、 OF计数、播放偏移量)、 子帧位置和尺寸(SF位置、SF尺寸)以及将要显示该子帧的显示器的宽高比 (SF比)。此外,如图9所示,特定子帧的子帧信息804可包括用于编辑该子 帧的编辑信息806。图9中所示的编辑信息806的例子包括摇摄方向和摇摄率、 缩放比例、色彩调整、滤光镜参数、对图像或视频序列的补充以及其他视频效 果和相关参数。
图IO是根据本发明一实施例构造的视频播放器系统的结构示意图。视频 播放器系统900包括视频显示器902、本地存储器904、用户输入接口 916、 通信接口918、显示器接口 920和处理电路922。在这一特定实施例中,视频 播放器系统900的视频显示器902和位于同一壳体内的其他部件。但是,在其 他实施例中,例如图1中的视频播放器系统20和28,视频播放器系统900为 处于不同壳体内的视频显示器924服务。视频显示器924甚至还可以处于不同 的位置,通过通信接口连接到视频播放器系统900。若视频显示器924设置在 远端,则视频播放器系统900的显示器接口 920通过通信链路与视频显示器
924通信。
视频播放器系统900通过其通信接口 918接收源视频11和元数据15。视 频播放器系统900通过其用户输入接口 916接收用户输入。处理电路922可以 是通用处理器,例如微处理器或数字信号处理器、专用集成电路或能够执行软 件指令并处理数据的其他类型的处理电路。本地存储器卯4包括随机访问存储 器、只读存储器、光驱、硬盘驱动器、可移动存储介质或能够存储指令和数据 的存储介质中的一种或几种。本地存储器904存储操作系统906、视频播放器 软件908、视频数据910、目标显示信息912以及编码器和/或解码器软件914。 视频播放器软件908包括MC&A、 IC&A和/或DC&A功能中的一种或几种。
在根据本发明的一项特定操作中,视频播放器系统900接收编码源视频 12,生成输出,并发往视频显示器902或924。处理电路922运行视频播放器 软件908和编码器软件914,从编码源视频12中生成视频数据全帧序列。视 频播放器软件908包括子帧处理器应用,其通过处理视频数据全帧序列,根据 第一位置和尺寸信息生成视频数据子帧的第一序列,同时根据第二位置和尺寸 信息生成视频数据子帧的第二序列。第一位置和尺寸信息以及第二位置和尺寸 信息一起组成元数据15。在视频播放器系统900的这项特定操作中,显示器 接口 920传送视频数据子帧第一序列和第二序列,以供在显示器902和924 上进行全帧显示。
对原始源视频14也可采用类似的操作。在这些操作中可使用相似显示元 数据16和/或目标显示元数据18。在另一项特定操作中,视频播放器系统900 处理目标显示信息912,对视频子帧第一序列和第二序列进行剪裁,生成专门 供视频显示器902或视频显示器924使用的视频数据。
图11是根据本发明一实施例构造的视频播放器系统的结构示意图。在图 ll所示的特定结构中,视频播放器系统1100包括解码器1102、元数据处理电 路1104、元数据剪裁电路1106、管理电路1108、目标显示剪裁电路1110和显 示器1112。解码器1102接收编码源视频12并生成原始视频。作为选择,原 始源视频14可直接输入到视频播放器系统1100中。
管理电路1108接收目标显示器信息20,该电路在视频播放器系统1100
中通信连接到元数据剪裁电路1106、解码器1102、元数据处理电路1104和目 标视频剪裁电路1110。元数据剪裁电路1106接收元数据15。根据管理电路1108 输入的信息,元数据剪裁电路1106对元数据进行调整,以使其更为适合显示 器1112。在这种情况下,元数据剪裁电路1106收到的元数据15可以是图1 中描述的相似显示元数据15。目标显示器信息20包括与显示器1112有关的 信息。根据目标显示器信息20,管理电路1108向元数据剪裁电路1106输入 数据,元数据剪裁电路1106使用该输入数据调整元数据15。
元数据处理电路1104接收原始视频、元数据剪裁电路1106输入的数据和 管理电路1108输入的数据。元数据处理电路1104对输入的数据进行处理,生 成输出,并发往目标显示器剪裁电路1110。目标显示器剪裁电路1110对从元 数据处理电路1104收到的输入进行处理,生成输出,并发往显示器1112。
在视频播放器系统1100的一项特定操作中,解码器电路1102接收编码源 视频12,生成视频数据(原始视频)全帧序列。元数据处理电路1104 (预处 理电路)根据子帧信息(元数据剪裁电路1106的输出),从视频数据(原始视 频)全帧序列中生成多个视频数据子帧序列。这些视频数据子帧序列包括视频 数据子帧第一序列,其在全帧序列中的位置不同于同样在元数据处理电路1104 中生成的视频数据子帧第二序列。元数据处理电路1104还将多个视频数据子 帧序列中的第一序列与第二序列组合,生成输出,并发往目标显示器剪裁电路 1110。
目标显示器剪裁电路1110 (后处理电路)对多个视频数据子帧序列进行
调整,生成输出。目标显示器剪裁电路iiio所进行的调整操作是基于从管理
电路1108收到的输入来进行的。目标显示器剪裁电路1110从管理电路1108 收到的输入是基于目标显示器信息20的。目标显示器剪裁电路1110生成的输 出将被传送到显示器1112以进行后续显示。
根据本发明的一些操作,原始源视频14和/或编码源视频12具有源视频 分辨率。该源视频分辨率可称为第一分辨率。但是,元数据处理电路1104生 成的多个视频数据子帧序列具有与显示器1112的特性相对应的第二分辨率。 在多数情况下,第二分辨率要低于第一分辨率。这种情况通常是由显示器1112
的尺寸小于预期用于显示源视频的显示器尺寸造成的。此外,显示器1112的
宽高比可能不同于预期用于显示源视频12和14的显示器的宽高比。因此,尽 管视频数据12和14的全帧序列具有第一宽高比,而元数据处理电路1104和 目标显示器剪裁电路1110生成的输出则具有不同于第一宽高比的第二宽高 比。
在视频播放器系统1100的一些实施例中,部件1102到1112可包含在单 个壳体中。作为选择,显示器1112还可配置在与部件1102到部件1110分离 的壳体中。在其他实施例中,部件1102 —部件1112可合并在一起,也可分布 在许多不同的设备结构中。这些结构将参考图12—图15进行描述。
图12是根据本发明的分布式视频播放器系统第一实施例的结构示意图。 在图12所示的实施例中,显示了由分隔线1202、 1204和1206分隔开的视频 播放器系统的功能部件(component)。这些分隔线1202、 1204和1206将不同 处理设备、单个设备中的不同处理组件(element)和/或不同处理操作分隔开。 具体来说,分隔线1202将解码器1102和元数据剪裁电路1106与视频播放器 电路中的其他部件分隔开。此外,分隔线1204将元数据处理电路1104与目标 显示器剪裁电路1110分隔开。另外,分隔线1206将目标显示器剪裁电路1110 与显示器1112分隔开。
图12中的部件类似于上文中参考图11所描述的部件,并保留了相同的标 号。通过相同的标号和相同的功能配置,解码器1102、元数据处理电路1104、 元数据剪裁电路1106、目标显示器剪裁电路1110和显示器1112接收与图11 中所述相同或相似的输入,实现或执行相同和/或相似的功能。分隔线1202、 1204和1206展示了如何在物理上、逻辑上或者时间上将多种组件1102—1112 所执行的功能彼此分隔开。
图13是根据本发明的分布式视频播放器系统第二实施例的结构示意图。 与图11和图12中的结构相比,集成的解码和元数据处理电路1302既执行解 码操作又执行元数据处理操作。集成的解码和元数据处理电路1302接收编码 源视频12、原始源视频14和目标显示器元数据18。在具体操作中,集成的解 码和元数据处理电路1302可接收任意特定的视频数据全帧序列的编码源视频
12和原始源视频14 二者其中之一。集成的解码和元数据处理电路/功能1302 还接收来自元数据剪裁电路1106的输入。元数据剪裁功能1106接收相似显示 器元数据16和目标显示器信息20。元数据剪裁电路1106基于目标显示器信 息20调整相似显示器元数据16,生成剪裁后的元数据。元数据剪裁电路1106 生成的剪裁后的元数据可结合目标显示器元数据18—起使用,也可替代目标 显示元数据18。
目标显示器剪裁电路1110接收集成的解码和元数据处理电路1302的输 出,基于目标显示器信息20进一步调整或剪裁由集成的解码和元数据处理电 路1302生成的多个视频数据子帧,生成输出并发往显示器1112。分隔线1304、 1306和/或1308展示了如何在物理上、逻辑上和/或时间上将集成的编码和元 数据处理电路1302、目标显示器剪裁电路1110和显示器1112彼此分隔开。
图14是根据本发明的分布式视频播放器系统第三实施例的结构示意图。 如图所示的视频播放器系统包括集成在一起的解码、目标显示器剪裁和元数据 处理电路1404,补充目标显示器剪裁电路1406和显示器1112。集成在一起的 解码、目标显示器剪裁和元数据处理电路1404接收编码源视频12、原始源视 频14、目标显示器元数据18、相似显示器元数据16和/或目标显示器信息20。 基于解码后的编码源视频12或直接基于原始源视频14,集成在一起的解码、 目标显示器剪裁和元数据处理电路1404处理源视频的视频数据的全帧序列。 这种处理是基于元数据16或18和/或目标显示器信息20进行的。集成在一起 的解码、目标显示器剪裁和元数据处理电路1404生成多个视频数据子帧序列, 并将它们发往补充目标显示器剪裁电路1406。补充目标显示器剪裁电路1406 基于目标显示器信息20对多个视频数据子帧序列进行额外的剪裁。这种目标 剪裁包括针对显示器1112调整多个视频数据子帧序列。分隔线1408和1410 展示了如何在物理上、逻辑上和/或时间上将集成在一起的解码、目标显示器 剪裁和元数据处理电路1404、补充目标显示器剪裁电路1406和显示器1202 彼此分隔开。
图15是根据本发明的分布式视频播放器系统第四实施例的结构示意图。 解码器1502接收编码源视频12,生成未编码视频13。集成的目标显示器剪裁
和元数据处理电路1504接收并处理未编码视频13和/或原始源视频14。集成 的目标显示器剪裁和元数据处理电路1504还接收目标显示器元数据18、相似 显示器元数据16和/或目标显示器信息20。未编码视频13或原始源视频14 包括视频数据全帧序列。集成的目标显示器剪裁和元数据处理电路1504基于 目标显示器元数据18、相似显示器元数据16和目标显示器信息20中的一个 或多个信息来处理视频数据全帧序列,生成多个视频数据子帧序列,并发往补 充目标显示器剪裁电路1506。补充目标显示器剪裁电路1506基于目标显示器 信息20调整这些视频数据子帧序列,生成剪裁后的输出并发往显示器1508。 显示器1508接收补充目标显示器剪裁电路1506的输出,显示包含在其中的视 频数据内容。
可在功能、物理和/或时间上将模块1504、 1506和1508的功能彼此分开。 例如,在一个实施例中,解码器1502和集成的目标显示器剪裁和元数据处理 电路1504可由单个处理设备来执行。在该实施例下,补充目标显示器剪裁电 路1506可包含在显示器1508内。
在其他实施例中,模块1502、 1504、 1506个1508可设置在不同的壳体内、 设置在不同的位置、由不同的功能组件来执行和/或在不同时间执行。因此, 分隔线1510和1512可代表物理边界、功能边界和/或时间边界。
图16是根据本发明的用于在分布式视频播放器系统中传送视频数据、元 数据和其他信息的示意图。图16中展示了图12 —图15中多种部件的连接方 式。通信传输1602可包括通信链路/网络连接1604和/或物理介质1606。分界 线1612和1614可包括分割线1202—1206、 1304 — 1308、 1408_ 1410和/或1510 一1512中的任一组。在这种情况下,信息通过通信链路/网络1604或介质1606 穿过这些分界线来传送。
在一项特定操作中,数据以未编码格式进行传送。但是,在另一实施例中, 信息则由编码器1608进行编码,通过通信链路/网络连接1604传送,然后在 进行后续处理之前由解码器1610进行解码。
图17是根据本发明一实施例的视频处理和重播过程的流程图。根据本发 明,视频处理电路的操作1700开始于接收视频数据(步骤1710)。当接收的
视频数据为编码格式时,视频处理电路对视频数据进行解码(步骤1712)。视
频处理电路随后接收元数据(步骤1714)。该元数据可以是本文所描述的普通
元数据、相似元数据或剪裁后的元数据。当收到的是相似元数据或普通元数据
时,图17中的操作包括基于目标显示器信息对元数据进行剪裁(步骤1716)。 步骤1716是可选的。
随后,图17中的操作包括基于元数据对视频数据进行子帧处理(步骤 1718)。随后的操作包括基于目标显示器信息20剪裁在步骤1718生成的视频 数据子帧输出序列(步骤1720)。步骤1720的操作生成剪裁后的视频数据子 帧输出序列。随后,可选的,该视频数据子帧输出序列将进行编码(步骤1722)。 最后,视频数据子帧序列将输出到存储器中存储、通过网络输出到目标设备或 者以其他方式输出或者输出到其他位置(步骤1724)。
根据图17中展示的一个特定实施例,视频处理系统接收代表视频数据全 帧序列的视频数据。视频处理系统随后对视频数据进行子帧处理,生成视频数 据子帧第一序列和视频数据子帧第二序列。视频数据子帧第一序列由至少第一 参数来定义,视频数据子帧第二序列由至少第二参数来定义,该至少第一参数 和至少第二参数共同组成元数据。通过将视频数据子帧第一序列和视频数据子 帧第二序列合并,视频处理系统随后生成视频数据子帧第三序列。
在本实施例中,视频数据子帧第一序列可对应视频数据全帧序列中的第一 区域,视频数据子帧第二序列可对应视频数据全帧序列中的第二区域,其中第 一区域不同于第二区域。
本领域的技术人员应当明白,本文所使用的术语"可用连接"和"通信连 接"包含直接连接,以及经由另一组件、元件、电路或模块进行的间接连接。 对于间接连接而言,中间组件、元件、电路或模块并不改变信号信息,只是可 能调整其电流、电压和/或功率水平。本领域的技术人员还应当明白,推断连 接(也就是通过推论得知一个组件连接到另一组件)包括两个组件之间以与上 述"可用连接"和"通信连接"相同的方式进行直接和间接的连接。
本发明的描述过程还借助方法步骤的方式来描述特定功能的执行过程及 其相互关系。为便于描述,文中对这些功能性模块和方法步骤的边界和顺序进
行了专门的定义。在使这些功能及其关系可正常工作的前提下,也可重新定义 他们的边界和顺序。但这些对边界和顺序的重新定义都将落入本发明的主旨和 所声明的保护范围之中。
本发明的描述过程借助功能性模块的方法来描述某些重要功能的执行过 程。为便于描述,文中对这些功能性模块边界进行了专门的定义。在使这些功 能可正常工作的前提下,也可重新定义他们的边界。类似地,流程图中的步骤 也是为描述某些重要功能而专门定义的。为将这些流程图的应用得到扩展,可 重新定义流程图中模块的边界和顺序,同时,重新定义后,这些模块仍然完成 原来的重要功能。这种对功能性模块和流程图步骤和顺序的重新定义也都将落 入本发明的主旨和所声明的保护范围之中。
可通过离散元件、特定用途集成电路、执行适用软件的处理器以及其他类 似物及其组合来实现本发明的这些功能模块以及其它所示的模块、原理框图和 组件。
权利要求
1、一种与编码源视频和显示器结合使用的视频播放器电路,其特征在于,该视频播放器电路包括解码器电路,用于接收所述编码源视频,并对所述编码源视频进行解码,以生成视频数据全帧序列;预处理电路,用于根据子帧信息,从所述视频数据全帧序列中生成多个视频数据子帧序列,所述多个视频数据子帧序列中的第一序列在所述视频数据全帧序列中的中心点不同于所述多个视频数据子帧序列中的第二序列在所述视频数据全帧序列中的中心点;后处理电路,用于根据补充信息调整所述多个视频数据子帧序列,以生成输出;接口电路,用于传送所述输出以便随后在所述显示器上显示。
2、 根据权利要求1所述的视频播放器电路,其特征在于,所述视频播放 器电路和所述显示器设置在单一壳体中。
3、 根据权利要求1所述的视频播放器电路,其特征在于,所述视频播放 器电路设置在单一壳体中,所述显示器设置在第二壳体中。
4、 根据权利要求1所述的视频播放器电路,其特征在于,所述解码器电 路和用于生成所述多个视频数据子帧序列的所述预处理电路是集成在一起的。
5、 根据权利要求1所述的视频播放器电路,其特征在于,所述解码器电 路在所述预处理电路生成所述多个视频数据子帧序列之前对所述编码源视频 进行解码。
6、 根据权利要求1所述的视频播放器电路,其特征在于,所述子帧信息 包括子帧元数据,所述预处理电路包括子帧元数据处理电路。
7、 一种用于在显示器上生成视频显示的方法,其特征在于,包括 接收视频数据全帧序列;使用第一子帧定义和第二子帧定义从所述视频数据全帧序列中分别生成 视频数据子帧第一序列和视频数据子帧第二序列; 传送输出视频序列以显示在所述显示器上,所述输出视频序列包括视频数 据子帧第一序列和视频数据子帧第二序列。
8、 根据权利要求7所述的方法,其特征在于,本方法还包括使用第一补充信息来处理所述视频数据子帧第一序列,使用第二补充信息来处理所述视频 数据子帧第二序列,其中所述第一补充信息不同于所述第二补充信息。
9、 根据权利要求7所述的方法,其特征在于,所述显示器具有显示器参 数,所述方法还包括基于所述显示器参数处理所述输出的视频序列。
10、 一种与编码源视频和显示器结合使用的视频播放器软件应用,其特征在于,包括解码器,用于从所述编码源视频中生成视频数据全帧序列;子帧处理器,用于从所述视频数据全帧序列中,基于第一位置和尺寸信息生成视频数据子帧第一序列,基于第二位置和尺寸信息生成视频数据子帧第二序列;显示器接口 ,传送所述视频数据子帧第一序列和所述视频数据子帧第二序 列,进而在所述显示器上进行全屏显示。
全文摘要
本发明提供了一种与编码源视频和显示器结合使用的视频播放器电路。解码器电路接收编码源视频并对其解码,生成视频数据全帧序列。预处理电路根据子帧信息,从视频数据全帧序列中生成多个视频数据子帧序列,其中多个视频数据子帧序列中的第一序列在视频数据全帧序列中的中心点不同于多个视频数据子帧序列中的第二序列的中心点。后处理电路根据补充信息调整多个视频数据子帧序列,生成输出。接口电路将输出发往显示器进行显示。
文档编号H04N7/16GK101106717SQ20071012802
公开日2008年1月16日 申请日期2007年6月21日 优先权日2006年6月23日
发明者詹姆士·D·贝内特 申请人:美国博通公司