用于多工作站/多平台非线性视频编辑系统的新颖媒体文件访问和存储解决方案的制作方法

文档序号:6594496阅读:266来源:国知局
专利名称:用于多工作站/多平台非线性视频编辑系统的新颖媒体文件访问和存储解决方案的制作方法
用于多工作站/多平台非线性视频编辑系统的新颖媒体文 件访问和存储解决方案
背景技术
美国专利公开号20060184673 Al描述了一种装置和方法,通过该装置和方法,非线性视频编辑“项目(Project)”(例如诸如由Avid非线性视频编辑(Non-Linear Video Editing, NLE)应用所创建的那些“项目”)可以被转换成共享Avid项目(Shared Avid Project),由此使得两个或更多视频编辑者能够安全地且高效地协作,使得所有编辑者可 以看见同事正在编辑什么而没有一个编辑者重写另一编辑者的工作的危险。美国专利公开号20060184673 Al中描述的“符号链接”虚拟化方案的使用使得协 作存储系统能够建立一种允许诸如AVID的Xpress Pro HD非线性编辑(NLE)应用之类的 非线性视频编辑者除了共享相同的媒体文件之外还共享相同“项目,,的结构。在AVID 非 线性编辑的上下文中,“项目”由包括其全都引用媒体文件的“剪辑”和序列以及二进制文件 (bin)的元数据组成,但是项目的内容不是媒体文件本身。对于使用Avid非线性视频编辑 应用的编辑者来说,由大多数Avid非线性视频编辑应用所创建的项目数据不存储在单个 整合(monolithic)文件中,就像比如Apple的Final Cut Pro 的很多其他流行的非线性编 辑应用一样。Avicf项目故意典型地分成很多离散元素,这些元素在操作系统级实际上正是 文件系统文件夹和文件。因而,在Avicf项目中,有可能独立地操纵这些离散元素。例如, 有可能针对一个文件夹或文件相对于其他的文件夹或文件不同地设置写权限。并且,通过 所描述的符号链接技术,有可能创建Avicf项目的不同“虚拟视图”,使得每个用户具有项目 的优化视图且每个用户可以维持他/她自己的分离文件以用于相同的功能(即用于设置)。也就是说,Avid NLE应用的与众不同的特征之一在于它们在“二进制文件”中存 储元数据(例如对剪辑、子剪辑和序列的引用),这些二进制文件是文件系统级的真实文件。 Avide NLE应用支持同时打开多个二进制文件而且支持同时打开每个二进制文件引用的多 个元素(例如,剪辑、子剪辑和序列)以及在二进制文件之间进行剪切、复制和粘贴。总体 Avid 二进制文件方案使得可以将项目分割和组织成多个二进制文件一例如,使一个二进制 文件用于原始的数字化材料、一个用于每个场景、一个用于完成的粗略剪切、一个用于精细 剪切等。这样,典型的Avicf NLE项目将由多个二进制文件组成,每个引用总体项目的某一 部分。将十分希望把一种允许多个非线性编辑系统安全地打开相同“项目,,并且从其工 作和就其协作(collaborate on)的系统和方法提供作为集中式协作存储系统的一部分。在 非线性编辑的领域中,项目一般被理解成包含“元数据”,“元数据”引用媒体文件而非媒体 文件本身。在它们最基本的形式中,项目包括引用整个媒体文件的“剪辑”、引用部分媒体文 件的“子剪辑”以及引用(部分或全部)媒体文件的“序列”(它们全都串在一起以编故事或 节目)。在非线性视频编辑的上下文中,编辑者的创造性工作一般存储在项目中。不像典型 地绝不在编辑的过程中修改的媒体文件,项目文件一直在改变,因为它们反映编辑者的编 辑决定。因此,编辑者的正常实践是每个维持其自己的项目,因为如果两个或更多编辑者从 两个不同的非线性编辑工作站打开相同的项目(假设项目被存储在可以被不止一个编辑者访问的某一中央位置),则一个编辑者将处于重写其他编辑者正在做出的改变的重大风险, 反之亦然。重写改变的风险应用于项目中包含的任何信息,包括设置、二进制文件、序列等。 此外,如果多个编辑者要打开相同的项目文件,则他们都将面对信息混乱,使得难以分辨哪 个编辑者正在编辑什么以及谁应当具有对哪些元数据的修改权力。因此,还将十分希望提供一种用于非线性编辑系统的集中式协作存储系统,其管 理不同编辑者对共享项目的贡献的所有权和权限并且实施“符号链接”以创建虚拟文件和 文件夹结构,其允许多个非线性编辑系统就相同的项目协作,保持工作有条不紊使得其清 楚哪个编辑者正编辑什么并且允许每个编辑者针对项目维持他/她自己的设置。还将十分希望创建协作编辑环境,使得运行非线性视频编辑(NLE)程序的一个或 多个编辑者能够就项目协作,尽管事实是程序本来将项目保存为单个整合且不可分割的文 件。还将十分希望在集中式数据存储系统上创建协作视频编辑环境,该集中式数据存 储系统装配有用于在集中式数据存储系统上创建共享项目空间(Shared Project Space) 的工具,可以向该共享项目空间添加用户从而定义谁能够访问该项目空间。还十分希望在集中式数据存储系统上创建协作视频编辑环境,该集中式数据存储 系统装配有用于在给定共享项目空间中创建一个或多个上层文件夹的工具,所述一个或多 个上层文件夹中的每个可以被定义为唯一“共享项目(Shared Project)”并且编辑者可以 将代表总体项目的某一部分的项目文件放置到所述文件夹中。还十分希望在集中式数据存储器上创建协作编辑环境,其装配有用于控制项目文 件的权限和所有权的机构,使得多个用户不能重写彼此的工作。

