ReWire (Windows and Mac OS X only) allows you to connect and synchronise multiple software applications, so that you can run them side by side while passing Audio/MIDI information between them. ReWire is available on Windows/Mac only, but on Linux, Jack Transport can be used to do similar things.
For example, you could connect Renoise to Logic and program your drums in Renoise while arranging the bulk of your song in Logic. Or you could connect both Reason and Ableton Live to Renoise, then arrange your track in Renoise, control Reason's built-in synthesizers and play around with clips in Live.
ReWire has two modes, both of which are fully supported by Renoise:
- ReWire Master: Commonly known as a Mixer application, the master controls other ReWire slaves. A ReWire master has exclusive control of the soundcard, while slaves must route audio through the master application. There can be multiple slaves, but only one master.
- ReWire Slave: Also known as a ReWire Synth application. Slaves are controlled by a ReWire master and feed their audio back into it. They receive MIDI from the master, but can also send MIDI to the master and ask it to reposition itself.
Because Renoise can be either Master or Slave, you can use it with any application that supports ReWire.
Start/Stop Procedure for ReWire Applications
Starting: The ReWire master application should be started first, then the slave(s).
Closing: Close the ReWire slave application(s) first, then close the master.
Important: When working on songs, you must save them separately in both applications. You must also load them up individually when continuing a session. ReWire only handles Audio and MIDI routing and so will not automatically exchange/restore songs or patches.
The basic workflow is:
- Start ReWire master (and load a pre-saved session).
- Start ReWire slave (and load a pre-saved session).
- Work on the song.
- Save the session and close ReWire slave.
- Save the session and close ReWire master.
Using Renoise as ReWire Master
First, make sure that no other ReWire master application is open. Start Renoise, automatically making it the master, then in the Track Effects tab select a #ReWire Input device and add it anywhere in the song (Send Tracks are the ideal place to use this meta device).
Routing Audio To Renoise
Use the "Device" option to select a slave from the list. In most cases the slave will automatically launch. If not, then launch the application manually.
The audio signal from the slave will be routed into Renoise via the #ReWire Input device. Both applications are now bound together and everything is automatically configured for you. If you hit play in Renoise, the slave will start playing too. If you navigate around in the song, the slave will follow. If you change the playback in the slave, Renoise will follow.
If you want to capture another audio bus from the same slave, simply add another #ReWire Input device and select the same slave but choose a different bus. This will allow you to stream multiple buses from the same application.
Trigger MIDI from Renoise
If a slave has MIDI inputs, you will find them listed as regular devices in the MIDI Output section. This way you could, for example, use Reason synths from within Renoise.
Automating ReWired synths like Reason
As soon as you've created a ReWire MIDI instrument you can use the *Instr. MIDI-Control device in Renoise to automate it. If the synth supports this, the mapped parameters will be shown there so you know which CC number automates which parameter.
Using Renoise as ReWire Slave
First, start the music application that will be designated as the master. After the master application has launched, start Renoise. Renoise will ask you if it should run as slave. Click "Yes".
In many cases you will then have to explicitly tell the master to use Renoise as a slave. In most multi-track sequencers this is done by selecting Renoise as "Audio Input". Please refer to the master's documentation for more details. Once you have routed Renoise into the master mixer, you are ready to go and the audio signal from Renoise will be routed into the host. Starting, stopping, and navigating through the song will be synchronized in both apps.
Some hosts allow you to start Renoise from within the host when you insert Renoise as a Rewire audio/midi device (depending on the host its options, again refer to the hosst its manual). In that case you won't be asked whether Renoise should start as a ReWire slave, it simply does so.
If for some reason you want to start Renoise in a forced slave mode without requiring to confirm slave-mode, you can use the command parameter "-ForceRunningAsSlave". A ReWire master however has to be active and perhaps in specific cases be prepared to accept Renoise as a slave host, prior to starting Renoise with this parameter. If no Rewire master is active (or detected!) during the startup, Renoise ignores the parameter and starts up (by default) in master-mode.
Note: To send MIDI data to a Renoise slave you will have to use virtual loopback MIDI cables.
Setting up Transport Sync Mode in Renoise
When running Renoise as a ReWire slave, you have two choices regarding how Renoise should sync to the master. This can be set up in the Audio Preferences, but only after Renoise is already running as a ReWire slave:
- Full Transport Sync: Any changes to the time-line in Renoise and the ReWire master will be synced. This is very useful for creating a song in multiple applications at once.
- BPM & Bar Sync: You can start, stop and navigate freely in Renoise while the time-line of both applications remains beat-synced. Very useful for improvisations or live mixing.
- Automatically compensate latencies: The ReWire protocol does not allow the passing of latencies that either the master or slave are using. When running Renoise as a slave and the song makes use of plugins which introduce latency, Renoise must shift its time-line to compensate and ensure synchronicity. This shifting may unfortunately lead to missed first notes upon starting the song or pattern.
General Notes about Renoise as Master or Slave
Some ReWire slaves may have limited control over the transport. It's up to the ReWire master to allow transport changes (or not). For example, some ReWire masters might ignore tempo changes, loop changes or position changes. This is not the fault of Renoise, but rather a limitation in the ReWire implementation of the designated master application.
ReWire Demo Restrictions
If you have purchased Renoise and are a registered user, there are no restrictions. If you are using the free demo, then ReWire has some limitations. These are:
- When Renoise is the master, only the first stereo pair is used.
- When Renoise is a slave, the demo version will occasionally generate a small, subtle hiss.