Jump to content

Possible to convert a .cwp into human-readable format?


User Zero

Recommended Posts

Wondering if there's a tool or process available - perhaps something used by the Devs - to parse and examine the data in a Cakewalk project file.

I have a some old .cwp project files I'd like to rework, but unfortunately I no longer have the sample synth / library that was used (Kontakt 3 & 4).  These load fine, but give the expected errors regarding missing synths.

I'd like to rebuild the project and can certainly do that using a 'best guess' as to what each synth in the Synth Rack probably had, based on the routing information in the MIDI tracks.

However, if there's any way to examine the portion of the .cwp data that defines the synth instances, that would be a huge help.

Any thoughts greatly appreciated.

TIA!

  • Like 1
Link to comment
Share on other sites

I've also had some luck sometimes (depends on the plug-in) of opening a cwp in Notepad or similar (Notepad++ probably better given Notepad's propensity to sit there for hours opening a large file :-)) reading out pathnames of programs or samples from the text.

  • Like 2
Link to comment
Share on other sites

17 hours ago, tparker24 said:

Thanks! This is a very cool little app. Sadly, it provides the same information I can see by opening the file in CW. That is, there is nothing listed about which sampling synths were used or what sample patches were loaded.

That's probably beyond the scope of the program, since it would likely require detailed specs on every known synth and how their configuration data is stored.

Link to comment
Share on other sites

On 4/8/2021 at 7:58 PM, Noel Borthwick said:

Out of curiosity what are the fields you would like to see if there were a text dump?

Hi Noel,

I was thinking it'd be nice to know which specific patches were loaded into the VSTi, how their internal levels were set, etc.

Having thought about it further, however, although I'm not familiar with the details, I imagine every plug-in has its own proprietary data structure that the DAW probably doesn't "understand", and just stores as a "blob'" for each instance.

I did try modifying the cwp file with a hex editor in an effort to get CW to load the latest version of Kontakt, but all the methods I tried ended up with an unreadable file. So I'm guessing there's a checksum or other mechanism that's getting messed up by that effort.

I eventually just exported the MIDI, routed the tracks through EWQLSO and without much tweaking at all ended up with a render that I can at least work from. Probably took less time than all the futzing around I did trying to get my old copies of K3 & K4 installed (turns out they're not compatible w/Win10 ;-).

cheers,

r

Link to comment
Share on other sites

Knowing patches is not possible because that is managed by the plugins preset management directly. Cbb doesnt know what patch is selected.
Im not surprised that you corrupted the file haha. The data structures are quite complex and there are sizes stored for chunks so if you are not careful you can corrupt the data very easily. I had some rudimentary XML extraction built in a long time ago that could output a file that had the basic track properties but you wouldn't be able to get patch names. We can consider having some basic text extraction for the project for documenting whats in the project without having to open it.

  • Like 2
Link to comment
Share on other sites

To be more specific, my wish list for this would be-

  -The contents of the Project Notes/File Stats

  -A list of the Tracks by number and name

  - And the contents of the notepads in both the Folders and the take lanes.

 

If it were in the form of a spreadsheet that could be opened (edited?) in Excel that would be very cool.

  • Thanks 1
Link to comment
Share on other sites

Some synths do expose their "preset" names as text in a cwp file, or paths to samples.  I've just checked a handful I have:

Cakewalk Dimensions (LE) - doesn't expose the prog name, but does expose the VST preset name if you've selected one or saved it as one

Korg Wavestation exposes the internal preset selected as text

fxPansion BFD 2 exposes kit piece names (and most of the parameters) as an XML chunk inside the cwp file, and the internal preset name too if you've loaded one - most usefully (it's saved my bacon at least once!), it shows the full path to any loaded groove

The format of all of these is different, but with a bit of detective work, you may be able to extract some useful information from a corrupt/otherwise unusable project.

Link to comment
Share on other sites

  • 3 years later...

@Noel Borthwick it's almost a bummer the project files could be XML or JSON with compressed binary sections where needed and the rest is just a compressed data file - given all the pictures, audio, and possibly (if desired) MIDI content as files ? would leave really the metadata and the project settings... then creating extracts of plugins and whatever settings they share (you know so the state of the plugin is saved with the project ? ) would, imho, really set the bar pretty high as the ability to fully document the project is, well, erm, already done for the most part ?

and with multiple cores, concurrent writes to an in-memory object writing streams to document sections would seem very feasible...

  • Like 1
Link to comment
Share on other sites

In year 2024... there is DAWProject ( documented XML format). Studio One is using XML (undocumented). REAPER - way simpler to read then XML own text format (semi-documented).

That does not solved the problem with presets for plug-ins, they are in general blobs (even so many use XML, at least in part). So a DAW save FXP/vst(3)preset, but it is up to plug-in to interpret it.  Relatively easy "hacking" original identity/version may "force" new plug-in version attempt to parse  preset for old version, but the probability of success is strictly bound to plug-ins own presets backward compatibility.

Saving project MIDI content as standard MIDI files will not work, the format does not define a possibility to add DAW specific info. It is possible to use "compatible" format, like in Yamaha Style Files, but simpler just use own format.

  • Like 2
Link to comment
Share on other sites

Please sign in to comment

You will be able to leave a comment after signing in



Sign In Now
×
×
  • Create New...