From 946a7ce5099643c412239eb4250d8e1368572f02 Mon Sep 17 00:00:00 2001 From: Robin Gareus Date: Fri, 15 Feb 2013 21:49:33 +0100 Subject: [PATCH] tweaks to the sync-chapter. --- .../02_latency-and-latency-compensation.html | 13 ++--- .../03_timecode-generators-and-slaves.html | 20 ++++---- ...overview-of-timecode-related-settings.html | 50 +++++++++---------- 3 files changed, 40 insertions(+), 43 deletions(-) diff --git a/_manual/19_synchronization/02_latency-and-latency-compensation.html b/_manual/19_synchronization/02_latency-and-latency-compensation.html index a091806..a014d43 100644 --- a/_manual/19_synchronization/02_latency-and-latency-compensation.html +++ b/_manual/19_synchronization/02_latency-and-latency-compensation.html @@ -1,6 +1,7 @@ --- layout: default title: Latency and Latency-Compensation +menu_title: About Latency ---

Latency

@@ -22,8 +23,8 @@ In order to achieve exact time synchronization all sources of latency need to be
  • Computer I/O Architecture: a computer is a general purpose processor, not a digital audio processor. This means our audio data has to jump a lot of fences in his path from the outside to the CPU and back, contending in the process with some other parts of the system vying for the same resources (CPU time, bus bandwidth, etc.) Thanks to the combined efforts of kernel, audio driver and jackd developers, you are in position to tune your system a bit more towards the digital audio processing task, but don't expect miracles. Remember you can use your computer also to write documents, surf the net, save some lemmings… Polyvalence comes at a cost.
  • -

    Figure 1: Latency chain

    -

    Figure 1: Latency chain. The numbers are an example for a typical PC. With professional gear and an optimized system the total roundtrip latency is usually lower. The important point is that latency is always additive and a sum of many independent factors.

    +

    Latency chain

    +

    Figure: Latency chain. The numbers are an example for a typical PC. With professional gear and an optimized system the total roundtrip latency is usually lower. The important point is that latency is always additive and a sum of many independent factors.

    There is not much that can done about the first two other than using headphones or sitting near the loudspeaker and buying quality gear. @@ -109,11 +110,11 @@ To achieve sample accurate timecode synchronization, the latency introduced by t In order to compensate for Latency, JACK or JACK applications need to know exactly how long a certain signal needs to be read-ahead or delayed:

    -

    Figure 2: Jack Latency Compensation

    -

    Figure 2: Jack Latency Compensation. This figure outlines the jack latency API. -- excerpt from http://jackaudio.org/files/jack-latency.png

    +

    Jack Latency Compensation

    +

    Figure: Jack Latency Compensation. This figure outlines the jack latency API. -- excerpt from http://jackaudio.org/files/jack-latency.png

    -In Figure 2, clients A and B need to be able to answer the following two questions: +In above figure, clients A and B need to be able to answer the following two questions:

    -JACK includes an API that allows applications to determine the answers to above questions. However JACK can not know about the additional latency that is introduced by the computer architecture, operating system and soundcard. These values indicated by -I and -O in Figure 2 and vary from system to system but are generally constant values. On a general purpose computer system the only way to accurately learn about the total latency is to measure it. +JACK includes an API that allows applications to determine the answers to above questions. However JACK can not know about the additional latency that is introduced by the computer architecture, operating system and soundcard. These values indicated by -I and -O and vary from system to system but are generally constant values. On a general purpose computer system the only way to accurately learn about the total latency is to measure it.

    diff --git a/_manual/19_synchronization/03_timecode-generators-and-slaves.html b/_manual/19_synchronization/03_timecode-generators-and-slaves.html index dba6f79..c2cdbe2 100644 --- a/_manual/19_synchronization/03_timecode-generators-and-slaves.html +++ b/_manual/19_synchronization/03_timecode-generators-and-slaves.html @@ -51,7 +51,7 @@ The relevant settings for timecode generator can be found in the Preferences dia

    -The timecode is sent to jack-ports ardour:MTC out, ardour:MIDI clock out and ardour:LTC-out. Multiple generators can be active simultaneously. +The timecode is sent to jack-ports ardour:MTC out, ardour:MIDI clock out and ardour:LTC-out. Multiple generators can be active simultaneously.

    @@ -114,7 +114,7 @@ In both cases the first option is preferred: clock sync + same FPS setting.

    Frames-per-second

    -If the frames-per-second don't match, ardour can either re-calculate (map) the frames or the configured FPS (session > properties) can be changed automatically while the Slave is active. The behavior is configured with the checkbox in Edit > Preferences > Transport labeled Match session video frame rate to external timecode: When enabled the session video frame rate will be changed to match that of the selected external timecode source. When disabled the session video frame rate will not be changed to match that of the selected external timecode source. Instead the frame rate indication in the main clock will flash red and Ardour will convert between the external timecode standard and the session standard. +If the frames-per-second don't match, ardour can either re-calculate (map) the frames or the configured FPS (session > properties) can be changed automatically while the Slave is active. The behavior is configured with the checkbox in Edit > Preferences > Transport labeled Match session video frame rate to external timecode: When enabled the session video frame rate will be changed to match that of the selected external timecode source. When disabled the session video frame rate will not be changed to match that of the selected external timecode source. Instead the frame rate indication in the main clock will flash red and Ardour will convert between the external timecode standard and the session standard.

    @@ -122,19 +122,19 @@ An edge case can also occur with 29.97 drop-frame timecode. While the SMPTE 12M-

    -When enabled the external timecode source is assumed to use 29.970000 fps instead of 30000/1001. SMPTE 12M-1999 specifies 29.97df as 30000/1001. The spec further mentions that drop-frame timecode has an accumulated error of -86ms over a 24-hour period. Drop-frame timecode would compensate exactly for a NTSC color frame rate of 30 * 0.9990 (ie 29.970000). That is not the actual rate. However, some vendors use that rate - despite it being against the specs - because the variant of using exactly 29.97 fps yields zero timecode drift. +When enabled the external timecode source is assumed to use 29.970000 fps instead of 30000/1001. SMPTE 12M-1999 specifies 29.97df as 30000/1001. The spec further mentions that drop-frame timecode has an accumulated error of -86ms over a 24-hour period. Drop-frame timecode would compensate exactly for a NTSC color frame rate of 30 * 0.9990 (ie 29.970000). That is not the actual rate. However, some vendors use that rate - despite it being against the specs - because the variant of using exactly 29.97 fps yields zero timecode drift.

    -

    Clock sync lock

    +

    Clock Sync Lock

    As described in the introduction, timecode and clock are independent. If the external timecode-source is not sample-sync with the audio-hardware (and jack), ardour needs to vari-speed to adjust for the discrepancy.

    -The checkbox External timecode is sync locked allows to select the behavior according to your setup. When enabled indicates that the selected external timecode source shares sync (Black & Burst, Wordclock, etc) with the audio interface. +The checkbox External timecode is sync locked allows to select the behavior according to your setup. When enabled indicates that the selected external timecode source shares sync (Black & Burst, Wordclock, etc) with the audio interface.

    @@ -154,7 +154,7 @@ MIDI Clock is not a timecode format but tempo-based time. The absolute reference

    -Note that the MIDI Clock source must be connected to ardour:MIDI clock in port. +Note that the MIDI Clock source must be connected to ardour:MIDI clock in port.

    @@ -166,15 +166,15 @@ The LTC slave decodes an incoming LTC signal on a jack-audio port. It will auto-

    -The incoming timecode signal needs to arrive at the ardour:LTC-in port. Port-connections are restored for each session and the preference dialog offers an option to select it for all sessions. +The incoming timecode signal needs to arrive at the ardour:LTC-in port. Port-connections are restored for each session and the preference dialog offers an option to select it for all sessions.

    Ardour's transport is aligned to LTC-frame start/end positions according to the SMPTE 12M-1999 spec which means that the first bit of an LTC-Frame is aligned to different Lines of a Video-Frame, depending on the TV standard used. Only for Film (24fps) does the LTC-Frame directly match the video Frame boundaries.

    -

    Figure 3: LTC frame alignment

    -

    Figure 3: LTC frame alignment for the 525/60 TV standard

    +

    LTC frame alignment

    +

    Figure: LTC frame alignment for the 525/60 TV standard

    @@ -198,7 +198,7 @@ The user-bits in the received LTC frame are ignored.

    MTC - MIDI Timecode

    -Ardour's MTC slave parses full timecode (sysex messages) as well as MTC quarter-frames arriving on the ardour:MTC in port. The transport will only start rolling once a complete sequence of 8 quarter frames has been received. +Ardour's MTC slave parses full timecode (sysex messages) as well as MTC quarter-frames arriving on the ardour:MTC in port. The transport will only start rolling once a complete sequence of 8 quarter frames has been received.

    diff --git a/_manual/19_synchronization/04_overview-of-timecode-related-settings.html b/_manual/19_synchronization/04_overview-of-timecode-related-settings.html index 0309697..c9e486a 100644 --- a/_manual/19_synchronization/04_overview-of-timecode-related-settings.html +++ b/_manual/19_synchronization/04_overview-of-timecode-related-settings.html @@ -1,52 +1,48 @@ --- layout: default title: Overview of all Timecode related settings +menu_title: Overview of Timecode settings --- -

    Overview of all Timecode related settings

    +

    Accessing the Settings and Preferences

    -Timecode related settings are accessed from the menus +Timecode related settings are accessed from the menu:

    -

    -Session > Properties > Timecode -

    - -

    -Edit > Preferences > Transport -

    - -

    -Edit > Preferences > MIDI -

    + -

    Timecode Settings

    +

    Timecode Settings

    +

    Thes settings are session specific:

    -

    Transport Preferences

    +

    Transport Preferences

    -

    MIDI Preferences

    +

    MIDI Preferences

    -- 2.37.2