视频文件的操作系统外壳管理的制作方法

文档序号:6776585阅读:95来源:国知局
专利名称:视频文件的操作系统外壳管理的制作方法
视频文件的操作系统外壳管理
背景技术
随着摄像机和个人计算机的普及,专业和业余的视频制作人都自然地注意到 利用他们的计算机来管理他们的视频长度。现在在市场上有各种视频编辑软件应 用程序出售。通常,这些程序全都遵循类似的进程,也就是以数字或者模拟格式将 记录的或者实时的视频传递到计算机磁盘驱动器,然后利用正使用的特定视频编辑 程序对所得的数字视频文件执行操作。传统的视频编辑程序允许用户构造情节串连
图板(storyboard),将视频文件分为各段(也就是剪辑),处理和编辑剪辑,添 加音频等等。此外,在编辑之后,传统的视频编辑软件程序允许用户将视频文件保 存和存储到他们的计算机或者便携式存储介质中以进行诸如播放、在网站上发表、 以及用电子邮件发送给其它人之类的进一步的操作。
这些常规的软件编辑工具仍然相对繁琐,从而使得许多用户都难以方便有效 地管理他们个人计算机上的家用视频。例如,如上所述的全部操作必须在视频编辑 软件程序中执行。这会导致过度复杂的期望任务,诸如搜索特定视频文件内容、修 整视频、由电子邮件邮寄短视频剪辑等。在用电子邮件发送视频的实例中,常规软 件程序要求用户在附加并发送视频以前首先执行多步耗时的编辑步骤。
相对于视频编辑,传统的方法无法保存原始视频文件的完整性,或者需要根 据原始文件的拷贝进行工作。目前可用的视频软件程序例如需要将单个视频文件划 分成新的、分幵的视频文件,以便显示和编辑各视频段或剪辑。将视频文件划分成 用于每一剪辑的分开的文件会具有若干限制,并可能影响视频的质量。此外,对各 独立剪辑执行基于文件的操作会大量长时间的消耗资源。
与能被束至单个时间点(例如拍摄照片的日期与时间或者最初发布歌曲的那 天)的大多数媒体对象不同,视频剪辑必定持续一段时间。此外,从中获取剪辑的 视频文件通常持续要长的多的一段时间(有时候会长达是一整年甚至更长)。传统 的视频编辑软件程序无法将视频剪辑作为各独立实体处理,这进一步妨碍了对计算 机上视频文件的管理。

发明内容
本发明的实施例通过允许用户将视频剪辑作为独立实体处理来克服现有技术 中的一个或多个不足。由此就能改善用户视频内容的可达性。本发明的一个实施例
表示了在计算机操作系统外壳(shell)中的视频剪辑。用户可以将视频内容传送至 计算机,然后利用计算机管理、描绘、搜索和共享该内容。此外,用户能够方便地 定义和编辑录像剪辑以在计算机上创建新的视频"存储器"。有利地,本发明的一 些方面允许用户在不更改他们的视频文件和不使用分开的视频编辑软件的情况下
以与其他媒体对象大致相同且同样简单的方式来操作视频剪辑。
一种具有执行用于管理视频剪辑的方法的计算机可执行指令的可读介质计算
机可读介质还具体化了本发明的其他方面。
此外,本发明的实施例还可以包括各种其他的方法和装置。 其他特征将部分显见并部分在下文中被指出。


