用于项目共享的系统、计算机可读存储介质以及计算机实施的方法

xiaoxiao2020-7-22  14

用于项目共享的系统、计算机可读存储介质以及计算机实施的方法
【专利摘要】一种能够共享和锁定对NLE项目进行定义的元数据的系统。该系统通过经服务器用户的中间人在各编辑器用户之间转让元数据的所有权来控制元数据的写访问。由编辑器用户发起元数据所有权的转让。每个编辑器用户能够:(a)承担起该服务器用户拥有的元数据的所有权;以及(b)将他或她拥有的元数据的所有权让与该服务器用户。只允许编辑器用户修改其拥有的元数据,从而形成用于控制元数据的写访问的“检入”和“检出”系统。实际上,当编辑器用户将元数据的所有权让与该服务器用户时“检入”元数据。当编辑器用户通过从该服务器用户上获取该元数据的所有权而承担其该元数据的所有权时“检出”该服务器用户拥有的元数据。
【专利说明】用于项目共享的系统、计算机可读存储介质以及计算机实施的方法
[0001] 申请人:
[0002]' 德鲁"利伯曼(Andrew Liebman)
[0003]相关申请
[0004]本申请要求2011年4月8日提交的第61/473,544号共同申请中的美国临时专利申请的优先权和权益,适用于对这两个申请而言相同的所有主题。所述临时申请的披露以其整体通过引用结合于此。
发明领域
[0005]本发明涉及用于能够在关于共享项目的多个用户之间实现协作的项目共享系统。更具体地,本发明的实施例涉及二进制文件、项目文件的锁定以及用于非线性视频编辑项目的元数据的其他采集。
[0006]发明背景
[0007]在用于共享非线性视频编辑项目的现有项目共享计算机系统中,包含元数据(例如,对剪辑、子剪辑等的引用)的文件或二进制文件在各用户之间共享并且位于用户通过用户客户端可以访问的中央服务器上,如个人计算机上。一些此类系统不针对一个用户重写另一个用户的变化而提供任何种类的保护。例如,在一些此类系统中,如果两个用户同时打开同一个二进制或项目文件,则可以为这两个用户提供写访问,从而使得最终提交到磁盘的版本为最后保存的那Iv。
[0008]其他文件共享系统为每个用户创建一个用户文件夹,并且然后根据文件所在的具体用户文件夹设置文件的所有权和权限。提供对文件访问的这种类型的控制能够使每个用户轻易地读取和写入明显属于该用户的文件,而同时阻止该用户接收对任何其他用户的用户文件夹和相应内容的写访问。
[0009]然而,此类系统存在几个缺点。当一个由许多二进制和项目文件组成的项目被分散在多个用户之间时,此类系统的二进制或项目文件组织的总体清晰度受到仅实现适当权限的事实的阻碍。实现对文件的适当权限涉及到从文件夹到文件夹连续地移动文件,这会使得难于对具体的文件进行跟踪或定位。随着项目的用户数量增加,这种情况尤其如此。例如,正在从一个由20个用户从事的具体项目内寻找一个文件的用户在识别到所希望的文件之前可能需要其搜索19个不同的用户文件夹。
[0010]此外,假定单个项目的文件跨许多不同文件夹分散,难于提供对与单个项目相关联的所有文件的方便且全面的单屏幕查看。这会使得难于管理项目和对其进展进行跟踪。其还妨碍例如出于管理的目的对一个项目的各用户之间的工作部分进行快速查看和对其相对工作负荷进行比较的能力。
[0011]以一种能够在多个从事一单组文件的用户之间方便地转让专有写访问权的方式自动分配所有权和权限两者存在巨大的困难。其他的尝试涉及创建文件的副本,这会在计算上变得昂贵。而其他的尝试涉及创建复杂的链接结构,但当移动或更新文件时这会导致链接断开的风险。没有现有系统能够轻易地实现此处所述的各种令人希望的特征的自动化。
[0012]发明概沭
[0013]需要一种提供对文件的访问权进行自动化控制同时保持集中式的目录结构的项目共享系统,在该目录结构中可以容易地定位和全面地查看这些二进制和项目文件以及与具体的这些文件所属于的相关联用户相关的信息。本发明针对解决这种和其他需要的进一步解决方案,此外针对具有本领域内的技术人员阅读本发明说明书后将认识到的其他令人希望的特征。
[0014]根据本发明的一个示例实施例,一种计算机实施的项目共享系统包括存储在非瞬态计算机可读存储装置内的元数据。该元数据可以定义一个非线性视频编辑项目的一部分。该元数据的权限可以存储在一个非瞬态计算机可读存储装置内,并且这些权限能够使一组一个或多个编辑器用户读取该元数据并且能够使仅该元数据的所有者修改或删除该元数据。一个服务器装置可以被配置成用于通过使用至少一个处理器将该元数据的所有权转让至一个不是编辑器的服务器用户或从其转让该元数据的所有权来控制该元数据的写访问。如果该一个或多个编辑器用户中的一个第一编辑器用户具有该元数据的所有权时,使该第一编辑器用户可以能够通过指令该服务器装置将该元数据的所有权转让至该服务器用户来放弃该元数据的所有权,并且可以防止没有该元数据所有权的一个或多个编辑器用户中的每一个指令该服务器装置转让该元数据的所有权。如果该服务器用户具有该元数据的所有权,该一个或多个编辑器用户中的任一个可以能够通过指令该服务器装置将该元数据的所有权从该服务器用户转让至该一个或多个编辑器用户中的那一个编辑器来承担起该元数据的所有权。
[0015]根据本发明的示例方面,该元数据可以存储在一个目录中所存储的文件内,并且针对该元数据的这些权限可以包括目录级权限和文件级权限。这目录级权限可以包括一个粘着位(sticky bit)。可替代地或此外,该元数据可以存储在一个数据库的一个或多个数据库条目内。指令可以存储在至少一个非瞬态计算机可读装置上,并且由至少一个处理器执行这些指令致使在至少一个展示装置上呈现一个图形用户界面。该图形用户界面可以能够将转让该元数据所有权的指令发送至该服务器装置。该图形用户界面可以包括一个用于该元数据的当前状态指示符,并且该当前状态指示符可以向该一个或多个编辑器用户之一指示该元数据可用于被检出、当前被该一个或多个编辑器用户中的那一个编辑器用户检出、或者当前被该一个或多个编辑器用户中的一个不同的编辑器用户检出。该服务器装置可以在一个基于Linux的操作系统、一个基于Unix的操作系统或一个类似Unix的操作系统上运行。
[0016]根据本发明的一个示例实施例,提供了一种计算机实施的方法。可以使用至少一个处理器来设置存储在一个非瞬态计算机可读存储装置内的针对元数据的权限。这些权限能够使一组一个或多个编辑器用户读取该元数据并且可以能够使仅该元数据的所有者修改或删除该元数据。通过使用至少一个处理器并且在通过至少一个输入装置接收到一个指令后将该元数据的所有权转让至一个不是编辑器的服务器用户或从其转让该元数据的所有权来控制该元数据的写访问。如果该一个或多个编辑器用户中的一个第一编辑器用户具有该元数据的所有权时,该第一编辑器用户可以能够通过指令该服务器装置将该元数据的所有权转让至该服务器用户来放弃该元数据的所有权,并且可以防止没有该元数据所有权的一个或多个编辑器用户中的每一个指令该服务器装置转让该元数据的所有权。如果该服务器用户具有该元数据的所有权,该一个或多个编辑器用户中的任一个可以能够通过指令该服务器装置将该元数据的所有权从该服务器用户转让至该一个或多个编辑器用户中的那一个编辑器来承担起该元数据的所有权。
[0017]根据本发明的示例方面,该第一用户在该计算机实施的方法内可以具有该元数据的所有权,并且该方法进一步可以包括经至少一个输入装置从该第一用户编辑器上接收一个放弃该元数据所有权的指令。此外,基于所接收到的指令,可以使用该至少一个处理器将该元数据的所有权从该第一用户转让至该服务器用户。此外,该服务器用户可以具有该元数据的所有权,并且该方法进一步可以包括经至少一个输入装置从该一个或多个用户编辑器之一上接收一个承担该元数据所有权的指令。此外,基于所接收到的指令,可以使用该至少一个处理器将该元数据的所有权从该服务器用户转让至该一个或多个用户编辑器中的那一个编辑器用户。该元数据可以存储在一个目录中所存储的文件内,并且其中,针对该元数据的这些权限包括目录级权限和文件级权限。这些目录级权限可以包括一个粘着位。该元数据可以存储在一个数据库的一个或多个数据库条目内。指令可以存储在至少一个非瞬态计算机可读装置上,并且由至少一个处理器对这些指令进行执行致使在至少一个展示装置上呈现一个图形用户界面。该图形用户界面包括一个用于该元数据的当前状态指示符,并且该当前状态指示符向该一个或多个编辑器用户之一指示该元数据当前可用于被检出、当前被该一个或多个编辑器用户中的那一个编辑器用户检出、或者当前被该一个或多个编辑器用户中的一个不同的编辑器用户检出。
[0018]根据本发明的示例实施例,为非线性视频编辑程序的至少一个第一编辑器用户提供了一种信息的交互式电子显示。将该第一编辑器分配给包括多个元数据的非线性视频编辑(NLE)项目。该交互式显示包括多个代表对该非线性视频编辑项目进行定义的多个元数据的元数据指示符。该多个元数据中的每个元数据可以被一个代表被分配给该NLE项目的编辑器的编辑器用户所拥有或者被一个不代表被分配给该NLE项目的编辑器的服务器用户所拥有。对于该多个元数据中的每个元数据而言,一个相关联的状态指示符可以包括在该交互式显示内。可以从由以下内容组成的组中选择该相关联的状态指示符:一个指示该服务器用户拥有该元数据的所有权的第一状态指示符;一个指示该第一编辑器用户拥有该元数据的所有权的第二状态指示符;以及一个指示一个不是该第一编辑器用户的编辑器用户拥有该元数据的所有权的第三状态指示符。
[0019]根据本发明的示例方面,可以只允许该第一编辑器用户对该第一编辑器拥有的多个元数据的元数据的写访问。该第一状态指示符和该第二状态指示符可以各自是可选择的。对于包括在该显示内的每个第一状态指示符而言,该第一状态指示符的选择可以致使一个服务器装置使用至少一个处理器将与所选择的第一指示符相关联的元数据的所有权从该第一用户转让至该服务器用户。对于包括在该显示内的每个第二状态指示符而言,该第二状态指示符的选择可以致使一个服务器装置使用至少一个处理器将与所选择的第二指示符相关联的元数据的所有权从该第一服务器用户转让至该第一用户。对于该多个元数据中的每个元数据而言:该第一状态指示符可以指示该第一用户编辑器拥有该元数据并且已经检出该元数据,该第二状态指示符可以指示该第一编辑器用户不拥有该元数据并且能够检出该元数据,以及该第三状态指示符可以指示该第一编辑器用户不拥有该元数据并且不能够检出该元数据。
[0020]附图简要说明
[0021]结合附图,通过参考以下详细描述,将更充分地理解本发明的这些和其他特征,其中:
[0022]图1为根据本发明的一个示例实施例的用于通过在多个编辑器用户之间转让所有权来控制专有写访问的系统的示意图;
[0023]图2为根据本发明的示例实施例的一个屏幕截图,描绘了一个编辑器用户的显示,该显示包括一个在NLE程序的环境内运行的示例用户客户端;
[0024]图3A为根据本发明的示例方面的在编辑器用户“jeff”的动作前的图2的用户客户端的一个屏幕截图;
[0025]图3B为根据本发明的示例方面的在编辑器用户“jeff”的动作后的图3B的用户客户端的一个屏幕截图;
[0026]图4A为根据本发明的示例方面的在另一个编辑器用户“jane”的动作前的用户客户端的一个屏幕截图;
[0027]图4B为根据本发明的示例方面的在该编辑器用户“jane”的动作后的图4A的用户客户端的一个屏幕截图;
[0028]图5A为根据本发明的一个示例实施例的一个流程图,描绘了一种用于能够使编辑器用户承担起文件的所有权的方法;
[0029]图5B为根据本发明的一个示例实施例的一个流程图,描绘了一种用于能够使编辑器用户放弃文件的所有权的方法;
[0030]图6为一个示意图,描绘了一种用于实现本发明的实施例的示例计算装置;
[0031]图7为根据本发明的示例方面的按在编辑器用户jeff前的示例服务器上查看的用于一个目录“演示I (demol)”和包含在该目录内的文件的示例所有权和权限的一个屏幕截图,请求接收写访问并检出该文件“Act_2.fcp” ;
[0032]图8为根据本发明的示例方面的按在该编辑器用户jeff后的示例服务器上查看的用于一个目录“demol”和包含在该目录内的文件的图7的示例所有权和权限的一个屏幕截图,请求接收该文件“Act_2.fcp”的写访问和所有权;
[0033]图9为根据本发明的示例方面的按在一个示例服务器(其中,该服务器用户拥有所有文件,该服务器用户此处称为“editshare (编辑共享)”)上查看的用于一个目录“Rushes”和包含在该目录内的其文件的示例所有权和权限的一个屏幕截图;
[0034]图10为根据本发明的示例方面的按在该编辑器用户“jane”后的示例服务器上查看的用于一个目录“Rushes”和包含在该目录内的其文件的图9的示例所有权和权限的一个屏幕截图,请求接收该文件“Rushes」, fcp”的写访问并且接收该文件的所有权;以及
[0035]图11为根据本发明的一个示例实施例的浏览器窗口的一个屏幕截图,该浏览器窗口包括被实现用于存储在数据库内的元数据的各元数据状态指示符。
[0036]详细说明
[0037]本发明的一个示意性实施例涉及一种用于能够实现形成非线性视频编辑程序(例如,Avid、Final Cut Pro等)上的某个或所有项目的元数据的共享和锁定的计算机实施的方法、计算机实施的系统以及计算机可读存储介质。在该示意性实施例中,该系统被配置成用于通过在各编辑器用户(即,协作地从事共享非线性视频编辑项目的人工编辑器)之间转让该元数据的所有权来控制该元数据的写访问。值得注意地,该系统经此处被称为“服务器用户”的“中间人”在各编辑器用户之间转让所有权。可以通过如服务器等计算机装置控制该服务器用户。该服务器用户在该系统中不代表被分配给该非线性视频编辑项目的任何人工编辑器。可以由编辑器用户发起元数据的所有权的转让。更确切地说,在该示意性实施例中,每个编辑器用户能够:(a)承担该服务器用户拥有的元数据的所有权;以及(b)将他或她拥有的元数据的所有权让与该服务器用户。此外,在该示意性实施例中,只允许元数据的所有人修改该元数据。相应地,该服务器用户在编辑器用户之间提供所有权的转让的点,通过这些编辑器用户,这些编辑器可以在不创建不必要的元数据副本的情况下安全地转让元数据集合的写访问等。
[0038]因此,在使用所有权转让以使分配给NLE项目的编辑器用户能够承担起和放弃元数据的专有写访问中,本发明的系统提供了一种不需要创建元数据的副本或版本并且不需要移动该元数据(或者该元数据所包含在的文件、数据库对象等)的位置的“检入(checkin)”和“检出(check out)”系统。而且,不像常规的检入-检出系统,本发明的实施例为不被任何编辑器用户检出的元数据提供了一种极其方便且计算上非昂贵的“中性地盘(neutral ground)”。实际上,在根据本发明的实施例的系统中,当编辑器将该元数据的所有权让与该服务器用户时“检入”数据。当编辑器用户通过从该服务器用户上获取该元数据的所有权来承担起该元数据的所有权时“检出”该服务器用户所拥有的元数据。只有已经检出元数据的编辑器用户能够修改和保存对该元数据的变化。这允许编辑器用户在没有其他编辑器用户重写的风险下对其从事的NLE项目的部分安全地进行编辑。因此,示意性实施例可以提供一种能够在不需要移动文件、创建文件的副本或手动分配权限的情况下实现方便的文件共享。
[0039]相应地,可以用如下方式分配元数据的权限:为多个不同编辑器用户提供其拥有的元数据的专有写访问。而且,可以在不舍弃这些编辑器用户的任何能力的情况下向这些编辑器用户提供这种类型的权限结构以便在其内容(例如,包含该元数据的文件、包含该元数据的数据库条目等)被该多个不同编辑器用户所拥有的目录内创建新的元数据。例如,在根据本发明的实施例的利用类似Unix的操作系统的系统中并且在一个目录结构中的文件(多个文件)内为这些系统存储元数据,可以为具有文件(这些文件包含对至少一个NLE项目进行定义的元数据)的所有权的编辑器用户提供对其所拥有的文件的文件级写访问。而且,对于不被一个或多个编辑器用户拥有的任何文件但希望该文件的一个或多个编辑器用户的读权限而言,可以为那些一个或多个编辑器用户(例如,将其分配给该元数据所属于的NLE项目)提供对这些文件的文件级读访问和对这些文件的目录级写访问(例如,如本领域内的技术人员在阅读本说明书后将认识到的,通过用读-写访问定义一个“组类(groupclass)”并且在该组类中包括此类一个或多个编辑器用户)。此外,在此类示例实施例中,可以将一个粘着位应用到任何此类目录上(为编辑器用户提供该目录的写访问),以便保证只有该目录内的每个文件的所有者能够在该文件上行使目录级写权限(例如,对该文件进行重命名、删除和移动),同时仍然允许其他具有该目录的写访问的编辑器用户在该目录内创建新的包含进一步定义或有助于该NLE项目的元数据的文件。以此方式,对于在其中对NLE项目进行定义的元数据存储在文件中的此类实施例而言,可以通过包含该元数据的文件的特定分配的文件级权限和目录级权限的使用由该系统控制元数据的专有写访问。
[0040]此外,可以在单个视图中向每个用户方便地呈现该元数据的所有所有权和当前状态。例如,可以为每个编辑器用户提供多个指示符,这些指示符指示元数据(例如,包含元数据的每个文件等)的每个分组是否(a)被该用户检出;(b)被另一个编辑器用户检出;或者
(C)可以用于被检出。这可以能够使用户在单个窗口内容易地且方便地查看形成单个NLE项目的所有元数据的所有权和当前状态。
[0041]现在将描述一个示意性实施例,在该实施例中,通过转让特定属于包含元数据的文件的所有权(和专有写访问)来实现该元数据锁定系统。例如,此类文件可以包括像Avid的NLE软件生成的二进制文件、像Final CutPro的NLE软件生成的“整体(monolithic)”项目文件(例如,.fcp文件)。然而,本发明不限于此处详细描述的这些示意性实施例。应认识到此处描述的用于转让文件的所有权的系统可以类似地应用于其中存储元数据的任何其他合适的机制或格式。例如,在此处更加详细描述的一个替代性实施例中,元数据存储在数据库对象中,并且因此,能够在单条元数据的级别下操纵该元数据的权限。本领域内的技术人员还将认识到用于存储元数据的允许经“服务器用户”的中间人在多个编辑器用户之间转让所有权和转让专有写访问的其他形式和机制。
[0042]应认识到此处的“元数据”指的是多个元数据和单独元数据两者(例如,单数和复数用法两者)。本发明不限于新颖的元数据锁定方案在或者多个元数据或者单独元数据上的特定应用。相反,元数据组的和单独元数据(例如,存储在组中或单独存储在文件、数据库条目等中)的所有权此处可以与本发明的实施例一起利用。
[0043]图1至图11 (其中用相似的参考数字来指定相似的部分)展示了一种根据本发明的用于共享元数据的系统的示例实施例。尽管将参考图中展示的示例实施例来描述本发明,但是应该理解许多替代形式可以体现本发明。此外,本领域内的技术人员将认识到以一种仍然与本发明的精神和范围保持一致的方式改变所披露的实施例的参数的不同方式。
[0044]除了本领域内的技术人员阅读本发明说明书后将轻易地认识到的其他功能以外,图1描绘了一种用于能够实现此处详细描述的本发明的功能的示意性计算机实施的系统100。该系统100包括一个权限模块110、一个服务器用户112和一个图形用户界面(⑶I)生成器114。该系统100还包括至少一个目录116,该目录可以包含一个或多个包含对一个或多个非线性视频编辑项目(此处称为“NLE项目”)进行定义的元数据的文件118。每个目录116可以具有一个或多个由该权限模块110分配给该目录的权限120。类似地,这些包含该元数据的文件118各自具有一个或多个由该权限模块110分配给该文件的权限122。同样,这些文件118上的权限指定对这个或这些NLE项目进行定义的针对元数据的权限。
[0045]该系统100耦联到一个多个用户客户端128上,每个用户客户端由一个被分配成用于从事该目录16中所包含的一个或多个NLE项目的编辑器用户124操作。该一个或多个用户客户端128可以直接连接到该系统100上。可替代地,可以使用任何合适的通信网络连接(未示出)(包括以太网连接、通过网络的连接以及任何其他熟知的网络连接)将该一个或多个用户客户端128连接到该系统100上。
[0046]尽管该⑶I生成器114是图1的示例实施例中的系统100的一个组件,但在本发明的其他示意性实施例中,该⑶I生成器114可替代地位于这些用户客户端128的每一个上。
[0047]该一个或多个编辑器用户124形成一个与该目录116相关联的用户组126。该用户组126可以具有该目录116的特定组级权限。例如,如本领域内的技术人员将认识到的,在示意性实施例中,该用户组126定义权限的一个“组类”。可选地,如本领域内的技术人员在阅读本说明书后将认识到的,该服务器用户112可以是该用户组126的一员。如本领域内的技术人员在阅读本发明后将认识到的,多个目录116可以包括在该系统100内,从而使得每个目录116与包含一个或多个编辑器用户124的用户组126相关联,该一个或多个编辑器用户被分配给一个或多个包含在该目录116内的NLE项目。
[0048]当该目录116上的权限120允许时,这些编辑器用户124可以通过其对应的用户客户端128访问该目录116。类似地,当这些文件118上的权限122允许时,这些编辑器用户124可以访问包含在该目录116内的文件118。在一个示例实施例中,这些权限120、122被定义成使得:(a)在这些编辑器用户124中,只有具有文件118的所有权的编辑器用户124能够对该文件118进行修改、删除、移动或重命名;(b)给予该用户组126该目录116的读访问和写访问并且因此其能够在该目录116内创建新的文件118 ;以及(c)不对既不是该用户组126的成员也不是该文件118的所有者的“其他”编辑器用户(图1中未示出)准予访问。
[0049]本领域内的技术人员阅读本说明书后将认识到可以被利用的权限的各种各样不同的类型、组合以及变化。在本发明的范围内想到所有此类替代方案和修改。本发明的实施例不限于此处所描述的权限的具体选择。
[0050]相应地,可以设置目录级的权限以便将任何访问(甚至只读访问)限制到仅该项目用户组的成员上,与允许一般“编辑器”用户组(例如,该用户组126)内的用户的成员资格决定访问相反。在示意性实施例中,该目录116上的权限120与包含在该目录116内的文件118上的权限122不同。例如,在被实现用于类似Unix的操作系统的实施例中,可以利用粘着位指定文件118的所有者是该用户组126中被允许对该文件118进行修改、重命名、移动和/或删除的唯一一个编辑器用户124。相比之下,在不没有使用粘着位的情况下,允许目录116的用户或组所有者对包含在该目录116内的文件118进行删除、重命名或移动。该目录116可以被设置成由该服务器、该服务器用户112或另一个非编辑器“属类”所有者拥有,例如,以便防止编辑器用户124接收改变该目录116上的权限120或所有权的授权。
[0051]相应地,如此处之前所述的,对于在类似Unix的操作系统(例如,一种基于Linux的操作系统、一种基于Unix的操作系统等)上执行的系统100的实现方式而言,这些权限120、122可以包括一个或多个粘着位。在此处所提供的示例实施例中,可以将该粘着位添加到这些目录权限上,例如,以便在不危害或负面地影响被分配给与该目录116相关联的NLE项目上的其他编辑器用户124的能力的情况下为任何具体的编辑器用户124提供对该具体的编辑器用户124所拥有的文件118进行修改、删除、重命名或移动的专有能力(从而防止该用户的工作不被另一个编辑器用户124重写),以便在该目录116内创建包含进一步定义或有助于与该目录116相关联的那个或那些NLE项目的附加元数据的文件118。而且,在一些实施例中,可以包括一个或多个附加粘着位,例如,每个应用到包含在该目录116内的子级目录上。
[0052]该权限模块110可以被配置成用于基于可以存储在该权限模块110内的预定权限设置来自动地分配这些权限120、122。作为示例,预定权限设置的集合中的一个或多个可以被预编程到该权限模块110内;可以在该编辑器用户124、系统管理员或根级用户对其进行创建后由编辑器用户124、系统管理员或根级用户对其进行选择;可以基于之前创建的目录116 ;可以基于之前创建的文件118 ;可以用某种其他方式预先确定;或者可以是以上情况的任意组合。该⑶I生成器114可以被配置成用于在所有或一些用户客户端128处创建一个用户界面,该用户界面以一个或多个显示指示符的形式为编辑器用户124提供关于所有权、权限、位置的信息、检出信息、检出历史、任何其他信息或以上信息的任意组合。
[0053]该服务器用户112可以是一个全自动化的用户实体并且可以例如由如服务器装置(包括一种包括计算机可读介质的并且根据图6中描绘的和在此处详细描述的计算装置600实施的服务器装置)等计算装置控制。与编辑器用户124类似,该服务器用户112还可以接收文件118和/或目录116的所有权。在被实施用于NLE程序的示例实施例中,该服务器用户112提供了一种机制,编辑器用户124通过该机制能够在其之间转让文件118的所有权。更确切地说,编辑器用户124能够指令该系统100将所有权转让至该服务器用户112和从其转让所有权,从而允许该编辑器用户124经该服务器用户112的中间人将文件的所有权传到另一个上。此外,可能对被准予修改文件所有权(例如,从一个具体的编辑器用户124上获取所有权)的特定特权的管理用户的限定数量的实现方式有规定。同样,对于不能获取任何文件118的控制或所有权的以及不被允许将任何文件118写到任何目录116上的编辑器用户124,可能对受限权用户的实现方式有规定。相应地,应认识到这些权限120、122可以被设置成用于为具体的编辑器用户124的访问权提供例外和/或用于为不同类型的编辑器用户124提供不同级别的访问。
[0054]编辑器用户124能够使用其对应的用户客户端128指令该权限模块110改变目录116和/或文件118的所有权。在此处所述的示例实施例中,任何给定的编辑器用户124能够指令该权限模块110仅:(a)将该文件118的所有权从那个具体的编辑器用户124改变至该服务器用户112,以及(b)将文件118的所有权从该服务器用户112改变至该具体的编辑器用户124。以此方式,可以禁止编辑器用户124指令该权限模块110将文件118的所有权直接从任何第一编辑器用户124改变至任何第二编辑器用户124。
[0055]相应地,该权限模块110通常配备有改变任何目录116和文件118的所有权的能力,并且更确切地说,可以配备有在编辑器用户124和该服务器用户112(在两个方向上)之间转让任何文件118的所有权的能力。
[0056]通过该一个或多个用户客户端128能够实现被提供至这些编辑器用户124的和此处所述的特定转让能力以及与该系统100的其他交互。可以在用户工作站上操作该用户客户端128,该用户工作站可以是任何能够操作该用户客户端128的合适的计算装置,包括(作为举例)“膝上型计算机”、“台式计算机”、“手持式装置”、“移动装置”、“平板计算机”、附力口“计算机服务器”、“便携式收发器”、“机顶盒”(例如,用于网络电视)以及任何其他计算装置。相应地,可以定制和/或改变此处所述的系统100 (包括该⑶I/显示)的任何特征、组件和功能以适应该系统100与之通信的工作站的特定类型、操作和连接。
[0057]更确切地说,编辑器用户124可以与一个或多个⑶I进行交互,该一个或多个⑶I由该⑶I生成器114创建并且被提供至这些编辑器用户124作为用户工作站上的其对应的用户客户端128处的显示。该⑶I生成器114可以自动地更新这些用户客户端128上的GUI中呈现的信息以反映文件118的所有权和/或状态的变化。确切地,该GUI生成器114在所有权指示符和状态指示符变化后自动地更新这些用户客户端处的所有权指示符和状态指示符。该GUI生成器114可以生成包括任何此处所述的和图2至图4B中描绘的示例显示特征的显示。
[0058]图2描绘了被实现作为浏览器窗口 130的示例用户客户端138的一个屏幕截图,该浏览器窗口在NLE程序132的环境内运彳丁。在图2中所描绘的不例实施例中,在启动后,该浏览器窗口 130在该用户的显示上和/或相对于在该编辑器用户的最近会话结束时该浏览器窗口 130所占据的NLE程序132的环境恢复相同尺寸和位置。在此处所述的示例中,为此处将被称为“jeff”的编辑器用户124描绘了该浏览器窗口 130。
[0059]图3A描绘了在图2中的jeff的NLE程序132的角落中描绘的浏览器窗口 130的一个特写屏幕截图。该浏览器窗口 130可以是信息的任何合适的交互式电子显示。在图3A和图3B的示例实施例中,该元数据存储在该目录116中所存储的文件118(例如,二进制文件、项目文件等)内。相应地,该浏览器窗口 130呈现出包括该目录116的目录结构,该目录带有其内所包含的文件118。如在图3A和图3B中所描绘的,通过文件夹图标在该浏览器窗口 130中指示该目录116 (在本示例中标有“demol”)并且通过文件图标指示包含该元数据的文件。相应地,每个文件夹图标在与该NLE项目相关联的并且这些文件118所在的非瞬态计算机可读存储装置内指示一个目录。
[0060]在该浏览器窗口 130内包括多个代表对该NLE项目进行定义的元数据的元数据指示符152。更确切地说,假定该元数据存储在图3A和图3B的示例实施例中的文件118内,这些元数据指示符152更确切地可以包括多个文件指示符,这些文件指示符各自代表一个包含定义或有助于该NLE项目的元数据的文件。此外,该浏览器窗口 130包括多个元数据状态指示符,这些元数据状态指示符提供定义或有助于该NLE项目的元数据的状态的指示。相应地,在图3A和图3B的示例实施例中,该浏览器窗口 130中所包括的元数据状态指示符更确切地可以包括多个文件状态指示符。
[0061]在图3A和图3B的示例实施例中,利用了三个不同的文件状态指示符,包括一个加锁文件指示符144、一个解锁文件指示符136和一个可要求的文件指示符143。在图3A和图3B的示例实施例中,该加锁文件指示符144指示除了 jeff以外文件还已经被另一个编辑器用户检出、除了 jeff以外还被另一个编辑器用户所拥有并且对jeff只读。该可要求的文件指示符143指示文件可用于被检出并且从而可以被jeff “要求”。该解锁文件指示符136指示文件被jeff检出、为jeff所拥有并且只可以被jeff写。
[0062]相应地,被“检出”的文件是一个其所有权已经被分配给这些编辑器用户124之一的文件。“可用于被检出”的文件是一个其所有权已经被分配给该服务器用户112的文件。
[0063]在图3A至图4B的示例实施例中,该加锁文件指示符144包括一个锁的实心、闭合的图标。该解锁文件指示符136包括一个锁的打开着的图标。该可要求的文件指示符143包括一个锁的空心、闭合的图标。此外,可以对这些文件指示符136、143、144进行颜色编码,以便向用户提供相关联文件的状态的附加指示。例如,可以对所有这些加锁文件指示符144进行颜色编码,可以对所有这些可要求的文件指示符143着上黄色,以及可以对所有这些解锁文件指示符136着上绿色。
[0064]该浏览器窗口 130还可以包括多个对哪个具体的编辑器用户124拥有被检出的具体的文件进行指示的所有者指示符140。例如,这些所有者指示符140可以包括一个对所有者名字进行描绘的文本串,如“andy”。在图3A至图4B的示例实施例的浏览器窗口 130中,可以将这些所有者指示符140放在“所有者”一栏142的下面。在图3A至图3B的示例实施例中,只为那些被不是jeff的编辑器用户124所拥有的文件呈现所有者指示符140。如果文件已经被分配给jeff或该服务器用户112,则在该“所有者”栏142下面没有相应的所有者指示符。
[0065]图3B描绘了在jeff的如下动作后的结果浏览器窗口 130: jeff通过指令该权限模块110将“Act_2.fcp”的所有权(以及因此写访问)从该服务器用户112转让至jeff来承担起标题为“Act_2.fcp”的文件的所有权。相应地,在图3A中,该文件“Act_2.fcp”呈现出一个可要求的文件指示符143,因为在此时该服务器用户112拥有该文件。另一方面,在图3B中,该文件“Act_2.fcp”呈现出一个加锁文件指示符136,因为在此时jeff拥有该文件。可以使用任何合适的命令来实施要求当前该服务器用户112所拥有的文件的所有权的指令,包括选择(例如,通过点击)指示文件未被分配并且可以用于被检出的可要求文件指示符143。
[0066]一种类似的方式,图4A和图4B描绘了在另一个名字为“jane”的编辑器用户124的如下动作之前和之后(分别地)的jeff浏览器窗口 130:该编辑器用户通过指令该权限模块110将所有权从该服务器用户112转让至jane来检出和接收该文件“Rushes 1.fcp”的所有权。在图4A中,该文件“Rushes 1.fcp”伴有一个可要求的文件指示符143,该文件指示符指示该文件为该服务器用户112所拥有并且能够由jeff检出文件。在图4B中,另一方面,已经更新该浏览器窗口 130,从而使得该文件“Rushes 1.fcp”反而伴有一个加锁文件指示符144,该文件指示符将向jeff指示另一个用户(jane)已经检出该文件“Rushes
1.fcp”。除了自动地更新这些文件状态指示符以外,该⑶I生成器144还自动地更新该浏览器窗口 130以便例如通过添加该文本“Rushes 1.fcp”旁边的文本“jane”来包括该适当的所有者指示符140。
[0067]相应地,使用此类文件状态指示符的系统,如此处所述的,可以从其他编辑器用户124的自我所有权或所有权的角度向任何编辑器用户124呈现任何文件的个性化状态。类似地,这些所有权指示符可以向每个用户提供关于谁拥有被检出文件的信息。
[0068]图5A描绘了一种根据本发明的实施例的方法,通过该方法,该系统100允许编辑器用户124承担起所有权。可以使用至少一个处理器最初将存储在该目录116内的文件118的所有权分配给一个所有者(步骤510)。例如,在创建或引入文件118后可以出现这种情况。可以自动地将初始所有者分配给创建该文件118的具体的编辑器用户。可替代地,该初始所有者可以是该服务器用户112或者任何其他合适的用户。在一个示例实施例中,该目录116内的文件118的所有权至少在该用户组126的成员中的任一个和该服务器用户112之间是可转让的。该权限模块110通过至少一个输入装置从该一个或多个编辑器用户124中的任一个上接收一个承担其文件118所有权的指令(步骤512)。更确切地说,在步骤512中接收到的指令是一个将所有权从该服务器用户112转让至在步骤512中从其上接收该指令的编辑器用户124的指令。在接收到该指令后,该权限模块110使用至少一个处理器将所请求的文件118的所有权从该服务器用户112转让至发送该指令的用户(步骤514)。
[0069]基于改变该文件118的所有权,该权限模块110可以指令该⑶I生成器114使用至少一个处理器以如下方式为每个用户客户端128更新相应的所有权指示符和相应的文件状态指示符(步骤516)以便为每个编辑器用户124提供这些文件118的所有权的个性化角度以及检出这些文件的可用性。取决于文件状态和所有权变化的细节,步骤516可以包括如下指示的任何一个:向任何不具有该文件118所有权的编辑器用户对该文件118被加锁并且被检出进行的指示;向任何具有该文件118所有权的编辑器用户对该文件118被解锁并且被检出进行的指示,以及向任何不具有该文件118的所有权的编辑器用户对具有该文件118所有权的编辑器用户的名字进行的指示。
[0070]图5B描绘了一种根据本发明的实施例的方法,通过该方法,该系统100允许编辑器用户124放弃所有权。如以上参考来自图5A的步骤510所述的,可以使用至少一个处理器最初将存储在该目录116内的文件118的所有权分配给一个所有者(步骤518)。然后该权限模块100经至少一个输入装置从该一个或多个编辑器用户124中的任一个上接收一个放弃文件118所有权的电子指令(步骤520)。更确切地说,在步骤520中接收到的指令是一个将所有权从该服务器用户112转让至在步骤520中从其上接收该指令的编辑器用户124的指令。在接收到该指令后,该权限模块110使用至少一个处理器将所请求的文件118的所有权从该服务器用户112转让至发送该指令的用户(步骤522)。如之前此处参考图5A的步骤516所述的,基于改变该文件118的所有权,该权限模块110可以指令该GUI生成器114使用至少一个处理器为每个用户客户端128更新相应的所有权指示符和相应的文件状态指示符(步骤524)。例如,步骤524可以包括向所有用户对没有编辑器用户具有该文件118的所有权并且该文件118可用于被检出进行的指示。
[0071]此外,可以为编辑器用户124提供在准予其访问的现有目录内创建新文件118的能力以及创建新目录和/或子目录的能力。可以从一个预定权限集合中生成针对新文件118的权限122并且可以用任一数目的方式对其进行自动分配。例如,针对新文件118的权限122:可以基于权限模块110中的预编程设置进行自动分配,可以基于创建该文件118的编辑器用户124的选择,可以基于系统管理员或根级用户的选择,可以基于创建该文件所在的目录116,可以基于创建该文件所在的目录116内的其他文件118,可以基于其他因素,或者可以基于以上内容的任何合适的组合。在一个示例实施例中,新文件118的所有权被自动地分配至创建该新文件118的编辑器用户124。
[0072]当创建新的目录116时,可以能够使编辑器用户124选择有待被包括在与该新目录116相关联的用户组126内的一个或多个编辑器用户124。可替代地,新目录116中的编辑器用户124的成员资格可以基于例如将一组特定编辑器用户124分配至包含该目录116的项目空间。例如,在示意性实施例中,该项目空间是一个将多个编辑器用户124所分配到其上的并且包含该目录116的顶级目录,从而使得可以自动地将由该项目空间内的编辑器用户124创建的任何新目录116分配至被分配至该项目空间的同一组编辑器用户124。此夕卜,可以从一个预定权限120集合中生成针对该新目录116的权限120并且可以用任一数目的方式对其进行自动分配,例如,以便实现此处之前所述的功能性。例如,针对新目录116的权限120:可以基于该权限模块110中的预编程设置进行自动分配,可以基于创建该目录的编辑器用户124的选择,可以基于系统管理员或根级用户的选择,可以基于现有目录116的其他权限120,可以基于设置到该项目空间的权限,可以基于其他因素,或者可以基于以上内容的任何合适的组合。在一个示例实施例中,新文件118的所有权被自动地分配至创建该新文件118的编辑器用户124。
[0073]本发明的实施例可以被实现用于NLE程序的共享项目,这需要多个编辑器一起协作地从事对例如单个项目进行定义的同一个元数据。这特定地可以包括保存元数据作为项目文件(例如,在“整体”文件中)的NLE软件应用程序,如由苹果股份有限公司制造并销售的FINAL CUT PRO?。同样,可以进一步在其他将元数据存储在离散子单元或二进制文件内的NLE产品和软件上实现本发明的实施例,如由美国马萨诸塞州伯灵顿市的Avid技术股份有限公司提供的那些NLE软件应用程序。
[0074]可以根据本发明实施附加特征。例如,在该系统的客户侧上,如果编辑器用户124选择了一个具体的文件118 (例如,通过点击文件名或相应的显示图标),则该文件118将在相应的NLE应用程序中打开。这种能力在若干种常规NLE应用程序中目前是不可用的。即,没有本发明的实现方式,在许多NLE应用程序中,用户不能例如在Windows?资源管理器(由总部在美国华盛顿州雷德蒙德市的微软公司制造和销售)内导航到文件位置和在没有接收到出错消息的情况下选择有待打开的文件。
[0075]此外,当用户经根据本发明实施的客户端应用程序打开文件118时,如果该文件118为另一个编辑器用户(例如,编辑器用户124,这导致只读访问)所拥有,该客户端应用程序可以呈现出一条警告消息,如“您正在打开一个具有只读权限的项目文件。不能保存您所做的任何改变。您想要做什么? ”。然后该客户端应用程序可以为该用户呈现若干选项,如取消(Cancel)(取消打开该文件118的动作)、继续只读(Proceed Read Only)(以只读模式打开该文件118)等。
[0076]类似地,当用户经根据本发明实现的客户端应用程序打开文件118时,如果该文件118为该服务器用户112所拥有并且该文件118对该用户可用于获取所有权时,该客户端应用程序可以提供一条警告消息,如“您不是本项目文件的所有者。除非您获取所有权,否则将不会保存您的变化。您是否想要获取所有权? ”。然后该客户端应用程序可以为该用户呈现若干选项,如取消(Cancel)(取消打开该文件118的动作)、继续只读(Proceed ReadOnly)(以只读模式打开该文件118)、获取所有权(Take Ownership)(向该系统100发送一条指令以承担起该文件118的所有权)、打开(Open)等。相应地,在这种情况下,用户可以在打开该文件118后具有承担起所有权的能力,不需要首先必须点击相应的可要求文件指示符143。
[0077]相应地,该系统100能够使一组被分配至NLE项目的编辑器用户124通过承担起或放弃包含该元数据的文件的所有权来交换元数据的专有写访问。经该服务器用户112的中间人转让所有权。可以在不移动包含该元数据的文件118的位置的情况下和在不创建这些文件118的复制品、副本或版本的情况下进行以上内容。此外,每个编辑器用户124能够在以下三种状态之一下查看呈现形成该NLE项目的文件118的个性化⑶1:加锁(为写访问而被检出并且因此为另一个编辑器用户124所拥有);解锁(为写访问而被检出并且因此为根据其而使该GUI个性化的编辑器用户124所拥有);以及可要求的(为该服务器用户112所拥有并且能够被检出)。
[0078]图6展示了在一种用于实现本发明的示意性方法和系统的示意性操作环境中的一个示例计算装置600。该计算装置600仅仅是一个合适的计算环境的示意性示例,并且决不会限制本发明的范围。如本领域内的技术人员将理解到的,如图6所示,“计算装置”可以包括“工作站”、“服务器”、“膝上型计算机”、“台式计算机”、“手持式装置”、“移动装置”、“平板计算机”、或其他计算装置。假定是出于说明性目的而描绘该计算装置600,为了实现本发明的一个单个实施例,本发明的实施例可以任一数目的不同方式利用任何数量的计算装置600。相应地,如本领域普通技术人员将认识到的,本发明的实施例不局限于一个单个计算装置600,其也不限于该示例计算装置600的一种单一类型的实现方式或配置。
[0079]该计算装置600可以包括一条总线610,该总线可以与以下示意性组件中的一个或多个直接或间接连接:一个存储器612、一个或多个处理器614、一个或多个展示组件、输入/输出端口 618、输入/输出组件620、以及一个电源624。本领域内的技术人员将认识到该总线610可以包括一条或多条总线,如地址总线、数据总线、或以上的任意组合。此外,本领域内的技术人员将认识到,取决于预期的应用程序以及具体实施方例的使用,可以通过一个单个装置实现这些组件中的多个。类似地,在一些实例中,可以通过多个装置实现一个单个组件。因此,图6仅仅是示例性计算装置的示意性展示,该示例性计算装置可以用于实现本发明的一个或多个实施例并且决不限制本发明。
[0080]该计算装置600可以包括各种计算机可读介质或者与其进行交互。例如,计算机可读介质可以包括随机访问存储器(RAM);只读存储器(ROM);电可擦可编程只读存储器(EEPROM);闪存或者其他存储技术;CDR0M、数字化视频光盘(DVD)或者其他光学或全息媒体;磁带盒,磁带,磁盘存储或其他可用于对信息进行编码并且可以被该计算装置200访问的磁性存储装置。
[0081]该存储器612可以包括易失性和/或非易失性存储器形式的计算机存储介质。该存储器612可以是可拆卸的、不可拆卸的或其任意组合。示例性硬件装置为如硬盘驱动器、固态存储器、光盘驱动器等装置。该计算装置600可以包括从如存储器612组件、各种I/O组件616等读取数据的一个或多个处理器。一个或多个展示组件616向用户或其他装置呈现数据指示。示例性展示组件包括显示装置、扬声器、打印组件、振动组件等。
[0082]这些I/O端口 618可以允许计算装置600与其他装置(如I/O组件620)在逻辑上耦联。某些I/o组件620可以内置到计算装置600中。此类I/O组件620的示例包括:麦克风、操纵杆、记录装置、游戏板、圆盘式卫星电视天线、扫描仪、打印机、无线装置、联网装置等。
[0083]图7至图10为屏幕截图,描绘了所有权和权限,例如,如从服务器终端将看到的。具体地,图7至图10描绘了由该权限模块110基于从这些编辑器用户124上接收到的指令做出的所有权和权限的变化。在图7至图10的示例实施例中,为该服务器用户112提供了用户名“editshare”。用户名“andy”和“jeff ”代表两个标题为“editors (编辑器)”的用户组126中所包括的两个编辑器用户124。图7和图8为标题为“demol”的示例目录以及为该示例目录“demol”中所包含的文件描绘了所有权和权限的变化。如图7中看到的,这些所有权和权限指示该文件“Act_2.fcp”为该服务器用户(“editshare”)所拥有。图8描绘了在名字为jeff的编辑器用户124向该系统100发送一个承担起该文件“Act_2.fcp”的所有权(以及因此写访问)的指令之后的文件“Act_2.fcp”的所有权和权限。如图8中看到的,从jeff上提交承担起所有权的指令后,该文件“Act_2.fcp”为jeff所拥有。如果接收到该文件“Act_2.fcp”的所有权后jeff要向该系统100提交一个放弃该文件“Act_2.fcp”所有权的指令时,则这些权限和所有权将返回至图7中所描绘的状态。[0084]图9和图10为该目录为“demol”的子目录“Rushes”以及该子目录“Rushes”中的文件内容描绘了所有权和权限。如图9中所描绘的,该文件“Rushesl.fcp”最初为该服务器用户112所拥有。图10为该子目录“Rushes”和其内容描绘了在名字为“jane”的编辑器用户向该系统100发送一个承担起该文件“Rushes」, fcp”的所有权(以及因此写访问)后的所有权和权限。
[0085]本发明的实施例提供了与现有系统相比的多个益处。例如,可以为编辑器用户提供对访问权的自动化控制,同时保持一个在其中可以容易地定位和全面地查看文件、文件状态和所有者的方便的用户客户端。此外,本发明的实施例可以在不需要移动文件、创建文件副本或手动地(例如,通过非自动化系统管理员)对权限进行分配的情况下能够实现方便的文件共享。本领域内的技术人员阅读本说明书后将认识到其他益处。
[0086]此处参考存储对文件形式(例如,二进制文件、“整体”项目文件等)的NLE项目进行定义的元数据的NLE软件应用程序的示意性实现方式已经描述了本发明。然而,在其他实施例中,以不同的格式存储元数据。例如,在根据本发明的一些示意性替代实施例中,对一个或多个NLE项目进行定义的元数据集中存储在一个数据库内(例如,所有的在一个单一数据库文件内)。在这些替代性实施例中,如本领域内的技术人员在阅读本发明后将认识到的,存储每个元数据元素作为一个或多个数据库对象/条目。与此处之前所述的文件118一样,该系统100可以能够通过转让存储该元数据所在的数据库对象的所有权来实现存储在数据库内的元数据的专有写访问的交换。与图1至图10的实施例一样,可以为每个编辑器用户124提供一个以如下三种状态之一呈现形成该NLE项目的数据库的⑶1:加锁(为写访问而被检出并且因此为另一个编辑器用户124所拥有);解锁(为写访问而被检出并且因此为根据其而使该GUI个性化的编辑器用户124所拥有);以及可要求的(为该服务器用户112所拥有并且能够被检出)。
[0087]在此类其中元数据存储在一个数据库(例如,如本领域内的技术人员将认识到的,由总部在美国加利福尼亚州雷德伍德市的甲骨文公司提供的MySQL数据库、或者由PostgreSQL全球发展集团提供的PostgreSQL数据库)内的实施例中,该数据库内的元数据可以通过特定标签和/或字段的使用被组织成“虚拟目录”。更确切地说,可以对形成该元数据的数据库对象的每个加标签、进行标记等,如同在虚构的目录结构内具有一个特定的位置。相应地,这些标签、标记等能够使得以一种与传统目录结构类似的方式对该元数据进行操纵(例如,组织、分类、过滤、拥有等)。作为一个示意性和非限制性示例,可以在虚构分级目录内用适当的文件路径对每个元数据元素进行标记,从而允许根据常规分级目录能够实现的相同组织结构对该元数据元素进行操纵。
[0088]阅读本说明书后,本领域内的技术人员还将认识到用于存储组织对一个或多个NLE项目进行定义的元数据的其他合适方式。就此类替代性格式和存储机制能够经该服务器用户112的中间人实现所有权在这些编辑器用户124之间的转让的程度上讲,在本发明的范围内想到所有此类替代方案和修改。本发明不仅仅局限于此处所述的示例性和示意性实施例。
[0089]此外,可以用多个附加特征实现本发明的实施例。作为一个非限制性示例,在一些实施例中,一旦编辑器用户124退出该NLE软件应用程序(该编辑器用户124使用该NLE软件应用程序修改和保存该编辑器用户124拥有的元数据),该系统100就自动地将那时该编辑器用户124拥有的任何元数据的所有权转让至该服务器用户112。在其他实施例中,一旦编辑器用户124退出该NLE软件应用程序,该系统100就允许该编辑器用户124保留那时该编辑器用户124拥有的任何元数据的所有权。而在其他实施例中,该系统100为编辑器用户124提供上述选项两者(例如,该第一选项:自动地“检入”该编辑器用户124退出该NLE软件应用程序时该编辑器用户124检出的任何数据,以及该第二选项:保留退出该NLE软件应用程序时该编辑器用户检出的任何数据的所有权)。例如,该系统100可以被配置成用于为编辑器用户124呈现两个选项并且允许所有编辑器用户124选择一个优选选项以用作该系统100的默认行为。
[0090]例如,图11描绘了被适配成用于系统100的浏览器窗口 130的另一个实施例,其中,定义或有助于NLE项目的元数据全部存储在一个或多个数据库内。相应地,以一个或多个数据库条目的形式和/或作为一个或多个数据库对象来存储每个元数据。在此类实施例中,如此处之前所述的,通过转让包含该元数据的特定数据库对象/条目的所有权来实现对各元数据的专有写访问的控制。
[0091]如图3A至图4B的实施例一样,图11的浏览器窗口 130向被分配至该NLE项目的具体的编辑器用户显示了对NLE项目进行定义的多个元数据的状态。图11的浏览器窗口 130通常可以是信息的任何合适的交互式电子显示。如此处之前所述的,该浏览器窗口130被个性化成用于具体的编辑器用户,并且从该具体的编辑器用户的角度显示每个元数据(例如,能够被您检出、为不是您的另一个编辑器用户所拥有等)的状态。通常可以为每个被分配至NLE项目的编辑器用户生成(通过该⑶I生成器114)该浏览器窗口 130,从而使得为每个编辑器用户提供他或她所分配到的NLE项目的元数据的状态的个性化展示。
[0092]在图11的示例实施例中,该浏览器窗口 130包括一个或多个项目文件夹150,每个文件夹为非瞬态计算机可读存储装置上存储的数据库内的元数据指示一个“虚拟目录”(如此处之前所述的)。每个项目文件夹150与一个特定的NLE项目相关联,并且每个项目文件夹150对存储在该数据库内的并且与该NLE项目相关联的元数据的特定集合进行定义(例如,通过数据库标签、标记或其他字段的使用)。附加文件夹指示符151包含在这些项目文件夹内,这些附加文件夹指示符在该项目文件夹150指示的虚拟目录下分级地指示“虚拟子目录”。此外,该浏览器窗口还包括代表形成该NLE项目的元数据的元数据指示符152。
[0093]如图3A至图4B的实施例一样,该浏览器窗口 130包括元数据状态指示符,该元数据状态指示符用于每个被这些元数据指示符152所代表的元数据。此外,像图3A至图4B的示例实施例一样,这些元数据指示符中的每个为以下指示符之一:解锁元数据指示符154 (例如,可以与该解锁文件指示符136比较)、可要求的元数据指示符156 (例如,可以与该可要求的文件指示符143比较)、或者加锁元数据指示符158 (例如,可以与该加锁文件指示符144比较)。该加锁元数据指示符158可以指示除了为其个性化该浏览器窗口 130的编辑器用户以外该具体元数据还已经被另一个编辑器用户检出、除了为其个性化该浏览器窗口 130的编辑器用户以外还为另一个编辑器用户所拥有、以及对为其个性化该浏览器窗口130的编辑器用户只读。该可要求的元数据指示符156可以指示该具体元数据可用于被为其个性化该浏览器窗口 130的编辑器用户检出并且从而可以被其“要求”。该解锁元数据指示符154可以指示该具体元数据可以被为其个性化该浏览器窗口 130的编辑器用户检出、被为其个性化该浏览器窗口 130的编辑器用户拥有以及只对为其个性化该浏览器窗口 130的编辑器用户可写(例如,超级用户、根用户、特权用户等除外)。
[0094]如图3A至图4B的示例实施例一样,在图11的示例实施例中,该加锁元数据指示符158包括一个锁的实心、闭合图标。该解锁元数据指示符154包括一个锁的打开着的图标。该可要求的文件指示符143包括一个锁的空心、闭合的图标。另外或可替代地,可以对这些元数据状态指示符136、143、144进行颜色编码,以便向用户提供相关联文件的状态的相似指示。图11的浏览器窗口 130还可以包括多个对哪个具体的编辑器用户124拥有被检出的具体的文件进行指示的所有者指示符140 (图11中未示出)。
[0095]此处所述的元数据包括任何定义、有助于NLE项目或另外与NLE项目相关联的元数据。相应地,该元数据包括对剪辑、时间代码、编辑决策、笔记的引用和任何其他元数据。阅读本说明书后,本领域内的技术人员将认识到各种各样与可以被编辑、删除、移动或另外修改的NLE项目相关联的其他类型的元数据。在本发明的范围内可以想到并且可以与本发明的实施例一起实现所有此类元数据。
[0096]鉴于上述描述,本发明的许多修改和替代性实施例对本领域内的技术人员将是明显的。例如,在本发明的一些替代性实施例中,编辑器用户124能够在不需要将元数据的所有权传至该服务器用户112的中间人的步骤的情况下直接将元数据的所有权转让至对方。相应地,在此类替代性实施例中,编辑器用户124能够指令该系统100直接将元数据(例如,存储在文件118内,存储在数据库对象内等)的所有权放弃或让与另一个编辑器用124。相应地,本描述应当仅仅被解释为示意性的,并且其目的是向本领域内的技术人员传授实施本发明的最佳方式。在不脱离本发明的精神的情况下,该结构的细节可能差别很大,并且在所附权利要求书范围内的所有修改的专用权将予保留。本文旨在本发明只由所附的权利要求书和法律的适用规则所限定。
[0097]还应当理解,下述权利要求书包括:此处所述的本发明所有的一般和特定特征,以及本发明范围内的所有陈述,所有陈述作为语言,可以被归类于两者之间。
【权利要求】
1.一种计算机实施的项目共享系统,包括: 存储在一个非瞬态计算机可读存储装置内的元数据,该元数据对一个非线性视频编辑项目的一部分进行定义; 针对存储在一个非瞬态计算机可读存储装置内的元数据的权限,这些权限能够使一组一个或多个编辑器用户读取该元数据并且能够使仅该元数据的所有者修改或删除该元数据; 一个服务器装置,该服务器装置被配置成用于通过使用至少一个处理器将该元数据的所有权转让至一个不是编辑器的服务器用户或从其转让该元数据的所有权来控制该元数据的写访问; 其中,如果该一个或多个编辑器用户中的一个第一编辑器用户具有该元数据的所有权,该第一编辑器用户能够通过指令该服务器装置将该元数据的所有权转让至该服务器用户来放弃该元数据的所有权,并且没有该元数据所有权的一个或多个编辑器用户中的每一个不能够指令该服务器装置转让该元数据的所有权;以及 其中,如果该服务器用户具有该元数据的所有权,该一个或多个编辑器用户中的任一个能够通过指令该服务器装置将该元数据的所有权从该服务器用户转让至该一个或多个编辑器用户中的那一个编辑器用户来承担起该元数据的所有权。
2.如权利要求1所述的系统,其中,该元数据存储在一个目录中所存储的文件内,并且其中,针对该元数据的这些权限包括目录级权限和文件级权限。
3.如权利要求2所述的系统,其中,这些目录级权限包括一个粘着位。
4.如权利要求1所述的系统,其中,该元数据存储在一个数据库的一个或多个数据库条目内。
5.如权利要求1所述`的系统,进一步包括存储在至少一个非瞬态计算机可读装置上的多个指令,其中,由至少一个处理器执行这些指令致使在至少一个展示装置上呈现一个图形用户界面,该图形用户界面能够将转让该元数据所有权的指令发送至该服务器装置。
6.如权利要求5所述的系统,其中,该图形用户界面包括一个用于该元数据的当前状态指示符,该当前状态指示符向该一个或多个编辑器用户之一指示该元数据当前可用于被检出、当前被该一个或多个编辑器用户中的那一个编辑器用户检出或者当前被该一个或多个编辑器用户中的一个不同的编辑器用户检出。
7.如权利要求1所述的系统,其中,该服务器装置在一个基于Linux的操作系统、一个基于Unix的操作系统或一个类似Unix的操作系统上运行。
8.一种计算机实施的方法,包括: 使用至少一个处理器来设置存储在一个非瞬态计算机可读存储装置内的针对元数据的权限,这些权限能够使一组一个或多个编辑器用户读取该元数据并且能够使仅该元数据的一个所有者修改或删除该元数据; 通过使用至少一个处理器并且在通过至少一个输入装置接收到一个指令后将该元数据的所有权转让至一个不是编辑器的服务器用户或从其转让该元数据的所有权来控制该元数据的写访问; 其中,如果该一个或多个编辑器用户中的一个第一编辑器用户具有该元数据的所有权,该第一编辑器用户能够通过指令该服务器装置将该元数据的所有权转让至该服务器用户来放弃该元数据的所有权,并且没有该元数据所有权的一个或多个编辑器用户中的每一个不能够指令该服务器装置转让该元数据的所有权;以及 其中,如果该服务器用户具有该元数据的所有权,该一个或多个编辑器用户中的任一个能够通过指令该服务器装置将该元数据的所有权从该服务器用户转让至该一个或多个编辑器用户中的那一个编辑器用户来承担起该元数据的所有权。
9.如权利要求8所述的计算机实施的方法,其中,该第一用户具有该元数据的所有权,并且其中,该方法进一步包括: 通过至少一个输入装置从该第一用户编辑器上接收一个放弃该元数据所有权的指令;以及 基于所接收到的指令,使用该至少一个处理器将该元数据的所有权从该第一用户转让至该服务器用户。
10.如权利要求8所述的计算机实施的方法,其中,该服务器用户具有该元数据的所有权,并且其中,该方法进一步包括: 通过至少一个输入装置从该一个或多个用户编辑器之一上接收一个承担该元数据所有权的指令;以及 基于所接收到的指令,使用该至少一个处理器将该元数据的所有权从该服务器用户转让至该一个或多个 用户编辑器中的那一个编辑器用户。
11.如权利要求8所述的计算机实施的方法,其中,该元数据存储在一个目录中所存储的文件内,并且其中,针对该元数据的这些权限包括目录级权限和文件级权限。
12.如权利要求11所述的计算机实施的方法,其中,这些目录级权限包括一个粘着位。
13.如权利要求8所述的计算机实施的方法,其中,该元数据存储在一个数据库的一个或多个数据库条目内。
14.如权利要求8所述的计算机实施的方法,进一步包括存储在至少一个非瞬态计算机可读装置上的多个指令,其中,由至少一个处理器执行这些指令致使在至少一个展示装置上呈现一个图形用户界面。
15.如权利要求14所述的计算机实施的方法,其中,该图形用户界面包括一个用于该元数据的当前状态指示符,该当前状态指示符向该一个或多个编辑器用户之一指示该元数据当前可用于被检出、当前被该一个或多个编辑器用户中的那一个编辑器用户检出、或者当前被该一个或多个编辑器用户中的一个不同的编辑器用户检出。
16.一种信息的交互式电子显示,用于非线性视频编辑程序的一个第一编辑器用户,将该第一编辑器用户分配给一个非线性视频编辑(NLE)项目,该非线性视频编辑项目包括多个元数据,该显示包括: 多个元数据指示符,这些元数据指示符代表该多个对该非线性视频编辑项目进行定义的元数据,其中,该多个元数据中的每个元数据或者被一个代表被分配给该NLE项目的编辑器的编辑器用户所拥有或者被一个不代表被分配给该NLE项目的编辑器的服务器用户所拥有;以及 对于该多个元数据中的每个元数据而言,从由以下内容组成的组中选择一个相关联的状态指示符:一个指示该服务器用户拥有该元数据的所有权的第一状态指示符;一个指示该第一编辑器用户拥有该元数据的所有权的第二状态指示符;以及一个指示一个不是该第一编辑器用户的编辑器用户拥有该元数据的所有权的第三状态指示符; 其中,只允许该第一编辑器用户对该第一编辑器拥有的多个元数据中的元数据的写访问。
17.如权利要求16所述的电子显示,其中,该第一状态指示符和该第二状态指示符各自是可选择的。
18.如权利要求17所述的电子显示,其中,对于包括在该显示内的每个第一状态指示符而言,该第一状态指示符的选择致使一个服务器装置使用至少一个处理器将与所选择的第一指示符相关联的元数据的所有权从该第一用户转让至该服务器用户。
19.如权利要求17所述的电子显示,其中,对于包括在该显示内的每个第二状态指示符而言,该第二状态指示符的选择致使一个服务器装置使用至少一个处理器将与所选择的第二指示符相关联的元数据的所有权从该服务器用户转让至该第一用户。
20.如权利要求16所述的电子显示,进一步地,其中,对于该多个元数据中的每个元数据而言:该第一状态指示符指示该第一用户编辑器拥有该元数据并且已经检出该元数据,该第二状态指示符指示该第一编辑器用户不拥有该元数据并且能够检出该元数据,以及该第三状态指示符指示该第一编辑器用户不拥有该元数据并且不能够检出该元数据。
【文档编号】G06F7/04GK103688241SQ201280021233
【公开日】2014年3月26日 申请日期:2012年4月6日 优先权日:2011年4月8日
【发明者】安德鲁·利布曼 申请人:安德鲁·利布曼

最新回复(0)