Reaper related > ReaCWP


(1/3) > >>

ReaCWP is (Cockos) Reaper DAW extension to import (Cakewalk) Sonar DAW project files (saved in CWP format).

The program is developed for Sonar X2 - Platinum generated files, but theoretically can work with older versions. For the list of currently converted parts of the project, see "Features" post later.
Current version works in Reaper for Windows (32 and 64bit). Linux version can be made on request. I do not have Apple to compile corresponding incarnation (nor any plans to do that).

The extension is closed source but free to use.
You can donate to support the project. Please note that you do not buy a license nor any special service doing that. The software is provided "as is", without any promises.

From my best knowledge, I have not violated any Sonar EULA during the development. In particular, I have NOT debugged, reverse engineered, etc. Sonar or any part of the package in which it comes. The program was written solely based on the CWP (my own projects) files content observation. These files are not encrypted (at least in parts which I parse), use well known primitive binary data representations and aggregated construction from these primitives. I have not found any evidence of innovative technologies in these files. I extract the information which any Sonar user can extract manually, so the converter is just an accelerated method to get your own information out of particular format in which it is currently saved.
What I do is from my knowledge absolutely legal at least in EU.
Since by using this program a user just accelerates the procedure he/she is (legally) allowed to perform, I do not think that using the program can be declared as a violation in any country.


* You need working Reaper installation. If you do not have it yet, you can download Reaper from: and legally evaluate. You can select "Portable" option during installation, this way Reaper will not integrate into Windows and you can restless un-install it by deleting the folder. Do not install loop-back ASIO driver if you do not need it! It will not harm your system in general, but audio inputs/outputs in Sonar can be redefined by installing the driver.
* When Reaper access any audio files, it creates .reapeaks waveform files. By default, these files are created in the same place as audio file in question. When you use ReaCWP, that can "pollute" audio folders of Sonar projects with these .reapeaks files. To prevent that, in Reaper's Preferences General/Paths set "Store all peak caches in..." and set select some folder
* For Reaper 5.70- (fixed in 5.75). In Reaper Preferences Project, clear "when creating new projects, use the following  file as a template"
* download ReaCWP. Many anti-viruses think that ANYTHING compiled by GCC and/or not signed is a virus. I can only guess the reason and intention. But I can do nothing against that (mis)behavior.. 
* select _win32/reaper_cwp.dll, _win64/reaper_cwp.dll or _lin64/reaper_cwp.dll depending from the Reaper you use. While Reaper is closed (!), put the file into "Plugins" folder in the Reaper installation path or into "UserPlugins" folder which you can find by Options/"Show REAPER resource path..." in Reaper itself (but do not forget to close Reaper before copying the file, especially when upgrading ReaCWP)
* you do not need Sonar installed to use the converter. But if you do not have Cakewalk plug-ins used you your projects, they will be disabled by Reaper till you install or replace them.

How to use
When ReaCWP is in correct place, Reaper should show cwp files as "supported" projects. You should be able to "open" them as normal Reaper projects, but you can not save them back into cwp.

WARNING: Do NOT open CWP projects in place. Make a separate copy of the whole project, including ALL ASSOCIATED AUDIO FILES. The converter will not modify CWP file itself, but all related audio files are accessed directly. Depending from settings in Reaper, when you save the project as RPP and/or modify it, Reaper can MOVE OR DELETE related audio files.
In some projects, for which "Always copy imported audio files" and/or "Use per-project audio folder" was not set, the project can reference original locations. Please be extremely careful in this case.

After you open CWP in reaper and BEFORE you modify or save it, all files are safe. Open "View"/"Project media/FX bay" and switch into "Source Media" tab. Here you will see absolute path for all referenced files. If you see some original locations there, do "File"/"Save project as..." and CHECK OPTIONS. You should uncheck "Move ..." option (and check the first "Copy" option) or check "Copy instead of move...".

If you ignore this warning, it can happened you CAN BE UNABLE TO OPEN ORIGINAL PROJECT IN SONAR.