发明内容
因而,本发明的一个目的是提供一种集中式数据存储系统上的协作编辑环境,其 使得运行非线性视频编辑(NLE)程序的一个或多个编辑者能够就项目协作,尽管事实是 NLE程序本来将项目保存为单个整合且不可分割的文件。本发明的基础是意识到,当用被设 计为将项目保存为单个整合文件的一些NLE程序进行工作时,通常实际不必将所有项目元 数据(剪辑引用、子剪辑引用、序列等)放置到单个项目文件中。即使给定NLE软件应用的制 造商可能将项目定义为单个不可分割的文件,但是在很多情况下有可能将项目元数据分布 在多个项目文件中,所述多个项目文件只有一起将组成“项目”。一旦用户认定“项目”由多 个“项目文件(Project File)”组成,就有可能预期将这些放置到允许协作的结构中。本发明的解决方案建立在Linux操作系统的底层特征(且也在其他Unix或类Unix 的操作系统诸如Mac OS-X上发现)的唯一使用上一这是这些操作系统创建到文件的指针 或“链接”(“符号链接”和“硬链接”二者)的能力。本发明系统广泛利用这种链接以向连 接到服务器及其集中式存储器的每个工作站提供对共享媒体文件的容易且安全的访问。实 质上,系统对被指定可对不止一个用户和工作站访问的所有媒体文件虚拟化,向(经由每个 用户或工作站的自己的唯一目录和网络共享)连接到服务器的所有工作站和用户呈现到实 际文件的“链接”,同时保护不能被那些用户和工作站直接访问的完全分离目录中的实际媒 体文件。也就是说“符号链接”创建虚拟文件,该虚拟文件对于系统上的每个用户是唯一的 但是指向存储在平常绝不被任何NLE工作站直接访问的文件夹中的联网驱动上的真实媒体文件的公共集合。从NLE的观点看,这些链接不可与实际媒体文件区分一且因而可以执 行NLE将对并且可以对那些文件正常执行的所有操作(甚至文件删除)。然而,因为文件实 际仅仅是链接,所以实际文件总是得到保护。以这种方式虚拟化所有共享媒体文件的方法也使得不同NLE应用在网络上共享 媒体文件。文件虚拟化一其中相同的媒体文件可以具有不止一个名称,每个名称被修剪,使 得它可以被特定NLE应用所识别一实现这种交叉NLE兼容性。提供与平台和工作站品牌无关的系统和方法。仅需要的是基于Linux(或等价地, Unix或类Unix)的服务器。也就是说,所有数字视频媒体数据文件操纵以与平台无关的方 式发生在服务器侧,因而,允许在很多不同平台上运行的很多不同类型的编辑系统和其他 设备共享相同的存储空间。根据本发明的前述目的和方面,提供一种用于在具有计算机服务器的系统中存储 数字音频和视频媒体文件的系统、方法和计算机程序产品,该计算机服务器与用于存储媒 体文件的装置通信且与一个或多个独立用户通信。该方法包含以下步骤在存储装置上 创建目录结构以用于分层地组织数字媒体和其他数据文件;在目录结构中生成对应于能够 访问媒体文件的每个独立用户的且独立用户可以通过其存储实际数字媒体文件的用户目 录(User Directory);将实际存储的数字媒体文件从用户目录移动到与用户目录分离的共 享目录(Shared Directory),在其中文件不被任何独立用户直接访问;以及针对移动到共 享目录中的每个数字媒体文件,为每个单独的独立用户创建到实际数字媒体文件的对应链 接,且将链接放置在每个对应用户目录内部。以这种方式,经由链接,允许用户对存储在存 储装置上的共享目录中的所有实际数字媒体文件的间接访问,同时防止对实际数字媒体文 件的直接访问。根据本发明的另一方面,提供一种用于经由图形用户界面(⑶I)管理集中式数字 媒体存储系统的完整工具,该集中式数字媒体存储系统存储实施符号链接虚拟化特征的多 个NLE工作站的编辑数据和数字媒体源数据。该管理工具使得媒体和对应的虚拟文件能够 被操作,例如响应于用户请求而在逻辑位置中被创建、从一个逻辑位置移动到另一逻辑位 置、被共享、被刷新和被删除,始终自动维持所描述的文件虚拟化特征。本发明的另一目的是提供一种工具,该工具管理不同编辑者对共享项目的贡献的 所有权和权限并且实施“符号链接”以创建虚拟文件和文件夹结构,其允许多个非线性编 辑系统就相同的项目协作,保持工作有条不紊使得其清楚哪个编辑者正在编辑什么并且允 许每个编辑者针对项目维持他/她自己的设置。进一步针对该目的,该工具实施“符号链 接”虚拟化特征以创建用于实现如下功能的虚拟文件和文件夹结构1)当在由工具管理器 软件建立的框架内创建和共享项目时,多个编辑者打开相同的共享非线性编辑项目并用其 工作;2)作为共享非线性编辑项目的成员的每个编辑者获取该共享Avicf项目内他/她自 己的用户文件夹(User Folder);以及3)当编辑者打开共享项目时,他/她在“共享项目,, 结构的顶级看到他/她自己的用户文件夹。提供被称为“其他编辑者(Other Editor)”的 另一文件夹,在该文件夹内部发现作为共享项目的成员的所有其他编辑者的用户文件夹。 “符号链接”结构使得每个编辑者有可能具有共享项目的定制视图,在该定制视图中他们自 己的用户文件夹处于顶级而所有其他编辑者的文件夹处于可以被折叠(collapse)成一个 “其他编辑者”文件夹的下级。
9
有利地,本发明可以被实施用于其他非线性视频编辑应用,且操作以使得多个编 辑者能够通过实施或不通过实施虚拟化特征在视频编辑项目中协作和共享。


