Go Back   Cockos Incorporated Forums > REAPER Forums > REAPER General Discussion Forum

Reply
 
Thread Tools Display Modes
Old 01-25-2016, 11:27 PM   #1
keyman_sam
Human being with feelings
 
keyman_sam's Avatar
 
Join Date: Jun 2006
Posts: 2,562
Default Any reaper utility to show diff between two reaper project files?

Need this urgently - I have a few backups - want to find out the difference between them - any ideas? Other than opening the project, that is.
__________________
The must-have sample library for shortcircuit :
Essentials Volume 1
http://forum.cockos.com/project.php?...3313#note14891
keyman_sam is offline   Reply With Quote
Old 01-25-2016, 11:46 PM   #2
richie43
Human being with feelings
 
Join Date: Dec 2009
Location: Minnesota
Posts: 9,090
Default

Quote:
Originally Posted by keyman_sam View Post
Need this urgently - I have a few backups - want to find out the difference between them - any ideas? Other than opening the project, that is.
You can open them in any text editor (like Notepad) and read them. Not ideal, but it's saved me before. You can even fix many things this way by changing the text inside.
__________________
The Sounds of the Hear and Now.
richie43 is offline   Reply With Quote
Old 01-26-2016, 12:10 AM   #3
cfillion
Human being with feelings
 
cfillion's Avatar
 
Join Date: May 2015
Location: Québec, Canada
Posts: 4,968
Default

REAPER projects file are human readable, so they can be compared using any text diff tools.

If you are on OS X you can run the following command in a Terminal.app window to get the differences between two projects:

Code:
diff ProjectA.RPP ProjectB.RPP
Or on Windows, in a cmd.exe prompt:

Code:
fc ProjectA.RPP ProjectB.RPP
If you prefer GUIs, on Windows there is http://winmerge.org/.
cfillion is offline   Reply With Quote
Old 01-26-2016, 12:42 AM   #4
keyman_sam
Human being with feelings
 
keyman_sam's Avatar
 
Join Date: Jun 2006
Posts: 2,562
Default

Wait, but how do you read a text file? Is it practical for a large project?
__________________
The must-have sample library for shortcircuit :
Essentials Volume 1
http://forum.cockos.com/project.php?...3313#note14891
keyman_sam is offline   Reply With Quote
Old 01-26-2016, 02:45 AM   #5
IXix
Human being with feelings
 
Join Date: Jan 2007
Location: mcr:uk
Posts: 3,891
Default

Quote:
Originally Posted by keyman_sam View Post
Wait, but how do you read a text file? Is it practical for a large project?
They're "readable" but they're not very readable. Using a diff tool won't tell you very much about what's different between them. You can see things like tracks, media items and plugins but the fine detail of the various settings is pretty cryptic, especially for VSTs and such.
IXix is offline   Reply With Quote
Old 01-26-2016, 10:13 AM   #6
toddhisattva
Human being with feelings
 
toddhisattva's Avatar
 
Join Date: Jun 2008
Location: Austin
Posts: 289
Default Dap Eton

Quote:
Originally Posted by keyman_sam View Post
Wait, but how do you read a text file? Is it practical for a large project?
On Windows you can use Notepad to read (and edit, if you dare ;-) text files.

On Mac I use BBEdit, they have a free editor called "TextWrangler" http://www.barebones.com/products/textwrangler/

BTW, a "text file" is pretty much like the posting window on this forum. It's basically the "typewriter" characters only. Notice how we have use the preview window to see how it will really look - this here "text editor"-like posting window can only handle text file characters, and our formatting must be spelled out in those characters.

IXix said, "They're 'readable' but they're not very readable."

One of these days such a file will win a Nobel Literature Prize.
toddhisattva is offline   Reply With Quote
Old 01-26-2016, 10:20 AM   #7
EpicSounds
Human being with feelings
 
EpicSounds's Avatar
 
Join Date: Jul 2009
Posts: 7,595
Default

There's a web app for viewing rpp files

http://reaperblog.net/2013/11/rpp-viewer/
__________________
REAPER Video Tutorials, Tips & Tricks and more at The REAPER Blog
EpicSounds is offline   Reply With Quote
Old 01-26-2016, 01:46 PM   #8
Fabian
Human being with feelings
 
Fabian's Avatar
 
Join Date: Sep 2008
Location: Sweden
Posts: 7,432
Default

I have tried to use WinDiff for exactly this, but it doesn't really work.

One thing is that WinDiff easily gets confused and then flags the rest of the two files as different even though you can see that they are very similar.

Also, most changes between projects, at least late in the production once most of everything is recorded, would be between FX settings, and those are UU-encoded in the *.rpp, which means that you have no clue about what is different or not.

I spent a week or so trying to come up with some useful workaround, but eventually gave up. The best way to compare two (versions of the same) project(s) seems to by ear...

EDIT: Hm... I haven't seen the web app linked to above before... Maybe if you put in first one project and save the output from the web app, and then the other project, then maybe using WinDiff would make some sense... The UU-encode problem would persist, though.
__________________
// MVHMF
I never always did the right thing, but all I did wasn't wrong...
Fabian is offline   Reply With Quote
Old 01-14-2019, 01:15 PM   #9
X-Raym
Human being with feelings
 
X-Raym's Avatar
 
Join Date: Apr 2013
Location: France
Posts: 9,900
Default

Pure text comparison doesn't work well for complex cases (for eg, it won't tell you that an item on a track has been moved, it will just tell you that a part have been deleted at some place in the rpp and another added somewhere, but you don't know if they are related).


Also, for VST parameter it is pretty unreadable.


Only a complex script could do the trick




(checking every items and track GUID, checking if they are in the other project, and if yes, if they have change etc).
X-Raym is offline   Reply With Quote
Old 01-21-2019, 03:27 AM   #10
X-Raym
Human being with feelings
 
X-Raym's Avatar
 
Join Date: Apr 2013
Location: France
Posts: 9,900
Default

In fact, the most advanced way I found was to first export my projects as HTML and then do the comparison on the HTML with a diff checker.


It doesn't support all REAPER features (stretch markers, envelopes, sends etc) but for basic projects it can do the trick.

Here is a modified FX:



Here is a new track:



Here I can see human readable FX values (not avaible with pure .rpp comparison).

Supporting all REAPER variables (tempo map, markers, regions, extstate etc... would require quite a lot of work).


Note: if HTML markup bother you, you can export with CSV with these scripts too :P But I like to see each table rows being indented.
X-Raym is offline   Reply With Quote
Reply

Thread Tools
Display Modes

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is On
HTML code is Off

Forum Jump


All times are GMT -7. The time now is 01:49 AM.


Powered by vBulletin® Version 3.8.11
Copyright ©2000 - 2024, vBulletin Solutions Inc.