Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Version control for .dawproject files #40

Open
Trinitou opened this issue Jan 28, 2023 · 2 comments
Open

Version control for .dawproject files #40

Trinitou opened this issue Jan 28, 2023 · 2 comments

Comments

@Trinitou
Copy link

Maybe this would be a bit too complicated but...
What if it was possible to compare two versions of a .dawproject file and do some sort of intelligent diff between them? This would be really great for collaboration (which I assume is the main target of this format).

I don't have a detailed idea/understanding of how this could be realised but a few loose thoughts:

  • If a daw loads a .dawproject file and the user re-exports it, the daw would be responsible for ensuring as much persistency as possible between the imported and exported .dawproject file.
  • One way to go about it could be that the daw tries to keep the UIDs persistent as long as possible so that a dawproject diff tool could use them to better detect the modifications between the project versions. Also the daw should try to keep metadata persistent as long as possible even if it cannot use it itself.
  • Another way could be to develop a companion (diff) file format that maps two .dawproject files onto each other (e.g. old to new IDs). The daw could provide such a file when -re-exporting the new version of a .dawproject file. And a diff tool could ensure that it has valid diff files between each .dawproject "commit". Also the daw could give hints in the file which features of the original file it ignored (which might be lost in the new version but could still be valid)

What do you think? Is it a dumb idea or worth exploring further? ;)

@mrlimbic
Copy link

mrlimbic commented Sep 27, 2023

To identify a clip without UIDs you only need the media filename and media in/out points (assuming all files have unique names). If those all match then it is the same clip (but may have moved position).

I make a product that diffs/resyncs timelines but mostly to compare 2 video edits, so that the sound editor can keep up with sync changes made by the video editor. It can detect which clips have moved, had edge edits (in or out point changed), been deleted or added.

Compare/Reconform

@erroreyes
Copy link

This sounds cool, and also strikes me to be not part of the DAWProject context but it's own separate project altogether.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

3 participants