鉴于结合附图进行的以下详细描述,本发明的目的、特征和优点将对本领域的一 位技术人员来说变得显而易见,在附图中
图1描绘了根据本发明的新颖GUI 500,管理员经由该GUI可以创建“共享的”非线性 视频编辑项目;
图2A描绘了存储服务器(Storage Server)上的⑶I,其被修改为使得运行非线性视频 编辑(NLE)程序的一个或多个编辑者能够就项目协作,所述项目由被设计为整合项目文件 的那些的集合组成;
图2B描绘了用户经由存储服务器上的⑶I 500’创建共享项目空间; 图3描绘了响应于实现可用用户的选择的下拉菜单的选择的示例GUI弹出界面框521, 该界面框521示出要被添加到共享项目空间“FCPDemo”的用户(编辑者)的选择;
图4描绘了具有输入字段MO的⑶I 500’,其实现共享项目空间的管理并且尤其实现 将在新创建的共享项目空间中定义新“共享项目”的上级目录的创建;
图5A描绘了响应于选择框Ml的选择而显示的弹出框,其使得用户能够创建将在新 创建的共享项目空间中定义新“共享项目,,的上级目录;而图5B描绘了可以安装到目的地 548b的新创建的被称为“FCP Demo"的共享项目空间的可用性(源);
图6描绘了实现新创建的共享项目空间到用户目的地工作站的安装的图形界面; 图7描绘了示出在安装共享项目空间之后的示例OS X Finder (文件管理器)视图的 界面;
图8描绘了由呈现共享项目的协作编辑服务器提供的示例项目共享(Project Glaring)浏览器界面580 ;
图9描绘了由系统文件共享浏览器生成的示例界面,其描绘了用户“andy”打开在用户 “brian”控制下的“广告片(Promo)”项目文件;
图10描绘了由系统文件共享浏览器生成的示例界面,其描绘了用户“andy”试图修改 在用户“brian”控制下的“广告片”项目文件;
图11描绘了屏幕截图,其示出系统的生成且呈现给示例用户“Andy”的项目共享浏览 器界面,以说明用户“andy”如何能够自由地将Final Cut Pro项目文件移入和移出不受保 护项目(Unprotected Project);
图12描绘了由系统文件共享浏览器生成的示例界面,其描绘了如果用户“andy”试图 从用户“brian”取走“广告片”项目文件则发生的情况;
图13描绘了从Linux文件系统的观点看的Final Cut Pro共享项目的示例视图;以及 图14描绘了根据本发明的用于实施服务器侧文件虚拟化特征的基础架构和示例性计 算机环境。
具体实施例方式本发明是一种系统和方法,其使得诸如Apple的Final Cut ftx/视频编辑程序之类的本来提供一种用于将视频编辑“项目,,存储为单个“整合”文件的NLE系统能够在协作 编辑环境中使用。根据正常和一般接受的实践,当使用这种NLE程序且存储其项目数据时, 不可能为不同编辑者给予对相同项目的不同部分的控制,因为在计算环境的文件系统级, 那些NLE应用将项目定义为包含在仅一个单个文件中的元数据。也就是说,不像AVID 非线性编辑应用,Apple的Final Cut Pro 在单个文件中存 储所有其二进制文件,其中AVID 非线性编辑应用的“项目”由包括其全都引用离散媒体文 件的“剪辑”和序列以及二进制文件的元数据组成并且其创建的项目数据不存储在单个整 合文件中,所述离散媒体文件可以被独立地操纵且被不同地分配写权限。如在此所提及的,二进制文件是诸如Avid的NLE为了保存关于项目的元数据而创 建的信息的“最小微粒”。这种元数据可以包括“主剪辑”(对以其整体捕获的原始音频和 视频文件的引用或指针);“子剪辑”(对原始音频和视频文件的部分的唯一命名的引用或指 针);“序列”(对按以下方式布置的主剪辑和/或子剪辑的引用它们可以顺序回放以创建 看似连续但是实际上由很多小分量和层组成的视频节目);“子序列”(代替或者除了原始序 列之外可以被重命名和再使用的序列部分的拷贝);“再现效果”(对在应用诸如颜色校正、 慢动作、叠化(dissolve)或者其他不能实时回放的过渡之类的效果滤波器之后创建的文件 的引用,而不对新文件再现该效果)。Avide NLE视频编辑项目可以分割成多个二进制文件的事实加上每个二进制文件 在文件系统级为实际文件的事实,在美国专利公开号20060184673 Al中描述的系统被配 置成实现设置和控制二进制文件的所有权和读/写(Read/Write)相对只读(Read-Only) 权限,由此提供用于多个编辑者协作地从事于单个项目的基础结构。实际上,Avide的二进 制文件方案使得有可能为不同编辑者给予对单个项目的不同部分的控制(即,写访问)。也 就是说,因为诸如Avicf项目的一些NLE程序典型地被分割成很多二进制文件,所以用于 非线性编辑系统和其他设备的集中式协作存储系统建立文件目录和符号链接方案,其允许 作为项目空间的“成员”的所有(ALL)编辑者看到由所有其他编辑者创建的所有二进制文 件,但是根据二进制文件驻留于谁的“用户文件夹”来控制对二进制文件的写访问(WRITE ACCESS),即,提供基于用户的锁定方案以允许对谁可以和不可以写文件的安全控制。因而,提供一种由处理器执行的软件程序以提供图形界面和文件管理特征,其被 配置成通过在数据存储系统上创建可以支持协作编辑的环境(就像针对Avicf NLE创建的 环境)而避免Final Cut Pro 项目文件结构的限制。也就是说,虽然Final Cut Pro NLE应用在单个文件中存储其所有二进制文件, 且因而独立Final Cut Pro 二进制文件不能被分配不同的所有权和权限(在不修改应用本 身的情况下),但是Final Cut Pro 确实允许编辑者同时打开很多整个项目。因而,根据本 发明,处理Final Cut项目文件(或其他单个整合NLE项目文件),就好像它们是诸如在AVID NLE方案中提供的“二进制文件”一样,并且提供这样的环境Final Cut Pro “项目”可以 被定义为被称为“项目名称(Project Name)”的顶级目录,其中多个Final Cut项目文件被 组织成底下存储的User Directories。而且,通过小心控制所有权和权限,提供一种协作基 础结构。在一个实施例中,如下文中将更详细描述的,描述一种集中式数据存储系统上的 协作编辑环境,其中诸如由Final Cut Pro NLE应用提供的本来将项目保存为单个整合文件的NLE视频应用可以被适配成使得多个编辑者可以与Final Cut ftx/应用协作地工作 且事实上具有共享项目。集中式数据存储系统上的协作视频编辑环境还装配有用于在集中 式数据存储系统上创建“共享Final Cut项目(Shared Final Cut Project)”(或备选地, 共享项目空间)的工具,可以向所述共享Final Cut项目添加用户从而定义谁能够访问该项 目空间。进一步,集中式数据存储系统上的协作视频编辑环境装配有用于在给定共享项目 空间中创建一个或多个上级文件夹的工具,每个文件夹可以被定义为唯一“共享Final Cut 项目”且编辑者可以将代表总体项目的某以部分的Final Cut项目文件放置到该文件夹中。 而且,在这种集中式数据存储器上的协作编辑环境中,提供一种用于控制Final Cut项目文 件的权限和所有权的机构,使得多个用户不能重写彼此的工作。还提供一种协作管理工具,其在每个“共享Final Cut项目”内部创建目录结构, 该目录结构包含
针对共享项目空间的每个成员的用户文件夹,其中那里存储的任何文件仅可由该用户
写;
不受保护项目文件(Unprotected Project File)文件夹,其可由任何用户写且允许用 户将Final Cut项目文件从一个用户容易地传送到另一用户;以及
组项目文件文件夹(Group Project Files i^older),其提供其中用户可以不仅根据 “her”而且通过任何所希望的方式(例如,通过主题或日期)组织项目文件的地点以及其中 所有文件对所有用户总是维持只读状态的地点。另外提供编程功能性,通过该功能性,每个用户获取共享项目空间和包含在其中 的共享Final Cut项目的他/她自己的视图,使得其自己的用户文件夹在每个共享Final Cut项目的顶部可见,使得所有其他用户文件夹在被称为“其他用户(Other Users)"的文 件夹内部可见。另外提供编程功能性以提供⑶I界面(即Final Cut项目浏览器(Pro ject Browser)),该GUI界面运行在可以显示一个或多个共享项目空间的文件夹和文件层次的 Macintosh OS X平台上。⑶I界面被配置成使得编辑者能够1)通过“双击”选择来打开 Final Cut项目文件;2)当编辑者打开只读文件时警告他们;3)当编辑者试图将文件从其 自己的用户文件夹拖到其他编辑者的用户文件夹时警告他们该动作不能完成;4)将Final Cut项目文件拖到组项目文件文件夹中,即在工作站的文件系统级正常将是不可能的文件 移动,因为组项目文件文件夹是只读。类似地,⑶I界面必须允许用户将Final Cut项目文 件拖出组项目文件文件夹;5)允许编辑者创建、命名和重命名组项目文件文件夹中的新子 目录;6)重新组织存储在组项目文件文件夹中的任何Final Cut项目文件;以及7)允许编 辑者向其他用户“分发”其自己的项目文件。再次,这是在工作站文件系统级正常将是非法 的动作,因为用户正常没有对其他用户文件夹的写访问;以及8)向编辑者提供时间余量以 取消分发其项目文件。以下描述,虽然特别提及用于操纵Avicf项目的协作编辑系统,但是现在被扩展且 更详细地描述,其中另外强调其用于使得运行非线性视频编辑(NLE)程序的一个或多个编 辑者就项目协作,尽管事实是程序(诸如Apple的Final Cut Pro编辑应用)本来将项目保 存为单个整合且不可分割的项目文件。图1-13尤其描绘了用于管理集中式存储系统的工具如何进一步提供创建特殊
12环境的能力,在该特殊环境中非线性视频编辑项目可以被多个编辑者共享,使得1)每个 编辑者的工作在只读的基础上可容易对同事访问一即,它可以被查看和复制,但是不能被 改变;2)工作于共享项目中的编辑者可以向同事完全隐瞒一些工作;3)每个编辑者均获 取共享项目的其自己定制的视图;4)编辑者可以通过将其工作移动到不受保护区域来将 写权力(Write Authority)转让给同事;5)每个编辑者针对项目维持他/她自己的设置 (Settings)文件以及统计和垃圾二进制文件(trash bin)。图1 一般描绘了根据本发明的另一方面的系统管理员⑶I 500的实施例,经由该 系统管理员GUI 500启动功能性以实现对用于协作非线性编辑和管理Avicf “项目”的集中 式共享存储系统的管理。经由界面500,“项目文件”选项卡510的选择使得管理员能够在集 中式共享存储系统上创建可以支持“共享项目”的环境。首先,经由界面500,按钮512的选 择使得管理员能够在系统服务器上创建包含项目的项目“空间”。在图1的示例性界面500 中,定义的空间由用户经由输入字段515而给予名称。要理解,该“空间”只是标准Linux目 录,然而,在该目录中创建的任何正常项目通过工具提供的共享项目实现软件检测。对在服务器上可以创建的独立“共享项目”空间的数量没有实际限制。每个空间 可以具有分配为空间的“成员”的不同编辑者组。因而,不同的组配置可以共享不同项目。 图1 一般描绘了分别实现向项目空间添加编辑者(用户)的输入字段520和525。每个输入 字段520和525被提供有实现可用用户和所创建项目空间的选择的相应下拉菜单。就像可 以添加用户(例如编辑者)一样容易,可以经由界面经由实现选择要从任何项目空间去除的 用户的输入字段530的下拉菜单选择,在任何时刻从任何项目空间去除用户。图2A描绘了被修改为实现创建项目文件的共享项目空间(例如共享Final Cut项 目)的存储服务器上的GUI。在示例性实施例中,图2A示出包括用于创建新项目空间的“项 目空间”选项卡530,该新项目空间实现运行非线性视频编辑(NLE)程序的编辑者的编辑协 作以就项目协作,尽管事实是非线性视频编辑程序本来将项目保存为单个整合且不可分割 的文件。一般地,输入字段实现编辑者(用户)向项目空间的添加,其中每个输入字段520和 525提供有实现可用用户和所创建项目空间的选择的相应下拉菜单。就像可以添加用户(例 如编辑者)一样容易,可以经由界面经由实现选择要从任何项目空间去除的用户的附加输 入字段533中的下拉菜单选择,在任何时刻从任何项目空间去除用户。如图2B所示,作为示例,存储服务器上的⑶I 500’描绘了用户如所示的那样经由 用户输入字段515创建被称为“FCPDemo”的示例共享项目空间。进一步如图3所示,响应 于选择实现可用用户的选择的下拉菜单,描绘了存储服务器上的示例GUI弹出界面框521, 其示出管理员选择希望被添加到共享项目空间“FCPDemo”的用户(编辑者)。对于被添加到 该项目空间(以及被添加到任何共享Final Cut项目)的每个人,服务器应用创建用户文件 夹。如果在创建共享Final Cut项目之后用户需要被添加到此处,则系统将向已经存在的 每个项目添加文件夹。图4描绘了经由存储服务器生成的⑶I 500 ’,该⑶I 500,具有输入字段540,其使 得管理员能够管理共享项目空间并且尤其创建将在新创建的示例“FCPDemo”空间中定义新 “共享Final Cut项目”的上级目录。点击选择框541将打开弹出框以用于使得用户(管理 员)能够创建将在“FCPDemo”共享项目空间中定义新“共享Final Cut项目,,的上级目录。 在此处描述的示例中,响应于选择框541的选择,如图5A所示,显示弹出框M5,其中用户可
13以创建在“FCPDemo”中定义新“共享Final Cut项目“的上级目录。在示例中,在字段546 中输入的新共享Final Cut项目被命名为“Demo项目(Demo Project)”。如图5A所示,通 过选择确定按钮547,新文件夹,例如文件夹“Demo项目”被创建,如图5B所示,其描绘可以 被安装到目的地548b的被称为“FCP Demo" 548a的新创建的共享项目空间的可用性(源)。图6描绘了在Macintosh OS X计算机上生成的示例“共享项目空间”管理器界面 560,其允许用户登入系统服务器且浏览可以安装在用户的工作站上的资源。图6尤其描绘 在被称为“FCPDemo”的示例共享项目空间中的实现被称为“FCP Demo”558的新创建的共享 项目空间向用户目的地工作站的安装的管理器界面560。在安装共享项目空间“FCP Demo”之后,图7描绘了在OS X Finder (文件管理器) 中生成的目录结构界面570。可以看出,每个用户在被称为“FCPDemo”的共享项目空间中具 有他/她自己的用户文件夹。登入用户“Andy” 574在顶部看到他的文件夹。可以在被称 为“其他用户” 572的嵌套文件夹中看到其他用户。同样,图8描绘了示出系统的呈现共享 Final Cut项目“Demo项目”548的Final Cut项目共享浏览器界面580的屏幕截图。如图 7所示,可以看出,每个用户在共享项目中具有他/她自己的用户文件夹。登入用户“Andy” 在目录结构的顶部看见他的文件夹584,其中在被称为“其他用户,,582的嵌套文件夹中看 见其他用户。图9描绘了系统文件共享浏览器生成的示例界面,其描绘用户“Andy”打开在用户 “brian”控制下的文件项目587 (例如,“广告片”项目文件)。在打开文件之前,Final Cut 项目共享浏览器界面警告用户“Andy”该项目文件是“只读”,如弹出警告框586所描绘的。图10描绘了由系统文件共享浏览器生成的示例界面,其描绘了用户“Andy”试图 修改在用户“brian”控制下的“广告片”项目文件587。根据示例场景中设置的权限和设 置,Andy可以看,但是如果他(例如通过修改那里存储的序列)对项目文件做出改变且然后 试图保存该改变,则系统为Andy生成告知“文件被锁定”的消息592。图11描绘了示出系统的生成且呈现给示例用户“Andy”的Final Cut项目共享浏 览器界面580’的屏幕截图,以说明用户“Andy”如何能够将Final Cut Pro项目文件自由 移入和移出不受保护项目文件夹591。用户Andy还可以对“组项目文件”这样做。然而“不 受保护项目,,文件夹对于所有用户是完全读/写,“组项目文件”文件夹对于所有用户是完 全只读。这意味着当Andy将文件移入或移出组项目文件时,Final Cut项目浏览器580实 际指令在服务器上执行移动。图12描绘了由系统文件共享浏览器生成的示例界面595,其描绘了如果用户 “Andy”试图将“广告片”项目文件从用户“brian”取走则发生的情况。Final Cut项目共 享浏览器将弹出错误消息597,告知用户Andy “没有权限这样做”。图13描绘了从Linux文件系统599的观点看的Final Cut Pro共享项目的示例 视图。可以看出,每个用户文件夹被规定的用户“所有”,且每个项目文件(即,原始剪辑(Raw Clips)、粗略剪切(Rough Clips)、广告片)被它所在文件夹的用户所有。当用户四处移动 文件时,文件的权限和所有权总是自动调节,如现在所述。尤其鉴于Linux内核中的最近发展,系统被编程为“监视”目录结构,并且这使得 系统被告知添加到该结构的任何新文件或目录且被告知对结构中的任何现有文件或目录 的任何改变,使得系统软件然后可以对文件和文件夹设置权限、所有权、扩展属性和ACL以确保仅用户文件夹的所有者可以在他/她的用户文件夹内部写入或修改文件,或者从他/ 她的用户文件夹内部添加或删除文件,以确保放置在“不受保护文件夹”中的文件或文件夹 可以被所有用户以任何方式移动、删除和修改;且确保放置在“组文件夹”中的文件或文件 夹对所有用户是只读。Avid和Final Cut Pro项目共享二者另外被编程以实施以下功能
用于为每个新共享项目创建例如被称为“EdiUhare组二进制文件(Group Bins)”(在 Avid 的情况下)或 “EditShare 组项目文件(Group Project Files)”(在 Final Cut 的情 况下)的新子文件夹的功能;
用于创建为与Avid应用一起使用而创建的新“文件管理器浏览器(File Manager Browser)”(类似于现有Final Cut Pro项目浏览器)的功能,其允许新功能组被Editshare 服务器控制,否则服务器将不可能在文件系统级实现;
相同的新功能组被添加到位于Final Cut Pro应用外部的现有Final Cut Pro项目浏
IrWSB 见益。新功能包括
1)功能,用于允许编辑者(即用户A)将他/她控制的文件拖入另一编辑者的用户文件 夹中,事实上允许用户“分发”他/她控制的文件或二进制文件;在分发文件或二进制文件 后,自动与权限相关联,使得文件现在属于“接收用户(receiving her)”且对老用户变成 只读;
2)用于允许编辑者在他/她发现错误文件被移动或它被移动到错误位置时在例如10 秒的预定时间量内取消“分发文件”的功能;
3)用于允许编辑者将他们控制的文件拖到新“组二进制文件”或者“组项目文件”文 件夹的功能。在将文件放置在这些新文件夹之一中后,运行在协作编辑服务器上的看门狗 (watchdog)功能(响应于文件系统事件而做出响应和采取行动,诸如被包括在Linux 内核 中的“iNotify”文件系统事件监控机构的Linux内核功能)自动改变关于文件的所有权和 权限,使得文件对所有用户(包括原始所有者)是只读,由此允许
i)使得编辑者能够将文件重新布置到“组二进制文件”或“组项目文件”文件夹内的 “主题子文件夹”中的功能;
ii)提供地点的功能,该地点处编辑者可以查找和访问某些常用文件(诸如主剪辑),避 免需要浏览很多不同的用户文件夹以发现所希望的二进制文件或项目文件;
iii)用于确保如果从在组二进制文件或组项目文件内打开文件,如果文件然后被另一 用户移动或重新布置,则没有打开文件的用户将偶然创建文件的新拷贝(因为文件在第一 地点处被只读地打开)危险的功能;
iv)用于如果应当有必要进一步修改Avid二进制文件和Final Cut项目文件的内容则 允许用户将文件从组二进制文件或组项目文件拖出回到自己的用户文件夹的功能;以及
ν)用于将文件拖入或拖出组二进制文件或组项目文件的功能仅可能来自独立Final Cut项目浏览器内或来自新独立Avid项目浏览器,因为文件的移入或移出实质上“打破”正 常文件系统规则。然而,从协作编辑客户端应用内执行这些动作意味着它们实际可以通过 具有超过用户权限的管理权限的协作编辑服务器来执行。进一步,现在如下描述本发明的方法在第一步骤中,实施生成界面以收集用于创建新共享项目空间的信息。该步骤将需要 实施生成GUI的程序和脚本,以便具有管理特权的用户提供新项目空间的所希望名称以及 (理想地通过GUI)具有管理特权的用户提供谁将是新项目空间的成员的用户列表。
然后,在附加步骤中,提供生成用于创建新共享项目空间的界面。也就是说,根据 在第一步骤中收集的信息,通过操作系统发布命令以在ext3 (或类似)文件系统上创建新 目录结构。示例新目录结构看似如下 然后,实施创建新共享项目的步骤。该步骤将需要实施生成GUI的程序和脚本,以 便具有管理特权的用户提供新共享目录的所希望名称并且根据在第一步骤中收集的信息 通过操作系统发布命令以向上面目录结构添加新子目录。在所采用的方法中,如所指示的 那样自动放置符号链接以确保如所述的文件虚拟化。在该步骤的结尾处得到的目录结构看 似为
权利要求
1.一种用于使得运行非线性视频编辑(NLE)程序的一个或多个编辑者能够就项目协 作的系统,所述非线性视频编辑程序被配置成本来将项目保存为单个整合且不可分割的文 件,所述系统包含用于在计算机可访问存储设备内建立一个或多个共享项目空间的计算机实施装置,所 述装置在所述共享项目空间内建立一个或多个共享项目以供一个或多个编辑者协作;用于向共享项目空间添加编辑者且用于从共享项目空间去除编辑者的计算机实施装 置,所述添加装置还跟踪用于访问在所述共享项目空间中创建的项目的用户的权限;用于在所述建立的共享项目空间内自动创建文件和目录结构的计算机实施装置,所述 创建装置定义新共享项目在哪里开始且定义共享项目并且在所述文件和目录结构内在所 述文件和目录结构中的所述新共享项目之下存储包括组成完整项目的元数据的一个或多 个文件项目文件;用于针对每个所述建立的共享项目中的每个编辑者自动创建文件和目录结构的计算 机实施装置,所述创建装置针对作为所述共享项目空间的成员的每个编辑者在每个共享项 目内建立用户文件夹;以及用于自动设置关于每个用户文件夹和在其内的权限使得每个用户文件夹的内容能够 被所有用户读取但是仅能够被对应于用户文件夹的用户创建、修改或删除的装置。
2.根据权利要求1所述的系统,其中所述单个整合不可分割的项目文件与由视频编 辑应用创建的包括与项目相关联的所有元数据的项目文件有关。
3.根据权利要求1所述的系统,还包含用于针对作为共享项目空间的成员的每个编辑者自动创建到每个所述用户文件夹的 符号链接的集合的装置;以及用于针对每个用户组织到每个所述用户文件夹的所述符号链接的装置,由此,经由所 述组织的符号链接,所述系统使得每个编辑者能够得到每个共享项目的唯一虚拟视图。
4.根据权利要求3所述的系统,还包含用于针对每个共享项目空间的每个用户自动创建“其他用户”文件夹的装置,其中,除了到每个共享项目空间的该用户自己的用户文件夹的每个用户的符号链接之 外,到每个共享项目的其他用户文件夹的所有其他符号链接自动放置在每个共享项目的每 个用户的“其他用户”文件夹内部。
5.根据权利要求3所述的系统,包含计算机实施装置,用于提供用户自己的虚拟视图,并且为了在共享项目内部的文件夹 层次的顶部的显示而在每个共享项目的每个用户自己的虚拟视图中生成到用户自己的用 户文件夹的符号链接,并且为了在“其他用户”文件夹内部的显示而生成到所有其他用户文 件夹的符号链接。
6.根据权利要求3所述的系统,其中在编辑工作站上执行非线性视频编辑(NLE)程 序,所述系统还包含计算机实施装置,用于在编辑工作站上提供图形用户界面,经由所述图形用户界面使 得用户能够规定计算机可访问存储设备内的共享项目空间;以及用于规定所述一个或多个 编辑者的添加以就所述共享项目空间内的共享项目进行协作。
7.根据权利要求6所述的系统,其中所述创建装置使得能够在呈现给在该编辑者的编辑工作站处的对应编辑者的共享项目目录结构内建立第一用户文件夹,所述第一用户文 件夹呈现在共享项目目录结构的顶级而一个或多个其他编辑者的用户文件夹位于所述第 一用户文件夹之下。
8.根据权利要求6所述的系统,其中项目包含元数据,所述元数据包括具有内容的项 目文件,包括全都引用媒体文件的剪辑和剪辑序列,使得每个编辑者能够查看每个用户共 享文件夹内部的项目文件。
9.根据权利要求8所述的系统,其中编辑工作站还包括用于在共享项目目录结构内 创建新项目文件的装置,所述设置权限最初实现仅由该编辑者访问包括在该项目文件中的 内容。
10.根据权利要求8所述的系统,其中编辑工作站还包括用于经由所述图形界面将项 目文件放置在该编辑者的用户文件夹中的装置,用于设置权限的所述装置使得从事于共享项目的其他编辑者能够打开项目文件同时 防止修改来自该编辑者的用户文件夹的任何项目文件内容。
11.根据权利要求10所述的系统,其中编辑工作站还包括用于经由所述图形界面经 由文件夹拖放操作将项目文件放置到该编辑者的用户文件夹的装置。
12.根据权利要求8所述的系统,其中编辑工作站还包括用于将项目文件放置到共享 项目目录结构外部使得在项目的其他编辑工作站的虚拟视图中不会看到项目文件和任何 内容的装置。
13.根据权利要求8所述的系统,还包含用于生成为共享项目建立的不受保护项目文件文件夹的计算机实施装置,所述编辑工 作站使得任何编辑者能够访问驻留在所述不受保护项目文件文件夹中的项目文件、去除项 目文件且将项目文件放置在该编辑者自己的用户文件夹内部以对其进行控制。
14.根据权利要求1所述的系统,还包含用于生成针对共享项目的组项目文件文件夹的计算机实施装置,其中编辑者将项目文件放置到所述组项目文件文件夹中且从组项目文件文件夹取出 项目文件,以及其中任何编辑者在所述组项目文件文件夹内部创建新子目录并且能够在组项目文件 文件夹内部重新布置文件和目录。
15.根据权利要求15所述的系统,还包含用于维持所有文件处于只读状态同时驻留在组项目文件文件夹中的计算机实施装置,所述装置用于自动设置权限,其中试图打开位于组项目文件文件夹中的文件的任何编 辑者被限制为只读访问,由此防止修改文件。
16.根据权利要求15所述的系统,还包含用于允许所述组项目文件文件夹中的文件 被一个编辑者四处移动或去除同时另一编辑者打开它们而在文件被关闭时不会创建第二 拷贝的装置。
17.根据权利要求15所述的系统,还包含用于使得在编辑工作站处的在客户端工作站文件系统级对组项目文件文件夹没有写 权限的编辑者能够经由图形界面将文件和文件夹拖入和拖出组项目文件文件夹的计算机 实施装置。
18.根据权利要求15所述的系统,还包含用于经由图形界面将文件拖到其中编辑者没有写访问的文件结构位置的文件管理器 装置;以及以下之一如果用户正拖动文件,则客户端接口与协作编辑服务器通信且指令服务器 代表用户执行动作。
19.根据权利要求18所述的系统,其中所述文件管理器装置防止在文件系统级未被 允许那样做的用户经由所述图形界面将项目文件拖入和拖出另一用户文件夹,所述客户端 接口生成指示缺少权限的警告消息。
20.根据权利要求19所述的系统,其中所述文件管理器装置允许在文件系统级未被 允许那样做的用户将文件给予另一用户,其中客户端接口与协作编辑服务器通信且指令服 务器代表用户执行动作。
21.根据权利要求3所述的系统,其中用于建立共享项目空间以供一个或多个编辑者协作的计算机实施装置还包含用于创 建目录方案的装置,所述装置创建文件和文件夹结构以向每个所述一个或多个编辑者提供 共享项目的所述虚拟视图。
22.一种用于使得运行非线性视频编辑(NLE)程序的一个或多个编辑者能够就项目协 作的方法,所述非线性视频编辑程序被配置成本来将项目保存为单个整合且不可分割的文 件,所述方法步骤包含在计算机可访问存储设备内建立共享项目,所述装置在所述项目空间内建立一个或多 个共享项目以供一个或多个编辑者协作;向共享项目空间添加编辑者且用于从共享项目空间去除编辑者,所述添加装置还跟踪 用于访问在所述共享项目空间中创建的项目的用户的权限;在所述建立的共享项目空间内自动创建文件和目录结构,所述创建装置定义新共享项 目在哪里开始且在所述文件和目录结构内在所述文件和目录结构中的所述新共享项目之 下存储包括组成完整项目的元数据的一个或多个文件项目文件;针对每个所述建立的共享项目中的每个编辑者自动创建文件和目录结构,所述创建装 置针对作为所述共享项目空间的成员的每个编辑者在每个共享项目内建立用户文件夹;以 及自动设置关于每个用户文件夹的权限,使得每个用户文件夹的内容能够被所有用户读 取但是仅能够被对应于用户文件夹的用户创建、修改或删除。
23.根据权利要求22所述的方法,其中所述单个整合不可分割的项目文件与由视频 编辑应用创建的包括与项目相关联的所有元数据的项目文件有关,所述元数据包括全都引 用媒体文件的剪辑和剪辑序列。
24.根据权利要求23所述的方法,还包含针对作为共享项目空间的成员的每个编辑者自动创建到每个所述用户文件夹的符号 链接的集合;以及针对每个用户组织到每个所述用户文件夹的所述符号链接,使得经由所述组织的符号 链接,每个用户能够得到每个共享项目的唯一虚拟视图。
25.根据权利要求M所述的方法,还包含针对每个共享项目的每个用户自动创建“其他用户”文件夹,以及除了到针对每个所述共享项目的该用户自己的文件夹的每个用户的符号链接之外,将 到每个共享项目的其他用户文件夹的所有其他符号链接自动放置在每个共享项目的每个 用户的“其他用户”文件夹内部。
26.根据权利要求25所述的方法,还包含经由在用户的编辑工作站处的图形界面,提供用户自己的虚拟视图;为了在共享项目内部的文件夹层次的顶部的显示,在每个共享Final Cut项目的每个 用户自己的虚拟视图中生成到用户自己的用户文件夹的符号链接;以及为了在“其他用户”文件夹内部的显示,生成到所有其他用户文件夹的符号链接。
27.根据权利要求25所述的方法,其中在编辑工作站上执行非线性视频编辑(NLE)程 序,所述方法还包含经由编辑工作站上的所述图形用户界面,规定计算机可访问存储设备内的共享项目空 间;以及规定所述一个或多个编辑者的添加以就所述共享项目空间内的共享项目进行协作。
28.根据权利要求27所述的方法,其中所述自动创建文件和目录结构的所述步骤还 包含在呈现给在该编辑者的编辑工作站处的对应编辑者的共享项目目录结构内建立第一 用户文件夹,所述第一用户文件夹呈现在共享项目目录结构的顶级而一个或多个其他编辑 者的用户文件夹位于所述第一用户文件夹之下。
29.根据权利要求观所述的方法,还包含由编辑工作站处的编辑者在共享项目目录结构内创建新项目文件,所述设置权限最初 实现仅由该编辑者访问包括在该项目文件中的内容。
30.根据权利要求四所述的方法,还包含经由所述图形界面将项目文件放置到该编辑者的用户文件夹中,所述设置权限使得从 事于共享项目的其他编辑者能够打开项目文件同时防止修改来自该编辑者的用户文件夹 的任何项目文件内容。
31.根据权利要求30所述的方法,还包含经由所述图形界面,经由文件夹拖放操作将项目文件放置到该编辑者的用户文件夹中。
32.根据权利要求30所述的方法,还包含将项目文件放置到共享项目目录结构外部,使得在项目的其他编辑工作站的虚拟视图 中不会看到项目文件和任何内容。
33.根据权利要求30所述的方法,还包含生成为共享项目建立的不受保护项目文件文件夹,以及使得任何编辑者能够经由所述编辑工作站访问驻留在所述不受保护项目文件文件夹 中的项目文件、去除项目文件且将项目文件放置在该编辑者自己的用户文件夹内部以对其 进行控制。
34.根据权利要求30所述的方法,还包含生成针对共享Final Cut项目的组项目文件文件夹,其中编辑者将项目文件放置到所述组项目文件文件夹中且从组项目文件文件夹取出 项目文件,以及其中任何编辑者在组项目文件文件夹内部创建新子目录并且能够在组项目文件文件 夹内部重新布置文件和目录。
全文摘要
一种用于经由与介质存储设备通信的服务器设备来访问存储在介质存储设备中的数字媒体文件的新颖系统、方法和计算机程序产品。该方法提供用于实现非线性编辑(NLE)项目的协作共享的项目共享特征,即使NLE应用正常可能将项目定义且将项目保存为单个整合项目文件。该系统和方法提供一种文件目录和符号链接方案,该方案允许作为项目空间“成员”的所有编辑者看到由所有其他编辑者创建的所有二进制文件,但是根据二进制文件驻留在谁的“用户文件夹”中来控制对二进制文件的写访问(WRITEACCESS),即,提供基于用户的锁定方案以允许控制谁可以和不可以写文件。该系统和方法将单个整合项目文件看作较小项目文件的集合,该较小项目文件的权限和所有权中的每个可以被独立地控制。
文档编号G06F3/048GK102132269SQ200980132203
公开日2011年7月20日 申请日期2009年6月19日 优先权日2008年6月19日
发明者安德鲁·利布曼 申请人:安德鲁·利布曼
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1