图1根据本发明的一个实施例示出了在视频文件和视频剪辑之间的示例性关系。
图2是根据本发明的一个实施例示出了由计算机执行的各进程的示例性流程图。
图3根据本发明的一个实施例示出了 ASF顶级对象的示例性格式。
图4A根据本发明的一个实施例示出了 ASF文件的示例性结构。
图4B和4C根据本发明的一个实施例示出了指示TOC对象位置的图4的ASF
文件的示例性结构。
图5根据本发明的一个实施例示出了该TOC对象的示例性布局。
图6A根据本发明的一个实施例示出了该TOC对象的示例性结构。
图6B根据本发明的一个实施例示出了该TOC对象的示例性目录(Table of
Contents)字段。
图6C根据本发明的一个实施例示出了该目录的示例性项目列表(Entry Lists)字段。
图6D根据本发明的一个实施例示出了该项目列表的示例性项目(Entry)字段。
图7是在其中可以实现本发明一个实施例的适当计算机系统环境的示例性实施例的框图。
贯穿各附图相应的附图标记指代相应的部分。
具体实施例方式
现在参照附图,图1示出了在视频文件102和视频剪辑104之间的示例性关 系。视频文件102是表示一个或多个视频剪辑104的单个文件。视频文件102通过 将以数字或者模拟格式的记录或者实时视频传送至诸如计算机硬盘驱动器之类的 存储介质的方式产生。当用户从数字设备(例如,数字录像摄像机)中捕捉视频内 容时,视频被捕捉至单个视频文件102中。
每个视频剪辑104都表示视频文件102的一部分或一段。例如在单个录象磁 带上,用户可能已记录多个事件。在每个记录事件内,都可能具有一个或多个离散 的场景。取决于如何定义视频剪辑104,每个视频剪辑104通常由离散场景组成。 在图1的实例中,用户记录视频内容来自生日、婚礼和假期。在这三个关键时间的 每一个中都可以找出一个或多个场景。每个场景都被表示为一个视频剪辑104。本 发明的一些方面允许用户方便地查看并管理这三个事件及其特定场景中的每一个。
如下将详述,剪辑104形式的用户视频"存储器"可以在计算机操作系统中 被存储并表示,而无需在所谓的"存储器"和计算机文件系统中的物理文件之间的 一一对应。在根据本发明的计算机操作系统的外壳中表示视频剪辑104允许用户将 视频内容传送到计算机中,然后利用计算机管理、描绘、搜索和共享内容。此外, 用户可以方便地定义和编辑视频剪辑104从而在计算机上创建新的视频"存储器"。 有利地,本发明的一些方面允许用户在不更改他们的视频文件102且不利用分开的 视频编辑软件的情况下以其他媒体对象大致相同且同样方便的方式来实质上操作 视频剪辑104。允许用户绕过整个用于许多普通场景的编辑进程就能够扩展可以有 效地管理他们的计算机上的视频内容的用户的数目。
例如,大多数视频内容被记录到录象磁带上。本领域技术人员所知的捕捉进 程可用于捕捉视频内容并将视频内容从磁带传递到数字文件,即视频文件102,以 供在计算机上使用。标准的录像磁带记录60分钟的视频。平均说来,通常用户在 每个磁带上捕捉20至40分钟的内容。因为用户从磁带中捕捉,所以这是实时进程, 并会很耗时。因而,许多用户避免将视频捕捉至他们计算机上的数字视频文件。有 利地,本发明的实施例简化了对视频内容的管理,因此用户可以更方便地实现将他 们的视频捕捉至计算机中的益处。对磁带设备而言,视频内容被捕捉到单个视频文件102中。在这种情况下,
视频剪辑104可以在每次视频制作人开始记录视频时被定义。对很长的视频剪辑 104而言,基于视频内容的额外场景检测技术可用于进一步地定义视频剪辑104。 例如,用户记录20分钟她女儿的生日聚会,并且在拍摄期间甚至没有按下过停止 录像按钮。本发明的一些方面允许基于该连续内容来分析视频,从而将内容分割成 用于呈现更丰富事件查看的场景。此外,用户例如能够更容易地识别她女儿何时打 开礼物或何时吹熄生日蜡烛。
当传统的模拟内容被捕捉至计算机时,或许可以利用模拟至数字视频变换器 来将视频文件102构造成一个长场景。本发明一些视频分析方面允许判断原版磁带 上的逻辑起停时间以标识剪辑104。
作为可选,用户可能希望从诸如数码相机之类的固态设备中捕捉视频内容。 在这种情况下,捕捉视频内容包括根据固态设备传递或者同步。每当视频制作人开 始和停止记录处理时,己知的固态数字录像摄像机等就记录单个文件。类似于磁带 捕获,可能希望场景分析来分析内容以合适地识别更为粒度的剪辑。
现在参照图2, 一示例性的流程图根据本发明一个实施例示出了由计算机执行 的进程。从202开始,用户利用例如捕捉向导来获取新的视频文件102。在捕捉期 间,分析视频文件102并检测场景。
特定视频文件102中的剪辑104数目是基于用户内容的,并且按视频变化。 用于由录象磁带捕捉的视频内容的模型与由固态设备捕捉的视频内容的稍有不同。 表I提供了由不同的源捕捉的视频内容的对比
表I
事件数目在捕捉期 间的文件检测到 的场景类似的 总剪辑
视频 磁带2-3个事件。用户通常在执行平均约 45分钟的捕捉前填充磁带。大多数 用户保存磁带作为他们的原版备份。 每个磁带花费3-5美元。每个磁带 1个45-6060
固态l-2个事件。用户能够从他们的设备 和自由存储空间中更方便地下载事 件。该事件比视频磁带更频繁地发 生。每个事件通常10-20分钟。每个事件 5-15个每个事件 5-20个40 (每个 事件20 个)
7再次参见图2,捕捉之后在204中写入媒体文件(即,视频文件102)。在一 个实施例中,根据高级流格式(Advanced Streaming Format, ASF)写入媒体文件, 并且该媒体文件包括被指定为TOC(Table of Contents (目录))的媒体文件系统对 象。本发明的一些方面涉及TOC对象,该对象包含用视频文件102对每个被定义 剪辑104的记录。如下将详述TOC对象的特征。在一个可选的实施例中,可以将 TOC信息插入根据诸如音频视频交错(AVI)的另一视听传播标准写入的文件。
在如图2所示的206中,计算机执行文件激发器来分析视频格式(例如, Window Media Videp (视窗媒体视频))的TOC对象,并创建新的视频库记录以 及用于每个剪辑104的分开的剪辑记录。换句话说,捕捉计算机根据要被管理的每 一个视频文件102定义一个或多个视频剪辑104。在一个实施例中,操作系统将媒 体库暴露给用户,该媒体库存储了包含被分配用以表示剪辑104的元数据的TOC 对象。
继续到208,操作系统外壳经由包括元数据的TOC对象暴露每个剪辑104。 在210,用户启动的诸如播放、删除、修整和结合之类的用于剪辑104的任务被注 册。作为响应,计算机将视频剪辑104的改变写入到数据库中。更具体地,在212 处,外壳检测变化并更新文件标头中的TOC对象,从而导致在214中生成带TOC 的新ASF文件。这就确保了记录和TOC对象始终同步。
例如通过使用TOC对象就可经由媒体库中的外壳暴露视频剪辑104,来改善 包括捕捉、组织、编辑、电影创建以及在磁盘、电子邮件或便携式媒体中心设备上 共享在内的整个视频工作流程。相同的原理可以应用于暴露计算机操作系统的外壳 接口中的剪辑104,以便允许用户在无需打开像视频编辑工具那样的单独应用软件 的情况下就能够直接在操作系统中查看和管理视频剪辑104。此外,这保持了视频 文件102的完整性,并且即使在被编辑时也能避免非期望地将视频剪辑104划分为 单独的视频文件102。
如上所述,显示视频剪辑104的传统方法依赖于单独的专用视频应用程序和/ 或将视频文件102分开成用于每个定义视频剪辑104的单独视频文件102。不幸 地,将视频文件102分开成用于多个剪辑104的单独文件102具有若干限制,并可 能影响视频质量。通过将视频剪辑104表示为外壳中的元数据的方式,本发明的实 施例能够在几乎不影响视频质量的情况下对剪辑104执行操作。
与巳知的方法相反,经由外壳对视频剪辑104执行的操作是非破坏性的。因为视频剪辑104被表示为操作系统理解的元数据,所以用户能够通过设置新的标入 (mark-in)和标出(mark-out)的位置来执行像修整视频剪辑104那样的操作。在 这种情况下,修整仅更新用于视频剪辑104的元数据。用户能够在不影响视频文件 102中的原始视频源的情况下调节标入和标出的位置。修整的视频剪辑104还可以 仅通过调节标入和标出的位置来容易地使其变为未修整。
在一个实施例中,TOC或者目录、对象包括用于存储高级索引信息和关联元 数据的ASF对象。图3示出了 ASF顶级对象的格式。如图所示,ASF顶级对象进 而本发明的TOC对象的格式具有16字节的对象GUID字段、8字节的对象大小 字段和N字节的对象数据字段。对象大小字段的值例如可以是24字节加上以字节 计的对象数据大小的总和。高级索引信息的实例包括目录、语义索引和情节串连图 板。相关元数据的实例包括基于项目的文本描述、封面图案(cover arts)、缩略图、 视听DSP属性和交叉引用。
由此类推,大多数书包含目录,而目录能够给予读者整个书内容的分级概述 并帮助读者迅速地定位各页。许多书还可能具有语义索引表以允许反向査找与某些
预选择关键字相关的页码。相反地,诸如WMV文件之类的大多数现有多媒体文 件都不具有这种索引信息。为了查找到典型视频文件102中的关注场景,用户必须 手动浏览整个文件。这种任务经常是乏味的且耗时的,特别是对于大的文件而言。 因此期望向多媒体文件,即视频文件102添加高级索引功能。
图4A示出了 ASF文件的示例性结构。如所示,典型的ASF文件包括标头对 象、数据对象、索引对象和简单索引对象。此外,所有其他顶级的对象被添加到 ASF文件数据和索引对象之间。根据ASF规范,各实现应该忽略任何其不知该如 何处理的标准或者非标准对象。
本领域的技术人员都熟悉用于向ASF文件添加基于内容的索引功能的用户定 义索引(User Defined Index, UDI)对象。然而,UDI对象具有若干限制。例如, ASF规范要求任何新的顶级对象被插入在数据对象和索引对象之间。因为UDI对 象被附至ASF文件的结尾,所以索引功能未必对所有分析程序或者在所有设备上 都行得通。此外,UDI对象不支持分层索引,并且所有的每项目元数据都具有相同 的固定大小。由于这些限制,UDI对象对经由操作系统外壳暴露剪辑104而言并不 适当。
在本发明的实施例中,TOC对象和CDD描述符遵循ASF格式化方针,即所 有结构都具有l字节包,对Unicode串的所有引用都暗示以空为终止的串,并且各
9对象和结构以小尾端(little-endian)次序存储。基本数据类型(和大小)包括BYTE (8位);WCHAR (16位);WORD (16位);DWORD (32位),QWORD (64 位);和GUID (128位)。TOC对象被设置在如图4B所示的数据对象和索引对 象之间,或者被设置在如图4C所示的ASF文件中的标头扩展对象内。在ASF文 件中还有TOC对象的多个实例(例如,通常在书开头发现的模仿目录的TOC对象; 通常在书结尾发现的模仿索引的TOC对象;每个媒体流一个的TOC对象等)。 图5显示了具体化本发明一些方面的TOC对象的示例性布局。 现在参照图6A,可以使用列出的结构来描述TOC对象。在这种情况下,Object ID (对象ID )字段指定用于TOC对象的GUID (例如, 35003B7B-A104-4c33-A9EE-E2A240431F9B),而Object Size (对象大小)字段以 字节为单位指定TOC对象的大小。对象大小的有效值例如是至少70个字节。TOC 对象的Table of Contents (目录)字段可以由图6B的结构表示。在图6B中,TOC对象的目录字段包括指定该目录的唯一标识符的ID;指 定与该目录相关的流号的Stream弁(流号)字段;以及指定该目录类型的Type (类 型)字段。在一个实施例中,Type字段可以是以下在表II中所示的预定义GUID 或任何其他用户定义的GUID中的一个。表IIASF—TOC—Type—PlaylistACC8DAA6-9D06-42d6-8704-2B2CA8E1FD9AASF—TOC一Type一Editlist2F133F06-0701-49f9-AD38-602F00A7882DAS F_TOC—Type—User—Bookmark s7A0D993C-C1 B0-473b-A048-2A0DE74E93A5ASF_TOC—Type—DSP—Metadata1AEDA271-281D-43ac-8735-8911D408FBCD图6B所示的TOC对象的目录字段还包括如果存在则指定该目录使用或者 采取的指定语言的Language ID Index (语言ID索引)字段;以字节为单位指定描 述字段的大小的Description Size (描述大小)字段;包含该目录的文本描述的 Description (描述)字段;指定项目分级的级别号的# of Entry Levels (项目级别数) 字段;以字节为单位指定上下文字段的大小的Context Size (上下文大小)字段; 包含有关该表的任何额外描述数据(其大小是由上下文大小字段确定的)Context(上下文)字段;以及由各项目的X个列表组成的Entry Lists (项目列表)字段, 其中X = # of Entry Levels (项目级别数)。每个项目列表字段可以使用在图6C中列出的结构来描述。如图所示,项目列 表字段的一个实施例包括指定存在于该列表中的项目数的# of Entries (项目数) 字段,以及由Y个Entries组成的Entries (项目)字段,其中Y = # of Entries (项 目数)。图6D提供了每个项目字段的示例性结构。在这种情况下,项目字段包括 以字节为单位指定项目标头字段大小的Entry Title Size (项目标题大小)字段;指 定该项目的名称(其大小由项目标题大小字段确定)的项目标题字段;以IOO毫微 秒为单位指定该Entry的开始呈现时间Start Time (起始时间)字段;以100毫微 秒为单元指定该Entry的结束呈现时间的End Time (结束时间)字段(如果未指定 则设为0);指定从ASF文件中第一个数据分组的起始到该项目的第一个数据分 组的起始的偏离字节数的Start Packet Offset (起始分组偏移)字段(应当注意对既 包含关键帧又包含非关键帧的视频信息流而言,该字段将与在此时间间隔前最接近 的关键帧相对应);指定从ASF文件中的第一个数据分组的起始到该项目的最后 一个数据分组的可视的偏离字节数的End Packet Offset (结束分组偏移)字段(如 果未指定则设为0);以IOO毫微秒为单元指定有关该项目的代表性帧呈现时间的 Representative Frame Time (代表性帧时间)字段;指定该项目下的子项目(即子 代)数目的# of Sub-Entries (子项目数)字段(如果该项目没有子项目则设为0); 由Z个子项目索引组成的Sub-Entry Indices (子项目索引)字段,其中Z = # of Sub-Entries (子项目数)(每个子项目索引都是是一个WORD,并包含下一级项目 列表中相应子项目的位置);以字节为单位指定描述数据的大小Description Data Size (描述数据大小)字段(如果该项目没有额外描述数据则设为0);指定描述 数据类型的Description Data Type (描述数据类型)字段(当是0时,该字段将不 存在);包含关于该项目的任何额外描述数据的Description Data (描述数据)字 段(其大小由描述数据大小确定)。在一个实施例中,描述数据必须属于预定义的 描述数据类型。描述数据类型可以在任何时候由任何人定义,只要程序设计应用程 序和目标的客户机应用程序共享类型定义并且都知道如何分析该数据。经由TOC对象展现外壳中的剪辑104及其附随的元数据使得用户能执行先前 不可能执行的任务。 一旦用户己经在计算机上的媒体库中存储了由外壳暴露的视频 存储器,那么用户例如仅通过浏览按日期排序的有关每一年她生日的内容就能够方 便地做出包含从2001-2004年的他或她女儿每个生日宴会的DVD。在另一个实例中,用户能够方便地查询到所有五星级家庭视频剪辑和图片,以便制作"最好的一 年"盘来发送假日问候。用户能够在不直接使用视频编辑程序的情况下执行这种任 务,或者可以进入该程序,向其传递特定计划所需的所有内容。另一个实例是将视频剪辑发电子邮件给另一个用户。使用现有的可用软件, 通过电子邮件发送视频剪辑是编辑任务。用户需要能够修整视频的视频编辑器。这 种程序需要多个耗时步骤。根据本发明实施例通过在外壳中暴露剪辑104,则一旦 用户已经将录象磁带捕捉到用户库中,从库中发送特定视频剪辑104就像发送照片 一样容易。图7显示了计算机130形式的通用计算设备的一个实例。在本发明的实施例 中,诸如计算机130之类的计算机适合于在此处列举和描述的其他图中使用。计算 机130具有一个或多个处理器或者处理单元132和系统存储器134。在示出的实施 例中,系统总线136将包括系统存储器134在内的各种系统部件连接到处理器132。 总线136描述了任何几种类型总线结构中的一个或多个,包括存储器总线或者存储 控制器、外围总线、加速图形端口以及利用任何各种总线体系结构的处理器或本地 总线。作为示例而非限制,这种结构包括工业标准结构(ISA)总线、微通道结构 (MCA)总线、增强ISA (EISA)总线、视频电子标准协会(VESA)本地总线以 及又名附加板总线的外围组件互连(PCI)总线。计算机130通常具有至少某种形式的计算机可读介质。包括易失性和非易失 性介质、可移动和不可移动介质在内的计算机可读介质可以是能由计算机130存取 的任何有效介质。作为示例而非限制,计算机可读介质包括计算机存储介质和通信 介质。计算机存储介质包括易失性和非易失性、可移动和不可移动介质,其以任何 方法或技术来实现以存储诸如计算机可读指令、数据结构、程序模块或者其他数据 之类的信息。例如,计算机存储介质包括RAM、 ROM、 EEPROM、闪速存储器或 其他存储技术、CD-ROM、数字通用磁盘(DVD)或者其他光盘存储、磁带盒、 磁带、磁盘存储器或其他磁存储器、或者任何其他可以用来存储所希望信息并可由 计算机130存取的介质。通信介质通常具体化为计算机可读指令、数据结构、程序 模块或者诸如载波或者其他传送机构之类的已调数据信号中的其他数据,并包括任何信息输出介质。本领域的技术人员熟悉己调数据信号,所述已调数据信号具有以 这种方式设置或改变的一个或多个特征以编码信号中的信息。诸如有线网络或直接 接线之类的有线介质和诸如声学、RF、红外线及其他无线介质之类的无线介质是 通信介质的实例。任何以上组合也包括在计算机可读介质的范畴内。12系统存储器134包括采用可移动和/或固定、易失和/或非易失存储器形式的计算机存储介质。在示出的实施例中,系统存储器134包括只读存储器(ROM) 138 和随机存取存储器(RAM) 140。包括基本程序的基本输入/输出系统142 (BIOS) 通常被存储在ROM 138中,所述基本程序有助于诸如在启动期间在计算机130的 元件之间传递信息。RAM 140 —般包括能立即存取和/或能由处理单元132对其执 行操作的数据和/或程序模块。举例来说,而不是限制,图7示出了操作系统144、 应用程序146、其他程序模块148和程序数据150。计算机130还可以包括其他可移动/固定的、易失/非易失的计算机存储介质。 例如,图7示出了从不可移动、非易失性磁性介质中读取或向其写入的硬盘驱动器 154。图7还显示了从可移动、非易失性的磁盘158中读出或向其写入的磁盘驱动 器156,以及从可移动的、非易失性的光盘162中读出或向其写入的光盘驱动器160, 所述光盘162诸如CD-ROM或者其他光学介质之类。可用于示例性操作环境的其 他可移动/不可移动、易失性/非易失性的计算机存储介质包括但不限于盒式磁带、 快速擦写存储卡、数字通用磁盘、数字视频磁带、固态RAM、固态ROM等。硬 盘驱动器154和磁盘驱动器156以及光盘驱动器160通常经由诸如接口 166之类的 非易失性存储器接口连接到系统总线136。在上述讨论到的和在图7中举例说明的驱动器或者其他海量存储器及其关联 计算机存储介质提供对计算机130的计算机可读指令、数据结构、程序模块及其他 数据的存储。在图7中,例如硬盘驱动器154被举例用于存储操作系统170、应用 程序172、其他程序模块174和程序数据176。应当注意的是这些组件可能相同 或者不同于操作系统144、应用程序146、其他程序模块148和程序数据150。操 作系统170、应用程序172、其他程序模块174和程序数据176在这里被指定不同 的数目以举例说明他们至少是不同的副本。用户可以通过诸如键盘180和定点设备182 (例如,鼠标、跟踪球、笔或者触 碰衬垫)之类的输入设备或者用户接口选择设备将命令和信息输入到计算机130 中。其他的输入设备(未显示)可以包括麦克风、操纵杆、游戏垫、卫星反射器、 扫描仪等等。这些及其他输入设备通过用户输入接口 184与处理单元132相连接, 所述用户输入接口 184与系统总线136相连接,但是也可以与诸如并行端口、游戏 端口或者通用串行总线(USB)之类的其他接口和总线结构相连接。监控器188 或者其他类型的显示设备还经由诸如视频接口 190之类的接口连接到系统总线 136。除监控器188之外,计算机经常包括诸如打印机和扬声器之类的其他外围输出设备(未显示),其可以通过输出外围接口 (未显示)相连接。计算机130可以在使用逻辑连接到一个或多个远程计算机的网络环境下运行, 所述远程计算机诸如远程计算机194之类。远程计算机194可以是个人计算机、服 务器、路由器、网络PC、窥视设备或者其他公用网络结点,并通常包括如上所述 与计算机130有关的许多或者全部部件。在图7中描绘的逻辑连接包括局域网 (LAN) 196和广域网(WAN) 198,但是也可以包括其他网络。LAN 136禾口/或 WAN 138可以是有线网络、无线网络,其组合等。这种连网环境通常是公司、企 业级计算机网络、企业内部互联网和全局计算机网络(例如,因特网)。当用于局域网环境时,计算机130通过网络接口或者适配器186与LAN 196 相连接。当用于广域网环境时,计算机130通常包括调制解调器178或者用于在诸 如因特网之类的WAN 198上建立通信的其他装置。可以内置或外置的调制解调器 178经由用户输入接口 184或适当的机构与系统总线136相连接。在网络环境中, 相对计算机130或其部件描绘的程序模块可以被存储在远程存储设备中(未显示)。 举例来说,而不是限制,图7举例说明了存在于存储设备上的远程应用程序192。 所显示的网络连接是示例性,用于在计算机之间建立通信链路的其他装置也可以被 使用。通常,计算机130的数据处理机被通过在不同时期存储在计算机的各种计算 机可读取存储介质中的指令来编程。程序和操作系统通常例如被分布在软盘或者 CD-ROM上。从那儿,他们被安装或被加载到计算机的二级存储器中。在执行中, 他们至少部分地被加载到计算机的初级电子存储器中。在此描述的本发明的实施例 包括这些及其他各种类型的计算机可读取存储介质,这种介质包括用于结合微处理 器或者其他数据处理机实现如下所述步骤的指令或者程序。本发明的一个实施例也 包括根据在此描述的方法和技术编程的计算机自身。为了说明,程序及诸如操作系统之类的其他可执行程序组件在此被图示为离 散的块。然而应该意识到这种程序和组件在不同的时间内存在于计算机的不同存储 部件中,并由计算机的数据处理机执行。尽管结合包括计算机130在内的示例性计算机系统环境进行描述,但是本发明的一个实施例也可供用于很多其他通用的或者专用的计算机系统环境或者配置。 计算机系统环境并非意在限制本发明实施例的用途或功能的范围。此外,计算机系统环境将不会被解释为具有任何与在示例性操作环境中举例说明的任一个组件或 其结合有关的依靠或者要求。可以适用于本发明的实施例的公知计算机系统、环境和/或配置的实例包括但不局限于个人计算机、服务器计算机、手持或者膝上型 设备、多处理机系统、基于微处理器的系统、机顶盒、可编程用户电子设备、移动 电话、网络PC、小型计算机、主计算机、包括任何以上的系统或设备的分布计算
环境等。
本发明的实施例可以利用计算机可执行指令的一般语句来描述,诸如程序模 块之类,由一个或多个计算机或者其他设备执行。通常,程序模块包括但不局限于 执行特定任务或者实现特定抽象数据类型的例程、程序、对象、组件和数据结构。 本发明的实施例还可以在分布计算环境中实现,其中由通过通信网络链接的远程处 理设备执行任务。在分布计算环境中,程序模块可以位于包括存储器设备在内的本 地和远程计算机存储介质。
软件体系结构环境下的接口包括软件模块、组件、代码部件、或者计算机可 执行指令的其他序列。所述接口例如包括存取第二模块以执行代表第一模块的计算 任务的第一模块。在一个实例中,第一和第二模块包括诸如由操作系统提供的应 用编程接口 (API)、组件对象模型(COM)接口 (例如,用于对等应用通信)、 以及可扩展标示语言元数据互换格式(XMI)接口 (例如,用于网络服务之间的通 信)。
诸如在Java 2平台企业版本(J2EE) 、 COM或者分布式COM (DCOM)实 例中,所述接口可以是紧紧连接、同步的执行过程。做为选择或者此外,诸如在网 络服务(例如,利用简单对象存取协议)中,所述接口可以是松散耦合、异步的执 行过程。通常,所述接口包括以下特性的任何组合紧紧连接、松散耦合、同步的 以及异步的。此外,所述接口可以符合标准规约、专有协议或者标准以及专有协议 的任何组合。
在此描述的接口可以全部属于一个接口,或者可以作为单独的接口或者其任 何组合来实现。该接口可以本地或远程执行以提供功能。此外,该接口可以包括比 在此举例说明或者描述的更多或更少的功能。
此处的数字集合的"数字数据"是任意类型的独立可寻址数字数据单元,其 通常存储在计算机存储器或者存储系统内。这种"数字数据"的实例包括(但不局
限于)音乐、图像、视频、文本文档、超文本文档、任何格式的文档、应用、电
子数据表、图形、播放表和数据。数字数据可以包括许多其他选项。
除非另作说明,否则在此举例说明和描述的所述方法的执行顺序或性能不是
必需的。也就是说,除非另作说明,发明者可以以任何次序来执行所述方法的要素,而且所述方法可以包括比在此公开的要素更多或更少的要素。例如,意在在另一要
素之前、同时或之后执行或完成特定要素也落入本发明的范围内。
在介绍本发明或其实施例的元件时,冠词"一"、"一个"、"该"和"所
述"意指存在一个或多个所述元件。术语"包括"、"包含"和"具有"意指除所
列举的元件外还可能存在其他的元件。
考虑到以上内容,很清楚能实现本发明的若干目的并获得其他有利的结果。 因为在不脱离本发明实施例的范围的情况下可以对上述结构和方法作出各种
各样的修改,所以在以上的说明书中所包含的和在附图中所显示的全部内容都应被
解释为是说明性的而非用于限制目的。
权利要求
1. 一种用于在计算机上管理一个或多个数字视频文件的方法,所述方法包括由要被管理的所述视频文件的每一个来定义至少一个视频剪辑;分配表示所述视频剪辑的元数据;将所述元数据存储在媒体文件系统对象中,所述对象正被存储入所述计算机上的媒体库;以及经由库向用户暴露带有所述元数据的所述对象。
2. 根据权利要求1所述的方法,其特征在于,还包括捕捉来自视频源的所述 视频文件。
3. 根据权利要求1所述的方法,其特征在于,所述计算机执行操作系统以及 与其相关联的外壳接口,所述外壳接口包括所述媒体库并且能够直接经由操作系统 管理所述视频剪辑。
4. 根据权利要求3所述的方法,其特征在于,暴露所述对象包括响应于用户 查询经由所述外壳检索来自所述媒体库的所述对象。
5. 根据权利要求1所述的方法,其特征在于,暴露所述对象包括在不更改所 述视频文件的情况下许可对所述视频剪辑的至少一个操作。
6. 根据权利要求5所述的方法,其特征在于,对所述视频剪辑的操作包括以 下的一项或多项回放、删除、修整和组合。
7. 根据权利要求l所述的方法,其特征在于,定义所述视频剪辑包括为以下 的一项或多项特性分析所述视频文件记录起始时间;记录停止时间;时间代码间 隙;帧色彩属性;图像稳定性和记录持续时间。
8. 根据权利要求1所述的方法,其特征在于,还包括直接经由库向用户描绘 所述剪辑。
9. 根据权利要求1所述的方法,其特征在于,还包括响应于用户输入独立于所述视频文件来修改存储在所述对象中的元数据。
10. 根据权利要求9所述的方法,其特征在于,所述用户输入包括用于编辑 所述视频剪辑的指令。
11. 根据权利要求IO所述的方法,其特征在于,用于编辑所述视频剪辑的所 述指令包括为修整所述视频剪辑而对所述剪辑的标入位置或对所述剪辑的标出位置,或者对以上二者进行调节。
12. 根据权利要求1所述的方法,其特征在于,所述元数据包括以下的一项 或多项基于项目的文本描述;封面图案、缩略图、视听DSP属性;以及交叉引 用。
13. 根据权利要求1所述的方法,其特征在于,所述对象包括以下字段的一项或多项ID; Stream弁;Type; Language ID Index; Description Size; Description; # of Entry Levels; Context Size; Context; 以及Entry Lists 。
14. 根据权利要求1所述的方法,其特征在于,所述对象包括至少一个项目 列表字段,所述项目列表字段还包括以下字段的一项或多项#ofEntries; Entries; Entry Title Size; Entry Title; Start Time; End Time; Start Packet Offset; End Packet Offset; Representative Frame Time; # of Sub-Entries; Sub-Entry Indices; Description Data Size; Description Data Type; 以及Description Data。
15. 根据权利要求1所述的方法,其特征在于, 一个或多个计算机可读介质 具有用于执行如权利要求1所述方法的计算机可执行指令。
16. —种具有用于在计算机上管理一个或多个数字视频文件的计算机可执行指令的计算机可读介质,所述计算机可读介质包括用于存储表示视频剪辑的元数据的媒体文件系统对象,所述视频剪辑包括要被管理的视频文件的段;以及与所述计算机的操作系统相关联的外壳接口,所述外壳接口暴露所述对象从 而能够直接经由操作系统管理所述视频剪辑。
17. 根据权利要求16所述的计算机可读介质,其特征在于,还包括用于经由 所述外壳检索所述对象藉此暴露所述对象的查询组件。
18. 根据权利要求16所述的计算机可读介质,其特征在于,还包括在不更改 所述视频文件的情况下对所述视频剪辑执行至少一个操作的编辑组件,所述操作包 括以下的一项或多项回放、删除、修整和组合。
19. 根据权利要求16所述的计算机可读介质,其特征在于,还包括用于存储 表示对独立于所述视频文件编辑的视频剪辑的修改的更新媒体文件系统对象。
20. 根据权利要求16所述的计算机可读介质,其特征在于,所述元数据包括 以下的一项或多项基于项目的文本描述;封面图案、缩略图、视听DSP属性; 以及交叉引用。
全文摘要
管理计算机上的数字视频文件。媒体文件系统对象存储从要被管理的视频文件中定义的视频剪辑的元数据表示。与计算机的操作系统相关联的外壳接口暴露该对象从而能够经由操作系统直接管理视频剪辑。
文档编号G11B27/00GK101506890SQ200680018210
公开日2009年8月12日 申请日期2006年4月5日 优先权日2005年5月27日
发明者C·M·休格尔, I·C·默瑟, M·J·帕顿, R·B·奥克雷, R·J·钱 申请人:微软公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1