That is an alpha version! Far from everything is converted, some parts are converted partially on not precise. Please do not report that as bugs. But you can ask to put particular features higher in my TODO list

Since that is pre-alpha, the list is short. Check plans to see what you can expect later.

Time line:
- tempo map
- time signature changes
- markers (see comments)

Can not be converted (or I do not know how):
- key signature (Reaper does not have it)
- Groove-clip pitch for markers

Comments (difference in behavior and conversion decisions):
- Sonar support music base (attached to MBT) and absolute time (attached to SMPTE) markers at the same time. Reaper can lock markers to music time OR absolute time, so they can not co-exist. Converter put all markers at correct position initially, but if you modify the tempo, the behavior in Reaper will be different compare to Sonar.

MIDI clips:
- MIDI clips (slip edits preserved)
- all simple MIDI events, SysEx Data, SysEx Banks, text
- timebase and mute status

Partially converted:
- step sequencer clips are converted "bounced" (by Sonar), so not as looped / sequenced
- notation related events are ignored (expressing, hairpins, chords, etc.)
- groove clip parameters and MIDI track parameters (transpose, etc.) are not converted (and I have no such plans)

Unclear how to convert:
- take lanes. See "Take lanes / comping" post.
- CC track automations in Sonar have no equivalent in Reaper. Technically speaking they are artificial and not transparent, unlike "normal" automations they just produce corresponding MIDI events. "Not transparency" comes from unclear timing when such events should be triggered. The only reasonable approach I see is to create sub-track with MIDI clip(s) and "render" such automations into these clips.

Can not be converted (or I do not know how):
- Sonar is able to use sub-tick timing for MIDI events (rarely, but happens), Reaper does not. Note that MIDI clip position is precise and converted as such. MIDI files have tick precision and MIDI hardware in practice has lower then tick accuracy (one event transfer throw MIDI cable takes ~1mSec, so longer then a tick ~0.6mSec at 100 QPM). I mean it is hard to imagine when the difference can be relevant.
- Clip FX for MIDI clips can contain MFX plug-ins only. They are not supported by REAPER.

Comments (difference in behavior and conversion decisions):
- Sonar use TPQ (ticks per quarter note, normally 960 but can be set smaller) Project setting for MIDI output only. Internally, Sonar always save in 960. Reaper use the setting directly. Converter save MIDI event in Reaper way, specifying TPQ from Sonar settings as TPQ for each MIDI clip. 
- When clip is extended using slip editing in Sonar, original content begin point is preserved. Reaper, while technically support that, extends the content (converter follows Reaper behavior)
- When some note starts before current clip boundary in Sonar, it is not visible/played (at least in X2), but Reaper play it starting the boundary (converted "as is", so Reaper will play what Sonar will not)
- Note end is converted after (the next) note begin, in case both have equivalent time. Sonar does that reversed, but it can not preserve original sequence.  Some synth (f.e. Yamaha) need it the way I convert for proper portamento effect.

Audio clips:
- preserved slip edits
- simple and stretched audio clips
- timebase and mute status
- snap offset
- clip fades
- grooved (looped) clips (see comments)

Unclear how to convert:
- take lanes. See "Take lanes / comping" post.

Not yet converted:
- Clip FX bin

Comments (difference in behavior and conversion decisions):
- even with all theoretical effort and constant tempo, looping/stretching is not going to sound precisely the same as in Sonar. Reaper use different algorithms/libraries for that
- Reaper has no native support for audio loops, at least not in complete way. Audio loop (ACID, REX)  normally define slices position in terms of musical time (beats). That allows DAWs match such loops with current tempo, even when it is changing over time. Reaper just support "looping" audio items with stretching (play speed) and manual adjustment of pitch. But all that is in absolute time domain, so that works only as long as the tempo and desired pitch are constant. Reaper has own "stretch markers" which when set can produce desired effect. But I have not found a way to set them from ACID info.
- as with tempo, if there is groove pitch marker during the length of looping, it is ignored (so will sound different from Sonar)


[0] Message Index

[#] Next page

Go to full version