当前技术的进步已经导致引入了个人计算装置,这些装置刚好开 始包含全面无线通信技术。无线
移动电话的全面发展已经取得重大成 功,但仍然具有相当大的潜在增长空间。已经认识到,尚没有对潜在 新的和创新的移动视频处理提供视频
质量、
帧速率或低功耗的任何视 频技术解决方案。由于受到移动装置的处理能
力的限制,当前没有用 于处理正在使用的各种个人计算装置的适合的移动视频解决办法,这 些个人计算装置诸如是移动电视会议装置、超薄无线网络客户机计算 装置、广播无线移动视频装置、移动视频促销或监督装置。
试图在诸如智能电话和PDA之类的便携手持装置上显示视频的 难以解决的问题是一般这些装置具有有限的显示能力。因为视频一般 利用连续色表示进行编码,要求提供真彩色(16或24比特)显示能 力,当使用8比特显示器时,导致严格执行降格操作。这是由于在客 户机执行量化和抖动处理,变换视频图象为适合利用固定彩图在各装 置显示的8比特格式,这种做法降低了质量并带来了大量的处理额外 开销。
基于电视会议的计算机当前利用标准计算机工作站或者通过网络 连接的各个PC,该网络包括物理缆线和网络计算机通信协议层。这种 情况的例子是利用物理连接的端对端的缆线,并利用TCP/IP网络通 信协议,通过互联网的两个PC之间的电视会议。这种类型的电视会 议具有到互联网的物理连接,并且还利用大的、以计算机为
基础的视 频监视设备。这种系统提供各固定
位置之间的电视会议,但它附加地 限制了各个参加者在特定时间与会,以保证两个当事人将同时在适当 位置上。
对个人手持计算机或智能电话的无线文本信息的广播,随着新的 和创新的无线技术与手持计算装置的进步,近来变得切实可行。手持 计算装置和移动电话能够无线连接到能提供文本信息给用户装置的广 域网。目前尚没有到无线手持计算装置的视频实时传输。这种视频内 容连接性的缺乏,往往限制了现存系统的商业可利用性,特别是,当 一个人认为“广播”系统没有为广告的目的定标(targeted)向各 个目标用户的的能力时。以任何形式对广播媒体的一个重要市场发布 是广告和如何得到支持的问题。有效发布广告应当是定标到用户和地 理位置,但广播技术在这方面固有地受到限制。作为一种推理,支持 这种系统的专业产品的“适当位置”的广告将是难以作到的。
由于考虑处理要求需要在传输期间实时地插入广告内容到视频数 据流中,当前视频广播不能插入有目标的广告。在本
发明人看来按照 有规律的基础上将要执行的在传输之前预组合视频的替代方法太繁
锁 冗长。另外,一旦广告插入到视频流中,用户不能与广告交互,这样 降低了广告的作用。显然,已经认识到通过交互技术可以实现更大的 广告作用。
大多数
编码器/
解码器对于卡通或动画内容呈现差的性能,但是, 对于互联网而言,正在产生比视频更多的卡通和动画内容。已经认识 到,存在着能够有效地编码动画和卡通图形以及视频的编解码器的需 求。
利用实现在中央位置的具有视频监视的闭路监视系统,已经实现 了对数据的基于商业和家庭安全的视频监视系统,要求全时间地关注 专
门的监视警戒。在中央控制中心利用专用监视设备仅可以实现多位 置的视频监视。安全警戒在巡检的同时不必
访问来自被监视位置的视 频。
利用轻型客户机工作站以网络为基础的计算包括在客户机工作站 中的小型
软件处理,而软件处理的多数部分发生在
服务器计算机中。 由于信息的集中和操作软件的配置,客户机计算降低了计算机管理的 成本。客户工作站通过诸如10 Base T以太网之类的标准局域网进行 到服务器计算机的物理连线。客户工作站运行小型
操作系统,能够与 后端服务器计算机和在客户机视频监视设备上的信息显示器进行通 信。但是,现存的各种系统仍受到限制。它们是典型地限制了一些特 殊应用或卖主的软件。例如,当前轻型客户机不能同时服务于显示视 频和
电子表格应用。
为了在市场上直接促销产品,销售代表可以利用视频演示说明产 品和用途和性能。当前,对于移动销售商,包括使用笨重的专用视频 显示设备,可以带到各个用户的地点用于产品展示。存在可得到的非 移动携带式的视频显示解决方案,提供实时的视频用于产品和市场促 销目的。
视频节目集(video brochure)经常用于市场和广告业务。但是, 由于视频是一种经典的被动媒体,所以它们的效率始终受到限制。已 经认识到,如果设计成交互方式,可能极大地改善视频节目集的效率。 如果这种交互性可能在编解码器中固有地提供,这可能开拓以视频为 基础的电子商业应用之路。对于交互视频的常规定义包括播放器,能 够解压正常压缩的视频为收视窗口,并且翻译某些定义按键和
叠加在 视频上的隐藏“热区”的元数据,一般代表超链路,用户的
鼠标点 击将调用某些预定的操作。在这种典型的方法中,视频被作为来自元 数据的分别的单元进行存储,并且交互的性质受到极大的限制,因为 视频内容与施加的外部控制之间不存在集成。
提供交互视频的另外一种方法是允许多目标的MPEG4,但是, 发现这种方法在当今一般诸如具有128Mb的RMA的奔III 500MHz 计算机之类的台式计算机上运行困难。原因是目标形状信息由目标的
色度/
亮度信息分别进行编码,产生附加的存储额外开销,并且情景描 述(BIFS)的性质和文件格式已经部分地采取虚拟实体
标记语言 (VRML)是非常复杂的。这意味着对于视频目标的每个
视频帧的3 个分别的分量:亮度信息、形状/透明度信息、和BIFS必须全解码。 然后,在目标可以被显示之前,这些必须被混合在一起。规定以DCT 为基础的视频编解码器本身已具有很强的计算能力,而除了存储的额 外开销以外,附加的解码还要求引入了大量的处理额外开销。
对个人数字助理(PDA)的无线接入兼容性,通过能实时地无线 传送音频-视频内容到PDA,允许电子书籍免除了其存储方面的限制。 许多团体训练的应用需要在便携装置以无线方式得到视听信息。视听 训练教材的特点是交互的并且提供大量存储内容的非线性导航。利用
现有技术的当前状态是不能提供的。
发明目的
本发明的一个目的是克服上述的各个缺点。本发明的另一个目的 的提供一种播放视频流的软件并在低处理功率移动装置诸如利用通用 处理器不用专用DSP或传统
硬件的通用手持装置上显示视频。
本发明的另一个目的是提供一种用于无线连接的移动装置的高性 能低复杂性的软件视频编解码器。无线连接可以由以下无线网络操作 形式提供的,这些网络可以是通过分组交换或
电路交换的按CDMA、 TDMA、FDMA发送模型操作的GSM、CDMA、GPRS、PHG、UMTS、 IEEE 802.11等网络。
本发明的另一个目的是发送色预量化数据,用于当利用使用连续 色表示的色彩时在客户机上以8比特显示的色量化实时色数据(映射 任何非固定的3维数据为1维数据)。
本发明的另一个目的是利用无另外数据额外开销或处理额外开销 的方式在单场景中支持多个任意构形视频目标。
本发明的另一个目的是无接缝集成音频、视频、文本、音乐和动 画图形到视频场景中。
本发明的另一个目的是在视频比特流中直接将控制信息加到各个 目标上,定义在场景中各个目标的交互行为、修饰(rendering)、组 合、数字权限(rights)管理信息、和压缩数据的翻译。
本发明的另一个目的是在视频和控制修饰中与个别目标的交互, 以及正在显示的内容的组合。
本发明的再另一个目的是提供交互视频处理能力,能够改善单个 视频目标的修饰参数,当条件变真时执行分配给各个视频目标的特定 动作,并改善整个系统状态的能力并执行非线性视频导航。这是通过 加到各个单个目标上的控制信息实现的。
本发明的另一个目的是提供非线性视频和组合媒体的能力,其中 系统能够响应
请求,通过跳到规定的场景控制用户与超链路连接的各 目标的交互。在另外的例子中,采取通过视频规定部分的路径不是直 接由用户与其他非直接相关目标交互确定的。例如,系统可以
跟踪以 前已经收视过的场景并且根据这个历史自动确定待显示的下一个场 景。
在内容服务期间交互跟踪数据可以提供给服务器。为了下载内容, 交互跟踪数据可以存储在装置中用于以后返回服务器的同步。在内容 离线重放期间选择的超链路请求或者附加信息请求将被存储并被发送 到服务器,用于在下一次同步中的执行(形式和交互事数据的异步加 载)。
本发明的另一个目的是提供通过面向目标视频的相同交互控制, 不论是视频数据正在从远端服务器流出还是正从本地
存储器离线重 放。这允许交互视频的应用在下列分配的各种情况下:流动(“拉”)、 预定(“推”)、和下载。当利用下载或预定分配模型时,提供从 客户装置自动和异步的形式和交互数据的加载。
本发明的一个目的是在一个场景中作音频/视频目标的动画修饰 参数。这包括:位置、比例、取向、深度、透明度、色彩和音量。本 发明的目的在于按照用户交互的直接或间接结果,通过定义修饰参数 的固定的动画路径,从远端服务器发送命令
修改该修饰参数,并改变 修饰参数实现这个目的,例如当用户点击一个目标时激活动画路径。
本发明的另一个目的是定义当用户与目标交互时执行的个别音频 -视频目标的行为,其中这些行为包括动画、超链接、设置系统的状态 /变量和动态媒体组合的控制。
本发明的另一个目的是有条件地对各个目标执行立即动画和行为 动作。这些条件可以包括系统变量的状态、
定时器事件、用户事件和 各个目标之间的相关性(例如,重叠)、延迟这些动作直至各个条件 变真的能力、和定义复杂条件表达的能力。还可能从一个目标到另一 个目标重新指向任何控制,使得与一个目标的交互影响另一个目标, 而非自身。
本发明的另一个目的包括产生视频菜单和寄存用户选择的简单形 式的能力。所述形式是如果系统在线能自动同步地加载到远端服务器 或如果系统离线能异步地加载。
本发明的一个目的是提供一种交互视频,包括包括定义各环路的 能力,诸如播放单个目标的内容的环路或目标控制信息的环路或者整 个场景的环路。
本发明的另一个目的是提供多信道控制,其中用户可以改变收视 内容流到另外的信道,例如从/到多点传送(分组或电路交换的)信道 到/从单点传送(分组交换连接的)会话。例如交互目标行为可以被用 于实现信道改变的特征,其中在支持两种连接模型的装置中,与一个 目标的交互通过从分组交换改变到电路交换连接执行改变信道,并在 电路交换连接中在单点传送和广播信道之间的变化并且反之亦然。
本发明的另一个目的是通过动态媒体组合(“DMC”)提供内 容个性化,这是正在收视的同时,允许显示视频场景的实际内容动态 实时地改变,这是通过插入、去掉或取代该场景包含的任何任意构形 的视频/音频目标,或者通过视频
修剪改变场景。
一个例子将是含有视频目标成分的娱乐视频,该视频目标部分涉 及用户的概况。例如在移动的场景中,一个房间可能含有
高尔夫运动 设备而不是网球设备。在
广告媒体中这应当特别有用的,这里存在着 一个相容的消息,但利用各种各样的可替代的视频目标部分。
本发明的另一个目的是能够利用或不利用交互行为,在图象中有 针对性地将交互广告视频目标的传送和插入到收视场景,作为动态媒 体处理的
实施例。广告目标可以根据一天的时间、地理位置、用户的 概况等定标到用户。另外,本发明的目的是允许处理对于用户与所述 目标的交互操作(例如,用户的点击)立即的或者延迟的各种类型交 互响应,其中包括:去掉广告、执行诸如立即以另外的目标取代该目 标、或以新的场景替代收视的场景、寄存离线还要继续操作的用户或 者在当前级别场景/会话结束时跳到新的超链路目的地或连接、或和改 变广告目标的透明度或者使它远去或消失的DMC操作。在用户与广 告目标交互跟踪的情况下,当存在按实时提供场景时,还允许订制预 期目的或广告效果评估。
本发明的另一个目的是补贴(subsidise)与无线网相关的话费, 或利用在呼叫期间或呼叫结束时自动显示用于发起人呼叫的发起人视 频广告目标,通过广告的智能电话的使用。另外一种方案,如果用户 与该目标执行某些交互的话,在呼叫之前、期间或以后显示一个交互 视频目标,提供响应关系。
本发明的一个目的是提供一种用于移动装置的无线交互
电子商务 系统,该系统利用在线和离线情况的音频和视频数据。该电子商务包 括市场运营/促销目的,利用超链路链接的图象广告或利用非线性导航 的交互视频节目集,或者直接在线购物,其中可以产生作为目标的单 独销售项,以便用户可以与它们进行交互操作,诸如将它们拖到购物 篮等。
本发明的目的包括一种方法和系统,自由地提供公共的,(或补 贴
费用)存储器装置,诸如紧凑闪速存储器或者存储棒或具有某些其 它形式因素的存储器装置,这些存储器装置含有带广告或促销内容或 产品信息的交互视频节目集。该存储器装置最好是只读装置,虽然其 它类型存储器也可以使用。该存储器装置可以被配置为向生产商提供 反馈机制的,可以利用在线通信、或者通过在存储卡写入某些数据, 然后这些数据存放在某些收集点。不利用物理存储卡,利用该装置注 意到是否准备接收数据和可接收量,随着导航注入信息到装置中,利 用本地无线分配也可以达到相同的目的。
本发明的一个目的是当下载时向用户发送交互视频节目集、视频 化(videozines)和视频(活动性)书等,然后使得它们可以与包含填 写表格等的节目集进行交互。如果存在视频节目集并由用户操作或者 交互,然后当客户机重新变为在线时,这些用户数据/形式将被异步加 载到始发服务器。如果希望,加载可以自动地和/或异步地执行。这些 节目集可以包含用于训练/教育、市场或促销、产品信息目的的视频, 并且收集的用户信息可以是测试、调查、对更多信息的请求和购买定 单等。交互视频节目集、视频化和视频(活动性)书可以利用图象广 告目标的方式产生。
本发明的另一个目的是利用我们的根据交互视频方案的目标,根 据用于移动装置的用户
接口产生唯一的视频。
本发明的另一个目的是提供用于无线连接的移动用户的视频电子 函件,其中可以产生和订制电子贺卡和消息,并在各个用户中传送。
本发明的另一个目的是提供如在运动场或诸如机场、购物商业街 之类的其它本地环境的本地广播,这种业务具有返回信道交互用户的 请求,用于附加信息或电子商务应用。
本发明的另一个目的是利用交互视频系统提供一种在线应用的语 音命令和控制的方法。
本发明的另一个目的是提供无线超薄客户机,经无线连接接入到 远端计算服务器。该远端计算服务器可以是私人拥有的计算机或者由 应用服务提供商提供的计算机。
本发明还有一个目的是提供在低端无线装置上包含多方电视会议 的电视会议,该电视会议带或不带图象广告。
本发明的另一个目的是提供一种视频监视方法,由此无线视频监 视系统从视频摄象机,视频存储器装置,
电缆电视和广播电视输入信 号,在无线连接的PDA或移动电话上远程收视的码流互联网视频技 术。本发明的另一个目的是利用街道交通摄象机提供交通监视业务。 发明内容 系统/编解码器方面
如果希望的话,本发明提供在低功率移动装置上利用软件发码流 和/或运行视频的能力。本发明还提供以4元树为基础的编解码器,用 于色映射视频数据。本发明还提供利用具有透明叶表示的以4元树为 基础的编解码器,随同对任意构形定义的支持,利用FIFO的叶色彩 预测,底层
节点消除。
本发明还包括以4元树为基础的编解码器,对于任意构形定义具 有对非底层叶的第n序插入和对底层叶的第0序插入。因此,本发明 的各个实施例的特征可以包括一个或多个如下特征:
发送色量化信息到允许实时的客户机侧进行色量化;
利用动态8元树数据结构代表3D数据的映射,分隔为用于矢量 量化的自适应码簿;
无缝组合集成音频、视频、文本、音乐和动画图象到一个无线流 视频场景的能力;
在单一场景中支持多任意构形视频目标。这个特征是利用非特别 数据额外开销或处理额外开销实现的,例如通过编码从亮度或纹理信 息分出的附加构形信息;
基本文件格式结构,诸如文件实体层次、目标数据流、修饰的分 别规范、定义和内容参数、目录、场景、和目标基础控制;
与无线流视频中的个别目标交互的能力;
在视频码流中加控制数据到各个目标上,控制交互行为、修饰参 数、组成等的能力;
加数字正确管理信息到视频或图形动画数据流上的能力,用于以 无线流为基础的分配和用于下载和重放为基础的分配。
产生视频目标用户接口(“VUI’s”),代替常规的图形用户接 口(GUI’s);和/或
使用XML为基础的标记语言(“IACML”)或类似源程序定 义目标控制的能力,诸如在多媒体表达中DMC功能的修饰参数和程 序控制。 交互方面
本发明还提供一种通过支持以下内容用于控制用户交互和动画 (自动作)的方法和系统:
- 用于从流服务器发送目标控制修改数据内容或者修饰内容的 方法和系统。
- 在数据文件中加目标控制修改数据内容或者修饰内容。
- 根据直接或间接的用户交互,客户机可以任选地执行由目标控 制定义的动作。
本发明还提供一种加可执行的行为到各个目标上的能力,包括: 对视频场景中的音频/视频目标的实施参数的动画、超链路、启动定时 器、发出话音呼叫、动态媒体组合动作、改变系统状态(例如,暂停/ 播放)、改变用户变量(例如,设置布尔运算标志)。
本发明还提供一种当用户事件发生(按暂停键、或按键)时,或 者当系统事件发生(例如,达到场景结束)时,当用户具体与目标交 互(例如,点击目标或拖动目标)时动作目标行为的能力。
本发明还提供一种分配条件给各个动作和行为的方法和系统,这 些条件包括:定时器事件(例如,定时器已终止)、用户事件(例如, 按下键)、系统事件(例如,场景2正在播放)、交互事件(例如, 用户已点击了目标)、目标之间的关系(例如,重叠)、用户变量(例 如,布尔运算标志设置)、和系统状态(例如,播放或者暂停、码流 播放或独立播放)。
另外,本发明利用AND-OR平面逻辑在动作执行前等待各条件变 真提供形成复杂条件表达能力,清除等待动作的能力,重新定标与各 个目标交互的结果和从一个目标到另一个目标的其它控制的能力,根 据用户的交互在播放的同时允许各目标被其它各目标取代,和/或通过 与现存目标的交互允许各新的目标的产生或例示。
本发明提供定义目标数据(例如,对于单个的各个目标的帧序列)、 各目标控制(例如,修饰参数)、和整个场景(对于所有各个目标和 控制重新开始帧序列)的环型播放的能力。
再有,本发明提供产生用于用户反馈的形式或用户控制的菜单和 按码流移动视频交互的各种形式的能力,和拖各个视频目标到其它各 个目标的顶端使得系统状态变化的能力。 动态媒体组合
本发明提供允许通过修改场景改变整个视频成分和通过修改各目 标改变整个场景成分的能力。这可以在在线码流、离线播放视频(独 立地)、和混合的情况下执行。单个图象中的各目标可以被另外的目 标取代、可以增加到当前的场景、和从当前场景中删除。
在包括固定、自适应、和用户处于中间的3种模型下执行DMC。 对DMC支持的本地目标库可以被用于存储DMC中使用的目标,存 储的目标用于直接播放,该目标可以由码流服务器进行管理(插入、 更新、清除),并且该目标可以由服务器进行查询。另外,对DMC 支持的本地目标库具有对库存目标的翻译控制、对非持久库存目标的 自动期满检查、和从服务器中自动目标更新。另外,本发明包括对库 存目标的多级别访问控制,对于每个库存目标支持唯一ID、具有每个 库存目标的历史或状态,并且在两个以后之间可以使能特殊媒体目标 的共享。 另外的应用
本发明提供经无线连接接入远端计算服务器的超薄客户机,允许 用户产生、订制和发送电子贺卡给移动智能电话,使用语音命令的处 理控制视频显示,利用非线性导航与服务器的用于训练/教育目的的交 互码流无线视频的使用,发送码流卡通/图象动画到无线装置,无线码 流交互视频电子商务应用,利用视频目标和码流视频定标图象中广告。
另外,本发明允许发送生动交通视频码流该给用户。这可以以多 个可选择的方案执行,包括用户拨一个特殊电话号码并且然后选择交 通摄象机位置,通过操作员/交换机收看该范围的图象,或者用户拨一 个特殊电话号码和该用户的地理位置(从GPS或小区三
角定位获得) 被用于自动提供交通摄象机的选择进行收看。另外一种方案是用户可 以寄存在特殊的服务器,该服务器的提供商将呼叫该用户并自动发表 示可能具有潜在交通塞拥的乘车路线的视频信息。为此目的,当寄存 的用户选择一个提出的路线时,并可以帮助确定该路线。在任何情况 下,系统可以跟踪用户的速度和位置,确定行驶的方向和正在遵循的 路线,然后沿着潜在路线搜索监视交通摄象机的表,确定是否有任何 地方被拥塞。如果有拥塞,系统将呼叫驾驶员并提供交通图象。对不 动的用户或者以步行速度行驶的用户将进行呼叫。另外一种方案,规 定指示拥塞的交通摄象机,系统可以通过寄存用户的表进行搜索行驶 在该道路上的用户并且对他们进行告警。
本发明还提供免费或者补贴费用的公共存储装置,例如紧凑闪速 存储器、存储棒、或诸如光盘之类的以任何其它形式的存储装置,这 些存储装置中含有具有广告或者促销内容或者产品信息的交互视频节 目集。虽然如果需要可以使用诸如读/写存储器之类的其它类型的存储 器,但是对于用户来说存储装置最好使用
只读存储器。该存储装置可 以被配置为提供对制造商的反馈机制,这种机制利用在线通信,或者 利用将某些数据写回到放置在某些收集点的存储装置。
不用物理的存储卡或者其它存储装置,也可以实现这种相同的处 理,即利用本地无线分配,考虑是否该装置准备接收数据,并如果准 备接收数据,可接收多大数量,随着该装置的导航注入信息到该装置 中。所包含的步骤包括:a)移动装置进入本地无线网的范围(这可以 是IEEE 802.11或兰牙等网络类型),网络检测载波
信号和服务器的 连接请求。如果同意,客户机通过可闻性告警或某些其它方法告警用 户,指示将进行传输;b)如果该用户配置的移动装置接受这些连接 请求,则建立与服务器的连接,否则该请求被拒绝;c)客户机向服务 器发送配置信息,诸如显示屏尺寸、存储器容量和CPU速度、装置制 造商/型号和操作系统;d)服务器接收这个信息并选择正确的数据流 发送到客户机;如果都不适合,则中止连接;e)在信息被传送以后, 服务器结束该连接并且客户机告警该用户传输结束;和f)如果在传 输完成以前,由于丢失连接不正当地结束传输,则客户机清掉使用的 任何存储器并且自身重新开始新的连接请求。 本发明的陈述
按照本发明,提供一种产生面向目标的交互多媒体文件的方法, 包括:
分别按照视频包码流、文本包码流、音频包码流、音乐包码流、 和/或图形包码流编码视频、文本、音频、和/或图形单元中的至少一个 的数据;
组合所述包码流为单一自取向目标,所述目标含有其自己的控制 信息;
放置多个所述目标到数据流中;和
分组单一连接的自取向场景中所述各数据流的一个或多个,所述 场景包括作为各个包的序列中初始包的格式定义。
本发明还提供从非静止3维数据集为1维的实时映射的方法,包 括步骤:
预计算所述数据;编码所述映射;
发送编码的映射到客户机;和
所述客户机应用所述映射到所述数据。
本发明还提供一种在面向目标交互视频系统中用于动态改变显示 视频的实际内容的系统,包括:
包含交互多媒体文件格式的动态媒体组合处理,包括含有视频、 文本、音频、音乐、和/或图形数据的各个目标,其中所述各目标的至 少一个包括数据流,所述各数据流的至少一个包括一个场景,所述各 场景的至少一个包括一个文件;
用于提供文件信息的目录数据结构;
用于使各个目标组合在一起的正确组合的选择机制;
用于根据所述目录信息利用目录信息和所述各个目标的位置知识 的数据
流管理器;
用于用户收视的同时,实时地在所述场景中和在所述视频中的各 个场景中插入、删除、或替代所述目标的控制机制。
本发明还提供一种面向目标交互多媒体文件,包括:
一个或多个连续的自包含场景的组合;
每个所述场景包括作为第一包的场景格式定义,和接着所述第一 包的一个或多个数据流的一个组;
来自所述第一数据流的每个所述数据流部分包括可以被任选地解 码的各个目标并且根据按所述第一数据流中的目标控制信息规定的动 态媒体组合处理进行显示;和
每个所述数据流包含一个或多个单个自含目标并且由一个终端流 标志定界;所述各个目标的每个含有自身的控制信息并且由组合各个 包码流形成的;通过编码未加工的交互多媒体数据形成的所述包码流 包括:视频、文本、音频、音乐、或图形单元的至少一个或者组合, 分别作为视频包码流、文本包码流、音频包码流、音乐包码流、音乐 包码流和图形包码流。
本发明还提供一种提供低功率装置的语音命令操作的方法,该低 功率装置能够操作码流视频系统,包括以下步骤:
在所述装置捕捉用户的话音;
压缩所述话音;
将所述压缩话音的编码样值插入到用户的控制包中;
发送所述压缩的话音掉能够处理语音命令的服务器;
所述服务器执行自动话音识别;
所述服务器映射该转录的话音为一个命令集;
所述系统检查是否所述命令由所述用户或所述服务器产生;
如果所述转录的命令是来自所述服务器,则所述服务器执行所述 命令;
如果所述转录的命令是来自所述用户,则所述系统转移所述命令 到所述用户装置;
所述用户执行所述命令。
本发明还提供一种图象处理方法,包括以下步骤:
根据图象的
颜色产生色图;
利用该色图确定该图象的关系;和
确定利用色图表示的该图象的至少一部分的相对运动。
本发明还提供一种确定图象的编码表示的方法,包括:
分析表示颜色的所使用的比特数;
当表示颜色使用的比特数超过第一值时,利用第一标志值和第一 预比特定数表示颜色;和
当表示颜色使用的比特数未超过第一值时,利用第二标志值和第 二预比特定数表示颜色。
本发明还提供一种图象处理系统,包括:
用于根据图象的颜色产生色图的装置;
用于利于色图确定图象表示的装置;和
用于确定利用色图表示的该图象的至少一部分的相对运动的装 置。
本发明还提供一种用于确定图象的编码表示的图象编码系统,包 括:
用于分析表示颜色所使用的比特数的装置;
当表示颜色使用的比特数超过第一值时,利用第一标志值和第一 预比特定数表示颜色的装置;和
当表示颜色使用的比特数未超过第一值时,利用第二标志值和第 二预比特定数表示颜色的装置。
本发明还提供一种处理各个目标的方法,包括以下步骤:
按源程序语言分析信息;
读多个数据源,该数据源含有至少以视频、图形、动画、和音频 形式的多个目标;
根据按源程序语言的信息,加控制信息到多个目标上;和
交错该多个目标到数据流和文件的至少一个中。
本发明还提供一种处理各个目标的系统,包括:
用于按源程序语言分析信息的装置;
用于读多个数据源的装置,该数据源含有至少以视频、图形、动 画、和音频形式的多个目标;
用于根据按源程序语言的信息,加控制信息到多个目标上的装置; 和
用于交错该多个目标到数据流和文件的至少一个中的装置。
本发明还提供一种远端控制计算机的方法,包括以下步骤:
根据数据在服务器上执行计算操作;
根据计算操作在服务器上产生图象信息;
经无线连接从该服务器发送图象信息到客户机计算装置,而不发 送所述数据;
由客户机计算装置接收该图象信息;和
由客户机计算装置显示该图象信息。
本发明还提供一种远端控制计算机的系统,包括:
用于根据数据在服务器上执行计算操作的装置;
用于根据计算操作在服务器上产生图象信息的装置;
用于经无线连接从该服务器发送图象信息到客户机计算装置,而 不发送所述数据的装置;
用于由客户机计算装置接收该图象信息的装置;和
用于由客户机计算装置显示该图象信息的装置。
本发明还提供一种发送电子贺卡的方法,包括以下步骤;
输入指示贺卡的特征的信息;
产生对应于该贺卡的图象信息;
编码该图象信息为具有控制信息的目标;
通过无线连接发送具有控制信息的目标;
由无线手持计算装置接收具有控制信息的目标;
由无线手持计算装置解码具有控制信息的目标;
显示在手持计算装置中已被解码的贺卡图象。
本发明还提供一种发送电子贺卡的系统,包括:
用于输入指示贺卡的特征的信息的装置;
用于产生对应于该贺卡的图象信息的装置;
用于编码该图象信息为具有控制信息的目标的装置;
用于通过无线连接发送具有控制信息的目标的装置;
用于由无线手持计算装置接收具有控制信息的目标的装置;
用于由无线手持计算装置解码具有控制信息的目标的装置;
用于显示在手持计算装置中已被解码的贺卡图象的装置。
本发明还提供一种控制计算装置的方法,该方法包括:
由计算装置输入
音频信号;
编码该音频信号;
发送该音频信号到远端计算装置;
在远端计算装置翻译该音频信号并产生对应于该音频信号的信 息;
发送对应于该音频信号的信息到该计算装置;和
利用对应于该音频信号的信息控制该计算装置。
本发明还提供一种控制计算装置的系统,该方法包括:
由计算装置输入音频信号;
编码该音频信号;
发送该音频信号到远端计算装置;
在远端计算装置翻译该音频信号并产生对应于该音频信号的信 息;
发送对应于该音频信号的信息到该计算装置;和
利用对应于该音频信号的信息控制该计算装置。
本发明还提供一种执行发送的系统,包括:
用于在无线手持装置上显示广告的装置;
用于从无线手持装置发送信息的装置;和
用于接收与由于显示广告已经发送的信息相关的打折价格的装 置。
本发明还提供一种提供视频的方法,包括以下步骤:
确定是否一个事件已经发生;和
响应于该事件,通过该区域的视频无线传输,获得给一个用户的 一个区域的发送的视频。
本发明还提供一种提供视频的系统,包括:
用于确定是否一个事件已经发生的装置;
用于获得一个区域的视频的装置;和
用于响应于该事件,通过该区域的视频无线传输,发送到一个用 户的装置。
本发明还提供一种面向目标多媒体视频系统的系统,能够支持多 个任意构形视频目标,不需要特别数据的额外开销和处理的额外开销, 以提供视频目标构形信息。
本发明还提供一种由服务器始发通信传送多媒体内容到无线装置 的方法,其中内容按希望的时间或成本效率的方式进行预先安排以便 传送并且所述用户经装置的显示器或其它指示器被告警传送完成。
本发明还提供一种交互系统,其中存储的信息可以进行离线收视 并存储用户输入并且当所述装置下一步连接在线时,通过无线网络将 自动转移交互到特定的远端服务器。
本发明还提供一种视频编码方法,包括:
利用目标控制数据作为视频目标编码视频数据;并且
产生包含多个所述视频目标的数据流,所述视频目标具有各自的 视频数据和目标控制数据。
本发明还提供一种视频编码方法,包括:
根据色减少表示,量化视频流中的色数据;
产生编码的代表所述量化的色和透明范围的视频帧数据;并且
利用所述编码的视频数据产生编码的音频数据和目标控制数据。
本发明还提供一种视频编码方法,包括:
(i)选择对于视频数据的每个视频帧的减少的颜色集;
(ii)逐帧地协调颜色一致;
(iii)执行
运动补偿;
(iv)根据感觉上的色差测量,确定一个帧的更新区;
(v)根据步骤(i)到(iv)将所述各帧的视频数据编码为各视频 目标;和
(vi)包括每个视频目标动画、实施和动态组成控制。
本发明还提供一种无线码流视频和动画系统,包括:
(i)便携监视装置和第一无线通信装置;
(ii)用于存储压缩数字视频和计算机动画的服务器,并且能使用 户从可用视频库中浏览和选择数字视频进行收视;并且
(iii)至少一个接口模
块包含第二无线通信装置,用于从服务器 向便携监视装置传送可传送数据,该便携监视装置包括用于接收所述 可传送数据、变换该可传送数据为显示视频图象的视频图象、并允许 用户与服务器通信交互地浏览和选择进行收视的视频的装置。
本发明还提供一种提供无线视频码流和动画的方法,至少包括以 下步骤之一:
(a)通过广域网从远端服务器下载并存储压缩的视频和动画数 据,用于以后从本地服务器的传输;
(b)允许用户从存储在本地服务器的视频
数据库中浏览和选择数 字视频,进行收视;
(c)发送数据到便携监视装置;和
(d)处理数据在便携监视装置上显示图象。
本发明还提供一种提供交互视频节目集的方法,包括以下各个步 骤的至少一个:
(a)通过以下规定产生视频节目集,(i)在节目集中的各种场 景和可能出现在每个场景中的各种视频目标,(ii)规定预置的和用 户可选择的场景导航控制和对于每个场景的单个构成规则,(iii)对 每个媒体目标规定修饰参数,(iv)规定对媒体目标的控制,产生各 个形式,收集用户反馈,(v)集成压缩的
媒体流和目标控制信息为成 分数据流。
本发明还提供一种向移动装置产生和发送视频贺卡的方法,包括 至少一个步骤:
(a)允许用户通过以下步骤产生视频贺卡(i)从一个库中选择 模板视频场景或动画,(ii)通过增加用户供给的文本或音频模板或 从一个库中选择视频模板插入将作为场景中的角色订
制模板;
(b)从用户获得(i)识别细节,(ii)理想的传送方法,(iii) 付费细节,(iv)
指定接收的移动装置的号码;和
(c)取决于指定的传送方法排队贺卡,直至带宽变为可用或者可 以获得非峰值传送,轮询各个接收装置,看是否能够处理贺卡,并且 如果可以处理,则传送到指定的移动装置。
本发明还提供一种用于解码编码的数据的视频解码方法。
本发明还提供一种动态色间隔
空间编码方法,允许进一步将色量 化信息发送到客户机,能根据色减少的方式实现实时客户机。
本发明还提供一种有目的的用户和/或局部视频广告的方法。
本发明还提供一种可以是无线的和能够提供接人远端服务器的超 薄客户机。
本发明还提供一种多方电视会议的方法。
本发明还提供一种动态媒体组合的方法。
本发明还提供一种允许用户订制并传送电子贺卡和明信片到移动 智能电话的方法。
本发明还提供一种用于多媒体数据的无线码流的纠错方法。
本发明还提供用于分别执行上述方法之一的系统。
本发明还提供服务器软件,用于允许用户对视频数据的无线流的 纠错的方法。
本发明还提供一种计算机软件,用于分别执行上述各方法的任何 一个的步骤。
本发明还在需要的系统上提供视频。本发明还提供一种视频安全 系统。本发明还提供一种交互移动视频系统。
本发明还提供一种处理语音命令控制视频显示器的方法。
本发明还提供包括用于控制面向目标视频和/或音频的码的软件。 有利地是,该码可以包含基于XML的IAVML结构。
附图说明
下面仅以例子的方式参照附图描述本发明的各个优选实施例,其 中:
图1是本发明的一个实施例的面向目标多媒体系统的简化
框图;
图2是表示交叉组合入图1的实施例的面向目标数据流的3种主 要包类型的示意图;
图3是表示在本发明的面向目标多媒体播放机实施例中
数据处理 的3个阶段的框图;
图4是表示在按照本发明的面向目标数据文件中各目标类型分层 的示意图;
图5是表示按照本发明的数据文件或码流中典型包序列的图;
图6是表示按照本发明的面向目标多媒体播放机的客户机与服务 器部件之间的信息流的图;
图7是表示按照本发明的面向目标多媒体播放机客户机的主要部 件的框图;
图8是按照本发明的面向目标多媒体播放机客户机的功能部件的 框图;
图9是描述按照本发明的多目标客户机分离修饰(rending)处理 主要步骤的
流程图;
图10是按照本发明的客户机修饰引擎的优选实施例的框图;
图11是按照本发明的客户机交互引擎的优选实施例的框图;
图12是描述具有DMC功能的交互多目标视频场景的实施例的组 成部分图;
图13是描述客户机执行播放按照本发明的交互面向目标视频处 理中的主要步骤的流程图;
图14是按照本发明的交互多媒体播放机的本地服务器部分的框 图;
图15是按照本发明的远端码流服务器的框图;
图16是描述由按照本发明的客户机执行的动态媒体部分的主要 步骤的流程图;
图17是描述按照本发明的由服务器客户机执行的动态媒体部分 的主要步骤的流程图;
图18是按照本发明的面向目标视频编码器的框图;
图19是由按照本发明的视频编码器执行的主要步骤的流程图;
图20是按照本发明的视频编码器中的输入色处理部分的框图;
图21是用于按照本发明的视频编码器中的范围更新选择处理的 各个部分的框图;
图22是用于视频编码中的3个快速运动补偿方法的图;
图23是用于按照本发明的视频编码器中的树形分裂方法的图;
图24是编码来自按照本发明的视频压缩处理的数据结果所执行 的主要步骤的流程图;
图25是用于编码按照本发明的色图更新信息的各步骤的流程图;
图26是编码对于按照本发明的正常预测帧的4元树结构数据的各 步骤的流程图;
图27是编码按照本发明的4元树结构中叶色的步骤的流程图;
图28是按照本发明由视频编码器执行的压缩视频关键帧的主要 步骤的流程图;
图29是按照本发明由视频编码器利用另外一种编码方法执行的 压缩视频的主要步骤的流程图;
图30是按照本发明在客户机中按实时地执行实时色(矢量)量化 主要包含的预量化处理的流程图;
图31是按照本发明的语音命令处理中的主要步骤的流程图;
图32是按照本发明的超薄计算客户机局域无线网(LAN)系统的 框图;
图33是按照本发明的超薄计算客户机广域无线网(WAN)系统 的框图;
图34是按照本发明的超薄计算客户机远端LAN服务器系统的框 图;
图35是按照本发明的多方无线电视会议系统的框图;
图36是按照本发明的定标图象中的用户广告的交互′按需式视频′ 系统的一实施例的框图;
图37是传送和操作处理按照本发明的图象中定标用户广告的交 互的一个实施例所包括的主要步骤的流程图;
图38是在传送和操作处理按照本发明的交互视频节目集的一个 实施例的所包括主要步骤的流程图;
图39是在一个交互视频节目集的实施例中的可能用户交互的序 列的流程图;
图40是按照本发明的包含视频数据的基于推或拉分配的主要步 骤的流程图;
图41是按照本发明的交互′按需式视频′系统的框图,具有以远端 服务器为基础的包括用户认证、接入控制、计费和利用率计量的数字 权限管理功能;
图42是按照本发明播放需要的码流无线视频的处理中播放机软 件执行的主要步骤的流程图;
图43是按照本发明的视频安全/监视系统的框图;
图44是按照本发明的电子贺卡系统和服务的框图;
图45是按照本发明产生和发送个性化电子贺卡或视频电子函件 到移动电话所包括的主要步骤的流程图;
图46是表示利用MPEG4标准描述集中参数场景的框图;
图47是表示按照本发明提供色量化数据给解码器用于实时色量 化的主要步骤的框图;
图48是表示按照本发明的目标库的主要部分的框图;
图49是表示按照本发明的视频解码器的主要步骤的流程图;
图50是按照本发明解码4元树形编码的视频帧包括的主要步骤的 流程图;
图51是按照本发明的解码4元树的叶色中包括的主要步骤的流程 图。
本发明详细描述 术语表
比特流:从服务器向客户机发送的比特序列,但可以被存储在存 储器中;
数据流:一个或多个交叉的包流;
动态媒体成分:改变按实时表现的多目标多媒体的成分;
文件:面向目标多媒体文件;
图象中目标:在场景中重叠的视频目标;
媒体目标:一个或多个交叉的媒体类型的组合,包括:音频、视 频、矢量图形、文本和音乐;
目标:一个或多个交叉的媒体类型的组合,包括:音频、视频、 矢量图形、文本和音乐;
包流:属于从服务器向客户机发送的一个目标的各个数据包序列, 但可以被存储在存储器中的;
场景:一个或多个码流的封装,包括多目标多媒体表现;
码流:一个或多个交叉的包流的组合,存储在一个面向目标多媒 体文件中;
视频目标:一个或多个交叉的媒体类型的组合;包括音频、视频、 矢量图形、文本和音乐。 缩写
FIFO:先进先出
缓冲器;
IAVML:交互音频可视标记语言;
PDA:个人数字助理;
DMC:动态媒体组合;
IME:交互管理引擎;
DRM:数字权限管理;
ASR:自动
语音识别;
PCMCIA:个人计算机存储卡国际协会。 一般系统结构体系
描述在这里的处理和
算法形成一种可实现的技术平台,用于诸如 电子商务之类的先进增强式交互多媒体应用。所描述的方法的最大优 点是如果希望的话,它们可以在诸如移动电话和PDA之类的非常低的 处理功率的装置上仅利用软件执行。这将从如图42所示的流程图和伴 随的描述中变得更明显。对于这种技术,特定的视频编解码器是基本 的,因为它能在低功率移动视频系统中提供先进的面向目标交互处理 能力。该系统的一个重要优点是在这种系统中存在低的额外开销。这 种先进的面向目标交互处理比以前在无线装置能提供功能、用户体验 和应用上的更新的级别。
诸如MPEG1/2,H.263播放机之类的典型的视频播放机给用户一 种消极的经历。它们读出单一的压缩视频数据流并通过对接收数据执 行单一、固定的解码转换进行播放。相反,作为描述在这里的面向目 标视频播放机提供先进的交互视频能力并且允许来自多个源的多个视 频目标的动态组合,订制用户体验的内容。该系统不仅允许多个、任 意构形视频目标共存,而且还根据用户的交互或者预先确定的设置, 确定哪些目标可以在任何瞬间实时地共存。例如,取决于用户的爱好 或用户的交互操作,视频的一个场景可以被编辑为在一个场景中作不 同事情的两个不同角色中的一个。
为了提供这种灵活性,已经开发出一种面向目标视频系统,包括 编码阶段、播放机客户机和服务器,如图1所示。编码阶段包括编码 器50,它压缩未加工的多媒体目标数据51为压缩的目标数据文件52。 服务器部分包括可编程、动态媒体组合部分76,根据一个规定的原本, 它将来自多个编码阶段的压缩的目标数据与定义和控制数据复用在一 起,并发送产生的数据流到播放机客户机。播放机客户机包括解码引 擎62,它解压目标数据流并在发送它们到适当的硬件输出装置61之 前修饰各种目标。
参照图2,解码引擎62对3个交叉的数据流执行操作;压缩数据 包64、定义数据包66和目标控制包68。压缩数据包64含有将由适当 的编码器/解码器(‘编解码器’)解码的压缩目标(例如,视频) 数据。在下面讨论用于编码和解码视频数据的方法。定义数据包66 传送用于翻译压缩的数据包64的媒体格式和其它信息。目标控制包 68定义目标行为、修饰、动画和交互参数。
图3是表示面向目标多媒体播放机中数据处理三个阶段的框图。 如所示,对面向目标数据施加分别的变换,经系统显示器70和音频子 系统产生最后的音频-视频表示。‘动态媒体组合’(DMC)处理 76修改数据流的实际内容和发送它到解码引擎62。在解码引擎62中, 正常解码处理72提取压缩的音频和视频数据,并发送它到修饰引擎 74,在此施加其它的变换,包括:对单个目标的修饰参数的几何变换 (例如,转换)。每个变换通过插入到数据流中的各个参数单个地进 行控制。
最后2个变换的每个的特殊性质取决于动态媒体组合处理76的输 出,因为这个输出确定传送到解码引擎62的数据流的内容。例如,动 态媒体组合处理76可以插入特定视频目标到比特流中。在这种情况 下,除了视频数据将被解码外,数据比特流将含有用于解码处理72 和修饰引擎74的配置参数。
面向目标比特流数据格式允许不同种类媒体目标之间的无缝集 成,支持用户与这些目标的交互,并且能对显示场景中的内容,无论 来自远端服务器的还是接入本地存储内容的都可以进行编程控制。
图4是表示面向目标多媒体数据文件中的各个目标类型的分层的 示意图。该数据格式按如下定义了各个实体的分层:可以包含一个或 多个场景81的面向目标数据文件80。每个场景可以包含一个或多个 含有一个或多个独立同时的媒体目标52的流82。媒体目标52可以是 诸如视频83、音频84、文本85、矢量图象(GRAF)86、音乐87或 这样一些单元的组合89的单一媒体单元89。在单一场景中,上述各 个媒体类型的每个的多个例子可以与其它媒体类型同时发生。每个目 标52可以含有包封在各个数据包中的一个或多个帧88。在场景81中, 当出现多于一个媒体目标52时,交叉每个包。单一媒体目标52完整 地自包含实体,该实体具有虚拟地非相关性。包含一个或多个定义包 66、接着的数据包64和任何控制包68的各个包序列被定义为都具有 相同目标识别号。数据文件中的所有包具有相同的首端信息(基本首 端),该信息规定了对应于在包中的数据类型、在序列中该包的号和 该包含有的数据量(包尺寸)的目标。在下面部分描述文件格式的细 节。
与MPEG4系统的区别将是很明显的。参照图46,对于各个场景 (BIFS)01a,MPEG4依赖于按二进制形式的集中参数场景描述,它 是各节点的分层结构,这些节点可以含有各个目标和其它信息的属性。 从非常复杂的虚拟实体标记语言(VRML)语法直接借用BIFS 01a。 在这种方法中,集中的BIFS结构01a实际上是场景本身:在面向目 标视频中是基本成分,不是目标本身。视频目标数据可以被规定使用 在场景中,但是不能用作定义场景本身。这样,例如一个新的视频目 标不能被引入到一个场景中,除非BIFS结构01a首次被修改为包括 参考该视频数据的一个节点。BIFS还不直接参考任何目标数据流,代 之以称为目标描述符01b的中间独立装置在BIFS 01a节点中的任何 OBJ ID与含有视频数据的单元数据流01c之间映射。因此,MPEG 方法中,这3个分别的实体01a、01b、01c的每个是互相依赖的,使 得如果一个目标流被复制到另外的文件中,则它丢失任何交互性能和 与其相关的任何其它控制信息。因为MPEG 4不是目标中心的,它的 各个数据包被称为
原子,具有包括任何类型和包尺寸信息的公共首端, 但没有目标识别符。
这里所描述的格式是非常简单的,因为没有定义是哪个场景的中 心结构。代之以,场景是自含有的并且完全由存在于该场景的目标进 行定义。每个目标也是自含有的,具有加上的规定目标的属性和交互 行为的任何控制信息。新的目标可以被复制到刚通过插入其数据到比 特流中的一个场景中,为此引入所有目标控制信息以及其压缩数据到 该场景中。存在着各个媒体目标之间或各个场景之间的虚拟无相互依 赖。这种方法降低了复杂性和复杂的BIF方法相关的存储及处理的额 外开销。
在视频数据的下载和播放的情况下,允许交互,诸如选择哪个角 色出现在场景中能力的多媒体数据的面向目标操纵,输入数据不包括 具有单‘角色’目标的单一场景,而是可以根据用户的输入进行选 择或“组合入”在运行时间所显示的场景中的每个场景中的一个或 多个可供选择的目标数据流。因为在运行时间之前不知道场景的组合, 不可能交叉正确目标数据流到场景中。
图5是表示数据文件中的典型包序列的图。存储的场景81包括多 个独立可选择的流82、为动态媒体组合处理的侯选物的每个“角色” 目标52,参照图3。在场景81中仅第一流82含有多于一个(交叉的) 的媒体目标52。场景81中的第一流82定义场景结构、组成的各目标 及其行为。在场景81中的附加流82含有任选的目标数据流52。在每 个场景81的开始设置流的目录59,使能随机地访问每个独立的流82。
在该比特流能够支持先进的交互视频能力和动态媒体组合的同 时,它还支持3个实现级别、提供各种功能级别。这些是:
1.消极媒体:单目标、非交互播放机
2.交互媒体:单目标、有限交互的播放机
3.面向目标积极媒体:多目标、全交互播放机
该最简单的实现提供具有单一媒体情况并且没有交互性的消极收 视经历。这是一种传统的媒体播放机,在这种播放机中用户限于播放、 暂停和停止正常视频或音频的重放。
下一个实现级别通过允许定位行为的各热区定义增加了交互支持 消极媒体。这是通过产生具有有限目标控制功能的矢量图形目标提供 的。因此,虽然它可能依然这样出现在用户面前,但该系统不再是一 个照字面意义的单一目标系统。除了主媒体目标看来是透明的外,可 点击矢量图形目标也是允许的其它目标类型。这允许产生简单的交互 经历,诸如非线性导航等等。
最后实现的级别定义了不限制多目标和全目标控制功能的使用, 包括动画、条件事件等,并且利用在这种结构中的所有成分的实现。 实际上,这种级别与前面级别之间的区别可能仅在于装饰上。
图6是表示在面向目标多媒体系统中的客户机与服务器成分之间 的信息流(或比特流)的图。该比特流支持客户机侧与服务器侧之间 的交互。客户机侧的交互是经定义的动作集支持的,这些动作可能通 过用户经历产生修改的各个目标调用,但这里表示为目标控制包68。 服务器侧交互支持是用户交互,表示在这里的是的用户控制包69,经 返回信道从客户机20中继到远端服务器21,并且对在线用户在动态 媒体组合的形式上起支配地位地提供服务/内容补充的调解。因此,处 理比特流的交互媒体播放机具有客户机-服务器结构。客户机20响应 于从服务器21发送给它的解码的压缩数据包64、定义包66和目标控 制包68。附加地,客户机20可响应于目标同步,施加修饰变换、组 成最后的显示输出、管理用户的输入和传送用户控制返回到服务器 21。服务器21可响应于来自正确源(各个源)的管理、读出、和分析 部分比特流,根据来自客户机20的用户的具有适当控制指令的输入构 成复合比特流,并且传送该比特流到客户机20,用于解码和修饰。表 示在图3的部分76的这种服务器侧的动态媒体组合允许媒体的内容根 据用户的交互或按存储的源程序预定义的设置被实时地组合。
当播放返回数据本地存储时,并还当数据是来自服务器21的码流 时,媒体播放机支持服务器侧和客户机侧两者的交互性/功能性。因为 执行DMC和管理源的服务器部分21的可响应性,在本地重放的情况 下,服务器是与客户机20共同在一个位置上的,虽然在码流情况下是 在远端位置上的。在客户机20访问来自本地和远端位置的源/服务器 21数据的情况下,还支持混合操作。 交互客户机
图7是表示面向目标多媒体播放机客户机20的主要部分的框图。 面向目标多媒体播放机客户机20能接收和解码由服务器21发送并由 图3的DMC处理76产生的数据。面向目标多媒体播放机客户机20 还包括多个执行解码处理的部分。与编码处理比较,解码处理的步骤 是非常简单的,并且可以完全在诸如Palm Pilot IIIc或智能电话之类 的低功率移动计算装置中由软件编辑执行。输入数据缓冲器30被用于 保持从服务器21输入的数据,直至全部包已经被接收或读出。然后, 直接或经由解密单元34,数据被传送到输入数据交换/去复用器32。 输入数据交换/去复用器32确定要求哪个子处理器33、38、40、42解 码该数据,并且然后根据执行子处理的包类型,传送该数据到正确的 部件。独立的部件33、38和42分别执行矢量图形、视频和音频解码。 解码器中的视频和音频解码模块38和42独立地解压任何发送给它们 的数据并且在暂时缓冲器中执行初步的修饰。目标管理部分40提取对 于控制视频场景使用的目标行为和修饰信息。视频显示部分44在从矢 量图形解码器33、视频解码器38和目标管理部分40接收的数据的基 础上修饰视频目标。音频播放部分46在从音频解码和目标管理部分 40接收数据的基础上产生音频。以后用户输入/控制部分48产生指令 并控制由显示和重放部分44和46产生的视频和音频。以后用户控制 部分48还发送控制消息返回到服务器21。
图8是表示面向目标多媒体播放机客户机20的各个功能部分的框 图,包括如下:
1.用于主数据路径的具有任选目标存储器39的解码器43(图7 的多个部分33、38和42的组合)
2.修饰引擎(图7的部分44和46)
3.交互管理引擎41(图7的部分40和48)
4.目标控制40路径(图7的部分40的一部分)
5.输入数据缓冲器30和输入数据交换/去复用器32
6.任选数字权限管理(DRM)引擎45
7.持久本地目标库75
通过客户机系统20有两个主要的数据流。来自服务器21或持续 本地目标库75的压缩的目标数据52被传送到客户机输入缓冲器30。 输入数据交换/去复用器32分裂经缓冲的压缩目标数据52为压缩数据 包64、定义包66和目标控制包68。压缩数据包64和定义包66根据 在包首端所识别的包类型被分别择径到适当的解码器43。目标控制包 68被发送到目标控制部分40进行解码。另外一种方案,如果目标控 制包被接收规定了库更新信息,则压缩数据包64、定义包66和目标 控制包68可以从输入数据交换/去复用器32进行择径到用于持久本地 存储的目标库75。对于每个媒体目标和每个媒体类型,存在一个解码 器43和一个目标存储器39。因此不仅存在对于每个媒体类型的不同 解码器43,而且如果在场景中有3个视频目标,则将存在3个视频解 码器43的情况。每个解码器43接收发送给它的适当压缩数据包64 和定义包66并且在目标数据存储器39中缓冲解码数据。每个目标存 储器39可响应于与修饰引擎74相连接的每个媒体目标的同步管理, 如果解码滞后于(视频)帧更新速率,然后指令解码器43适当卸下各 个帧。由修饰引擎74读出目标存储器39中的数据,组成最后显示的 场景。对目标存储器39的读和写的访问是异步的,以便解码器43可 以仅以低速率更新目标存储器39,同时修饰引擎74可以以较快的速 率读出数据,或者反之亦然,这取决于全面媒体同步请求。修饰引擎 74从每个目标存储器39读出数据并且根据来自交互管理引擎41的修 饰信息组成最后的显示场景
和声音场景两者。这种处理的结果是通过 系统图形用户接口73处理的一系列位映像,将被显示在显示装置70 上和一系列音频样值,将被传送到系统的音频装置72。
第二数据浪通过客户机系统20经图形用户接口73从用户以用户 事件47的形式输入到交互管理引擎41,在这里该用户事件被分裂, 它们的某些部分以修饰参数的形式被传送到修饰引擎74,并且其余部 分作为用户控制包69通过返回信道被传送回到服务器21,服务器21 利用这些数据控
制动态媒体组合引擎76。为了判断在哪里或者是否用 户事件被传送到系统的其它部分,交互管理引擎41可以要求修饰引擎 74执行命中测试。交互管理引擎41的操作由接收从服务器21发送的 指令(目标控制包68)的目标控制部分40进行控制,该指令定义交 互管理引擎41如何翻译来自图形用户接口73的用户事件47,和哪个 动画和交互行为是与单个媒体目标相关。交互管理引擎41负责控制修 饰引擎74进行修饰变换。另外,交互管理引擎41负责控制目标库75, 择径库目标到达输入数据交换/去复用器32。
修饰引擎74具有如图10所示的4个主要部分。位映像编排器35 从视频目标存储缓冲器53读出各个位映像并编排它们到最后显示的 场景屏面71。矢量图形原始扫描变换器36修饰来自矢量图象解码器 的矢量图形显示表54为显示场景屏面71。音频混合器37读音频目标 存储器55并在传送的结果到音频装置72之前混合音频数据。读出各 种目标存储缓冲器53到55的的序列以及如何将其内容变换为显示场 景屏面71通过来自交互管理引擎41的修饰参数56确定。可能的变换 包括:Z-序、3D取向、位置、比例、透明度、颜色和音量。为了
加速 修饰处理,可以不需要修饰整个显示场景,而仅修饰其一部分。修饰 引擎的第4个主要部分是命中测试器31,它按照交互管理引擎41的 用户事件
控制器41c的控制下,对用户笔事件执行目标命中测试。
当用户通过点击或拖动一个可拖的目标选择一个键时,和当更新 动画时,每当按照同步信息从服务器21接收视频数据的情况下,显示 场景应当进行修饰。为了修饰场景,可以编排到画面外缓冲器(显示 场景屏面71),并然后移到输出装置70。目标修饰/位映像组合处理 表示在从步骤s101开始的图9中。维持包含一个
指针的表,指示含有 各个视频目标的每个媒体目标存储。在步骤s102按照Z序存储该表。 接下来,在步骤s103,位映像组合器得到具有最低Z序的媒体目标。 如果在步骤s104,再没有别的目标进行组合,则在步骤s118,结束视 频目标的修饰处理。否则,始终处于第一目标的情况下,在步骤s105, 从目标缓冲器读出解码的位映像。在步骤s106,如果存在目标修饰控 制,则在步骤s107设置屏幕位置、取向和比例。具体地,目标修饰控 制定义适当2/3D几何变换,确定映射到哪个座标的目标
像素。在步骤 s108,从目标缓冲器读出第一像素,并且如果在步骤S109有更多像素 处理,则在步骤s110,从目标缓冲器读出下一个像素。在目标缓冲器 中的每个像素被单个地进行处理。在步骤S111,如果像素是透明的(像 素值是0xFE),则修饰处理忽略该像素并且返回到步骤s109开始处 理目标缓冲器中的下一个像素。否则,在步骤s112,如果该像素未改 变(像素值是0xFF),则在步骤s113,背景色像素被移到显示场景 屏面。但是,在步骤s114,如果像素既不透明又不是未改变,并且不 能进行α混合,则在步骤s115,目标色像素被移到显示场景屏面。在 步骤s114,如果能进行α混合,则执行α混合组合处理,对目标设置定 义的透明度级别。但是,不像传统α混合处理,需要分别对位映像中 的每个像素编码混合系数,这种方法不使用α信道。代之以,在实际 位映像表示中,使用单个α值规定与插入透明范围指示相关的的整个 位映像的不透明度。因此,当在步骤s116计算新的α混合目标像素色 时,在步骤s117,该目标像素色被移到显示场景屏面。这终止对每个 单独像素的处理,因此控制返回到步骤s109,以开始目标缓冲器中新 的像素的处理。在步骤s109,如果没有像素仍将被处理,则处理返回 到步骤s104,开始处理器下一个目标。位映像编排器35读按照与每 个媒体目标相关的Z序序列存储的每个视频目标,并且复制它到显示 场景屏面71。如果没有Z序已被明确地分配给各个目标,对于一个目 标的Z序值可以取与object ID相同的值。如果两个目标具有相同Z 序,则它们被移到上阶目标ID的序。
如所述,位映像编排器35使用视频帧可以具有的3个区类型:将 修饰色像素的区域、将使透明的区域和保持不变的区域。色像素被适 当地α混合到显示场景屏面71,并且未改变的像素被忽略,使得显示 场景屏面71不受影响。透明像素迫使对应背景显示场景将被刷新。当 正在讨论的目标的像素与某些其它目标的像素重叠时,通过简单地什 么也不要作,就可以执行这种操作,但是如果该像素正在通过场景背 景被直接移动,则该像素需要被设置为场景背景色。
如果目标存储器含有显示表代替位映像,则对显示表中的每个座 标施加几何变换,并且在显示表中规定的图形基本要素的扫描变换期 间执行α混合。
参照图10,位映像编排器35支持具有不同色
分辨率的显示场景 屏面,并管理具有不同比特深度的位映像。如果显示场景屏面71具有 15、16或24比特的深度,和位映像是映射8比特图象的色,则位映 像编排器35从位映像中读出每个色索引值,在与特定目标存储器相关 的色图中查寻该色,并且以正确形式写该色的红、绿和兰分量到显示 场景屏面71。如果该位映像是连续
色调图象,位映像编排器35简单 地复制每个像素的色值到显示场景屏面71的正确位置。如果显示场景 屏面71具有8比特深度和色查寻表,则取决于显示的目标数适当的取 值。如果仅一个视频目标被显示,则它的色图直接被复制到显示场景 屏面71的色图。如果存在多个视频目标,则显示场景屏面71将被建 立一个通用色图,并且设置在显示场景屏面71中的像素值将最接近地 匹配于由位映像中的索引值指示的色。
当用户在屏幕上通过比较笔事件位置座标与每个显示的目标,已 经选择一个视频目标时,修饰引擎74的命中测试部分31负责评估。 如图10所示,由交互管理引擎41的用户事件控制器41c请求这种 “命中测试”并且使用由位映像编排器35和矢量图象基本要素扫描 变换器36部分提供的目标位置和变换信息。命中测试部分31对每个 目标施加笔事件位置的反向几何变换,并且按产生的反向变换座标的 结果评估该位映像的透明度。如果该评估是真,则寄存一个命中,并 且该结果返回到交互管理引擎41的用户事件控制器41c。
修饰引擎的音频混合器部分37以循环的方式读存储在相关音频 目标存储器中的每个音频帧,并根据由交互引擎提供的修饰参数56 混合该音频数据,获得组合帧。例如,用于音频混合的修饰参数可以 包括音量控制。然后,音频混合部分37传送混合的音频数据到音频输 出装置72。
图8的目标控制部分40基本上是一个编解码器,它从交换/去复 用器输入的流中读编码的目标控制包和发指示控制的指令到交互管理 引擎41。控制指令可以被发出,改变单个目标或系统宽度的属性。这 些控制是宽范围的,并包括修饰参数、动画路径的定义、产生条件事 件、控制包含从目标库75插入各目标的媒体播放序列、分配超链路、 设置定时器、设置和复位系统状态寄存器等,并且定义用户激活的目 标行为。
交互引擎41管理多个不同的处理;图13的流程表示交互客户机 在执行交互面向目标视频中的主要步骤。处理在步骤s201开始。在步 骤s202,从图8的目标存储器39或者图8的目标控制部分40的输入 数据源读出数据包和控制包。在步骤s203,如果包是数据包,则在步 骤s204进行帧解码和缓冲。但是,如果包是目标控制包,则在步骤 s206,交互引擎41对目标加适当的动作。然后,在步骤s205对目标 进行修饰。在步骤S207,如果没有用户与目标进行交互(即,没有用 户点击目标),并且在步骤s208没有目标等待动作,则处理返回步骤 s202,并在步骤s202从输入数据源读出新的包。但是,在步骤s208 如果目标等待动作,或者没有用户交互,但在步骤s209目标附有动作, 在步骤s210对动作条件进行测试,并且如果条件满足,则在步骤S211 执行该动作。否则,在步骤S202从输入数据源读出下一个包。
交互引擎41不预测行为:交互引擎41可以执行或响应的所有动 作和条件是由目标控制包68定义的,如图8所示。交互引擎41可以: 无条件地立即执行预定动作(诸如到达场景中的最后视频帧时跳回到 场景的开始),或者延迟执行直至某些系统条件被满足(诸如定时器 事件),或者它可以按规定的行为响应用户的输入(诸如点击或拖一 个目标),这种响应可以是无条件的或者是从属于系统条件的。可能 的动作包括:修饰属性变化、动画、循环地和非连续播放序列、跳到 超链路、显示的目标流被可能来自持久本地目标库75的另外目标取代 的动态媒体组合、和当规定条件或用户事件变真时调用的其它系统行 为。
交互引擎41包括3个主要部分:交互控制部分41a、等待动作管 理器41d、和动画管理器41b,如图11所示。动画管理器41b包括: 交互控制部分41a和动画路径
插补器(interpolator)/动画表41b,并 存储当前进行中的所有动画。对每个动作动画,在由目标控制逻辑63 规定的间隔,该管理器内插发送到修饰引擎74的修饰参数56。当一 个动画已经完成时,被从动画表41b的动作的动画表中去除,除非它 被定义为循环动画。等待动作管理器41d包括:交互控制部分41d和 等待动作表41d,并存储将施加到条件变真的所有目标控制动作。交 互控制部分41a有规律地轮询等待动作管理器41d并评估与每个等待 动作相关的条件。如果满足对一个动作的条件,则交互控制部分41a 将执行该动作并且从等待动作表41d中将其清除,除非该动作已经变 定义为目标行为,在这种情况下它仍然在等待动作表41d上用于将来 进一步执行。对于条件评估,交互管理引擎41使用条件评估器41f和 状态标志寄存器41e。交互控制部分41a更新状态标志寄存器41e,并 保持一组用户可定义系统标志。条件评估器41f在每个目标的基础上 按交互控制部分41a发的指令执行条件评估,比较当前系统状态和状 态标志寄存器41e中的系统标志,并且如果适当的系统标志被设置, 则条件评估器41f通知交互控制部分41a该条件是真,并且将执行该 动作。如果该客户机是离线的(即,没有连接到远端服务器上),则 交互控制部分41a保持执行的所有交互动作的记录(用户事件等)。 这些是暂时存储在历史/形式存储器41d,并且当该客户机在线时利用 用户控制包69发送到服务器。
目标控制包68并因此目标控制逻辑63可以设置许多用户可定义 系统标志。这些标志用于允许系统具有其当前状态的存储器,并且这 些标志被存储在状态标志寄存器41e中。例如,当重放视频中的某场 景或帧时,或当用户与一个目标交互时,可以设置这些标志之一。利 用用户事件控制器41c从图形用户接口73接收输入的用户事件47监 视用户交互。另外,用户事件控制器41c可以请求修饰引擎74利用修 饰引擎的命中测试器31执行‘命中测试’。一般,对诸如用户笔点 击/选择之类的用户笔事件请求命中测试。用户事件控制器41c传送用 户事件到交互控制部分41a。然后,这可以用于确定在下一个非线性 视频中播放哪个场景,或者在一个场景中修饰哪些目标。在电子商务 应用中,用户可以拖一个或多个图符到购物篮目标中。然后,这将寄 存想要的购买。当点击购物篮时,视频将跳到检验场景,在那里显示 拖到购物篮中的所有目标,允许用户确认或删除项目。分别的视频目 标可以被用作按钮,指示用户希望寄存的购买单或者删除它。
目标控制包68并因此目标控制逻辑63可以包含满足任何要执行 的规定动作的条件,这些条件是由条件评估器41f进行评估的。这些 条件可以包括:系统状态、本地或码流重放、系统事件、规定的用户 与目标的交互等。一个条件可以具有等待标志设置,指示该条件当前 不满足,然后等待直至满足。等待标志经常用于等待诸如用户笔出现 之类的用户事件。当满足一个等待动作时,从与一个目标相关的等待 动作表41d中去除。如果设置目标控制包68的行为标志,则在等待动 作表41d中将保持一个目标的动作,即使在该目标已经执行以后。
目标控制包68并因此目标控制逻辑63可以规定影响另外的目标 的动作。在这种情况下,条件将对在基本首端规定的目标上被满足, 而该动作是在其它目标上执行的。目标控制逻辑可以规定被传送到目 标库75的目标库控制58。例如,具有用户对要求的目标的点击事件 的条件,并由用户事件控制器41c结合命中测试器31进行评估,并且 系统在执行该指令之前将等待其变为真,目标控制逻辑63可以规定将 与动画一起执行的跳跃动作(超链路)。在这种情况下,动作或控制 将在等待动作表41d中等待,直至它被执行并然后它将被去除。例如, 类似这种控制可以与视频中由角色穿着的一双运动
鞋相联系,这样当 用户点击它们时,鞋子可以围绕场景移动并在用户改变视频几秒钟之 前以在线操作提供出售鞋子信息和鞋子的购买或出价的机会。
图12表示多目标交互视频场景的组成。最后场景90包括背景视 频目标91、3个任意构形“信道改变”视频目标92、和3个“信 道”视频目标93a、93b、93c。目标可以利用用户点击事件的条件, 通过分配“行为”、“跳跃”和“其它”特性的控制,定义为“信 道改变”92。这种控制被存储在等待动作表41d,直至场景发生的结 束并且只要被点击将使得DMC改变场景90的组成。在这个说明中 “信道改变”目标将显示正在显示在其它信道的内容的缩小形式。
目标控制包68并因此目标控制逻辑63可以具有动画标志设置, 指示将跟随的多命令而不是单命令(诸如,移动到)。如果动画标志 不能设置,则只要条件满足,动作就执行。随着经常修饰变化的发生, 显示场景也将被更新。不像大多数修饰动作是由用户事件47或目标控 制逻辑63驱动的,动画将迫使修饰自更新。动画进行更新以后,并如 果整个动画完成,则动画将从动画表41b中去掉。动画路径插补器41b 确定动画当前位于哪两个控制点之间。沿着动画已在两个控制点之间 (‘中间’值)传播率的这个信息用于内插相关的修饰参数56。该 中间值被表示为根据分子与分母的比:
X=x[开始]+(x[结束]-x[开始])*分子/分母
如果动画被设置为循环,则动画的开始时间被设置为动画结束时 的当前时间,使得更新以后也不被去掉。
客户机支持如下高级别用户交互的类型:点击、拖、重叠、和移 动。一个目标可以具有与其相关的按钮图象,当笔保持在一个目标之 上时,这个图象被显示。如果笔压向一个目标并在规定像素上移动时, 则该目标被拖动(只要拖动没有被目标或场景保护)。拖动实际上移 动了笔下的目标。当笔被释放时,该目标被移动动新的位置,除非移 动被目标或场景保护。如果移动被保护,当笔被释放时,拖动的目标 移回原始位置。可以实现拖动,使得用户可以下拉在其它各目标的顶 上的目标(例如,拖一个项到购物篮)中。如果笔被释放,同时该笔 还在其它目标之上,则这些目标被通知为与所拖目标的重叠事件。
通过目标控制包68在透明或深度上,各目标可以从点击、移动、 拖动、或改变进行保护。在目标控制包68中的PROTECT(保护)命 令可以具有单个的目标范围或系统范围。如果具有系统范围,则所有 目标受到PROTECT命令的影响。系统范围保护超越目标范围保护。
JUMPTO(跳跃)命令具有4种变量。一种变量允许跳跃到由超 链路规定的另外的文件中新规定场景。另一种允许利用来自由超链路 规定的分别的文件或场景的另外媒体目标替代在当前场景中的当前播 放的媒体目标流,和另外两个变量允许跳到相同文件中新的场景或利 用由目录索引规定的相同场景中另外目标替代播放媒体目标。每个变 量可以利用或不利用目标映射进行调用。另外,JUMPTO命令可以利 用来自本地持久目标库75存储的媒体目标取代当前播放媒体目标流。
虽然大多数交互控制功能可以由客户机20利用修饰引擎74结合 交互管理器41进行处理,但某些控制例可能需要按较低级别进行处 理,并被传回到服务器21。这包括用于非线性导航的命令,以便跳到 超链路和动态场景组合,除指令来自目标库75的目标插入的命令外。
图8的目标库75是持久的本地媒体目标库。通过称为目标库控制 包的特殊的目标控制包68和具有目标库模型字段设置的场景定义包 66,各个目标可以插入或从这个库去除。目标库控制包定义将对目标 执行的动作,包括;插入、更新、拖动和查询目标库。如果定义适当 目标库动作(例如插入或更新),输入数据交换/去复用32可以择径 压缩数据包52直接到目标库75。如图48的框图所示,每个目标被作 为分别的流存储在目标库数据存储器75g,该库不支持多交叉目标, 因为寻址是根据流号码的库ID的。因此,库可以包含高达200个分 别的用户目标,并且目标库可以利用特定场景号(例如250)进行参 考。该库还支持达55个系统目标,诸如缺省按钮、检查框、形式等。 该库支持垃圾收集,诸如在某个时间周期以后一个目标可能被设置为 过期的,此时该目标被从库中清除出。对于每个目标/流,包含在目标 库控制包中的信息由客户机20存储,含有用于流/目标的附加信息, 包括:库id 75a、版本信息75b、目标持续信息75c、访问限制信息75d、 唯一目标识别符75e和其它状态信息75f。该目标流附加地包括压缩目 标数据52。目标库75可以按照目标控制部分40的操纵,由图8的交 互管理引擎41进行查询。这是通过对库75中的所有目标连续读出和 比较目标识别符值找出与馈送的搜索密钥的匹配值实现的。库查询结 果75i被返回到交互管理引擎41,进行处理或者发送到服务器21。目 标库管理器75h负责管理与该目标库的所有交互。 服务器软件
服务器系统21的目的是:(i)产生正确数据流,用于客户机进 行解码和修饰;(ii)通过包括TDMA、FDMA、或CDMA系统的无 线信道可靠地发送所述数据到客户机;和(iii)处理用户交互。数据 流的内容是动态媒体组合处理76和由非线性媒体导航施加的非连续 访问请求的函数。客户机20和服务器21两者包括在DMC处理76中。 组合数据流的源数据可以来自单一源或来自多个源。在单一源的情况 下,该源应当包含对组成最后数据流所要求的所有任选数据成分。因 此,这个源可能包含不同场景的库,和将被用于组合的各种媒体目标 的多个数据流。因为这些媒体目标可以被同时组合入一个场景,对服 务器21的这部分提供先进的非连续访问能力,从每个媒体目标流中选 择合适的数据部分,以便交叉它们到最后的组合数据流中发送到客户 机20。在多源的情况下,将被用于组合的不同媒体目标的每个可以具 有单个的源。具有按分别源的一个场景的各个组成目标减轻服务器21 的复杂访问请求,因为虽然存在着多个源进行管理,但每个源仅需要 顺序地进行访问。
支持两种源的情况。对于下载和播放功能来说,最好是传送含有 打包内容的一个文件,而不是多个数据文件。对于流的播放,最好是 保持各个源的独立,因为这样允许在组合处理中的更多灵活性并订制 诸如定标用户的广告之类的特殊用户需要。分别源的情况还降低服务 器设备的负荷,因为所有文件的访问有顺序的。
图14是播放本地存储文件的交互媒体播放机的本地服务器部分 的框图。如图14所示,独立的播放机需要本地客户机系统20和本地 单一源服务器系统23。
如图15所示,码流播放机需要本地客户机20和远端多源服务器 24。但是,播放机还能同时播放本地文件和码流内容,这样客户机系 统20还能从本地服务器和远端服务器两者同时接收数据。本地服务器 23或者远端服务器24可以构成服务器21。
参照具有图14的消极媒体播放机的最简单的情况,本地服务器 23打开面向目标数据文件80和连续地读它的内容,传送数据64到客 户机20。当按用户控制包68执行用户命令时,文件的读操作可以从 它的当前位置上停止、暂停、和继续,或者可以从面向目标数据文件 80的开始端重新开始。服务器23执行2个功能:访问面向目标数据 文件80和控制这种访问。这些可以被综合到复用器/数据源管理器25 和动态媒体组合引擎76中。
在具有本地视频重放和动态媒体组合的更先进的情况中(图14), 对于客户机不可能只顺序地读具有复用目标的一个预定流,因为当产 生面向目标数据文件80时,复用流的内容是不知道的。因此,面向目 标数据文件80包括用于连续存储的每个场景的多个流。本地服务器 23随机地访问一个场景中的每个流并选择将要发送到客户机20用于 修饰的需要的目标。另外,持久目标库75由客户机20进行维护并且 当在线时可以从远端服务器进行管理。这被用作存储公共下载的各个 目标,诸如用于形成检查框图象。
图14的数据源管理器/复用器25随机地访问面向目标数据文件 80,从该各种流中读出数据和控制包,用于组成显示场景,并且复用 这些在一起产生客户机20用于修饰组成的场景的复合包流64。一个 流纯粹是概念上的,因为没有一个流的指示开始的包。但是,存在一 个流结束的包,划分流边界的界线,如图5的53所示。一般,在一个 场景中的第一流含有场景中各个目标的描述。该场景中的目标控制包 可以改变一个特定目标到不同流的源数据。然后,当执行本地重放时, 服务器23需要从一个面向目标数据文件80中同时读出多于一个的流。 并不是产生分别的线索,而是可以产生一个阵列或链接的流表。数据 源管理器/复用器25以循环的方式从每个流中读出一个包。至少,每 个流需要存储在文件中的当前位置和一个参考目标的表。
在这种情况下,当从客户机20接收到用户控制信息68时,图14 的动态媒体组合引擎76选择将被组合在一起的各个目标的正确的组 合,并保证根据由复用器/数据源管理器25提供给动态媒体组合引擎 76目录信息,复用器/数据源管理器25知道到哪里找到这些目标。这 还可以要求一种目标映射功能,映射具有运行时间目标识别符的存储 目标识别符,因为取决于组合它们可以不同。典型的情况是,这可能 发生在文件80中的多个场景可能希望共享一个特定视频或音频目标 时。因为一个文件可以含有多个场景,这可以通过在特定“库”场 景中存储共享的内容来实现。在一个场景中的各个目标具有从0-200 范围的目标ID,并且每次遇到新场景定义包,没有目标的场景被复位。 每个包含有基本首端,规定包的类型以及参考目标的目标ID。254的 目标ID代表场景,而255的目标ID代表文件。当多个场景共享一个 目标数据流时,并不知道哪个目标ID将已被分配给不同的场景,因 此,不可能在共享目标流中预选目标ID,可能这些ID已经在一个场 景中被分配了。解决这个问题的一种方法是在一个文件中具有唯一 ID,但这样增加了存储空间并且使得管理稀少目标ID更困难。这个 问题是通过允许每个场景使用它自己的目标ID解决的并且当来自一 个场景的包指示跳到另一个场景时,它规定来自每个场景ID之间的 目标映射。当从新的场景读出各个包时,该映射被用于转换该目标ID。
期望目标映射信息将在与JUMPTO命令相同的包中。如果这个 信息是不可用的,则该命令被简单地忽略。目标映射可以由两个阵列 表示:一个用于将在流中遇到的源目标ID,和另一个用于目的目标ID, 这个ID是将由源目标ID变换的。在当前流中如果存在目标映射,则 新的映射的目的ID利用当前流的目标映射阵列进行变换。如果在包 中不规定目标映射,则新的流继承当前流(它可能是零)的目标映射。 在一个流中的所有目标ID应当进行变换。例如,诸如基本首端ID、 其他ID、按钮ID、copyFrame(复制帧)ID、和重叠ID的各个参数 应当都被变换为目的目标ID。
在远端服务器情况,如图15所示,该服务器是与客户机远离的, 这样数据64将发码流到客户机。媒体播放机客户机20被设计为解码 从服务器24接收的各个包并发回用户操作68到服务器。在这种情况 下,远端服务器24负责响应用户操作(如点击一个目标),并且修改 正在发到客户机的包流64。在这种情况下,每个场景含有单一复用流 (由一个或多个目标组成)。
在这种情况下,根据客户机请求,服务器24通过复用多个目标数 据流实时地组成各个场景,以构成一个单一复用包流64(对于任何规 定场景),该流被码流发到该客户机用于重放。这种结构允许根据用 户的交互,使正在重放的媒体内容进行改变。例如,两个视频目标可 以进行同时重放。当用户点击或选择一个时,其改变为不同的目标, 同时另一个视频目标仍然不变。每个视频可以来自不同的源,使得服 务器打开各个源和交叉比特流两者,增加适当的控制信息并传送新组 成的流到客户机。服务器的责任是在码流发到客户机之前适当修改该 流。
图15是远端码流服务器24的框图。如所示,类似于本地服务器, 远端服务器24具有2个主要功能部分:数据流管理器26和动态媒体 合成引擎76。但是,智能复用器27可以例如从多个数据流管理器26 提取输入,每个具有单一数据源并来自动态媒体组合引擎76,而不是 来自具有多输入的单一管理器。连同从各个源被复用在一起的目标数 据包,智能复用器27插入附加各个控制包到包流中,以控制组成的场 景中的各个组成目标的修饰。远端数据流管理器26也是比较简单的, 仅执行顺序访问。此外,远端服务器包括XML分析器28,能够通过 IAVML源程序(script)29可编程地控制动态媒体组合。远端服务器 还从服务器操作员数据库19接收多个输入,进一步控制和订制动态媒 体组合处理76。可能的输入包括:每天的时间、每周的星期几、每年 的天、客户机的地理位置,和用户的人口统计数据,诸如性别、年龄、 任何存储的用户概况等。这些输入可以利用IAVML源程序作为变量 以有条件地表达式而实现。远端服务器24还负责传送诸如目标选择之 类的用户交互信息并形成数据返回到服务器操作员数据库19,用于以 后接着的处理,诸如数据小型化等等。
如图15所示,DMC引擎76接收3个输入和提供3个输出。输入 包括:以XML为基础的源程序、用户输入和数据库信息。XML源程 序被用于通过规定如何组成正在码流发到客户机20的场景控制DMC 引擎76的操作。组合是通过来自用户与在当前场景中的各目标的交互 的可能而传递,或来自分别的数据库的输入而传递的,这些当前场景 中的目标具有加在上面的DMC控制操作。这个数据库可以含有涉及 日期时间、客户机的地理位置、或用户概况的信息。该源程序可以根 据这些输入的任何组合控制动态组合处理。这是通过指令数据流管理 器打开到DMC操作的连接和读出DMC操作所需的适当目标数据请 求,由DMC处理执行的,它还指令智能复用器修改它的从数据流管 理器接收的各目标包的交叉,并且指令DMC引擎76实现一个场景中 的目标的去除、插入或替代。DMC引擎76还根据对每个在源程序中 的目标控制规定,选择性地产生和加控制信息到各目标上,并且提供 这个信息到智能复用器,用于作为目标的一部分发码流到客户机20。 因此,由DMC引擎76执行所有处理并且没有工作由客户机20执行, 而不是根据由任何目标控制信息提供的参数修饰自含目标。DMC引 擎76能够交替一个场景中的各个目标和视频中的各个场景两者。
与这种处理不同MPEG4要求执行相似功能。这种处理不利用源 程序语言,而依赖BIFS。因此,场景的任何修改都要求如下分别的修 改/插入操作:(i)BIFS、(ii)目标描述符、(iii)目标构形信息、 和(iv)视频目标数据包。BIFS必须在客户机中利用特定的BIFS-命 令协议进行更新。因为MPEG4具有分别的而不互相依赖的数据部分 定义一个场景,在组成成分中的改变不能通过简单地复用各目标数据 包(有或没有控制信息)到一个包流实现,而要求远端操纵BIFS、数 据包的复用和构形信息、和新的目标描述符包的产生和传送。另外, 如果对MPEG4目标要求先进的交互功能,分别写的Java程序被发送 到BIFS,用于由客户机执行,这样明显加重处理的额外开销。
如图16所示的流程图描述了本地客户机执行动态媒体组合 (DMC)操作。在步骤s301,客户机DMC处理开始并立即开始提供 目标组合信息到数据流管理器、简化多目标视频重放,如步骤s302所 示。DMC检查用户命令表和其它各多媒体目标的可用性,保证视频 仍然在播放(步骤s303);如果没有更多数据或用户已经停止视频重 放,则客户机DMC处理结束(步骤s309)。在步骤s303,如果视频 重放继续,则DMC处理将浏览启动DMC动作的用户命令表和目标 控制数据。如步骤s304所示,如果没有被启动的动作,则处理返回步 骤s302并且视频重放继续。但是,如果在步骤s304已经启动DMC 动作,则DMC处理检查对象多媒体目标的位置,如步骤s305所示。 如果对象目标本地存储,则本地服务器ADMC处理发送指令到本地 数据源管理器,从本地源端出修改的目标流,如步骤s306所示,然后 处理返回步骤s304检查进一步启动的DMC动作。如果对象目标存储 在远端,则MDC处理发送适当的DMC指令到远端服务器,如步骤 s308所示。另外一种方案,DMC动作可以请求来源于本地和远端两 者的对象目标,如步骤s307所示,因此适当的DMC动作由本地DMC 处理执行(步骤s306),并且DMC指令被发送到远端服务器来处理 (步骤s308)。从这种讨论中清楚看出,本地服务器支持混合、多目 标视频重放,其中源数据是从本地和远端两者传送的。
利用如图17所示的流程图描述动态媒体组合引擎76的操作。在 步骤s401开始DMC处理,并且在步骤s402进入等待状态,直至接 收到DMC请求。在接收到一个请求以后,在步骤s403、s404和s405, DMC引擎76查询请求类型。如果在步骤s403该请求被确定为目标替 换动作,则存在两个对象目标,一个动作对象目标和一个新的对象目 标将被加到流中。首先,在步骤s406指令数据流管理器从复用的比特 流中删除动作对象目标包,并停止从存储器中读动作对象目标流。其 次,在步骤s408指令数据流管理器从存储器中读新的对象目标流,并 且交叉这些包到发送的复用比特流中。然后,在步骤s402,DMC引 擎76返回其等待状态。如果在步骤s403请求不是目标替换动作,在 步骤s404如果动作类型是目标去除动作,则是动作对象目标的一个对 象目标存在。在步骤s407处理目标去除动作,在该步骤指令数据流管 理器从复用比特流中删除动作对象目标包,并停止从存储器中读动作 对象目标流。然后,在步骤s402,DMC引擎76返回等待状态。在步 骤s404,如果请求的动作不是目标去除动作,在步骤s405如果动作是 目标加入动作,则是新的对象目标的一个对象目标存在。在步骤408 处理目标加入动作,在该步骤指令数据流管理器从存储器读新的对象 目标流,并且交叉这些包到发送的复用比特流中。然后,在步骤s402, DMC引擎76返回等待状态。最后,请求的DMC动作不是目标替换 动作(在步骤s403)、或不是目标去除动作(在步骤s404)、或不是 目标加入动作(在步骤s405),则在步骤s402,DMC引擎76忽略请 求并返回等待状态。 视频解码器
存储、发送和处理未加工的视频数据是低效率的,这样计算机视 频系统通常编码视频数据为压缩格式。下面这部分是描述如何将视频 数据编码为有效的压缩形式。这部分描述负责从压缩的视频数据流中 产生视频数据的视频解码器。该视频编解码器支持任意构形的视频目 标。它利用3个信息分量表示每个视频帧:一个色图、一个树形编码 位映像、和一个
运动矢量表。该色图是在帧中使用的所有的色的表, 该表是按分配给红、绿和兰每个分量的8比特的具有24比特的
精度。 通过它们的索引这些色被引入到色图中。位映像被用于定义许多部分, 包括在显示时将被修饰的帧中的各个像素的色、将被作成透明的帧的 区域、和将不改变的帧的区域。在编码帧中的每个像素可以分配给这 些功能之一。通过它的值定义一个像素起到这些功能中的哪个的作用。 例如,如果使用8比特色表示,则色值0xFF可以被分配给指示对应 于场景上的像素,它从其当前值是不改变的,并且色值0xFE可以被 分配给指示对应于场景上的该目标将是透明的像素。编码的帧像素色 值指示它是透明的一个场景的情况下,屏上像素的最后色取决于背景 场景色和任何在下面的视频目标。下面描述对于这些分量的每个使用 的构成编码视频帧的具体编码。
通过首先发送一个整数值到比特流以指示接着的表项目号来编码 色表。将要发送的每个表项目然后由首先发送的其索引进行编码。接 着,对每个色分量(Rf、Gf和Bf)发送1比特标志,指示:如果该 标志是ON(通),则色分量被全字节发送,并且如果该标志是OFF (断),则将发送代表色分量的高序半字节(4比特)和低序半字节 设置为0。因此,按照下列图形对表项目进行编码,其中括号中的数 或C语言指示发送的比特数R(Rf?8:4)、G(Gf?8:4)、B(Bf? 8:4)。
运动矢量按照一个阵列进行编码。首先,发送按16位值的阵列中 的各运动矢量的号,接着是宏块的尺寸,然后是运动矢量的阵列。阵 列中的每个项目含有宏块位置和块的运动矢量。运动矢量按2个带符 号的矢量的每个
水平和垂直分量之一的半字节进行编码。
利用预定
树遍历方法编码实际视频帧数据。在树的叶上存在两个 类型:透明叶和区域色叶。透明叶指示由叶表示的屏上显示区是不变 的,而色叶将强迫屏上区为由叶规定的色。根据这3个功能,可以按 照事先的描述分配任何编码的像素,透明叶将对应于0xFF的色值, 而表示屏上区被强迫为透明的具有0xFE值的像素被处理为正常区色 的叶。该编码器在树的顶端开始并在每个节点存储单一比特,指示是 否该节点是一个叶或一个父体。如果是叶,这个比特值设置为ON (通),并且发送另外的单一比特,指示是否该区是透明的(OFF), 否则接着另一个比特标志设置为ON,指示是否该叶的色作为一个索 引被发送到FIFO缓冲器或者作为实际索引发送到色图。如果这个标 志被设置为OFF,则两个比特的码字作为FIFO缓冲器的各项目之一 的索引被发送。如果标志ON,则这指示在FIFO中未找到叶色,并 且实际色值被发送并且还插入到FIFO,推出存在的各项目之一。如 果该树节点是
父节点,则存储一个单一OFF比特,并且然后利用相同 方法,4个
子节点的每个单个地进行存储。当编码器到达树的最低级 别时,则所有节点是叶节点并且不使用叶/父体指示比特,代之以存储 第一叶色码字接着的透明比特。比特图形的发送可以被表示为如下。 使用如下的各个符号:节点类型(N)、透明(T)、FIFO预测色(P)、 色值(C)、FIFP索引(F)
N(1)…off→N(1)[…],N(1)[…],N(1)[…],N(1)[…]
\…on→T(1)…off
\…on→P(1)…off→F(2)
\…on→C(x)
图49是表示视频帧解码处理一个实施例的之一步骤的流程图。对 压缩比特流的视频帧解码处理在步骤s2201开始。在步骤s2202从比 特流中读出压缩比特流中用于物理地分开各种信息分量的层识别符。 如果层识别符指示运动矢量数据层开始,则步骤s2203前进到s2204, 从比特流中读出和解码运动矢量,并且执行移动补偿。运动矢量被用 于从以前缓冲的帧中将指示的宏块复制到叶该矢量指示的新位置。当 移动补偿处理完成时,在步骤s2202从比特流读出下一层指示符。如 果该层指示符指示4元树数据层开始,步骤s2205前进到步骤s2206, 并且利用读出的叶色处理启动FIFO缓冲器。接下来,在步骤s2207, 从压缩比特流中读出4元树的深度,并用于启动该4元树的4个侧面。 在步骤S2208,压缩的位映像4元树现在被解码。由于4元树的数据 被解码,根据叶值修改帧中的区域值。它们可能被用新的色重写、设 置透明、或保持不变。当4元树数据被解码时,在步骤s2202,解码 处理从压缩比特流中读下一层识别符。如果该层指示色图数据层开始, 步骤s2209前进到步骤s2210,从压缩比特流中读出将被更新的色数。 在步骤s2211如果存在一个或多个色更新,则在步骤s2212从压缩比 特流中读出第一色图索引值,并在步骤s2213从压缩比特流中读出色 分量值。每个色更新又通过步骤s2211、s2212、和s2213读出,直至 所有色更新均已被执行,此时步骤s2211前进到步骤s2202,从压缩比 特流中读出新的层识别符。如果层识别符是一个数据结束识别符,步 骤s2214前进到步骤s2215并结束视频帧解码处理。如果通过步骤 s2203、s2205、s2209和s2214层识别符是未知的,则层识别符被忽略, 并且处理返回s2202读下一个层识别符。
图50是表示具有底级别节点类型消除的4元树解码器主要步骤的 流程图。这个流程图实现一种递归方法,对于处理的每个树的象限递 归地调用自身。4元树解码方法从步骤s2301开始,具有与识别将被 解码的象限的深度和位置相同的机制。在步骤s2302中,如果该象限 是非底部象限,则在步骤s2307,从压缩比特流中读节点的类型。在 步骤s2308,如果节点类型是父节点,则然后在步骤s2309对顶部左 象限、在步骤s2310对顶部右象限、在步骤s2311对底部左象限、在 步骤s2312对底部右象限,4个递归调用作出4元树解码处理,接着 在步骤s2317该解码处理的
迭代结束。对每个象限的作出的递归调用 的具体次序是任意的,但是,该次序与由编码器执行的4元树去组合 处理的次序是相同的。如果该节点类型是一个叶节点,处理从步骤 s2308到s2313继续,并从压缩比特流中读出叶类型值。在步骤s2314, 如果该叶类型值指示一个透明叶,则在步骤s2317,解码处理结束。 如果该叶是不透明的,则在步骤s2315从压缩比特流中读出叶色。在 本
说明书中,叶读出色值功能使用FIFO缓冲器。接下来,在步骤 s2316,该图象树被设置适当叶色值,这可能是背景目标色或按指示的 叶色。在图象更新完成以后,在步骤s2317,这次迭代4元树解码功 能结束。递归调用4元树解码功能继续,直至达到底层象限。在这一 层不存在需要包括压缩比特流中的父体/叶节点的指示符,因为在这一 层的每个节点都是叶,因此步骤s2302前进到步骤s2303,并立即读出 叶类型值。如果在步骤s2304叶是不透明的,则在步骤s2305从压缩 比特流中读出叶色值,并且在步骤s2306图象象限色被适当更新。这 种解码处理的迭代在步骤s2317结束。4元树解码处理的递归处理实 行继续,直至压缩比特流中的所有叶节点都已被解码。
图51表示读4元树叶色执行的步骤,在步骤s2401开始。在步骤 s2402从压缩比特流中读单一标志。这个标志指示该叶色是将从FIFO 缓冲器还是直接从比特流读出的。在步骤s2403如果叶色不是从FIFO 读出的,则叶色是在步骤s2404从压缩比特流读出的,并且在步骤 s2405被存储在FIFO缓冲器中。在FIFO中存储的新读出的色推出 FIFO中最近加入的色。在更新FIFO后于步骤s2408,读取叶色功能 结束。然而,如果该叶的色已经被存储在FIFO中,则在步骤s2406 从压缩比特流读出FIFO索引码字。在步骤s2407,根据当前读出的码 字通过检索FIFO确定该叶色。在步骤s2408结束读出叶色的处理。 视频编码器
到此为止,讨论了针对预存在的视频目标和含有视频数据的文件 的操作。以前的部分,描述了如何将压缩的视频数据进行解码产生未 加工的视频数据。在这部分中,讨论产生这种数据的处理。该系统被 设计为支持多个不同编解码器。这里描述两个这样的编解码器,其它 方案还可以用于包括MPEG族和H.261和H.263及其后继版本。
该编码器包括如图18所示的各个主要部分。这些部分是按软件实 现的,但为了增加编码器的速度,所有部件可以用特别开发执行编码 处理的各个步骤的
专用集成电路(ASIC)实现。音频编码部分12压 缩输入音频数据。根据ITU规范G.723或者IMA ADPCM编解码器, 音频编码部分12可以使用自适应增量脉冲编码调制(ADPCM)。场 景/目标控制数据部分14编码与输入音频和视频相关的场景动画和表 示参数,确定每个视频目标的关系和行为。输入色处理部分10接收和 处理单个的输入视频帧并消除残余和不希望的色。这种处理还从图象 中去掉不希望的噪声。可以选择地,利用以前编码帧作为基础,对输 入色处理器10的输出执行移动补偿。色差管理和同步部分16接收输 入色处理器10的输出,并根据以前编码帧作为基础确定利用任选移动 补偿进行编码。然后,输出被提供到组合空间/时间编码器18以压缩 视频数据,并被提供到执行反向功能的解码器20用以在一个帧延迟 24之后提供帧到移动补偿部分11两者。发送缓冲器22接收空间/时间 编码器18、音频编码部分12和控制数据部分14的输出。发送缓冲器 22经速率信息反馈到组合空间/时间编码器18,通过交叉编码数据和 控制
数据速率,管理来自装在编码器中的视频服务器的发送。如果需 要,编码数据可以由用于传输的加密部分28进行加密。
图19的流程图描述编码器执行的主要步骤。视频压缩处理在s501 开始,输入帧压缩环路(s502到s521),并当在步骤s502输入视频 数据流中没有剩余视频数据帧时,在步骤s522结束。在步骤s503取 出来自输入数据流的未加工视频帧。此时,可能希望执行空间过滤。 执行空间过滤以降低正在产生的视频的比特率或总位数。但是空间过 滤还降低保真度。如果在步骤s504确定执行空间过滤,则在步骤s505 计算当前输入视频帧与以前处理过的或重建过的视频帧之间的色差 帧。最好是执行其中存在着运动的空间过滤,以及计算帧差的步骤指 示存在着运动的,如果没有差,则不存在运动,并且一个帧在各区域 中的差指示这些区域的运动。接下来,在步骤s506,对输入视频帧执 行局部空间过滤。这种过滤是局部的,使得仅各帧之间有改变的图象 区被过滤。如果希望,也可以对I帧执行空间过滤。这可以利用任何 希望的技术进行,包括:例如反向梯度过滤、中间过滤、和/或这两种 类型的组合过滤。在步骤s505中,如果希望对一个关键帧执行空间过 滤并且还计算帧差,则用于计算帧差的参考帧可以是一个空帧。
在步骤s507执行色量化,从图象去除统计上不重要的色。对于静 止图象的色量化的一般处理是公知的。可以使用在本发明中的色量化 的举例类型的所有技术包括但不限于描述在和援引于美国
专利 5432893和4654720的所有技术中,这些专利援引于此以资参考。还 包含供参考的是在这些专利中援引和参考的所有文献。关于步骤s507 的色量化的进一步的信息参考图20的单元10a、10b和10c进行说明。 如果对这一帧执行色图更新,流程从步骤s508前进到步骤s509。为了 实现高质量的图象,色图可以每帧被更新。但是,这样可能导致太多 信息要被传输,或者可能要求太多的处理。因此,替代更新每帧的色 图,色图以每n帧被更新,其中n是等于或大于2的整数,最好是小 于100,并更好是小于20。另一种方案是,色图可以被平均每n帧更 新,其中n不要求是一个整数,而可以是包括大于1和小于诸如100 和更好是小于20的预定数的分数的任何值。这些数仅是示例性的并 且,如果希望,按照需要色图可以经常或不经常地更新。
当希望更新色图时,在步骤s509执行新色图的选择和与以前帧的 色图进行相关。当色图改变或被更新时,则希望保持当前帧的色图类 似于以前帧的色图,以便没有使用不同色图的各个帧之间的视觉上的 不连续性。
如果在步骤s508没有色图(例如,不需要更新色图),则以前帧 的色图被选择或使用于这一帧。在步骤s510,根据选择的色图,量化 的输入图象色被重新映射为新的色。步骤s510对应于图20的方框 10d。接下来,在步骤s511执行帧缓冲器交换。步骤s511的帧缓冲器 交换促进更快和更高存储器效率的编码。作为帧缓冲器交换的实施例 子,可以使用两个帧缓冲器。当一个帧已经被处理时,用于这个帧的 缓冲器被指定保持过去的帧,和一个在另外的缓冲器接收的新帧被指 定为当前帧。这种帧缓冲器的交换允许有效的存储器分配。
一个关键参考帧,也称为参考帧或关键帧可以用作参考。如果步 骤s512确定这个帧(当前帧)将被编码为,或者指定为关键帧,则视 频压缩处理直接到步骤s519,以编码和发送该帧。一个视频帧可以被 编码为关键帧,由于如下原因,包括:(i)接着视频定义包的视频帧 序列中的第一帧,(ii)该编码器检测视觉场景在视频内容的变化, 或(iii)用户已经选择将插入到视频包流中的关键帧。如果该帧不是 关键帧,在步骤s513视频压缩处理计算当前色图索引的帧与以前重建 色图索引的帧之间的差帧。该差帧、以前重建的色图的索引的帧、和 当前色图索引的帧被使用在步骤s514中,以产生运动矢量,在步骤 s515该运动矢量又被使用于重排以前帧。
在步骤s516比较重排的以前帧和当前帧,产生有条件的补充图 象。如果在步骤s517能实现兰屏透明,则s518将脱离落入兰屏
阈值 的差帧的各区域。在步骤s519,现在该差帧被编码和发送。步骤s519 下面参照图24将进一步说明。在步骤s520根据编码比特流的尺寸建 立比特速率控制参数。最后在步骤s521重建编码帧,用于在步骤s502 开始编码下一个视频帧。
图18的输入色处理部分10执行统计上的不重要色的减少。选择 执行这种色减少的色空间是不重要的,因为利用多个不同色空间的任 何一个可以实现相同的结果。
如上所述,利用各种矢量量化技术可以实现统计上不重要色的减 少,并且利用包括描述在作者为S.J.Wan,P.Prusinkiewicz, S.KM.Wong的出版物“Variance-Based Color Image Quantization for Frame Buffer Display”,(Color Research and Application,Vol.15, No.1,Feb 1990)中的普及的、中央分割的、k-最近似邻近值的和方 差方法的任何其它技术也可以实现,该出版物援引于此,以资参考。 如图20所示,这些方法可以利用一种初始统一或非自适应量化步骤 10a通过减少矢量空间,改善矢量量化算法10b的性能。如果需要, 方法的选择是保持各个量化视频帧之间的最高时间相关量。到这种处 理的输入是侯选视频帧,并且通过分析个帧中的统计色分配使该处理 继续进行。在10c,选择用于代表图象的各个色。利用某些手工处理 装置或者个人数字帮助的现在可用的技术,同时显示例如256色可能 存在着限制。因此,10c可以用于选择将用于代表图象的256个不同 色。矢量量化处理的输出是一个表示整个帧10c的各个色的表,该帧 可以在尺寸上进行限制。在普及方法的情况下,选择最经常N个色。 最后,原始帧中的每个色被重新映射10d到表示集中的各个色之一。
输入色处理部分10的色管理部分10b、10c和10d管理视频中的 色变化。输入色处理部分10产生含有一组显示色的表。这组色随时间 动态地变化,规定处理是以每帧为基础自适应的。这允许各个视频帧 的色成分不降低图象质量地改变。选择适当的方案管理色图的自适应 是重要的。对于每个色图存在3个不同的可能性:可以是静态的、分 段和部分静态的、或全动态的。利用固定或静态的色图,局部色质量 将被降低,但保存帧间的高相关性,导致高的压缩增益。为了保持在 视频场景可能经常变化情况中的高质量图象,色图应当能够立即自适 应。对每帧任选新的最佳色图具有高的带宽要求,因为不仅色图要每 帧更新,而且还有大量的像素每次应将需要重新映射。这种重新映射 还引入色图闪烁的问题。一种折中是仅允许在连续帧之间的有限的色 变化。这可以通过分割色图为静态和动态部分,或者通过限制每帧允 许变化的色数来实现。在第一种情况下,可以修改表的动态部分的项 目,它保证某些预定义的色始终是可用的。在另外一种方案中,不保 留各个色和可修改任何色。同时这种方法帮助保存某些数据相关性, 色图可能不能迅速地足以在某些情况下消除图象质量恶化的自适应。 现存的各个方法折中图象质量与保存帧间的图象相关性。
对于任何这些动态色图的方案,对保存时间上的相关性同步是重 要的。这种同步处理具有3个部分:
1.保证随着时间从一帧转到下一帧的色被映射到相同的索引。这 涉及采用与当前色图相关的每个新色。
2.一种替换方案被用于更新改变的色图,降低色闪烁的量,最适 合的方案是利用最相似的新替代色替代绝对色。
3.最后,在图象中对不再受到支持的任何色的所有现存的参考由 对当前支持色的参考替代。
接着图18的输入色处理10,视频编码器的下一个部分索引的各 个色帧并任选地执行运动补偿11。如果不执行运动补偿,则来自帧缓 冲器的24的以前帧不由运动补偿部分11修改并直接传送到色差管理 和同步部分16。优选的运动补偿方法由分段视频帧为小块开始,并确 定视频帧中像素数需要补充或更新和超过某个阈值是不透明的所有 块。然后,对产生的像素块执行运动补偿处理。首先,在该区的邻近 进行搜索,确定是否该区从以前帧已经被取代。对于执行这种操作的 传统方法是计算参考区与侯选替换区之间的均方误差(MSE)或和误 差平方和(SSE)度量。如图22所示,可用利用一种穷举搜索或多个 其它现存搜索技术之一执行这种处理,这些技术诸如2D对数11a、3 步骤11b、或简化的共扼方向搜索11c。这种搜索的目的是找到对该区 的替代矢量,通常叫做运动矢量。传统的度量不利用索引的/色映射图 象表示,因为这些方法依靠提供连续图象表示的连续性和空间-时间相 关性。利用索引表示,存在非常小的空间相关并且从一帧到一帧非逐 渐地或连续地像素色改变,相反,改变是不连续地,按照色索引跳到 新的色图项目,反映像素色的变化。因此,单索引/像素变化色将引入 对于MSE或SSE的大的变化,降低了这些度量的可靠性。因此,对 于定位区替换的较好的度量是如果该区不透明以前帧与当前帧区比较 的差最小的像素数。找到一旦运动矢量,根据运动矢量,通过从其在 以前帧中的原始位置预测该区中的像素值。如果给出最小差的该矢量 对应于非替换,该运动矢量可能是0。对于每个替换块的运动矢量, 连同其相关块地址被编码到输出比特流。接着,色差管理器部分16 计算运动补偿以前帧与当前帧之间的感觉差。
色差管理器部分16负责计算当前的与以前帧之间的每个像素的 感觉色差。这种感觉色差是根据对感觉色降低所描述的相似方法计算 的。如果它们的色已经变化超过规定量,则更新像素。色差管理器部 分16还负责清除图象中所有无效色图参考,并利用有效参考替换这 些,产生一个有条件的补充图象。当在色图中较新的色替代老的色时, 可能发生无效色图参考。然后,这种信息被传到视频编码处理中的空 间/时间编码部分18。这种信息指示在帧中哪个区是全透明的,并且哪 个需要替换,并且在色图中哪个色需要更新。帧中不更新的所有区由 设置像素为已经选择表示不更新的预定值予以识别。这个值的含义允 许任意构形的视频目标的产生。为了保证预测误差不累积并不恶化图 象质量,使用环路
过滤器。这强迫帧补充数据将从该出现的帧和累积 的以前发送数据(解码图象的当前状态)来确定,而不是从出现的和 以前的帧确定。图21提供色差管理部分16的更详细的图。当前帧存 储器16a含有从输入色处理部分10产生的图象。以前帧存储部分16b 含有由1帧延迟部分14缓冲的帧,它可以有或者可以没有由运动补偿 部分11进行的运动补偿。色差管理部分16分为2个主要部分:各个 像素之间的感觉色差的计算16c,和无效色图参考的清除16f。感觉色 差相对于阈值16d进行评估,确定哪些像素需要更新,并且产生的像 素被任选地过滤16e,以降低数据速率。从过滤空间过滤器16e和无 效色图参考16f的输出形成最后更新的图象16g,并且被发送到空间 编码器18。
这产生现在编码有条件补充帧。空间编码器18利用树分裂方法, 根据分裂的标准,递归地分割每个帧为较小的多边形。如图23所示使 用4元树分裂23d。在一个第0序插值的例子中,这试图通过统一块 表示图象23a,其值等于该图象的整体平均值。在另外一个例子中, 可以使用第一和第二序插值。在图象的某个位置上,如果这个表示值 与实际值之间的差超过某个容限的阈值,则该块被递归地均匀地细分 为2个或4个子区,并且对每个子区计算新的平均值。对于无损失地 图象编码,不存在容限阈值。树结构23d、23e、23f是由各个节点和 各个指针组成的。其中每个节点表示一个区并含有对任何可能存在的 代表子区的子节点的各个指针。有2个类型的节点:叶23b和非叶23c 节点。叶节点23b是不进一步分解并从而没有子女的,代之以含有暗 示区的值的这样的节点。非叶节点23c不含有代表值,因为这些节点 叶进一步由各个子区组成并且从而含有相应各个子节点的指针。这些 节点也可以叫做父节点。 动态位映像(色)编码
单一视频帧的实际编码表示包括:位映像、色图、运动矢量和视 频增量数据。如图24所示,视频帧编码处理从步骤s601开始。如果 (s602)运动矢量经由运动补偿处理产生,则在步骤s603对运动矢量 编码。如果因为以前的视频帧(s604)色图已改变,则在步骤s605编 码新的色图项目。在步骤s606从位映像帧产生树结构并在步骤s607 进行编码。如果(s608)视频增量数据将进行编码,则在步骤s609编 码增量数据。最后,在步骤s610结束视频帧编码处理。
实际4元树视频帧数据利用预排序树遍历方法(preordered tree traversal method)。树中可能有2种类型的叶:透明叶和区域有色叶。 透明叶表示由叶指示的区从以前值不改变(这些不存在于视频关键帧 中),并且色叶含有区色。图26表示预定树遍历编码方法,用于具有 第0序插值和底层节点类型消除的正常预测的视频帧。图26的编码器 在步骤s801开始,在步骤s802初始地加4元树层识别符到编码的比 特流上。在树的顶部开始,步骤s803,编码器得到初始节点。在步骤 s804,如果节点的父节点,则在步骤s805,编码器加一个父节点指示 符(一个单0比特)到比特流中。接着,在步骤s806,从树取下一个 节点,并且编码处理返回步骤s804,编码树中的接下来的各个节点。 在步骤s804,如果节点不是父节点,即是叶节点,则在步骤s807编码 器检查该节点在树中的级别。在步骤s807,如果该节点不是树的底部, 则在步骤s808,编码器即加一个叶节点标志(一个单一的1比特)到 比特流中。在步骤s809,如果该叶区是透明的,则在步骤s810,透明 叶标志(一个单0比特)被加到比特流中。否则,在步骤s811,一个 不透明叶标志(单1比特)被加到比特流中。然后在步骤s812,不透 明叶色被按如图27所示编码。但是,在步骤s807,如果叶节点是在 树的底部级别,则发生底部级别节点类型的消除,因为所有节点都是 叶节点,并且没有使用叶/父体指示比特,使得在步骤s813,4个标志 都被加到比特流中,以指示在这个级别上的4个叶的每一个是透明的 (0)或是不透明的(1)。接下来,在步骤s814,如果顶部的左叶是 不透明的,则在步骤s815顶部的左叶的色被按如图27所示编码。在 这个第二底部级别,每个叶节点重复步骤s814和s815的每一步,对 于顶部右节点,如在步骤s816和s817所示,对于底部左节点,如在 步骤s818和s819所示,对于底部右节点,如在步骤s820和s821所示。 在叶节点被编码以后(从步骤s810、s812、s820或s821),在步骤s822, 编码器检查在树上是否还有剩余的节点。如果在树上没有剩余的节点, 则在步骤s823编码处理结束。否则,在步骤s806编码处理继续,在 该步骤从树上选择下一个节点,并且从步骤s804对新的节点整个处理 重新开始。
在视频关键帧(没有预测)的特殊情况下,如图28所示,这些不 具有透明的叶和使用稍不同的编码方法。关键帧编码处理从步骤s1001 开始,在步骤s1002初始地加4元树级别指示符到编码的比特流中。 在树的顶部开始,步骤s1003,编码器得到初始节点。在步骤s1004, 如果该节点是父节点,则步骤s1005编码器加父节点标志(单一0比 特)到比特流中,接下来,在步骤s1006从树取下一个节点,并返回 步骤s1004的编码处理,以编码树的下一个节点。但是,如果在步骤 s1004该节点不是父节点,即是叶节点,则在步骤s1007编码器检查该 节点在树上的节点级别。在步骤s1007如果该节点大于树的从底部一 个级别,则在步骤s1008编码器加一个叶节点标志(一个单一1比特) 到比特流。然后,在步骤s1009按如图27所示编码不透明叶色。但是, 在步骤s1007如果该叶节点是从树的底部的一个级别,则出现底部级 别节点类型消除,因为所有节点都是叶节点并且不使用叶父体指示比 特。因此,在步骤s1010,顶部左叶色被按如图27所示编码。接下来, 在步骤s1011、s1012和s1013,不透明叶色被分别类似于顶部右叶、 底部的左叶和底部的右叶编码。在叶节点被编码(从步骤s1009或 s1013)以后,在步骤s1014编码器检查是否还有节点在树上。如果没 有节点在树上,在步骤s1015编码处理结束。否则,在步骤s1016编 码处理继续,在该步骤从树选择下一个节点,并且对新的节点从步骤 s1004整个处理重新开始。
利用FIFO缓冲器如图27所示对不透明叶色进行编码。叶色编码 处理从步骤S901开始。要编码的色与已经在FIFO中的4个色比较。 在步骤s902如果确定该色在FIFO缓冲器中,则在步骤s903单一FIFO 查找标志(单一1比特)被加到比特流中,接着在步骤s904作为索引 表示叶色的比特码字进入FIFO缓冲器。这个码字索引FIFO缓冲器 中4个项目之一。例如,00、01和10的索引值分别规定该叶色与以 前叶、此前的以前不同叶色、和此前的以前叶色相同。但是,在步骤 s902如果待编码的色是FIFO中不可用的,则在步骤s905发送的色标 志(单一0比特)被加到比特流中,在步骤s906接着发送表示顶部实 际色值的N比特。另外,该色被加到FIFO,推出现存的各个项目之 一。然后,色叶编码处理在步骤s907结束。
色图被类似地压缩。标准表示是按24比特发送每个索引,其中8 比特规定红分量值、8比特用于绿分量和8比特用于兰分量。在压缩 格式中,单一比特标志指示是否每个色分量是按照全8比特值规定的, 或者刚好顶部半字节与底部4比特设置为0。接着这个标志,分量值 按照8或4比特根据该标志进行发送。图25的流程图描述利用8比特 色图索引的色图编码方法的一个实施例。在这个实施例中,在各个色 分量之前,规定一个色的所有分量的色分量分辨率的单一比特标志被 编码。色图更新处理在步骤s701开始。开始,在步骤s702色图层识 别符被加到比特流中,在步骤s703接着发送指示更新的色数。在步骤 s704该处理检查附加更新的色更新表,如果没有另外的色更新要求编 码,则处理在步骤s717结束。但是,如果仍有色要编码,则在步骤s705 待更新的色表索引被加到比特流中。对于每个色一般存在多个分量(例 如,红、绿和兰),因此步骤s706形成围绕步骤s707、s708、s709 和s710的一个环路条件,分别处理每个分量。在步骤s707从数据缓 冲器中读出每个分量。接下来,在步骤s708如果该分量的低序半字节 是0,则在步骤s709,一个off标志(单一0比特)被加到比特流中, 或如果低序半字节不是0,则在步骤s710,一个on标志(单一1比特) 被加到比特流中。处理通过返回步骤s706重复,直至没有剩余色分量。 接下来,在步骤s711从数据缓冲器再次输出第一分量。同样,步骤 s712,形成围绕步骤s713、s714、s715和s716的环路条件,分别处理 每个分量。接下来,在步骤s712如果分量的低序半字节是0,则在步 骤s713分量的高序半字节被加到比特流。另一种方案,如果低序半字 节不是0,则步骤s714分量的8位色分量被加到比特流。在步骤s715 如果还有色分量仍要相加,则在步骤s716从输入数据流读出下一个色 分量,并且处理返回步骤s712处理这个分量。否则,在步骤s715如 果没有剩余分量,则色图编码处理返回步骤s704处理任何剩余色图更 新。 备用编码方法
在该备用编码方法中,处理非常类似于如图29所示的第一种方 法,除了图18的输入色处理部分10不执行色减少,如果需要的话, 而代之以保证输入色空间是按从RGB变换的YCbCr格式。没有要求 的色量化或色图管理,因此图19的步骤s507到s510被单一的色空间 变换步骤取代,保证帧是按YCbCr色空间表示的。图18的运动补偿 部分11对Y分量执行“传统”运动补偿并存储运动矢量。然后从 利用来自Y分量的各运动矢量对Y、Cb、Cr分量每个的帧间编码处 理,产生有条件的补充图象。然后,通过在每个方向的2个系数下取 样Cb和Cr位映像后,独立压缩3个结果的不同图象。位映像的编码 使用一种类似的递归树分解,但这次对不在树底部的每个叶,存储3 个值,平均对于由该叶代表的区的位映像值,和水平和垂直方向的梯 度。图28的流程图描述备用位映像编码处理,从步骤s1101开始。在 步骤s1102选择编码的图象分量(Y、Cb或Cr),然后在s1103选择 初始树节点。在步骤s104,如果这个节点是父节点,则在步骤s1105 将父节点标志(1比特)加到比特流中。然后在步骤s1106从树选择 下一个节点,并且备用位映像编码处理返回s1104。在步骤s1104如果 新的节点不是父节点,则在步骤s1107确定树的节点深度。在步骤 s1107该节点不是树的底部级别的节点,则利用非底部叶节点编码方 法编码该节点,使得在步骤s1108将叶节点标志(1比特)加到比特 流。接下来,在步骤s1109如果叶是透明的,则透明叶标志(1比特) 被加到比特流。然而,如果叶是不透明的,则不透明叶标志(1比特) 被加到比特流中,接下来在步骤S1112编码叶色平均值。与第一种方 法一样,通过发送一个标志和按2比特的FIFO索引或者按8比特的 平均值本身,该平均值利用FIFO编码。在步骤s1113如果该区不是 不可见背景区(用于任意构形视频目标),则在步骤s1114编码叶水 平和垂直梯度。利用平均值的特殊值,例如0xFF编码不可见的背景 区。按照4位量化值发送该梯度。但是,如果在S1117确定该叶节点 是在树的最底部级别,则通过发送位映像值和非父体/引导指示标志按 以前的方法编码对应的叶。与以前一样利用单一比特标志编码透明叶 和色叶。在任意构形视频的情况下,利用平均值的特殊值,例如0xFF, 编码不可见的背景区,并且在这种情况下,不发送梯度值。具体地, 然后在步骤s1154个标志被加到比特流上,以指示是否在这个级别上 的4个叶的每个是透明或者不透明的。接下来,在步骤s1116,如果 顶部叶是不透明的,则在步骤s1117该顶部左叶色按照上述不透明叶 色编码进行编码。对这个底部级别的每个叶节点重复步骤s1116和 s1117的每个,如所示对顶部右节点重复步骤s1118和s1119的每个所 示,对底部左节点重复步骤s1120和s1121的每个,对底部右节点重 复步骤s1122和s1123的每个。完成叶节点编码时,在步骤s1124编 码处理检查树的另外节点,如果没有剩余节点编码则在步骤s1125结 束。另外一种情况下,在步骤S1106取下一个节点,并且处理在步骤 S1104重新开始。在这种情况的重建包括利用第一、第二或第三序插 值在由叶识别的每个区插入各个值并且然后组合对于Y、Cb和Cr分 量每个的值,产生每个像素的24位RGB值。为了利用8位装置,映 射色的显示、色的量化是在显示前执行的。 色预量化数据的编码
为了改善图象的质量,与在前面描述的备用编码方法一样,可以 使用第一或第二序插值编码。在这种情况下,不仅对存储的叶每个叶 代表区的是平均色,而且还是每个叶的色梯度信息。然后利用二次方 程或三次方程插值产生连续色调图象执行重建。当在装置利用索引的 色显示连续显示色图象时,这可能产生一个问题。在这些情况下,需 要下降到8位的量化输出和按实时地索引是禁止的。如图47所示,在 这种情况下编码器50可以执行24位色数据02a的矢量量化02b,产 生色预量化数据。如下所述,利用8元树压缩2c可以编码色量化信息。 这个压缩的色预量化数据随着编码的连续色调图象进行发送,通过施 加预计算的色量化数据使得视频解码器/播放机38执行实时色量化 02d,因此产生可选8位索引的色视频实时表示02e。当使用重建过滤 产生将可以显示在8位装置上的24位结果时,还可以使用这种技术。 这个问题通过发送少量信息到视频解码器38可以解决,该信息描述从 24位色结果到8位色表的映射。这种处理描述在从步骤s1201开始的 图30的流程图中,并且包括包含在客户机中执行实时色量化的预量化 处理中的主要步骤。在步骤s1202视频中的所有帧按照通过条件块的 指示被连续地处理。如果没有剩余帧,则在步骤s1210预量化结束。 否则在步骤s1203从输入视频流中取下一个视频帧,并且然后在步骤 s1204矢量预量化数据被编码。接下来,在步骤s1205编码/压缩基于 非索引的色视频帧。压缩/编码的帧数据在步骤s1206被发送到客户机, 该数据在步骤s1207由客户机接着解码为全色视频帧。在步骤s1208 现在矢量预量化数据被用于矢量后量化,并且最后客户机在步骤s1209 修饰视频帧。该处理返回步骤s1202处理接着的流中的视频帧。矢量 预量化数据包括尺寸为32×64×32的3维阵列,其中,阵列中各单元含 有r、g、b座标的索引值。十分清楚,存储和发送32×64×32=65536 索引值是在技术上不实际的大的额外开销。解决办法是按紧凑的表示 编码这个信息。一种方法是如图30的从步骤s1301开始的流程图所示, 利用8元树表示编码这个3维索引阵列。图47的编码器50可以使用 这个方法。在步骤s1302,从输入源读出3D数据集/视频帧,使得Fj (r、g、b)代表RGB色空间中对于视频帧中所有j像素的所有唯一 色。接着在步骤s1303中选择最代表3D数据集Fj(r、g、b)的N个 编码簿矢量Vi。在步骤s1304产生3D阵列t[0…Rmax,0…Gmax,0… Bmax]。对于阵列t中的所有单元,在步骤s1305确定最接近码本矢量 Vi。在步骤s1306,用于每个单元的最接近编码簿矢量被存储在阵列中。 在步骤s1307,如果以前的视频帧已经被编码,使得以前的阵列t存在, 则步骤s1308确定当前与以前阵列t之间的差,接着在步骤s1309产 生更新的阵列。然后,在步骤s1309更新阵列或者在步骤s1310利用 有损耗8元树方法编码全阵列。这个方法取3D阵列(立方体)并且 按类似于以4元树为基础的表示递归地分裂该阵列。因为矢量编码簿 (Vi)/色图是自由地动态变化,这种映射信息还进行更新,逐帧地反 映这个变化到色图中。建议一种有条件补充方法,利用索引值255代 表应该未变化座标映射和其它各个值代表3D映射阵列的更新值,执 行这种操作。类似空间编码,该处理利用预排序8元树遍历方法编码 色空间映射到色表中。各个透明叶指示叶指示的色空间的区未变化并 且索引叶含有由该单元的座标规定的色的色表索引。8元树编码器在 树的顶部开始并且如果该节点是叶的话对每个节点存储单一的1比 特,或如果是父体的话存储0比特。如果是叶并且色空间区是不变的, 则存储另外单一的0比特,否则对应的色图索引按照n比特码字进行 编码。如果该节点是父节点并且曾存储0比特,则8个子节点的每个 被按所描述的递归地进行存储。当编码器达到树的最低级别,则所有 节点是叶节点并且不使用叶/父体指示比特,替代存储接着色索引码字 的第一未变化比特。最后,在步骤s1311,编码的8元树被发送到解 码器用于后量化数据并且在步骤s1312代码簿矢量Vi/色图被发送到解 码器,因此在步骤s1313结束矢量预量化处理。解码器执行反向处理、 矢量后量化,如图30在步骤s1401开始的流程图所示。在步骤S1402 读出压缩的8元树数据,并且解码器再生在s1403来自编码的8元树 的3D阵列,与描述过的2D 4元树解码处理一样。然后,对于任何24 位色值,对应的色索引可以通过简单查找存储在3D阵列最的索引值 予以确定,正如在步骤s1404表示的。在步骤s1405矢量后量化处理 结束。这种技术可以用于映射任何非静止3D数据为单维数据。当矢 量量化被用于选择将被用于代表原始多维数据集的代码簿时,一般这 是应该要求。在哪个阶段执行处理矢量量化并不是问题。例如,我们 可能直接4元树接着VQ编码24位数据,或者我们可能首先VQ数据 并然后4元树编码结果,像我们在这里作的那样。这种方法的最大优 点是在不同种的环境中,可以允许24位数据将被发送到如果能够显示 24位数据的各个客户机,但是如果不能显示,则可以接收预量化数据 并应用这个数据实现实时的24位源数据的高质量量化。
图18的场景/目标控制数据部分14允许每个目标将与一个视频数 据流、一个音频数据流和任何其它数据流相关。它还允许对每个目标 的各种修饰和表达参数将被贯穿整个场景从此时到彼时动态地修改。 这些包括目标的透明、目标的规格、目标的音量、目标在3D空间的 位置、和目标在3D空间的取向(旋转)。
压缩的视频和音频数据现在被传送或存储,用于以后作为一系列 数据包传输。存在着多个不同包类型。每个包包括一个公共基本首端 和一个有效负荷。基本首端识别包类型、包含有效负荷的包的总尺寸、 它与哪个目标相关、和序列识别符。当前定义如下包的类型: SCENEDEFN、VIDEODEFN、AUDIODEFN、TEXTDEFN、 GRAFDEFN、VIDEODAT、VIDEOKEY、AUDIODAT、TEXTDAT、 GRAFDAT、OBJCTRL、LINKCTRL、USERCTRL、METADATA、 DIRECTORY、VIDEOENH、AUDIOENH、VIDEOEXTN、 VIDEOTRP、STREAMEND、MUSICDEFN、FONTLIB、 OBJLIBCTRL。如上所述,有3种主要类型的包:定义、控制和数据 包。控制包(CTRL)被用于定义目标的修饰变换、动画和将由目标 控制引擎执行的动作、交互目标的行为、动态媒体组合参数和任何上 述执行或应用的条件,这些定义是对于单个目标或者对于正在收视的 整个场景的。数据包含有构成每个媒体目标的压缩信息。格式定义包 (DEFN)传送配置参数到每个编解码器,并且规定各个媒体目标的 格式和如何翻译相关的数据包两者。场景定义包定义场景的格式、规 定目标的数量、和定义其它场景的特性。USERCTRL包用于利用基 干信道传送用户的交互和返回远端服务器的数据,METADATA包含 有关于视频的元数据,DIRECTORY包含有帮助随机接入比特流的信 息,和STREAMEND包划分流的边界。 接入控制和识别
面向目标视频系统的另外的部分是加密/解密用于内容安全性的 视频流的装置。通过利用RSA公共密钥系统编码,将执行解密的密钥 被单独和安全地传送到终端用户。
另外的安全措施包括通用的在编码视频流上加唯一商标/识别符。 这种措施采取4种主要形式:
a.在电视会议应用中,一个单一唯一识别符被施加到编码视频流 的所有实例,
b.在每个视频数据流中有多视频目标的广播
视频点播(VOD)中, 每个单独视频目标具有用于特定视频流的唯一识别符,
c.无线的、超薄客户机系统具有唯一识别符,识别用于该无线超 薄系统服务器编码的编码器类型,以及识别这种软件编码器的唯一实 例。
d.无线超薄客户机系统具有唯一识别符该客户机解码器实例,以 便匹配以互联网为基础的用户的状况,确定该相连的客户机用户。
唯一地识别视频目标与数据流的能力是特别有益的。在电视会议 应用中,没有实际需要监视或记录电话会议的视频数据流,除了在有 广告内容出现的情况(唯一地按照VOD识别)外。客户机侧解码器 软件记录收视的解码视频流(识别符、持续期)。按照实时地或按照 连续同步地,这个数据被传送到以互联网为基础的服务器。这个信息 被用于产生市场调查税收流以及结合客户机个人概况的市场调查/统 计。
在VOD中,解码器可以被限制解码广播流或仅有安全密钥时才 能使用。当访问互联网认证/接入/帐单服务提供商时,它提供使能解 码器授权付费的装置,如果连接到互联网实时地,或按装置以前的同 步,可以执行操作使能。另外一种方案,可以对以收视的视频流进行 付费。在类似于广告视频流的电视会议中,随着正在收视期间,解码 器记录有关VOD的编码视频流。这个信息被传送回互联网服务器, 用于市场调查/反馈和付费的目的。
在无线超薄客户机(NetPC)应用中,通过加唯一识别符到编码 的视频流中,实现来自互联网或基于计算机服务器的别的地方的视频 流的实时编码、传输和解码。客户机侧解码器被使能,以便解码视频 流。客户机侧解码器的使能发生在VOD应用的沿经授权付费的线路, 或者通过安全加密密钥处理,使能接入编码视频流的无线NetPC的各 种级别。计算机服务器编码软件简化多接入级别。在广播形式中,无 线互联网包括从客户机解码器软件反馈到计算机服务器,通过解码器 确认监视客户机连接的机制。这些计算机服务器监视服务器应用处理 的客户机利用率和相应的变化,并且还监视流向终端客户机的广告。 交互音频视频标记语言(IAVML)
这个系统的强有力的部分是通过源程序控制音频-视频场景组成 能力。利用源程序,通过源程序语言的限制强加于对组成功能的限制。 在这种情况下使用的源程序语言是从XML标准得到的IAVML。 IAVML是用于规定目标控制信息的文本形式,该目标
控制信号是被 编码为压缩的比特流。
在某些方面IAVML类似HTML,但是特别设计将用于面向目标 多媒体时-空空间的,诸如音频/视频。它还可以被用于定义这些空间 的逻辑和布局结构,包括分层,它还可以被用于定义链接、寻址并且 还有元数据。这是通过允许提供描述和参考信息等的标记的5个基本 类型实现的。这些是系统标记、结构定义标记、表示格式、和链路和 内容。类似HTML,IAVML是情况不敏感的,并且每个标记进入打 开和关闭形式,用于包封被进行注释的文本的各部分。例如:
some text in here音频-视频空间的结构定义使用结构标记并包括如下:
定义视频场景 在场景中划分流