Jack Transport: Difference between revisions

From Renoise User Manual
Jump to: navigation, search
imported>Achenar
No edit summary
No edit summary
 
(2 intermediate revisions by 2 users not shown)
Line 1: Line 1:
= Jack Transport (Linux only) =
= Jack Transport =


Jack Transport adds the ability to sync Renoise with multiple Jack clients on Linux. This allows audio programs to be in sync with each other, all connected via Jack Transport. You can start, stop and relocate the play position from any of the Jack enabled applications. All software ''"jacked into"'' the session will react and synchronise accordingly.
Jack Transport provides the ability to sync Renoise with multiple Jack clients on Linux. With it you can start, stop and relocate the play position from any of the Jack enabled applications. Any software that is ''"jacked into"'' the session will react and synchronise accordingly. Jack Transport is enabled in the [[Preferences#Audio|Audio Preferences]] panel, though note that it's disabled by default, even when it has been selected as the audio device.


[[Image:3.0_jack.png]]
 
[[Image:3.0_jack-sync.gif]]




Line 9: Line 10:


'''Level 1:''' Each Jack client has the power to start, stop and relocate (change the playback position of) the transport. This is represented in either seconds or sample time.<br>
'''Level 1:''' Each Jack client has the power to start, stop and relocate (change the playback position of) the transport. This is represented in either seconds or sample time.<br>
'''Level 2:''' Only one Jack client can control the Time Base, which is the tempo, time signature and beat position.
'''Level 2:''' Only one Jack client can control the Time Base, which is a combination of the tempo, time signature and beat position.


Most applications support the first level of Jack Transport control. The second level is, at the time of writing, rarely supported. If there is more than one application running which supports the Time Base, Jack will select one automatically.
Most applications support the first level of Jack Transport control, though, at the time of writing, the second level is rarely supported. If more than one application is running which supports the Time Base, Jack will select one automatically.




Line 23: Line 24:
== Dealing with Loops ==
== Dealing with Loops ==


There is no loop information in the Time Base. Every client will try to apply its own loops, fighting with the other Jack programs to reposition. To avoid this conflict, enable loops in the application that is currently active and disable them in the others.
Loop information is not transmitted via the Time Base, meaning that each client will try to apply its own loops, fighting with the other Jack programs to reposition. To avoid this conflict, enable loops in the application that is currently active and disable them in the others.




== PDC and Jack Transport ==
== PDC and Jack Transport ==


Jack doesn't provide a way to explicitly handle latencies. When PDC (automatic plugin delay compensation) is enabled in Renoise and, for example, you want to use Ardour to tell Renoise to jump to pos 0, Renoise will attempt to compensate by jumping to "Pos 0 + overall PDC Latency". This offset may result in a small misfire. If this becomes a problem you should temporarily disable PDC in Renoise.
Jack doesn't provide a way to explicitly handle latencies, which, when combined with [[Preferences#Automatic_PDC|Automatic PDC]] (plugin delay compensation) in Renoise, can result in small 'misfires'. For example, if another application attempts to jump Renoise to a specific "position", Renoise will attempt to compensate by jumping to "position + overall PDC latency". If this is causing issues, you should temporarily disable the PDC in Renoise.




== Configuring Jack Transport ==


The option to turn on Jack is in the [[Preferences#Audio|Audio Preferences]] panel. Jack Transport is disabled by default, even when Jack is selected as the audio device in Renoise.
[[Image:3.0_jack.png]]
 
[[Image:3.0_jack-sync.gif]]

Latest revision as of 13:56, 27 May 2020

Jack Transport

Jack Transport provides the ability to sync Renoise with multiple Jack clients on Linux. With it you can start, stop and relocate the play position from any of the Jack enabled applications. Any software that is "jacked into" the session will react and synchronise accordingly. Jack Transport is enabled in the Audio Preferences panel, though note that it's disabled by default, even when it has been selected as the audio device.


3.0 jack-sync.gif


Levels of Jack Transport Control

Level 1: Each Jack client has the power to start, stop and relocate (change the playback position of) the transport. This is represented in either seconds or sample time.
Level 2: Only one Jack client can control the Time Base, which is a combination of the tempo, time signature and beat position.

Most applications support the first level of Jack Transport control, though, at the time of writing, the second level is rarely supported. If more than one application is running which supports the Time Base, Jack will select one automatically.


Dealing with Tempo

Tempo information is exchanged only when the synchronized application supports Time Base. As stated above, most applications do not support this and so you will have to set the tempo manually.

In the case where all Jack Transport applications are Time Base aware, you still have to make sure that all clients are using the same tempo and automation. This is because playback relocation will be done in sample time instead of "beat time". All clients need to have the same base tempo in order to jump to the same positions.


Dealing with Loops

Loop information is not transmitted via the Time Base, meaning that each client will try to apply its own loops, fighting with the other Jack programs to reposition. To avoid this conflict, enable loops in the application that is currently active and disable them in the others.


PDC and Jack Transport

Jack doesn't provide a way to explicitly handle latencies, which, when combined with Automatic PDC (plugin delay compensation) in Renoise, can result in small 'misfires'. For example, if another application attempts to jump Renoise to a specific "position", Renoise will attempt to compensate by jumping to "position + overall PDC latency". If this is causing issues, you should temporarily disable the PDC in Renoise.


3.0 jack.png