
音訊檔案版本控制的好方法是什麼?
我有一個 20GB 的音訊講座庫需要調整並進入準備發布和共享的狀態。保持原始文件完整併在編輯過程中追蹤某些里程碑非常重要(不需要注意每個位元的翻轉)。
雖然擁有像文本一樣的統一差異視圖會非常好,但我知道現在這是一個白日夢。對於當今的軟體來說,重要且可能可行的是記錄變更原因並且能夠取得簽入時存在的文件。
預期的變化類型有:
- 從錄音的開頭和結尾剪掉死氣沉沉的空氣或不相關的房間噪音
- 選擇性音量調整(例如,演講者在第 12 至 18 分鐘內離開麥克風,或觀眾在麥克風外提問)
- 應用濾鏡消除磁帶嘶嘶聲/嗡嗡聲
- 新增或更改了 mp3 標籤 - 例如藝術家姓名、錄製日期…(這也許是可以區分的部分?)
- ETC。
我主要在 Windows 7 上工作,但也有 Linux 機器。我的合作者大多是 Windows 人員,而不是技術人員。追蹤分支和合併(分支合併,對於文件來說只是直接覆蓋)會很好,但不是必需的。
儲存應該是變化增量,而不是每次提交的愚蠢的批發副本。我們擁有足夠的磁碟空間,但是當只需要 20 個演出時,沒有人願意複製 100 個演出,並且很可能透過網路進行一些協作
該計畫是為一個非常小的非營利組織服務的。購買工具並非不可能,但需要便宜,當然免費和/或開源是更優選的。
答案1
- 現在使用的所有VCS能在儲存庫中儲存和處理二進位檔案幾乎任何大小(「不要在儲存庫中儲存巨型檔案」是建議,而不是限制)。有些 VCS 就這麼做了更好的,比另一個;某些 VCS 比其他 VCS 更好地處理儲存庫中的大數據
記錄更改的原因並且能夠取得該簽入時存在的文件
是VCS的核心且不能作為控制參數
- 用於更改儲存新版本的二進位資料為不區分幾乎是VCS 的常見規則(除了在不同的VCS 中應用不同的技巧來減少存儲中的增量),因此- 使用哪個VCS 您的選擇和責任,我只能注意到最近關於版本控制下的大文件的一些討論,其中我參加了 StackOverflow(前三個答案)並重複我個人的意見 - Mercurial
預期的所有類型的更改對於儲存在 VCS 中的任何資料都是常見任務(執行內容更改、儲存內容),並且對於音訊檔案並不是唯一的(更改就是更改,無論內容如何)有什麼變化)
雖然擁有像文字一樣的統一差異視圖會非常好
你至少可以嘗試得到它:二進制比較器的 Foobar2000插件(找到答案這裡在 SU 上,在常見主題中非常有用)可以(?!...未嘗試,未測試)比較(在 GUI 中?!)Foobar2000 格式支援的兩個文件。或者(如果它會工作在 Win7 /舊專案上,從 2008 年起未更新/並且將會可用的對於您的任務)請參閱音訊差異製作器的 DYF 檔案(用於儲存在儲存庫中的任何變更集的附加對象,這些變更集會更改音訊資料)
雖然您可以透過任何外部工具新增/變更 MP3 標籤,但您能比較標籤(快速而骯髒的搜尋在第一行給了我超越比較的截圖): Beyond Compare 可以用作 Mercurial (TortoiseHG) 中的預設 diff|mergetool,Foobar2000 可以(可能)指定為 mp3 檔案的特殊合併工具
儲存應該是變化增量,而不是每次提交的愚蠢的批發副本。
這是不可能的(在常見情況下,請參閱上面的p.2),但是對於帶有LFS 的Git 或帶有LargeFiles 的Mercurial,我們有特殊情況(可以比通常的“全部在存儲庫中”更好地滿足您的需求):所有文件變更集存儲在獨立的外部存儲中(完整文件),存儲庫中的變更集僅“鏈接”到文件,僅在您下載的本地工作場所一大檔案(不是 DVCS 情況下的儲存庫克隆中的完整歷史記錄的整個集合)...以及直接比較所需的所有其他舊版本(再次考慮使用 Audio DiffMaker 中的 DYF):您必須有一個巨大的儲存空間,但與「回購中的檔案」情況相比,會「節省」本地空間