用于多工作站/多平臺非線性視頻編輯系統(tǒng)的新穎媒體文件訪問和存儲解決方案的制作方法
【專利說明】用于多工作站/多平臺非線性視頻編輯系統(tǒng)的新穎媒體文 件訪問和存儲解決方案
【背景技術】
[0001] 美國專利公開號20060184673A1描述了一種裝置和方法,通過該裝置和方法,非 線性視頻編輯"項目(Project)"(例如諸如由Avid非線性視頻編輯(Non-LinearVideo Editing,NLE)應用所創(chuàng)建的那些"項目")可以被轉換成共享Avid項目(SharedAvid Project),由此使得兩個或更多視頻編輯者能夠安全地且高效地協(xié)作,使得所有編輯者可 以看見同事正在編輯什么而沒有一個編輯者重寫另一編輯者的工作的危險。
[0002] 美國專利公開號20060184673A1中描述的"符號鏈接"虛擬化方案的使用使得協(xié) 作存儲系統(tǒng)能夠建立一種允許諸如AVID的XpressproKHD非線性編輯(NLE)應用之類的 非線性視頻編輯者除了共享相同的媒體文件之外還共享相同"項目"的結構。在AVIDK非 線性編輯的上下文中,"項目"由包括其全都引用媒體文件的"剪輯"和序列以及二進制文件 (bin)的元數(shù)據(jù)組成,但是項目的內容不是媒體文件本身。對于使用Avid非線性視頻編輯 應用的編輯者來說,由大多數(shù)Avid非線性視頻編輯應用所創(chuàng)建的項目數(shù)據(jù)不存儲在單個 整合(monolithic)文件中,就像比如Apple的FinalCutPro_:|的很多其他流行的非線性編 輯應用一樣。AvicT項目故意典型地分成很多離散元素,這些元素在操作系統(tǒng)級實際上正是 文件系統(tǒng)文件夾和文件。因而,在為dif:項目中,有可能獨立地操縱這些離散元素。例如,有 可能針對一個文件夾或文件相對于其他的文件夾或文件不同地設置寫權限。并且,通過所 描述的符號鏈接技術,有可能創(chuàng)建AvicT3:項目的不同"虛擬視圖",使得每個用戶具有項目的 優(yōu)化視圖且每個用戶可以維持他/她自己的分離文件以用于相同的功能(即用于設置)。
[0003] 也就是說,AvidsNLE應用的與眾不同的特征之一在于它們在"二進制文件"中存 儲元數(shù)據(jù)(例如對剪輯、子剪輯和序列的引用),這些二進制文件是文件系統(tǒng)級的真實文 件。麵NLE應用支持同時打開多個二進制文件而且支持同時打開每個二進制文件引用 的多個元素(例如,剪輯、子剪輯和序列)以及在二進制文件之間進行剪切、復制和粘貼???體Avid二進制文件方案使得可以將項目分割和組織成多個二進制文件一例如,使一個二 進制文件用于原始的數(shù)字化材料、一個用于每個場景、一個用于完成的粗略剪切、一個用于 精細剪切等。這樣,典型的AvidKNLE項目將由多個二進制文件組成,每個引用總體項目的 某一部分。
[0004] 將十分希望把一種允許多個非線性編輯系統(tǒng)安全地打開相同"項目"并且從其工 作和就其協(xié)作(collaborateon)的系統(tǒng)和方法提供作為集中式協(xié)作存儲系統(tǒng)的一部分。在 非線性編輯的領域中,項目一般被理解成包含"元數(shù)據(jù)","元數(shù)據(jù)"引用媒體文件而非媒體 文件本身。在它們最基本的形式中,項目包括引用整個媒體文件的"剪輯"、引用部分媒體文 件的"子剪輯"以及引用(部分或全部)媒體文件的"序列"(它們全都串在一起以編故事 或節(jié)目)。在非線性視頻編輯的上下文中,編輯者的創(chuàng)造性工作一般存儲在項目中。不像典 型地絕不在編輯的過程中修改的媒體文件,項目文件一直在改變,因為它們反映編輯者的 編輯決定。因此,編輯者的正常實踐是每個維持其自己的項目,因為如果兩個或更多編輯者 從兩個不同的非線性編輯工作站打開相同的項目(假設項目被存儲在可以被不止一個編 輯者訪問的某一中央位置),則一個編輯者將處于重寫其他編輯者正在做出的改變的重大 風險,反之亦然。重寫改變的風險應用于項目中包含的任何信息,包括設置、二進制文件、序 列等。此外,如果多個編輯者要打開相同的項目文件,則他們都將面對信息混亂,使得難以 分辨哪個編輯者正在編輯什么以及誰應當具有對哪些元數(shù)據(jù)的修改權力。
[0005]因此,還將十分希望提供一種用于非線性編輯系統(tǒng)的集中式協(xié)作存儲系統(tǒng),其管 理不同編輯者對共享項目的貢獻的所有權和權限并且實施"符號鏈接"以創(chuàng)建虛擬文件和 文件夾結構,其允許多個非線性編輯系統(tǒng)就相同的項目協(xié)作,保持工作有條不紊使得其清 楚哪個編輯者正編輯什么并且允許每個編輯者針對項目維持他/她自己的設置。
[0006] 還將十分希望創(chuàng)建協(xié)作編輯環(huán)境,使得運行非線性視頻編輯(NLE)程序的一個或 多個編輯者能夠就項目協(xié)作,盡管事實是程序本來將項目保存為單個整合且不可分割的文 件。
[0007] 還將十分希望在集中式數(shù)據(jù)存儲系統(tǒng)上創(chuàng)建協(xié)作視頻編輯環(huán)境,該集中式數(shù)據(jù)存 儲系統(tǒng)裝配有用于在集中式數(shù)據(jù)存儲系統(tǒng)上創(chuàng)建共享項目空間(SharedProjectSpace) 的工具,可以向該共享項目空間添加用戶從而定義誰能夠訪問該項目空間。
[0008] 還十分希望在集中式數(shù)據(jù)存儲系統(tǒng)上創(chuàng)建協(xié)作視頻編輯環(huán)境,該集中式數(shù)據(jù)存儲 系統(tǒng)裝配有用于在給定共享項目空間中創(chuàng)建一個或多個上層文件夾的工具,所述一個或多 個上層文件夾中的每個可以被定義為唯一"共享項目(SharedProject)"并且編輯者可以 將代表總體項目的某一部分的項目文件放置到所述文件夾中。
[0009] 還十分希望在集中式數(shù)據(jù)存儲器上創(chuàng)建協(xié)作編輯環(huán)境,其裝配有用于控制項目文 件的權限和所有權的機構,使得多個用戶不能重寫彼此的工作。
【發(fā)明內容】
[0010] 因而,本發(fā)明的一個目的是提供一種集中式數(shù)據(jù)存儲系統(tǒng)上的協(xié)作編輯環(huán)境,其 使得運行非線性視頻編輯(NLE)程序的一個或多個編輯者能夠就項目協(xié)作,盡管事實是 NLE程序本來將項目保存為單個整合且不可分割的文件。本發(fā)明的基礎是意識到,當用被 設計為將項目保存為單個整合文件的一些NLE程序進行工作時,通常實際不必將所有項目 元數(shù)據(jù)(剪輯引用、子剪輯引用、序列等)放置到單個項目文件中。即使給定NLE軟件應用 的制造商可能將項目定義為單個不可分割的文件,但是在很多情況下有可能將項目元數(shù)據(jù) 分布在多個項目文件中,所述多個項目文件只有一起將組成"項目"。一旦用戶認定"項目" 由多個"項目文件(ProjectFile)"組成,就有可能預期將這些放置到允許協(xié)作的結構中。
[0011] 本發(fā)明的解決方案建立在Linux操作系統(tǒng)的底層特征(且也在其他Unix或類 Unix的操作系統(tǒng)諸如Mac0S-X上發(fā)現(xiàn))的唯一使用上一這是這些操作系統(tǒng)創(chuàng)建到文件的 指針或"鏈接符號鏈接"和"硬鏈接"二者)的能力。本發(fā)明系統(tǒng)廣泛利用這種鏈接以 向連接到服務器及其集中式存儲器的每個工作站提供對共享媒體文件的容易且安全的訪 問。實質上,系統(tǒng)對被指定可對不止一個用戶和工作站訪問的所有媒體文件虛擬化,向(經 由每個用戶或工作站的自己的唯一目錄和網絡共享)連接到服務器的所有工作站和用戶 呈現(xiàn)到實際文件的"鏈接",同時保護不能被那些用戶和工作站直接訪問的完全分離目錄中 的實際媒體文件。也就是說"符號鏈接"創(chuàng)建虛擬文件,該虛擬文件對于系統(tǒng)上的每個用戶 是唯一的但是指向存儲在平常絕不被任何NLE工作站直接訪問的文件夾中的聯(lián)網驅動上 的真實媒體文件的公共集合。從NLE的觀點看,這些鏈接不可與實際媒體文件區(qū)分一且因 而可以執(zhí)行NLE將對并且可以對那些文件正常執(zhí)行的所有操作(甚至文件刪除)。然而,因 為文件實際僅僅是鏈接,所以實際文件總是得到保護。
[0012] 以這種方式虛擬化所有共享媒體文件的方法也使得不同NLE應用在網絡上共享 媒體文件。文件虛擬化一其中相同的媒體文件可以具有不止一個名稱,每個名稱被修剪,使 得它可以被特定NLE應用所識別一實現(xiàn)這種交叉NLE兼容性。
[0013] 提供與平臺和工作站品牌無關的系統(tǒng)和方法。僅需要的是基于Linux(或等價地, Unix或類Unix)的服務器。也就是說,所有數(shù)字視頻媒體數(shù)據(jù)文件操縱以與平臺無關的方 式發(fā)生在服務器側,因而,允許在很多不同平臺上運行的很多不同類型的編輯系統(tǒng)和其他 設備共享相同的存儲空間。
[0014] 根據(jù)本發(fā)明的前述目的和方面,提供一種用于在具有計算機服務器的系統(tǒng)中存儲 數(shù)字音頻和視頻媒體文件的系統(tǒng)、方法和計算機程序產品,該計算機服務器與用于存儲媒 體文件的裝置通信且與一個或多個獨立用戶通信。該方法包含以下步驟:在存儲裝置上 創(chuàng)建目錄結構以用于分層地組織數(shù)字媒體和其他數(shù)據(jù)文件;在目錄結構中生成對應于能夠 訪問媒體文件的每個獨立用戶的且獨立用戶可以通過其存儲實際數(shù)字媒體文件的用戶目 錄(UserDirectory);將實際存儲的數(shù)字媒體文件從用戶目錄移動到與用戶目錄分離的共 享目錄(SharedDirectory),在其中文件不被任何獨立用戶直接訪問;以及針對移動到共 享目錄中的每個數(shù)字媒體文件,為每個單獨的獨立用戶創(chuàng)建到實際數(shù)字媒體文件的對應鏈 接,且將鏈接放置在每個對應用戶目錄內部。以這種方式,經由鏈接,允許用戶對存儲在存 儲裝置上的共享目錄中的所有實際數(shù)字媒體文件的間接訪問,同時防止對實際數(shù)字媒體文 件的直接訪問。
[0015] 根據(jù)本發(fā)明的另一方面,提供一種用于經由圖形用戶界面(GUI)管理集中式數(shù)字 媒體存儲系統(tǒng)的完整工具,該集中式數(shù)字媒體存儲系統(tǒng)存儲實施符號鏈接虛擬化特征的多 個NLE工作站的編輯數(shù)據(jù)和數(shù)字媒體源數(shù)據(jù)。該管理工具使得媒體和對應的虛擬文件能夠 被操作,例如響應于用戶請求而在邏輯位置中被創(chuàng)建、從一個邏輯位置移動到另一邏輯位 置、被共享、被刷新和被刪除,始終自動維持所描述的文件虛擬化特征。
[0016] 本發(fā)明的另一目的是提供一種工具,該工具管理不同編輯者對共享項目的貢獻的 所有權和權限并且實施"符號鏈接"以創(chuàng)建虛擬文件和文件夾結構,其允許多個非線性編 輯系統(tǒng)就相同的項目協(xié)作,保持工作有條不紊使得其清楚哪個編輯者正在編輯什么并且允 許每個編輯者針對項目維持他/她自己的設置。進一步針對該目的,該工具實施"符號鏈 接"虛擬化特征以創(chuàng)建用于實現(xiàn)如下功能的虛擬文件和文件夾結構:1)當在由工具管理器 軟件建立的框架內創(chuàng)建和共享項目時,多個編輯者打開相同的共享非線性編輯項目并用其 工作;2)作為共享非線性編輯項目的成員的每個編輯者獲取該共享Avicf項目內他/她自 己的用戶文件夾(UserFolder);以及3)當編輯者打開共享項目時,他/她在"共享項目" 結構的頂級看到他/她自己的用戶文件夾。提供被稱為"其他編輯者(OtherEditor)"的 另一文件夾,在該文件夾內部發(fā)現(xiàn)作為共享項目的成員的所有其他編輯者的用戶文件夾。 "符號鏈接"結構使得每個編輯者有可能具有共享項目的定制視圖,在該定制視圖中他們自 己的用戶文件夾處于頂級而所有其他編輯者的文件夾處于可以被折疊(collapse)成一個 "其他編輯者"文件夾的下級。
[0017]有利地,本發(fā)明可以被實施用于其他非線性視頻編輯應用,且操作以使得多個編 輯者能夠通過實施或不通過實施虛擬化特征在視頻編輯項目中協(xié)作和共享。
【附圖說明】
[0018] 鑒于結合附圖進行的以下詳細描述,本發(fā)明的目的、特征和優(yōu)點將對本領域的一 位技術人員來說變得顯而易見,在附圖中: 圖1描繪了根據(jù)本發(fā)明的新穎GUI500,管理員經由該GUI可以創(chuàng)建"共享的"非線性 視頻編輯項目; 圖2A描繪了存儲服務器(S