
Was ist ein guter Ansatz zur Versionskontrolle von Audiodateien?
Ich habe eine 20 GB große Bibliothek mit Audiovorträgen, die ich optimieren und in einen Zustand bringen muss, in dem ich sie veröffentlichen und teilen kann. Es ist wichtig, die Originaldateien intakt zu lassen und bestimmte Meilensteine während der Bearbeitung zu verfolgen (jeder einzelne Bit-Flip muss nicht notiert werden).
Obwohl es super schön wäre, eine einheitliche Diff-Ansicht zu haben, wie sie mit Text möglich ist, weiß ich, dass das im Moment ein Wunschtraum ist. Was wichtig und mit der heutigen Software vielleicht machbar ist, ist die Aufzeichnung derGrund für die Änderungund in der Lage zu sein,Holen Sie sich die Datei, wie sie beim Check-in war.
Zu erwarten sind folgende Arten von Änderungen:
- Abschneiden von toten Luft- oder irrelevanten Raumgeräuschen am Anfang und Ende der Aufnahme
- selektive Lautstärkenivellierung (z. B. Sprecher hat sich zwischen Minute 12 und 18 vom Mikrofon entfernt oder ein Zuschauer hat eine Frage außerhalb des Mikrofons gestellt)
- Filter zum Entfernen von Bandrauschen/-brummen angewendet
- MP3-Tag hinzugefügt oder geändert – wie etwa Künstlername, Aufnahmedatum, … (das ist vielleicht der einzige Teil, der abweichen könnte?)
- usw.
Ich arbeite hauptsächlich mit Windows 7, habe aber auch Linux-Rechner. Meine Mitarbeiter sind meistens Windows-Benutzer und keine Techniker. Das Verfolgen von Verzweigungen und Zusammenführungen (Zusammenführung von Zweigen, bei den Dateien wäre es einfach nur Überschreiben) wäre toll, aber nicht unbedingt erforderlich.
Der Speicher sollte Änderungsdeltas enthalten und nicht einfache Kopien jedes Commits. Wir haben mehr als genug Speicherplatz, aber niemand möchte Hunderte von Gigs kopieren, wenn nur 20 benötigt werden, und es besteht durchaus die Möglichkeit, dass einige Zusammenarbeiten über das Internet erfolgen.
Das Projekt ist für eine sehr kleine Non-Profit-Organisation. Der Kauf eines Tools ist nicht ausgeschlossen, es müsste aber kostengünstig sein, obwohl natürlich kostenlos und/oder Open Source viel besser wäre.
Antwort1
- Alle derzeit verwendeten VCSdürfenSpeichern und Verwalten von Binärdateien in Repositories für fastbeliebigGröße („speichern Sie keine riesigen Dateien im Repo“ ist eine Empfehlung, keine Einschränkung). Einige VCS machen es einfachbesser, als ein anderes; und einige VCS verarbeiten Big Data im Repo besser als andere
den Grund für die Änderung aufzuzeichnen und die Datei so abrufen zu können, wie sie beim Check-in war
IstKern von VCSund können keine bestimmenden Parameter sein
- Zum Ändern von Binärdaten, Speichern der neuen Version alsnicht diffist fast eine allgemeine Regel für VCSes (außer dass in verschiedenen VCSes verschiedene Tricks angewendet werden, um Deltas in Speichern zu reduzieren), daher - welches VCS Sie verwenden, ist Ihre Wahl und Verantwortung, ich kann nur einige aktuelle Diskussionen über große Dateien unter Versionskontrolle erwähnen, in denenIch habe bei StackOverflow mitgemacht(die drei besten Antworten) und wiederholenmein persönlichesMeinung - Mercurial
Alle Arten von Änderungen, die erwartet werden, sind allgemeine Aufgaben für alle Daten, die in VCS gespeichert sind (Änderung des Inhalts durchführen, speichern) und sind nicht einzigartig für Audiodateien (Änderung ist Änderung unabhängig vonWas ändert sich)
Es wäre zwar super, eine einheitliche Diff-Ansicht zu haben, wie sie mit Text möglich ist
Sie können zumindest versuchen, es zu bekommen:Foobar2000 mit BinärkomparatorPlugin (Antwort gefundenHierauf SU, in sehr nützlich in allgemeinem Thema) können (?!... nicht versucht, nicht getestet) vergleichen (in GUI?!) zwei Dateien von Foobar2000 unterstützten Formaten. Oder (wenn esarbeitenauf Win7 /altes Projekt, nicht aktualisiert von 2008/ und und wirdverwendbarfür Ihre Aufgaben) siehe unterAudio-DiffMakerDYF-Dateien (zusätzliches Objekt zum Speichern im Repo für alle Changesets, die Audiodaten ändern)
Sie können MP3-Tags zwar mit jedem externen Tool hinzufügen/ändern,dürfenTags vergleichen (Fast and Dirty Search gab mir gleich die ersten ZeilenScreenshot von Beyond Compare): Beyond Compare kann als Standard-Diff|Mergetool in Mercurial (TortoiseHG) verwendet werden, Foobar2000 kann (wahrscheinlich) als spezielles Mergetool für MP3-Dateien zugewiesen werden
Die Speicherung sollte aus Änderungsdeltas erfolgen und nicht aus einfachen Gesamtkopien jedes Commits.
Dies ist nicht möglich (im Normalfall, siehe oben S. 2), aber für Git mit LFS oder Mercurial mit LargeFiles haben wir einen Sonderfall (der Ihren Anforderungen besser gerecht wird als das übliche „alles im Repo“): Alle Dateien für alle Changesets werden in einem unabhängigen externen Speicher gespeichert (vollständige Dateien), Changesets in Repos haben nur „Links“ zu Dateien, am lokalen Arbeitsplatz haben Sie nureinsgroße Datei (nicht der gesamte Satz für die vollständige Historie in Ihrem Klon des Repo für den DVCS-Fall) ... und alle zusätzlichen alten Versionen, die für das direkte Diffing benötigt werden (denken Sie noch einmal darüber nach, DYF von Audio DiffMaker zu verwenden): Sie müssen einen riesigen Speicher haben, werden aber im Vergleich zum Fall „Dateien im Repo“ etwas lokalen Speicherplatz „sparen“.