I've been looking at the contents of the Nord Wave Backup (nwb) and Nord Wave Program (nwp) files that are generated by the Nord Sound Manager. The backup file is simply an (uncompressed) zip file of the Samp Lib and Program partitions, with an additional file storing the settings of the Wave. Nothing exciting there.
Figuring out how to extract specific types of data from the nwp files is the time consuming part. For now I've figured out how the settings regarding the oscillators in slot A and B are stored. I now have a simple utility that prints information about the oscillators in a program. Example output is shown below:
- Code: Select all
iMac:~/Desktop/Wave data/expanded$ ../show-nwp Program/Bank\ 8/Eindhoven\ \ \ \ \ GE.nwp
Name: "Eindhoven GE"
Bank 8, Program 34
Category: Fantasy
Slot A:
OSC1 waveform: Miscellaneous (Sine Synched)
OSC2 waveform: Sample Instrument (sample 27)
Slot B:
OSC1 waveform: Wavetable (saw-spectra1)
OSC2 waveform: FM-Synthesis (2-OP 8:1)
This probably isn't the most convenient format for end users
So, I'd be interested in some feedback on what would be a convenient format for you. Some kind of spreadsheet? Maybe some HTML document with clickable links?
Apart from presenting the data I'm currently extracting in a more user-friendly format, I'm also interested in the following:
- for each sample, list which programs make use of it
- specifically highlight unused samples
- generate textual versions of programs, that could be used to implement (some of) these programs on an NS2 (this would be a lot of additional work)
- figure out what Wave programs can be implemented on the NS2 and have the program provide feedback on what can and cannot be done on the NS2 (there may be ways to approximate specific Wave settings on the NS2)
It would also be interesting to make a controller plugin (VST/AU) for the Wave, like Johannes has done with the NS (or was that NS2?). It would be even cooler if that plugin could load sounds from nwb or nwp files and send those via MIDI to the Wave (excluding samples, those would already need to be present).
This little endeavor has already taken up more hours than intended and I may just release it as it is once the thing generates some usable output. It is currently written in C; a rewrite to Java might make sense.
Btw. my reason for doing this is that I've been thinking about replacing my Roland Fantom G6 and my Wave with an NS2. However, if I were to do that, I would first want to know what I would be loosing in the process. The differences between the synth section on the NS2 and the functionality of the Wave seem bigger than they appeared at first glance.