]> Shamusworld >> Repos - ardour-manual-diverged/blob - master-doc.txt
Sync with master branch.
[ardour-manual-diverged] / master-doc.txt
1 ---
2 title: Introduction to Ardour
3 part: part
4 ---
5
6
7 ---
8 title: Welcome to Ardour
9 part: chapter
10 ---
11
12
13 ---
14 title: Welcome to Ardour!
15 part: subchapter
16 ---
17
18 <p>
19   <dfn>Ardour</dfn> is a professional digital workstation for working with audio and MIDI.
20 </p>
21
22 <h2>Ardour is meant for...</h2>
23
24 <h3>Audio Engineers</h3>
25
26 <p>
27   Ardour's core user group: people who want to record, edit, mix and master audio and MIDI projects. When you need complete control over your tools, when the limitations of other designs get in the way, when you plan to spend hours or days working on a session, Ardour is there to make things work the way you want them to.
28 </p>
29
30 <h3>Musicians</h3>
31
32 <p>
33   Being the best tool to record talented performers on actual instruments has always been a top priority for Ardour. Rather than being focused on electronic and pop music idioms, Ardour steps out of the way to encourage the creative process to remain where it always has been: a musician playing a carefully designed and well built instrument.
34 </p>
35
36 <h3>Soundtrack Editors</h3>
37
38 <p>
39   Sample accurate sync and shared transport control with video playback tools allows Ardour to provide a fast and natural environment for creating and editing soundtracks for film and video projects.
40 </p>
41
42 <h3>Composers</h3>
43
44 <p>
45   Arrange audio and MIDI using the same tools and same workflow. Use external hardware synthesizers or software instruments as sound sources. From sound design to electro-acoustic composition to dense multitrack MIDI editing, Ardour can help.
46 </p>
47
48 <h2>Ardour features...</h2>
49
50 <h3>Audio and MIDI Multi-Track Recording and Editing</h3>
51
52 <p>
53   Any number of tracks and busses. Non-linear editing. Non-destructive (and destructive!) recording. Any bit depth, any sample rate. Dozens of file formats.
54 </p>
55
56 <h3>Plugins with Full Sample Accurate Automation</h3>
57
58 <p>
59   AudioUnit, LV2, LinuxVST and LADSPA formats. FX plugins. Software instruments. MIDI processors. Automate any parameters. Physically manipulate them via control surfaces. Distribute processing across as many (or as few) cores as you want.
60 </p>
61
62 <h3>Transport Sync and External Control Surfaces</h3>
63
64 <p>
65   Best-in-industry sync to MIDI timecode and LTC. Send and receive MIDI Machine Control. Sync with JACK transport and MIDI clock. Dedicated Mackie Control protocol support, pre-defined mappings for many MIDI controllers plus dynamic MIDI learn. Use OSC to drive almost any operation in Ardour.
66 </p>
67
68 <h3>Powerful Anywhere-to-Anywhere Signal Routing</h3>
69
70 <p>
71   Complex signal flows are simple and elegant. Inputs and outputs connect to your hardware and/or other applications. Use sends, inserts and returns freely. Connections can be one-to-many, many-to-one or many-to-many. Tap signal flows at any point. If you can't connect in the way you want with Ardour, it probably can't be done.
72 </p>
73
74 <h3>Video Timeline</h3>
75
76 <p>
77   Import a single video and optionally extract the soundtrack from it. Display a frame-by-frame (thumbnail) timeline of the video. Use a Video-monitor window, or full-screen display, of the imported video in sync with any of the available ardour timecode sources. Lock audio-regions to the video: Move audio-regions with the video at video-frame granularity. Export the video, cut start/end, add blank frames and/or mux it with the soundtrack of the current-session.
78 </p>
79
80 ---
81 title: About Ardour
82 part: subchapter
83 ---
84
85 <p>
86   <dfn>Ardour</dfn> allows recording and editing both audio and MIDI data, addin of many different kinds of effects and mixing.
87 </p>
88
89 <p>Some things Ardour is used for include:</p>
90
91 <ul>
92 <li>Digitally record acoustic/electric instruments or vocals</li>
93 <li>Compose and arrange audio and MIDI tracks</li>
94 <li>Edit live recordings</li>
95 <li>Mix and edit movie soundtracks and dialogue</li>
96 <li>Create sound designs for an arbitrary number of output channels</li>
97 </ul>
98
99 ---
100 title: Isn't This A Really Complicated Program?
101 part: subchapter
102 ---
103
104 <p>
105  There is no point in pretending that Ardour is a simple, easy to use program. The development group has worked hard to try to make simple things reasonably easy, common tasks quick, and hard and/or uncommon things possible. There is no doubt that there is more to do in this area, as well as polishing the user interface to improve its intuitiveness and work flow characteristics. 
106 </p>
107
108 <p>
109   At the same time, multi-track, multi-channel, non-linear, non-destructive audio editing is a far from simple process. Doing it right requires not only a good ear, but a solid appreciation of basic audio concepts and a robust mental model/metaphor of what one is doing. Ardour is not a simple "audio recorder"&mdash;it can certainly be used to record stereo (or even mono) material in a single track, but the program has been designed around much richer capabilities than this.
110 </p>
111
112 <p>
113   Some people complain that Ardour is not "intuitive" to use&mdash;its lead developer has <a href="http://community.ardour.org/node/3322">some thoughts on that</a>.
114 </p>
115   
116 ---
117 title: Why Write a DAW for Linux?
118 part: subchapter
119 ---
120
121 <p>
122   It is fairly understandable that existing proprietary DAWs do not run on Linux, given the rather small (but growing) share of the desktop market that Linux has. However, when surveying the landscape of "popular operating systems", we find:
123 </p>
124
125 <ul>
126   <li>older versions of Windows: plagued by abysmal stability and appalling security</li>
127   <li>newer versions of Windows seem stable but still suffer from security problems</li>
128   <li>OS X: an amazing piece of engineering that is excellent for audio work but only runs on proprietary hardware and still lacks the flexibility and adaptability of Linux.</li>
129 </ul>
130
131 <p>
132   Security matters today, and will matter more in the future as more and more live or semi-live network based collaborations take place.
133 </p>
134
135 <p>
136   Let's contrast this with Linux, an operating system which:
137 </p>
138
139 <ul>
140   <li>can stay up for months (or even years) without issues</li>
141   <li>is endlessly configurable down to the tiniest detail</li>
142   <li>is not owned by any single corporate entity, ensuring its life and direction are not intertwined with that of a company (for a contrary example, consider BeOS)</li>
143   <li>is fast and efficient</li>
144   <li>runs on almost any computing platform ever created, including old "slow" systems and new "tiny" systems (e.g. Raspberry Pi)</li>
145   <li>is one of the most secure operating systems "out of the box"</li>
146 </ul>
147
148 <p>
149   More than anything, however, Ardour's primary author uses Linux and wanted a DAW that ran there.
150 </p>
151
152 <p>
153   Having written a DAW for Linux, it turned out to be relatively easy to port Ardour to OS X, mostly because of the excellent work done by the JACK OS X group that ported JACK to OS X.
154 </p>
155
156 <p>
157   Although OS X has a number of disadvantages compared to Linux, its ease of use and its presence in many studios already makes it a worthwhile platform.
158 </p>
159   
160 ---
161 title: Why is it called Ardour?
162 part: subchapter
163 ---
164
165 <p>
166   The name <dfn>"Ardour"</dfn> came from considerations of how to pronounce the acronym <abbr title="Hard Disk Recorder">HDR</abbr>. The most obvious attempt sounds like a vowelless "harder" and it then was then a short step to an unrelated but slightly homophonic word:
167 </p>
168
169 <blockquote><p>
170   <dfn>ardour</dfn> n 1: a feeling of strong eagerness (usually in favor of
171   a person or cause); "they were imbued with a revolutionary ardor"; "he 
172   felt a kind of religious zeal" [syn: ardor, elan, zeal]<br />
173   2: intense feeling of love [syn: ardor]<br /> 
174   3: feelings of great warmth and intensity; "he spoke with great ardor" 
175   [syn: ardor, fervor, fervour, fervency, fire, fervidness]
176 </p></blockquote>
177
178 <p>
179   Given the work required to develop Ardour, and the personality of its primary author, the name seemed appropriate even without the vague relationship to HDR.
180 </p>
181
182 <p>
183   Years later, another interpretation of "Ardour" appeared, this time based on listening to non-native English speakers attempt to pronounce the word. Rather than "Ardour", it became "Our DAW", which seemed poetically fitting for a Digital Audio Workstation whose source code and design belongs to a group of collaborators.
184 </p>
185   
186 ---
187 title: Why write another DAW?
188 part: subchapter
189 ---
190
191 <p>
192   There are already a number of excellent digital audio workstations. To mention just a few: ProTools, Nuendo, Samplitude, Digital Performer, Logic, Cubase (SX), Sonar, along with several less well known systems such as SADIE, SAWStudio and others.
193 </p>
194 <p>
195   Each of these programs has its strengths and weaknesses, although over the last few years most of them have converged on a very similar set of core features. However, each of them suffers from two problems when seen from the perspective of Ardour's development group:
196 </p>
197
198 <ul>
199   <li>they do not run natively on Linux</li>
200   <li>they are not available in source code form, making modifications, improvements, bugfixes by technically inclined users or their friends or consultants impossible.</li>
201 </ul>
202
203 ---
204 title: Creating Music with Ardour
205 part: subchapter
206 ---
207
208 <p>
209   Ardour can be used in many different ways, from extremely simple to
210   extremely complex. Many projects will be handled using the following
211   kind of <dfn>workflow</dfn>.
212 </p>
213
214 <h2>Stage 1: Creating Your Project</h2>
215
216 <p>
217   The first step is to create a new <dfn>session</dfn>, or open an
218   existing one. A session consists of a folder containing a session file
219   that defines all the information about the session. All media files used
220   by the session can be stored within the session folder.
221 </p>
222
223 <p>
224   More details on sessions can be found in
225 <a href="/working-with-sessions">Working With Sessions</a>.
226 </p>
227
228 <h2>Stage 2: Creating and Importing Audio and MIDI data</h2>
229
230 <p>
231   Once you have a session, you will want to add some audio and/or MIDI
232   material to it, which can be done in one of 3 ways:
233 </p>
234
235 <ul>
236   <li><dfn>Record</dfn> incoming audio or MIDI data, either via audio or MIDI hardware
237   connected to your computer, or from other applications.</li>
238   <li><dfn>Create</dfn> new MIDI data using the mouse and/or various dialogs</li>
239   <li><dfn>Import</dfn> existing media files into the session</li>
240 </ul>
241 <p>
242   <dfn>MIDI recordings</dfn> consist of performance data ("play note X at 
243   time T") rather than actual sound. As a result, they are more flexible 
244   than actual audio, since the precise sound that they will generate when
245   played depends on where you send the MIDI to.<br />
246   Two different synthesizers may produce very different sound in response
247   to the same incoming MIDI data.
248 </p>
249 <p>
250   <dfn>Audio recordings</dfn> can be made from external instruments with
251   electrical outputs (keyboards, guitars etc.) or via microphones from 
252   acoustic instruments.
253 </p>
254 <p>
255   Ardour uses the <dfn>JACK Audio Connection Kit</dfn> for all audio and
256   MIDI I/O, which means that recording audio/MIDI from other applications
257   is fundamentally identical to recording audio/MIDI from your audio/MIDI
258   hardware.
259 </p>
260
261 <h2>Stage 3: Editing and Arranging</h2>
262 <p>
263   Once you have some material within the session, you can start to arrange
264   it in time. This is done in one of the two main windows of Ardour, the 
265   <dfn>Editor</dfn> window.
266 </p>
267 <p>
268   Your audio/MIDI data appears in chunks called <dfn>regions</dfn>, which
269   are arranged into horizontal lanes called <dfn>tracks</dfn>. Tracks are 
270   stacked vertically in the Editor window. You can copy, shorten, move, 
271   and delete regions without changing the actual data stored in the session 
272   at all&mdash;Ardour is a <dfn>non-destructive</dfn> editor. (Almost) 
273   nothing that you do while editing will ever modify the files stored on 
274   disk (except the session file itself). 
275 </p>
276 <p>
277   You can also carry out many <dfn>transformations</dfn> to the contents 
278   of regions, again without altering anything on disk. You can alter,
279   move, and delete MIDI notes, and remove silence from audio regions, for 
280   example.
281 </p>
282
283 <h2>Stage 4: Mixing and Adding Effects</h2>
284 <p>
285   Once you have the arrangement of your session mostly complete, you will 
286   typically move on to the <dfn>mixing</dfn> phase. Mixing is a broad term
287   to cover the way the audio signals that your session generates during 
288   playback and processed and added together into a final result that you 
289   actually hear. It can involve altering the relative levels of various 
290   parts of the session, adding effects that improve or transform certain 
291   elements, and others that bring the sound of the whole session to a new 
292   level.
293 </p>
294 <p>
295   Ardour will allow you to <dfn>automate</dfn> changes to any mixing 
296   parameters (such as volume, panning, and effects controls)&mdash;it will 
297   record the changes you make over time, using a mouse or keyboard or some 
298   external control device, and can play back those changes later. This is 
299   very useful because often the settings you need will vary in one part of 
300   a session compared to another&mdash;rather than using a single setting 
301   for the volume, you may need increases followed by decreases (for example,
302   to track the changing volume of a singer). Using automation can make all
303   of this relatively simple.
304 </p>
305
306 <h2>Stage 5: Export</h2>
307 <p>
308   Once you are really satisfied with the arrangement and mix of your
309   session, you will typically want to produce a single audio file that
310   contains a ready-to-listen to version of the work. Ardour will allow you to
311   <dfn>export</dfn> audio files in a variety of formats (simultaneously in
312   some cases). This exported file would typically be used in creating a CD, 
313   or be the basis for digital distribution of the work.
314 </p>
315 <p>
316   Of course sometimes you will want to do export material that isn't finished
317   yet, for example to give a copy to someone else to try to mix on their own
318   system. Ardour will allow you to export as much of a session as you want, at
319   any time, in any supported format.
320 </p>
321
322
323 ---
324 title: Ardour Concepts
325 part: chapter
326 ---
327
328
329 ---
330 title: Understanding Basic Concepts and Terminology
331 part: subchapter
332 ---
333
334 <p>
335   This section will help you get acquainted with the basic terminology and
336   concepts associated with Ardour. More detailed information on each aspect
337   of the program is provided in later chapters.
338 </p>
339
340 <h2>Sessions</h2>
341 <p>
342   An <dfn>Ardour session</dfn> is a container for an entire project. A
343   session may contain an arbitrary number of <dfn>tracks</dfn> and
344   <dfn>busses</dfn> consisting of audio and <abbr title="Musical Instrument
345   Digital Interface">MIDI</abbr> data, along with
346   information on processing those tracks, a mix of levels, and everything
347   else related to the project. A session might typically contain a song, or
348   perhaps an entire album or a complete live recording.
349 </p>
350 <p>
351   Ardour sessions are held in directories; these directories contain one or 
352   more <dfn>session files</dfn>, some or all of the audio and MIDI data and
353   a number of other state files that Ardour requires. The session file
354   describes the structure of the session, and holds automation data and
355   other details.
356 </p>
357 <p>
358   Ardour's session file is kept in 
359   <abbr title="eXtensible Markup Language">XML</abbr> format, which is
360   advantageous as it is somewhat human-readable, and human-editable in a
361   crisis. Sound files are stored in one of a number of optional formats, and
362   MIDI files as <abbr title="Standard MIDI File">SMF</abbr>.
363 </p>
364 <p>
365   It is also possible for Ardour sessions to reference sound and MIDI files
366   outside the session directory, to conserve disk space and avoid
367   unnecessary copying if the data is available elsewhere on the disk.
368 </p>
369 <p>
370   Ardour has a single current session at all times; if Ardour is started
371   without specifying one, it will offer to load or create one.
372 </p>
373 <p>
374   More details can be found at 
375   <a href="/working-with-sessions">Working With Sessions</a>.
376 </p>
377
378 <h2>Tracks</h2>
379 <p> 
380   A <dfn>track</dfn> is a concept common to most
381   <abbr title="Digital Audio Workstation">DAWs</abbr>, and also used in
382   Ardour. Tracks can record audio or MIDI data to disk, and then replay
383   it with processing. They also allow the audio or MIDI data to be edited
384   in a variety of different ways.
385 </p>
386 <p>
387   In a typical pop production, one might use a track each for the kick
388   drum, another for the snare, more perhaps for the drum overheads and
389   others for bass, guitars and vocals.
390 </p>
391 <p>
392   Ardour can record to any number of tracks at one time, and then play
393   those tracks back. On playback, a track's recordings may be processed by
394   any number of plugins, panned, and its level altered to achieve a
395   suitable mix.
396 </p>
397 <p>
398   A track's type is really only related to the type of data that it stores
399   on disk. It is possible, for example, to have a MIDI track with a
400   synthesizer plugin which converts MIDI to audio. Even though the track
401   remains MIDI (in the sense that its on-disk recordings are MIDI), its
402   output may be audio-only.
403 </p>
404 <p>
405   More details can be found at
406   <a href="/working-with-tracks">Working With Tracks</a>.
407 </p>
408
409 <h2 id="busses">Busses</h2>
410 <p>
411   <dfn>Busses</dfn> are another common concept in both DAWs and hardware
412   mixers. They are similar in many ways to tracks; they process audio or
413   MIDI, and can run processing plugins. The only difference is that their
414   input is obtained from other tracks or busses, rather than from disk.
415 </p>
416 <p>
417   One might typically use a bus to collect together the outputs of related
418   tracks. Consider, for example, a 3-track recording of a drum-kit; given
419   kick, snare and overhead tracks, it may be helpful to connect the output
420   of each to a bus called "drums", so that the drum-kit's level can be set
421   as a unit, and processing (such as equalisation or compression) can be
422   applied to the mix of all tracks. Such buses are also called
423   <dfn>groups</dfn>.
424 </p>
425
426 <h2>Regions</h2>
427 <p>
428   A track may contain many segments of audio or MIDI. Ardour contains
429   these segments in things called <dfn>regions</dfn>, which are 
430   self-contained snippets of audio or MIDI data. Any recording pass, for
431   example, generates a region on each track that is enabled for recording.
432   Regions can be subjected to many editing operations; they may be moved
433   around, split, trimmed, copied, and so on.
434 </p>
435 <p>
436   More details can be found at
437   <a href="/working-with-regions">Working With Regions</a>.
438 </p>
439
440 <h2>Playlists</h2>
441 <p>
442   The details of what exactly each track should play back is described by a
443   <dfn>playlist</dfn>. A playlist is simply a list of regions; each track
444   always has an active playlist, and can have other playlists which can be
445   switched in and out as required.
446 </p>
447 <p>
448   More details can be found at
449   <a href="/working-with-playlists">Working With Playlists</a>.
450 </p>
451
452 <h2>Plugins</h2>
453 <p>
454   Ardour allows you to process audio and MIDI using any number of 
455   <dfn>plugins</dfn>. These are external pieces of code, commonly seen as
456   VST plugins on Windows or AU plugins on Mac OS X. Ardour supports
457   the following plugin standards:
458 </p>
459 <dl class="wide-table">
460   <dt><abbr title="Linux Audio Developers' Simple Plugin API">LADSPA</abbr></dt>
461   <dd>the first major plugin standard for Linux. Many LADSPA plugins are
462   available, mostly free and open-source.</dd>
463   <dt><abbr title="LADSPA Version 2">LV2</abbr></dt>
464   <dd>the successor to LADSPA. Lots of plugins have been ported from
465   LADSPA to LV2, and also many new plugins written.</dd>
466   <dt><abbr title="Virtual Studio Technology">VST</abbr></dt>
467   <dd>Ardour supports VST plugins that have been compiled for Linux.</dd>
468   <dt><abbr title="Audio Units">AU</abbr></dt>
469   <dd>Mac OS X versions of Ardour support AudioUnit plugins.</dd>
470 </dl>
471 <p>
472   Ardour has some support for running Windows VST plugins on Linux, but
473   this is rather complicated, extremely difficult for the Ardour
474   developers to debug, and generally unreliable, as it requires to run a
475   large amount of Windows code in an emulated environment.<br />
476   If it is at all possible, you are strongly advised to use native
477   LADSPA, LV2 or Linux VST plugins on Linux, or AU on Mac OS X.
478 </p>
479 <p>
480   More details can be found at
481   <a href="/working-with-plugins">Working With Plugins</a>.
482 </p>
483
484
485 ---
486 title: Basic GUI Operations
487 part: subchapter
488 ---
489
490 <p>
491   Ardour offers a number of different ways for you to interact with it.
492   This chapter provides information on basic techniques for <dfn>entering
493   text</dfn>, <dfn>making selections</dfn>, and <dfn>using shortcuts</dfn>.
494 </p>
495
496 ---
497 title: Interface Elements
498 part: subchapter
499 ---
500
501 <h2>Checkboxes</h2>
502 <h2>Buttons</h2>
503 <h2>Pull Down Menus</h2>
504 <h2>Pop Up Menus</h2>
505 <h2>Context Menus</h2>
506 <h2>Browsers</h2>
507   
508 <p class="fixme">Add content</p>
509
510 ---
511 title: Key Bindings
512 part: subchapter
513 ---
514
515 <p>
516   Almost every available function in Ardour can be executed via a
517   <dfn>key binding</dfn> or <dfn><abbr title="Open Sound
518   Control">OSC</abbr></dfn> command. There are many more functions
519   available than there are keys on even the largest current computer
520   keyboards, so only a subset of them are bound to keys by default.
521 </p>
522
523 <h2>Key bindings for menu items</h2>
524
525 <p>
526   Existing key bindings in menus are listed on the right side of the
527   menu items.
528 </p>
529
530 <p>
531   To create a custom key binding for a menu item quickly, navigate to
532   the relevant (sub-) menu, hover over the item with the mouse and press
533   the desired combination of modifiers and key.
534 </p>  
535
536 <p class="warning">
537   Ardour will silently re-assign the binding if you use a key
538   combination that is already in use, possibly removing a standard
539   keyboard shortcut without warning you. That might lead to confusion
540   when you ask other users for help, and they explain something in terms
541   of a standard key binding, which will then have a completely
542   different effect on your system.
543 </p>
544
545 <h2>Key binding editor</h2>
546
547 <p>
548   For a complete overview of all existing keyboard bindings, go to 
549   <kbd class="menu">Window &gt; Key Bindings</kbd>. This widget will let
550   you view and edit even those functions that are not available in the menu,
551   and even remove key bindings altogether.
552 </p>
553
554 ---
555 title: Selection Techniques
556 part: subchapter
557 ---
558
559 <p>
560   Ardour follows the conventions used by most other computer software
561   (including other DAWs) for <dfn>selecting objects</dfn> in the 
562   <abbr title="Graphical User Interface">GUI</abbr>.
563 </p>
564
565 <h2>Selecting individual objects</h2>
566
567 <p>
568   Clicking on an object (sometimes on a particular part of its
569   on-screen representation) will select the object, and deselect other
570   similar objects.
571 </p>
572
573 <h2>Selecting multiple (similar) objects</h2>
574
575 <p>
576   A <kbd class="mod1 mouse">left</kbd> click on an object toggles its 
577   <samp>selected</samp> status, so using <kbd class="mod1 mouse">left</kbd>
578   on a series of objects will select (or deselect) each one of them. You can
579   construct completely arbitrary selections with this technique.
580 </p>
581
582 <h2>Selecting a range of objects</h2>
583
584 <p>
585   In cases where the idea of "select all objects between this one and that
586   one" makes sense, you can select one object and then click
587   <kbd class="mod3 mouse">left</kbd> on another to select both of them as
588   well as all objects in between.
589 </p>
590
591 <h2>Time range selection</h2>
592
593 <p>
594   To select a time <dfn>range</dfn> in the Editor,
595   click <kbd class="mouse">Left</kbd> and drag the mouse. 
596   A <kbd class="mod1 mouse">Left</kbd> drag then lets you create other
597   ranges and a <kbd class="mod3 mouse">left</kbd> click extends a range
598   to cover a wider area.
599 </p>
600
601 <h2>Selection Undo</h2>
602
603 <p>
604   The set of objects (including time range) that are selected at any one 
605   time is known as the selection.
606   Each time you select or deselect an object, the new selection is stored in an
607   undo/redo stack.
608   This stack is cleared each time the content of the timeline changes.
609   If you have built up a complex selection and then accidentally cleared it,
610   choosing <kbd class="menu">Edit &gt; Undo Selection Change</kbd> will restore your previous selection.
611   If you then decide that you had in fact made the correct change, choosing
612   <kbd class="menu">Edit &gt; Redo Selection Change</kbd> will take you back
613   to where you were before you chose <kbd class="menu">Edit &gt; Undo Selection Change</kbd>.
614 </p>
615
616 ---
617 title: Tooltips
618 part: subchapter
619 ---
620
621 <p>
622   By default, Ardour will show helpful <dfn>tooltips</dfn> about
623   the purpose and use of each <abbr title="Graphical User
624   Interface">GUI</abbr> element if you position the pointer 
625   over it and hover there for a short while. 
626   These little pop-up messages can be a good way to discover the
627   purpose of many aspects of the GUI.
628 </p>
629
630 <p>
631   Pop-ups can be distracting for experienced users, who may opt to
632   disable them via <kbd class="optoff">Edit &gt; Preferences &gt; GUI &gt; 
633   Show tooltip if mouse hovers over a control</kbd>.
634 </p>
635   
636 ---
637 title: Undo/Redo for Editing 
638 part: subchapter
639 ---
640
641 <p>
642   While editing, it happens that you apply an unintended change, or make
643   a choice one that you later decide was wrong. All changes to the
644   arrangement of session components (regions, control points) along the 
645   timeline can be <dfn>undone</dfn> (and <dfn>redone</dfn> if necessary). 
646 </p>
647
648 <p>
649   The default keybindings are <kbd class="mod1">Z</kbd> for Undo and
650   <kbd class="mod1">R</kbd> for Redo. These match the conventions of most
651   other applications that provide undo/redo.
652 </p>
653
654 <p>
655   Changes are also saved to the <dfn>session history</dfn> file, so that
656   undo/redo is possible even if you close the session and reopen it later,
657   even if you quit Ardour in between.
658 </p>
659
660 <p>
661   The maximum number of changes that can be undone can be configured under
662   <kbd class="menu">Edit &gt; Preferences &gt; Misc &gt; Undo</kbd>. 
663   The maximum number of changes stored in the history file is a separate
664   parameter, and can also be set in the same place.
665 </p>
666
667 <p class="note">
668   In addition to the normal undo (which works only on actions that change
669   the timeline), there is a <dfn>visual undo</dfn> which will revert any
670   command that affects the display of the editor window. Its shortcut is
671   <kbd class="mod3">Z</kbd>.
672   There is also an undo for selection. See
673   <a href="/ardours-interface/basic-gui-operations/selection-techniques/">Selection Techniques</a> for more information.
674 </p>  
675
676 <p class="warning">
677   Note that changes made to mixer strips, such as turning knobs or changing faders, cannot be undone.
678 </p>
679
680 ---
681 title: Using the Mouse
682 part: subchapter
683 ---
684
685 <h2>Clicking</h2>
686
687 <p>
688   Throughout this manual, the term <dfn>click</dfn> refers to the act of pressing
689   and releasing the <kbd class="mouse">Left</kbd> mouse button. This action is used to select objects, activate
690   buttons, turn choices on and off, pop up menus and so forth.<br />
691   On touch surfaces, it also corresponds to a single, one-finger tap on 
692   the GUI.
693 </p>
694
695 <h2>Right Clicking</h2>
696
697 <p>
698   The term <dfn>right-click</dfn> refers to the act of pressing and releasing 
699   the <kbd class="mouse">Right</kbd> mouse button. 
700   This action is used to pop up <dfn>context menus</dfn> (hence the term 
701   "context click", which you will also see). It is also used by default in
702   combination with the shift key to delete objects within the editor
703   window.
704 </p>
705
706 <p class="note mac"> 
707   Some mice designed for use with Mac OS X may have only one button. By
708   convention, pressing and holding the Control key while clicking is
709   interpreted as a right-click by many application..
710 </p>
711
712 <h2>Middle Clicking</h2>
713
714 <p>
715   A <dfn>middle-click</dfn> refers to the act of pressing and releasing the
716   <kbd class="mouse">Middle</kbd> mouse button. Not all all mice have a middle click button 
717   (see the <a href="/setting-up-your-system/mouse/">Mouse</a> chapter for
718   details). Sometimes the scroll wheel acts as a clickable middle button. 
719   This action is used for time-constrained region copying and mapping MIDI
720   bindings.
721 </p>
722
723 <p class="note">
724   Internally, your operating system may identify the mouse buttons as 
725   <kbd class="mouse">Button1</kbd>, <kbd class="mouse">Button2</kbd>, and
726   <kbd class="mouse">Button3</kbd>, respectively. It may be possible to 
727   invert the order of buttons to accommodate left-handed users, or to re-assign
728   them arbitrarily. This manual assumes the canonical order.
729 </p>
730
731 <h2>Double Clicking</h2>
732
733 <p>
734   A <dfn>double click</dfn> refers to two rapid press/release cycles on the
735   leftmost mouse button. The time interval between the two actions that
736   determines whether this is seen as two clicks or one double click is
737   controlled by your system preferences, not by Ardour.
738 </p>
739
740 <h2>Dragging</h2>
741
742 <p>
743   A <dfn>drag</dfn> primarily refers to the act of pressing the leftmost
744   mouse button, moving the mouse with the button held down, and then 
745   releasing the button. On touch surfaces, this term also corresponds to 
746   a single one-finger touch-move-release action.
747 </p>
748
749 <p>
750   Ardour also uses the middle mouse button for certain kinds of drags,
751   which will be referred to as <dfn>middle-drag</dfn>.
752 </p>
753
754 <h2>Modifiers</h2>
755
756 <p>
757   There are many actions in Ardour that can be carried out using a mouse
758   button in combination with a <dfn>modifier key</dfn>. When the manual 
759   refers to <kbd class="mod1 mouse">Left</kbd>, it means that you should first 
760   press the <kbd class="mod1"></kbd> key, carry out a left click
761   while <kbd class="mod1"></kbd> is held down, and then finally release the key.
762 </p>
763
764 <p>
765   Available modifiers depend on your platform:
766 </p>
767
768 <h3>Linux Modifiers</h3>
769
770 <ul>
771   <li><kbd>Ctrl</kbd> (Control)</li>
772   <li><kbd>Shift</kbd></li>
773   <li><kbd>Alt</kbd></li>
774   <li><kbd>Mod2</kbd></li>
775   <li><kbd>Mod3</kbd></li>
776   <li><kbd>Mod4</kbd></li>
777   <li><kbd>Mod5</kbd></li>
778 </ul>
779
780 <p class="warning">
781   The following section is almost certainly wrong. Will need to be checked
782   and rewritten asap.
783 </p>
784
785 <p>
786   Mod2 typically corresponds to the <kbd>NumLock</kbd> key on many systems.
787   On most Linux systems, there are no keys that will function as modifiers
788   Mod3, Mod4 or Mod5 by default, but they can be setup using
789   <dfn>xmodmap(1)</dfn>. This can be rather useful.
790 </p>
791
792 <h3>OS X Modifiers</h3>
793
794 <ul>
795   <li><kbd>Cmd</kbd> (Command, "windmill")</li>
796   <li><kbd>Ctrl</kbd> (Control)</li>
797   <li><kbd>Alt</kbd>  (Option)</li>
798   <li><kbd>Shift</kbd></li>
799 </ul>
800
801 <h2>Scroll Wheel</h2>
802
803 <p>
804   Ardour can make good use of a <dfn>scroll wheel</dfn> on your mouse, which can be
805   utilized for a variety of purposes. Scroll wheels generate vertical 
806   scroll events, <kbd class="mouse">&uArr;</kbd> (ScrollUp) and 
807   <kbd class="mouse">&dArr;</kbd> (ScrollDown). Some also emit horizontal 
808   events, <kbd class="mouse">&lArr;</kbd> (ScrollLeft) and 
809   <kbd class="mouse">&rArr;</kbd> (ScrollRight).
810 </p>
811
812 <p>
813   When appropriate, Ardour will differentiate between these two different
814   scroll axes. Otherwise it will interpret ScrollDown and ScrollLeft as
815   equivalent and similarly interpret ScrollUp and ScrollRight as equivalent.
816 </p>
817
818 <p>
819   Typically, scroll wheel input is used to adjust
820   <dfn>continuous controls</dfn> such as faders and knobs, or to scroll
821   vertically or horizontally inside a window.
822 </p>
823   
824 <p class="fixme">Should add some mention of drag &amp; drop operations; the "Dragging" section above doesn't mention it at all.</p>
825
826 ---
827 title: Cut and Paste Operations
828 part: subchapter
829 ---
830
831 <p>
832   The <dfn>clipboard</dfn> is a holder for various kinds of objects (regions,
833   control events, plugins) that is used during <dfn>cut-and-paste
834   operations</dfn>.
835 </p>
836
837 <h2>Cut</h2>
838
839 <p>
840   A <dfn>cut</dfn> operation removes selected objects and places them in the
841   clipboard. The existing contents of the clipboard are overwriten.<br />
842   The default key binding is <kbd class="mod1">x</kbd>.
843 </p>
844
845 <h2>Copy</h2>
846
847 <p>
848   A <dfn>copy</dfn> of the selected objects are placed in clipboard. There is
849   no effect on the selected objects themselves. The existing contents of the
850   clipboard are overwritten. <br />
851   The default key binding is <kbd class="mod1">c</kbd>.
852 </p>
853
854 <h2>Paste</h2>
855
856 <p>
857   The current contents of the clipboard are <dfn>paste</dfn>d (inserted)
858   into the session, using the current <dfn>edit point</dfn> as the
859   destination. The contents of the clipboard remain unchanged&mdash;you
860   can paste the same item multiple times. <br />
861   The default key binding is <kbd class="mod1">v</kbd>.
862 </p>
863   
864 ---
865 title: Deleting Objects
866 part: subchapter
867 ---
868
869 <p>
870   Within the Editor window (and to some extent within the Mixer window too),
871   there are several techniques for <dfn>deleting</dfn> objects (regions, 
872   control points, and more).
873 </p>
874
875 <h2>Using the mouse and keyboard</h2>
876 <p>
877   Select the object(s) and then press the <kbd>Del</kbd> key. 
878   This does <strong>not</strong> put the deleted object(s) into the cut
879   buffer, so they cannot be pasted elsewhere.
880 </p>
881
882 <h2>Using normal cut and paste shortcuts</h2>
883 <p>
884   Select the object(s) and then press <kbd class="mod1">x</kbd>. This puts
885   the deleted object(s) into the cut buffer so that they could be pasted
886   elsewhere.
887 </p>
888
889 <h2>Using just the mouse</h2>
890 <p>
891   By default, <kbd class="mouse">Shift Right</kbd> will delete the
892   clicked-upon object. Like the Del key, this does <strong>not</strong> 
893   put the deleted object(s) into the cut buffer.
894 </p>
895 <p>
896   The modifier and mouse button used for this can be controlled via 
897   <kbd class="menu">Edit &gt; Preferences &gt; User Interaction &gt; 
898   Delete using ...</kbd>. Any modifier and mouse button combination can 
899   be used.
900 </p>
901
902 ---
903 title: Ardour's Interface
904 part: subchapter
905 ---
906
907 <p>
908   In Ardour, work is done in two main windows: the <dfn>Editor</dfn> and the
909   <dfn>Mixer</dfn>.
910 </p>
911
912 <p><img class="right" src="/images/editor-summary.png" 
913 alt="Ardour's editor window" /></p>
914
915 <p>
916   To switch between those windows, use the buttons (in the upper right),
917   the shortcut <kbd class="mod2">M</kbd>, or the menu
918   <kbd class="menu">Window > Editor <em>(or Mixer)</em> > Show</kbd>.
919   Both windows can be visible at the same time (eg. for a multi-monitor
920   setup) using <kbd class="menu">Detach</kbd> in the same menu.
921 </p>
922
923 <p>
924   The <dfn>Editor</dfn> window includes the editor track <dfn>canvas</dfn> where audio and MIDI data can be arranged along a timeline. This is the window used while <a href="/editing-and-arranging/">editing and arranging</a> a session. This window has a general <em>horizontal</em> sense to it: the timeline flows from left to right, and the playhead showing the current position in the session moves from left to right&mdash;the window represents <dfn>time</dfn> in a fairly literal way.
925 </p>
926
927 <p><img class="right" src="/images/mixer-summary.png" 
928 alt="ardour's mixer window" /></p>
929
930 <p>
931   The <dfn>Mixer</dfn> window on the other hand represents signal flow and is the window likely used most when mixing a session. It includes <dfn>channel strips</dfn> for each track and bus in the session. It has a general <em>vertical</em> sense to it: signals flow from the top of each channel strip through the processing elements in the strip to reach the output listed at the bottom. 
932 </p>
933
934 <p>
935   It is possible to show a single channel strip in the editor window, and this can be enough to work on mixing without actually opening the mixer window. Most of the time though, both of these windows will be needed at various stages of a session's lifetime&mdash;sometimes the focus is on editing, other times the focus is on mixing.
936 </p>
937
938 ---
939 title: Starting Ardour
940 part: subchapter
941 ---
942
943 <p>
944   There are several ways of <dfn>starting Ardour</dfn>, which may vary
945   depending on which platform you are using it.
946 </p>
947
948 <ul>
949   <li>double-click the Ardour icon in your platform's file manager (e.g. 
950   Nautilus on Linux, Finder on OS X)</li>
951   <li>double click on an Ardour session file in your platform's file manager</li>
952   <li>on Linux, you can also start Ardour <a 
953   href="/ardours-interface/starting-ardour/starting-ardour-from-the-command-line">on the command line</a></li>
954 </ul>
955
956 <p>
957   When Ardour is run for the very first time, a special dialog is displayed 
958   that will ask you several questions about your setup. You will not be asked
959   these questions again, but you can always modify your choices via the
960   <kbd class="menu">Edit &gt; Preferences</kbd> dialog.
961 </p>
962
963 <p>
964   If you want to use JACK, in general, it is sensible to start <em>before</em> you run Ardour. This is not necessary, but will provide you with more control and options over JACK's operation. You can start JACK through its <abbr title="Command Line Interface">CLI</abbr>, or using a  <abbr title="Graphical User Interface">GUI</abbr> program, like <a href="https://qjackctl.sourceforge.io/">QjackCtl</a> or <a href="http://kxstudio.linuxaudio.org/Applications:Cadence">Cadence</a>.
965 </p>
966
967 <p>
968   If you open Ardour without specifying an existing session it will display 
969   the <kbd class="menu">Session &gt; New...</kbd> dialog and the <kbd class="menu">Audio/MIDI Setup</kbd> dialog. See <a href="/working-with-sessions/new-session-dialog/">New/Open Session Dialog</a> for a description of those dialogs.
970 </p>
971
972 ---
973 title: Starting Ardour From the Command Line (Linux)
974 menu_title: Starting from Linux Cmdline
975 part: subchapter
976 ---
977
978 <p>
979   Like (almost) any other program on Linux, Ardour can be started on the
980   command line. Type the following command in a terminal window:
981 </p>
982 <kbd class="cmd lin">ardour5</kbd>
983 <p>
984   To start Ardour with an existing session:
985 </p>
986 <kbd class="cmd lin">ardour5 <em>/path/to/session</em></kbd>
987 <p>
988   replacing /path/to/session with the actual path to your session. You can
989   specify either the session folder or any session file inside the folder,
990   including snapshots.
991 </p>
992 <p>
993   To start Ardour with a new, named session:
994 </p>
995 <kbd class="cmd lin">ardour5 -N <em>/path/to/session</em></kbd>
996
997 <h3>Other Command Line Options</h3>
998
999
1000 ---
1001 title: Keyboard and Mouse Shortcuts
1002 part: chapter
1003 ---
1004
1005
1006 ---
1007 title: Default Keyboard Bindings
1008 menu_title: Key Bindings
1009 part: subchapter
1010 ---
1011
1012 <p>
1013   Almost every available function in Ardour can be bound to a keyboard
1014   shortcut (and those few that cannot will usually respond to an <a
1015   href="/using-control-surfaces/controlling-ardour-with-osc/"><abbr
1016   title="Open Sound Control">OSC</abbr> command</a>). Ardour comes with a 
1017   rich set of default <dfn>key bindings</dfn> for the most commonly used
1018   functions.
1019 </p>
1020
1021 <p>These bindings strive to be <dfn>mnemonic</dfn>, that is, easy and intuitive 
1022   to remember, and follow widely accepted conventions. As a general rule, 
1023   the first letter of an operation will be used for as a shortcut, if 
1024   available. This does not necessarily lead to the best ergonomics for 
1025   rapid editing&mdash;there are alternative binding sets for that&mdash;but it does make it simpler for newcomers to remember some of the most 
1026   useful ones, for example<br />
1027   <kbd>S</kbd> for <kbd class="menu">Region &gt; Edit &gt; Split"</kbd>
1028   or<br />
1029   <kbd>P</kbd> for <kbd class="menu">Transport &gt; Playhead &gt; Playhead to Mouse</kbd>.
1030 </p>
1031
1032 <p>
1033   Almost every key binding in Ardour can be changed in <kbd class="menu">Window &gt; Key Bindings</kbd>.
1034 </p>
1035
1036 <p>
1037   The conventions for using modifier keys (<kbd class="mod1">&zwnj;</kbd>, <kbd
1038   class="mod2">&zwnj;</kbd>, <kbd class="mod3">&zwnj;</kbd> etc.) differ among platforms, so we provide different default bindings for each.
1039 </p>
1040
1041 ---
1042 title: Mnemonic Bindings for Linux
1043 menu_title: Linux
1044 part: subchapter
1045 ---
1046
1047 <p>
1048   A printable cheat-sheet with the mnemonic bindings for <dfn>Linux</dfn>
1049   is available for download in
1050   <a href="/files/a3_mnemonic_cheatsheet.pdf">US Letter</a> and
1051   <a href="/files/a3_mnemonic_cheatsheet-a4.pdf">A4</a> paper format.
1052 </p>
1053
1054 <p>
1055   This set of bindings assumes an en_US keyboard. However, most if not all
1056   bindings will also work on other keyboards when you use the
1057   <kbd>AltGr</kbd> to compose those glyphs that are not directly accessible.
1058 </p>
1059
1060 <h2>Transport &amp; Recording Control</h2>
1061
1062 <dl class="bindings">
1063 <dt>destroy last recording</dt>
1064 <dd><kbd class="mod1">Del</kbd></dd>
1065 <dt>engage record</dt>
1066 <dd><kbd class="mod3">r</kbd></dd>
1067 <dt>fast forward</dt>
1068 <dd><kbd class="mod3">&rarr;</kbd></dd>
1069 <dt>loop play (the loop range)</dt>
1070 <dd><kbd class="">l</kbd></dd>
1071 <dt>rewind</dt>
1072 <dd><kbd class="mod3">&larr;</kbd></dd>
1073 <dt>set playhead position</dt>
1074 <dd><kbd class="">p</kbd></dd>
1075 <dt>start recording</dt>
1076 <dd><kbd class="mod3">Space</kbd></dd>
1077 <dt>stop (keep loop/range play)</dt>
1078 <dd><kbd class="mod12">Space</kbd></dd>
1079 <dt>stop and destroy</dt>
1080 <dd><kbd class="mod1">Space</kbd></dd>
1081 <dt>toggle auto play</dt>
1082 <dd><kbd class="">5</kbd></dd>
1083 <dt>toggle auto return</dt>
1084 <dd><kbd class="">6</kbd></dd>
1085 <dt>toggle click (metronome)</dt>
1086 <dd><kbd class="">7</kbd></dd>
1087 <dt>toggle playhead follows edits</dt>
1088 <dd><kbd class="mod3">F</kbd></dd>
1089 <dt>toggle playhead tracking</dt>
1090 <dd><kbd class="mod1">F</kbd></dd>
1091 <dt>toggle roll</dt>
1092 <dd><kbd class="">Space</kbd></dd>
1093 <dt>toggle selected track rec-enable </dt>
1094 <dd><kbd class="mod3">b</kbd></dd>
1095 <dt>toggle selected track solo status</dt>
1096 <dd><kbd class="mod2">s</kbd></dd>
1097 <dt>transition to reverse</dt>
1098 <dd><kbd class="mod3">&darr;</kbd></dd>
1099 <dt>transition to roll</dt>
1100 <dd><kbd class="mod3">&uarr;</kbd></dd>
1101 </dl>
1102
1103 <h2>Session &amp; File Handling</h2>
1104
1105 <dl class="bindings">
1106 <dt>add track(s) or bus(ses)</dt>
1107 <dd><kbd class="mod13">n</kbd></dd>
1108 <dt>export session</dt>
1109 <dd><kbd class="mod4">e</kbd></dd>
1110 <dt>import audio files</dt>
1111 <dd><kbd class="mod1">i</kbd></dd>
1112 <dt>open a new session</dt>
1113 <dd><kbd class="mod1">n</kbd></dd>
1114 <dt>open a recent session</dt>
1115 <dd><kbd class="mod13">o</kbd></dd>
1116 <dt>open an existing session</dt>
1117 <dd><kbd class="mod1">o</kbd></dd>
1118 <dt>quit</dt>
1119 <dd><kbd class="mod1">q</kbd></dd>
1120 <dt>save session</dt>
1121 <dd><kbd class="mod1">s</kbd></dd>
1122 <dt>snapshot session</dt>
1123 <dd><kbd class="mod13">s</kbd></dd>
1124 <dt>toggle selected track MIDI input</dt>
1125 <dd><kbd class="mod2">i</kbd></dd>
1126 </dl>
1127
1128 <h2>Changing What's Visible</h2>
1129
1130 <dl class="bindings">
1131 <dt>fit tracks vertically</dt>
1132 <dd><kbd class="">f</kbd></dd>
1133 <dt>move selected tracks down</dt>
1134 <dd><kbd class="mod1">&darr;</kbd></dd>
1135 <dt>move selected tracks up</dt>
1136 <dd><kbd class="mod1">&uarr;</kbd></dd>
1137 <dt>scroll down (page)</dt>
1138 <dd><kbd class="">PgDn</kbd></dd>
1139 <dt>scroll down (step)</dt>
1140 <dd><kbd class="">&darr;</kbd></dd>
1141 <dt>scroll up (page)</dt>
1142 <dd><kbd class="">PgUp</kbd></dd>
1143 <dt>scroll up (step)</dt>
1144 <dd><kbd class="">&uarr;</kbd></dd>
1145 <dt>toggle editor window mixer</dt>
1146 <dd><kbd class="mod3">e</kbd></dd>
1147 <dt>visual undo</dt>
1148 <dd><kbd class="mod3">z</kbd></dd>
1149 <dt>zoom height to selected region(s)</dt>
1150 <dd><kbd class="mod12">z</kbd></dd>
1151 <dt>zoom height and time to selected region</dt>
1152 <dd><kbd class="mod2">z</kbd></dd>
1153 <dt>zoom in</dt>
1154 <dd><kbd class="">=</kbd></dd>
1155 <dt>zoom out</dt>
1156 <dd><kbd class="">-</kbd></dd>
1157 </dl>
1158
1159 <h2>Window Visibility</h2>
1160
1161 <dl class="bindings">
1162 <dt>toggle locations dialog</dt>
1163 <dd><kbd class="mod2">l</kbd>(ell)</dd>
1164 <dt>focus on main clock</dt>
1165 <dd><kbd class="kp">&divide;</kbd></dd>
1166 <dt>maximise editor space</dt>
1167 <dd><kbd class="mod12">f</kbd></dd>
1168 <dt>switch between editor &amp; mixer window</dt>
1169 <dd><kbd class="mod2">m</kbd></dd>
1170 <dt>show rhythm ferret window </dt>
1171 <dd><kbd class="mod2">f</kbd></dd>
1172 <dt>toggle big clock</dt>
1173 <dd><kbd class="mod2">b</kbd></dd>
1174 <dt>toggle color manager</dt>
1175 <dd><kbd class="mod2">c</kbd></dd>
1176 <dt>toggle editor window</dt>
1177 <dd><kbd class="mod2">e</kbd></dd>
1178 <dt>toggle global audio patchbay</dt>
1179 <dd><kbd class="mod2">p</kbd></dd>
1180 <dt>toggle global midi patchbay</dt>
1181 <dd><kbd class="mod23">p</kbd></dd>
1182 <dt>toggle key bindings editor</dt>
1183 <dd><kbd class="mod2">k</kbd></dd>
1184 <dt>toggle preferences dialog</dt>
1185 <dd><kbd class="mod2">o</kbd></dd>
1186 <dt>toggle preferences dialog</dt>
1187 <dd><kbd class="mod13">p</kbd></dd>
1188 </dl>
1189
1190 <h2>Editing with Edit Point</h2>
1191
1192 <p>
1193   Most edit functions operate on a single <dfn>Edit Point</dfn> (EP). The edit 
1194   point can be any of: playhead (default), the mouse or an active marker. 
1195   The choice of edit point (by default) also sets the <dfn>Zoom Focus</dfn>.
1196 </p>
1197
1198 <dl class="bindings">
1199 <dt>EP to next region sync</dt>
1200 <dd><kbd class="">;</kbd></dd>
1201 <dt>EP to prev region sync</dt>
1202 <dd><kbd class="">'</kbd></dd>
1203 <dt>cycle to next grid snap mode</dt>
1204 <dd><kbd class="">2</kbd></dd>
1205 <dt>cycle to next zoom focus</dt>
1206 <dd><kbd class="">1</kbd></dd>
1207 <dt>insert from region list</dt>
1208 <dd><kbd class="">i</kbd></dd>
1209 <dt>insert time</dt>
1210 <dd><kbd class="mod1">t</kbd></dd>
1211 <dt>move EP to playhead</dt>
1212 <dd><kbd class="mod2">&crarr;</kbd></dd>
1213 <dt>next EP w/marker</dt>
1214 <dd><kbd class="mod1">`</kbd></dd>
1215 <dt>next EP w/o marker</dt>
1216 <dd><kbd class="">`</kbd></dd>
1217 <dt>trim back</dt>
1218 <dd><kbd class="">k</kbd></dd>
1219 <dt>trim front</dt>
1220 <dd><kbd class="">j</kbd></dd>
1221 <dt>trim region end to edit point</dt>
1222 <dd><kbd class="mod3">}</kbd></dd>
1223 <dt>trim region start to edit point</dt>
1224 <dd><kbd class="mod3">{</kbd></dd>
1225 <dt>trim region to end of prev region</dt>
1226 <dd><kbd class="mod1">j</kbd></dd>
1227 <dt>trim region to start of next region</dt>
1228 <dd><kbd class="mod1">k</kbd></dd>
1229 <dt>use previous grid unit</dt>
1230 <dd><kbd class="">3</kbd></dd>
1231 <dt>use next grid unit</dt>
1232 <dd><kbd class="">4</kbd></dd>
1233 <dt>use previous grid unit</dt>
1234 <dd><kbd class="mod1">3</kbd></dd>
1235 <dt>use next musical grid unit</dt>
1236 <dd><kbd class="mod1">4</kbd></dd>
1237 </dl>
1238
1239 <h2>Aligning with the Edit Point</h2>
1240
1241 <p>
1242   <dfn>Align operations</dfn> move regions so that their start/end/sync 
1243   point is at the edit point. <dfn>Relative</dfn> operations just align the first 
1244   region and moves other selected regions to maintain relative positioning.
1245 </p>
1246
1247 <dl class="bindings">
1248 <dt>align end(s)</dt>
1249 <dd><kbd class="mod2">a</kbd></dd>
1250 <dt>align start(s)</dt>
1251 <dd><kbd class="mod14">a</kbd></dd>
1252 <dt>align start(s) relative</dt>
1253 <dd><kbd class="mod4">a</kbd></dd>
1254 <dt>align sync points</dt>
1255 <dd><kbd class="mod3">a</kbd></dd>
1256 <dt>align sync points (relative)</dt>
1257 <dd><kbd class="">a</kbd></dd>
1258 <dt>range end to next prev edge</dt>
1259 <dd><kbd class="mod1">&gt;</kbd></dd>
1260 <dt>range end to next region edge</dt>
1261 <dd><kbd class="">&gt;</kbd></dd>
1262 <dt>range start to next region edge</dt>
1263 <dd><kbd class="mod1">&lt;</kbd></dd>
1264 <dt>range start to prev region edge</dt>
1265 <dd><kbd class="">&lt;</kbd></dd>
1266 </dl>
1267
1268 <h2>Edit Point Playback</h2>
1269
1270 <dl class="bindings">
1271 <dt>play edit range</dt>
1272 <dd><kbd class="mod2">Space</kbd></dd>
1273 <dt>play from EP &amp; return</dt>
1274 <dd><kbd class="mod4">Space</kbd></dd>
1275 <dt>play selected region(s)</dt>
1276 <dd><kbd class="">h</kbd></dd>
1277 </dl>
1278 <h2>Region Operations</h2>
1279
1280 <dl class="bindings">
1281 <dt>duplicate region (multi)</dt>
1282 <dd><kbd class="mod3">d</kbd></dd>
1283 <dt>duplicate region (once)</dt>
1284 <dd><kbd class="mod2">d</kbd></dd>
1285 <dt>export selected region(s)</dt>
1286 <dd><kbd class="mod14">e</kbd></dd>
1287 <dt>increase region gain</dt>
1288 <dd><kbd class="">^</kbd></dd>
1289 <dt>move to original position</dt>
1290 <dd><kbd class="mod2">o</kbd></dd>
1291 <dt>mute/unmute</dt>
1292 <dd><kbd class="mod1">m</kbd></dd>
1293 <dt>normalize</dt>
1294 <dd><kbd class="">n</kbd></dd>
1295 <dt>nudge backward</dt>
1296 <dd><kbd class="kp">&ndash;</kbd></dd>
1297 <dt>nudge forward</dt>
1298 <dd><kbd class="kp">+</kbd></dd>
1299 <dt>quantize MIDI notes </dt>
1300 <dd><kbd class="">q</kbd></dd>
1301 <dt>reduce region gain</dt>
1302 <dd><kbd class="">&amp;</kbd></dd>
1303 <dt>reverse</dt>
1304 <dd><kbd class="mod2">r</kbd></dd>
1305 <dt>set fade in length</dt>
1306 <dd><kbd class="">/</kbd></dd>
1307 <dt>set fade out length</dt>
1308 <dd><kbd class="">\</kbd></dd>
1309 <dt>set region sync point</dt>
1310 <dd><kbd class="">v</kbd></dd>
1311 <dt>split</dt>
1312 <dd><kbd class="">s</kbd></dd>
1313 <dt>toggle fade in active</dt>
1314 <dd><kbd class="mod1">/</kbd></dd>
1315 <dt>toggle fade out active</dt>
1316 <dd><kbd class="mod1">\</kbd></dd>
1317 <dt>transpose</dt>
1318 <dd><kbd class="mod2">t</kbd></dd>
1319 </dl>
1320
1321 <h2>Generic Editing</h2>
1322
1323 <dl class="bindings">
1324 <dt>copy</dt>
1325 <dd><kbd class="mod1">c</kbd></dd>
1326 <dt>cut</dt>
1327 <dd><kbd class="mod1">x</kbd></dd>
1328 <dt>delete</dt>
1329 <dd><kbd class="">Del</kbd></dd>
1330 <dt>paste</dt>
1331 <dd><kbd class="mod1">v</kbd></dd>
1332 <dt>redo</dt>
1333 <dd><kbd class="mod1">r</kbd></dd>
1334 <dt>undo</dt>
1335 <dd><kbd class="mod1">z</kbd></dd>
1336 </dl>
1337
1338 <h2>Selecting</h2>
1339
1340 <p class="note">
1341   There are  a few functions that refer to an <dfn>Edit Range</dfn>. The 
1342   current edit range is defined using combinations of the possible edit 
1343   points: <dfn>playhead</dfn>, <dfn>active marker</dfn>, or <dfn>mouse</dfn>.
1344 </p>
1345
1346 <dl class="bindings">
1347 <dt>all after playhead</dt>
1348 <dd><kbd class="mod13">p</kbd></dd>
1349 <dt>all before playhead</dt>
1350 <dd><kbd class="mod1">p</kbd></dd>
1351 <dt>all enclosed by edit range</dt>
1352 <dd><kbd class="mod1">u</kbd></dd>
1353 <dt>all present in edit range</dt>
1354 <dd><kbd class="">u</kbd></dd>
1355 <dt>convert edit range to range</dt>
1356 <dd><kbd class="">F6</kbd></dd>
1357 <dt>invert selection</dt>
1358 <dd><kbd class="mod3">i</kbd></dd>
1359 <dt>select all after EP</dt>
1360 <dd><kbd class="mod13">e</kbd></dd>
1361 <dt>select all before EP</dt>
1362 <dd><kbd class="mod1">e</kbd></dd>
1363 <dt>select all in loop range</dt>
1364 <dd><kbd class="mod1">l</kbd></dd>
1365 <dt>select all in punch range</dt>
1366 <dd><kbd class="mod1">d</kbd></dd>
1367 <dt>select everything</dt>
1368 <dd><kbd class="mod1">a</kbd></dd>
1369 <dt>select next track/bus</dt>
1370 <dd><kbd class="mod2">&darr;</kbd></dd>
1371 <dt>select previous track/bus</dt>
1372 <dd><kbd class="mod2">&uarr;</kbd></dd>
1373 </dl>
1374
1375 <h2>Defining Loop, Punch Range and Tempo Changes</h2>
1376
1377 <dl class="bindings">
1378 <dt>set loop range from edit range</dt>
1379 <dd><kbd class="">]</kbd></dd>
1380 <dt>set loop range from region(s)</dt>
1381 <dd><kbd class="mod2">]</kbd></dd>
1382 <dt>set punch range from edit range</dt>
1383 <dd><kbd class="">[</kbd></dd>
1384 <dt>set punch range from region(s)</dt>
1385 <dd><kbd class="mod2">[</kbd></dd>
1386 <dt>set tempo (1 bar) from edit range</dt>
1387 <dd><kbd class="">0</kbd></dd>
1388 <dt>set tempo (1 bar) from region(s)</dt>
1389 <dd><kbd class="">9</kbd></dd>
1390 </dl>
1391
1392 ---
1393 title: Mnemonic Bindings for OS X
1394 part: subchapter
1395 ---
1396
1397 <p>
1398   A <a href="/files/a3_mnemonic_cheat_sheet_osx.pdf">printable cheat sheet</a> 
1399   for these bindings is available for download.
1400 </p>
1401
1402 <h2>Transport &amp; Recording Control</h2>
1403 <dl class="bindings">
1404 <dt>destroy last recording</dt>
1405 <dd><kbd class="mod1">Del</kbd></dd>
1406 <dt>engage record</dt>
1407 <dd><kbd class="mod3">r</kbd></dd>
1408 <dt>fast forward</dt>
1409 <dd><kbd class="mod3">→</kbd></dd>
1410 <dt>loop play (the loop range)</dt>
1411 <dd><kbd class="">l</kbd></dd>
1412 <dt>rewind</dt>
1413 <dd><kbd class="mod3">&larr;</kbd></dd>
1414 <dt>set playhead position</dt>
1415 <dd><kbd class="">p</kbd></dd>
1416 <dt>start recording</dt>
1417 <dd><kbd class="mod3">space</kbd></dd>
1418 <dt>stop (keep loop/range play)</dt>
1419 <dd><kbd class="mod12">space</kbd></dd>
1420 <dt>stop and destroy</dt>
1421 <dd><kbd class="mod1">space</kbd></dd>
1422 <dt>toggle auto play</dt>
1423 <dd><kbd class="">5</kbd></dd>
1424 <dt>toggle auto return</dt>
1425 <dd><kbd class="">6</kbd></dd>
1426 <dt>toggle click (metronome)</dt>
1427 <dd><kbd class="">7</kbd></dd>
1428 <dt>toggle playhead follows edits</dt>
1429 <dd><kbd class="mod3">f</kbd></dd>
1430 <dt>toggle playhead tracking</dt>
1431 <dd><kbd class="mod1">f</kbd></dd>
1432 <dt>toggle roll</dt>
1433 <dd><kbd class="">space</kbd></dd>
1434 <dt>toggle track rec-enable </dt>
1435 <dd><kbd class="mod3">b</kbd></dd>
1436 <dt>toggle track solo status</dt>
1437 <dd><kbd class="mod2">s</kbd></dd>
1438 <dt>transition to reverse</dt>
1439 <dd><kbd class="mod3">&darr;</kbd></dd>
1440 <dt>transition to roll</dt>
1441 <dd><kbd class="mod3">&uarr;</kbd></dd>
1442 </dl>
1443 <h2>Session &amp; File Handling</h2>
1444 <dl class="bindings">
1445 <dt>add track(s) or bus(ses)</dt>
1446 <dd><kbd class="mod13">n</kbd></dd>
1447 <dt>export session</dt>
1448 <dd><kbd class="mod1">e</kbd></dd>
1449 <dt>import audio files</dt>
1450 <dd><kbd class="mod1">i</kbd></dd>
1451 <dt>open a new session</dt>
1452 <dd><kbd class="mod1">n</kbd></dd>
1453 <dt>open a recent session</dt>
1454 <dd><kbd class="mod13">o</kbd></dd>
1455 <dt>open an existing session</dt>
1456 <dd><kbd class="mod1">o</kbd></dd>
1457 <dt>quit</dt>
1458 <dd><kbd class="mod1">q</kbd></dd>
1459 <dt>save session</dt>
1460 <dd><kbd class="mod1">s</kbd></dd>
1461 <dt>snapshot session</dt>
1462 <dd><kbd class="mod13">s</kbd></dd>
1463 <dt>toggle sel. track MIDI input</dt>
1464 <dd><kbd class="mod2">i</kbd></dd>
1465 </dl>
1466 <h2>Changing What's Visible</h2>
1467 <dl class="bindings">
1468 <dt>fit tracks vertically</dt>
1469 <dd><kbd class="">f</kbd></dd>
1470 <dt>move selected tracks down</dt>
1471 <dd><kbd class="mod1">&darr;</kbd></dd>
1472 <dt>move selected tracks up</dt>
1473 <dd><kbd class="mod1">&uarr;</kbd></dd>
1474 <dt>scroll down (page)</dt>
1475 <dd><kbd class="">PgDn</kbd></dd>
1476 <dt>scroll down (step)</dt>
1477 <dd><kbd class="">&darr;</kbd></dd>
1478 <dt>scroll up (page)</dt>
1479 <dd><kbd class="">PageUp</kbd></dd>
1480 <dt>scroll up (step)</dt>
1481 <dd><kbd class="">&uarr;</kbd></dd>
1482 <dt>toggle editor window mixer</dt>
1483 <dd><kbd class="mod3">e</kbd></dd>
1484 <dt>toggle last 2 zoom states</dt>
1485 <dd><kbd class="mod3">z</kbd></dd>
1486 <dt>zoom height to selected region(s)</dt>
1487 <dd><kbd class="mod1">Control+z</kbd></dd>
1488 <dt>zoom height and time to selected region</dt>
1489 <dd><kbd class="mod2">z</kbd></dd>
1490 <dt>zoom in</dt>
1491 <dd><kbd class="">=</kbd></dd>
1492 <dt>zoom out</dt>
1493 <dd><kbd class="">-</kbd></dd>
1494 </dl>
1495 <h2>Window Visibility</h2>
1496 <dl class="bindings">
1497 <dt>toggle locations dialog</dt>
1498 <dd><kbd class="mod2">l</kbd></dd>
1499 <dt>focus on main clock</dt>
1500 <dd><kbd class="kp">&divide;</kbd></dd>
1501 <dt>maximise editor space</dt>
1502 <dd><kbd class="mod12">f</kbd></dd>
1503 <dt>rotate editor &amp; mixer window</dt>
1504 <dd><kbd class="mod2">m</kbd></dd>
1505 <dt>show rhythm ferret window </dt>
1506 <dd><kbd class="mod2">f</kbd></dd>
1507 <dt>toggle big clock</dt>
1508 <dd><kbd class="mod2">b</kbd></dd>
1509 <dt>toggle color manager</dt>
1510 <dd><kbd class="mod2">c</kbd></dd>
1511 <dt>toggle editor window</dt>
1512 <dd><kbd class="mod2">e</kbd></dd>
1513 <dt>toggle global audio patchbay</dt>
1514 <dd><kbd class="mod2">p</kbd></dd>
1515 <dt>toggle global midi patchbay</dt>
1516 <dd><kbd class="mod23">p</kbd></dd>
1517 <dt>toggle key bindings editor</dt>
1518 <dd><kbd class="mod2">k</kbd></dd>
1519 <dt>toggle preferences dialog</dt>
1520 <dd><kbd class="mod2">o</kbd></dd>
1521 <dt>toggle preferences dialog</dt>
1522 <dd><kbd class="mod13">p</kbd></dd>
1523 </dl>
1524
1525 <h2>Editing with Edit Point</h2>
1526 <p>
1527   Most edit functions operate on a single <dfn>Edit Point</dfn> (EP). The
1528   edit 
1529   point can be any of: playhead (default), the mouse or an active marker. 
1530   The choice of edit point (by default) also sets the <dfn>Zoom Focus</dfn>.
1531 </p>
1532
1533 <dl class="bindings">
1534 <dt>EP to next region sync</dt>
1535 <dd><kbd class="">;</kbd></dd>
1536 <dt>EP to prev region sync</dt>
1537 <dd><kbd class="">'</kbd></dd>
1538 <dt>cycle to next grid snap mode</dt>
1539 <dd><kbd class="">2</kbd></dd>
1540 <dt>cycle to next zoom focus</dt>
1541 <dd><kbd class="">1</kbd></dd>
1542 <dt>insert from region list</dt>
1543 <dd><kbd class="">i</kbd></dd>
1544 <dt>insert time</dt>
1545 <dd><kbd class="mod1">t</kbd></dd>
1546 <dt>move EP to playhead</dt>
1547 <dd><kbd class="mod2">Return</kbd></dd>
1548 <dt>next EP w/marker</dt>
1549 <dd><kbd class="mod1">^</kbd></dd>
1550 <dt>next EP w/o marker</dt>
1551 <dd><kbd class="">`</kbd></dd>
1552 <dt>trim back</dt>
1553 <dd><kbd class="">k</kbd></dd>
1554 <dt>trim front</dt>
1555 <dd><kbd class="">j</kbd></dd>
1556 <dt>trim region end to edit point</dt>
1557 <dd><kbd class="mod3">}</kbd></dd>
1558 <dt>trim region start to edit point</dt>
1559 <dd><kbd class="mod3">{</kbd></dd>
1560 <dt>trim region to end of prev region</dt>
1561 <dd><kbd class="mod1">j</kbd></dd>
1562 <dt>trim region to start of next region</dt>
1563 <dd><kbd class="mod1">k</kbd></dd>
1564 <dt>use previous grid unit</dt>
1565 <dd><kbd class="">3</kbd></dd>
1566 <dt>use next grid unit</dt>
1567 <dd><kbd class="">4</kbd></dd>
1568 <dt>use previous grid unit</dt>
1569 <dd><kbd class="mod1">3</kbd></dd>
1570 <dt>use next musical grid unit</dt>
1571 <dd><kbd class="mod1">4</kbd></dd>
1572 </dl>
1573
1574 <h2>Aligning with the Edit Point</h2>
1575 <p>
1576   <dfn>Align operations</dfn> move regions so that their start/end/sync 
1577   point is at the edit point. <dfn>Relative</dfn> operations just align
1578   the first region and moves other selected regions to maintain relative 
1579   positioning.
1580 </p>
1581
1582 <dl class="bindings">
1583 <dt>align end(s)</dt>
1584 <dd><kbd class="mod2">a</kbd></dd>
1585 <dt>align start(s)</dt>
1586 <dd></dd>
1587 <dt>align start(s) relative</dt>
1588 <dd><kbd class=""></kbd></dd>
1589 <dt>align sync points</dt>
1590 <dd><kbd class="mod3">a</kbd></dd>
1591 <dt>align sync points (relative)</dt>
1592 <dd><kbd class="">a</kbd></dd>
1593 <dt>range end to next prev edge</dt>
1594 <dd><kbd class="mod1">&gt;</kbd></dd>
1595 <dt>range end to next region edge</dt>
1596 <dd><kbd class="">&gt;</kbd></dd>
1597 <dt>range start to next region edge</dt>
1598 <dd><kbd class="mod1">&lt;</kbd></dd>
1599 <dt>range start to prev region edge</dt>
1600 <dd><kbd class="">&lt;</kbd></dd>
1601 </dl>
1602
1603 <h2>Edit Point Playback</h2>
1604
1605 <dl class="bindings">
1606 <dt>play edit range</dt>
1607 <dd><kbd class="mod2">Space</kbd></dd>
1608 <dt>play from EP &amp; return</dt>
1609 <dd><kbd class="mod1">Space</kbd></dd>
1610 <dt>play selected region(s)</dt>
1611 <dd><kbd class="">h</kbd></dd>
1612 </dl>
1613 <h2>Region Operations</h2>
1614 <dl class="bindings">
1615 <dt>duplicate region (multi)</dt>
1616 <dd><kbd class="mod3">d</kbd></dd>
1617 <dt>duplicate region (once)</dt>
1618 <dd><kbd class="mod2">d</kbd></dd>
1619 <dt>export selected region(s)</dt>
1620 <dd></dd>
1621 <dt>increase region gain</dt>
1622 <dd><kbd class="">^</kbd></dd>
1623 <dt>move to original position</dt>
1624 <dd><kbd class="mod2">o</kbd></dd>
1625 <dt>mute/unmute</dt>
1626 <dd><kbd class="mod1">m</kbd></dd>
1627 <dt>normalize</dt>
1628 <dd><kbd class="">n</kbd></dd>
1629 <dt>nudge backward</dt>
1630 <dd><kbd class="kp">&ndash;</kbd></dd>
1631 <dt>nudge forward</dt>
1632 <dd><kbd class="kp">+</kbd></dd>
1633 <dt>quantize MIDI notes </dt>
1634 <dd><kbd class="">q</kbd></dd>
1635 <dt>reduce region gain</dt>
1636 <dd><kbd class="">&amp;</kbd></dd>
1637 <dt>reverse</dt>
1638 <dd><kbd class="mod2">r</kbd></dd>
1639 <dt>set fade in length</dt>
1640 <dd><kbd class="">/</kbd></dd>
1641 <dt>set fade out length</dt>
1642 <dd><kbd class="">\</kbd></dd>
1643 <dt>set region sync point</dt>
1644 <dd><kbd class="">v</kbd></dd>
1645 <dt>split</dt>
1646 <dd><kbd class="">s</kbd></dd>
1647 <dt>toggle fade in active</dt>
1648 <dd><kbd class="mod1">/</kbd></dd>
1649 <dt>toggle fade out active</dt>
1650 <dd><kbd class="mod1">\</kbd></dd>
1651 <dt>transpose</dt>
1652 <dd><kbd class="mod2">t</kbd></dd>
1653 </dl>
1654
1655 <h2>Generic Editing</h2>
1656
1657 <dl class="bindings">
1658 <dt>copy</dt>
1659 <dd><kbd class="mod1">c</kbd></dd>
1660 <dt>cut</dt>
1661 <dd><kbd class="mod1">x</kbd></dd>
1662 <dt>delete</dt>
1663 <dd><kbd class="">Del</kbd></dd>
1664 <dt>paste</dt>
1665 <dd><kbd class="mod1">v</kbd></dd>
1666 <dt>redo</dt>
1667 <dd><kbd class="mod1">r</kbd></dd>
1668 <dt>undo</dt>
1669 <dd><kbd class="mod1">z</kbd></dd>
1670 </dl>
1671
1672 <h2>Selecting</h2>
1673 <p class="note">
1674   There are  a few functions that refer to an <dfn>Edit Range</dfn>. The 
1675   current edit range is defined using combinations of the possible edit 
1676   points: <dfn>playhead</dfn>, <dfn>active marker</dfn>, or<dfn>mouse</dfn>.
1677 </p>
1678
1679 <dl class="bindings">
1680 <dt>all after playhead</dt>
1681 <dd><kbd class="mod13">p</kbd></dd>
1682 <dt>all before playhead</dt>
1683 <dd><kbd class="mod1">p</kbd></dd>
1684 <dt>all enclosed by edit range</dt>
1685 <dd><kbd class="mod1">u</kbd></dd>
1686 <dt>all present in edit range</dt>
1687 <dd><kbd class="">u</kbd></dd>
1688 <dt>convert edit range to range</dt>
1689 <dd><kbd class="">F6</kbd></dd>
1690 <dt>invert selection</dt>
1691 <dd><kbd class="mod3">i</kbd></dd>
1692 <dt>select all after EP</dt>
1693 <dd><kbd class="mod1">Shift+e</kbd></dd>
1694 <dt>select all before EP</dt>
1695 <dd><kbd class="mod1">e</kbd></dd>
1696 <dt>select all in loop range</dt>
1697 <dd><kbd class="mod1">l</kbd></dd>
1698 <dt>select all in punch range</dt>
1699 <dd><kbd class="mod1">d</kbd></dd>
1700 <dt>select everything</dt>
1701 <dd><kbd class="mod1">a</kbd></dd>
1702 <dt>select next track/bus</dt>
1703 <dd><kbd class="mod2">↓</kbd></dd>
1704 <dt>select previous track/bus</dt>
1705 <dd><kbd class="mod2">↑</kbd></dd>
1706 </dl>
1707 <h2>Defining Loop, Punch Range and Tempo Changes</h2>
1708 <dl class="bindings">
1709 <dt>set loop range from edit range</dt>
1710 <dd><kbd class="">]</kbd></dd>
1711 <dt>set loop range from region(s)</dt>
1712 <dd><kbd class="mod2">]</kbd></dd>
1713 <dt>set punch range from edit range</dt>
1714 <dd><kbd class="">[</kbd></dd>
1715 <dt>set punch range from region(s)</dt>
1716 <dd><kbd class="mod2">[</kbd></dd>
1717 <dt>set tempo (1 bar) from edit range</dt>
1718 <dd><kbd class="">0</kbd></dd>
1719 <dt>set tempo (1 bar) from region(s)</dt>
1720 <dd><kbd class="">9</kbd></dd>
1721 </dl>
1722
1723
1724 ---
1725 title: Using This Documentation
1726 part: chapter
1727 ---
1728
1729
1730 ---
1731 title: About Ardour documentation
1732 part: subchapter
1733 ---
1734
1735 <h2>Conventions Used In This Manual</h2>
1736
1737 <p>
1738   This section covers some of the typographical and language conventions used in this manual.
1739 </p>
1740
1741 <h3>Keyboards and Modifiers</h3>
1742
1743 <p>
1744   <dfn>Keyboard bindings</dfn> are shown like this: <kbd>s</kbd> or <kbd class="mod1">x</kbd>.
1745 </p>
1746
1747 <p>
1748   <kbd class="mod1">x</kbd> means "press the <kbd class="mod1">&nbsp;</kbd> key, keep it pressed and then also press the <kbd>x</kbd> key.
1749 </p>
1750
1751 <p>
1752   You may also see key combinations such as <kbd class="mod12">e</kbd>, which mean that you should hold down the <kbd class="mod1">&nbsp;</kbd> key <em>and</em> the <kbd class="mod2">&nbsp;</kbd> key, and then, while keeping them both down, press the <kbd>e</kbd> key.
1753 </p>
1754
1755 <p>
1756   Note that different platforms have different conventions for which modifier key (Control or Command) to use as the primary or most common modifier. When viewing this manual from a machine identifying itself as running OS X, you will see  <kbd>Cmd&nbsp;</kbd> where appropriate (for instance in the first example above). On other machines you will see <kbd>Ctrl&nbsp;</kbd> instead.
1757 </p>
1758  
1759 <h3>Mouse Buttons</h3>
1760
1761 <p>
1762   We refer to <a href="/setting-up-your-system/the-mouse">mouse buttons</a> as <kbd class="mouse">Left</kbd>, <kbd class="mouse">Middle</kbd> and <kbd class="mouse">Right</kbd>. Ardour can use additional buttons, but they have no default behaviour in the program.
1763 </p>
1764
1765 <h4>Mouse click modifiers</h4>
1766
1767 <p>
1768   Many editing functions are performed by clicking the mouse while holding a modifier key, for example <kbd class="mouse mod1">Left</kbd>.
1769 </p>
1770
1771 <h4>Mouse wheel</h4>
1772
1773 <p>
1774   Some GUI elements can optionally be controlled with the mouse wheel when the pointer is hovering over them. The notation for mouse wheel action is <kbd class="mouse">&uArr;</kbd> <kbd class="mouse">&lArr;</kbd> <kbd class="mouse">&dArr;</kbd> <kbd class="mouse">&rArr;</kbd>.
1775 </p>
1776
1777 <h4>Context-click</h4>
1778
1779 <p>
1780   The term <dfn>context-click</dfn> is used to indicate that you should (typically) <kbd class="mouse">Right</kbd>-click on a particular element of the graphical user interface. Although right-click is the common, default way to do this, there are other ways to accomplish the same thing&mdash;this term refers to any of them, and the result is always that a menu specific to the item you clicked on will be displayed.
1781 </p>
1782
1783 <h4>"The Pointer"</h4>
1784
1785 <p>
1786   When the manual refers to the "pointer", it means the on-screen representation of the mouse position or the location of a touch action if you are using a touch interface.
1787 </p>
1788
1789 <h3>Other user input</h3>
1790
1791 <p>
1792   Ardour supports hardware controllers, such as banks of <kbd class="fader">faders</kbd>, <kbd class="knob">knobs</kbd>, or <kbd class="button">buttons</kbd>.
1793 </p>
1794
1795 <h3>Menu Items</h3>
1796
1797 <p>
1798   Menu items are indicated like this:<br />
1799   <kbd class="menu">Top &gt; Next &gt; Deeper</kbd>.<br />
1800   Each "&gt;"-separated item indicates one level of a nested (sub-)menu.
1801 </p>
1802
1803 <h3>Preference/Dialog Options</h3>
1804
1805 <p>
1806   Choices in various dialogs, notably the Preferences and Properties dialog, are 
1807   indicated like this:<br />
1808   <kbd class="option">Edit &gt; Preferences &gt; Audio &gt; Some
1809   Option</kbd>.<br />
1810   Each successive item indicates either a (sub-) menu or a tabbed dialog
1811   navigation. The final item is the one to choose or select.
1812 </p>
1813
1814 <p>
1815   If you are requested to deselect an option, you will see something like
1816   this:<br />
1817   <kbd class="optoff">Edit &gt; Preferences &gt; Audio &gt; Some other
1818   Option</kbd>.<br />
1819 </p>
1820
1821 <h3>User Input</h3>
1822
1823 <p>
1824   Some dialogs or features may require you to type in some <kbd class="input">data such as this</kbd>. In rare cases, you will be required to perform certain operations at the command line of your operating system:
1825 </p>
1826
1827 <kbd class="cmd lin">cat /proc/cpuinfo</kbd>
1828 <kbd class="cmd mac">sleep 3600</kbd>
1829 <kbd class="cmd win">ping www.google.com</kbd>
1830
1831 <h3>Program Output</h3>
1832
1833 <p>
1834   Important messages from Ardour or other programs will be displayed <samp>like this</samp>.
1835 </p>
1836
1837 <h3>Notes</h3>
1838
1839 <p class="note">
1840   Important notes about things that might not otherwise be obvious are shown in this format.
1841 </p>
1842
1843 <h3>Warnings</h3>
1844
1845 <p class="warning">
1846   Hairy issues that might cause things to go wrong, lose data, impair sound quality, or eat your proverbial goldfish, are displayed in this way.
1847 </p>
1848
1849 ---
1850 title: Additional Resources
1851 part: subchapter
1852 ---
1853
1854 <p>
1855   In addition to this documentation, you may check a variety of other <dfn>resources</dfn>:
1856 </p>
1857
1858 <ul>
1859   <li>the <a href="https://ardour.org/whatsnew.html">Ardour release
1860   notes</a></li>
1861   <li>the <a href="https://community.ardour.org/forums">Ardour
1862   Forums</a></li>
1863   <li>information about <a href="https://community.ardour.org/community">Ardour
1864   Support</a> via mailing lists and IRC (chat)</li>
1865 </ul>
1866
1867 <p>
1868   The <dfn>IRC channels</dfn> in particular are where most of the day-to-day development and debugging is done, and there are plenty of experienced users to help you if you run into problems.
1869 </p>
1870
1871 <p>
1872   Please be prepared to hang around for a few hours, the chat is usually busiest from 19:00&nbsp;UTC to 04:00&nbsp;UTC. If you can, keep your chat window open, so that you don't miss a belated answer. Also, don't ask for permission to ask a question, just ask your question with the understanding that the answer (from the "right" people or not) could come seconds, minutes, hours, or never.
1873 </p>  
1874
1875
1876 ---
1877 title: System Configuration
1878 part: part
1879 ---
1880
1881
1882 ---
1883 title: Ardour Systems
1884 part: chapter
1885 ---
1886
1887
1888 ---
1889 title: The Right Computer System for Digital Audio
1890 menu_title: The Right Computer System
1891 part: subchapter
1892 ---
1893
1894 <p>
1895   It would be nice to think that you could just go and buy any computer,
1896   install a bit of software on it and start using it to record and create
1897   music. This idea isn't wrong, but there some important details that it
1898   misses.
1899 </p>
1900 <p>
1901   Any computer that you can buy today (since somewhere around the end of
1902   2012) is capable of recording and processing a lot of audio data. It 
1903   will come with a builtin audio interface that can accept inputs from
1904   microphones or electrical instruments. It will have a disk with a huge
1905   amount of space for storing audio files.
1906 </p>
1907 <p>
1908   When you are recording, editing and mixing music, you generally want to
1909   work with very little <dfn>latency</dfn> between the time that
1910   a sound is generated and when you can hear it. When the audio signal
1911   flows through a computer, that means that the computer has to be able to
1912   receive the signal, process it and send it back out again as fast as
1913   possible.<br /> 
1914   And that is where it becomes very important <em>what</em> computer system
1915   you have, because it is <strong>absolutely not</strong> the case that any
1916   computer can do this job well.
1917 </p>
1918 <p>
1919   Routing audio through a computer will always cause some delay, but if it
1920   is small, you will generally never notice it. There are also ways to work
1921   in which the delay does not matter at all (for example, not sending the
1922   output from the computer to speakers).
1923 </p>
1924 <p>
1925   The latency that you want for working with digital audio is typically in
1926   the 1&ndash;5&nbsp;ms range. For comparison, if you are sitting 1&nbsp;m 
1927   (3&nbsp;ft) from your speakers, the time the sound takes to reach your
1928   ears is about 3&nbsp;ms. Any modern computer can limit the delay to 
1929   100&nbsp;ms. Most can keep it under 50&nbsp;ms. Many will be able to get
1930   down to 10&nbsp;ms without too much effort. If you try to reduce the delay
1931   on a computer that cannot meet your goal, you will get clicks and
1932   glitches in the audio, which is clearly extremely undesirable.
1933 </p>
1934
1935 <h2>Hardware-related Considerations</h2>
1936 <dl class="wide-table">
1937   <dt>Video interface</dt>
1938   <dd>Poorly engineered video interfaces (and/or their device drivers) can
1939   "steal" computer resources for a long time, preventing the audio interface
1940   from keeping up with the flow of data</dd>
1941   <dt>Wireless interface</dt>
1942   <dd>Poorly engineered wireless networking interfaces (and/or their device
1943   drivers) can also block the audio interface from keeping up with the flow
1944   of data</dd>
1945   <dt><abbr title="Universal Serial Bus">USB</abbr> ports</dt>
1946   <dd>If you are using an audio interface connected via USB, and sometimes
1947   even if you are not, the precise configuration of your system's USB ports
1948   can make a big difference. There are many cases where plugging the 
1949   interface into one port will work, but using different USB port results
1950   in much worse performance. This has been seen even on Apple systems.
1951   </dd>
1952   <dt>Internal USB Hubs</dt>
1953   <dd>Ideally, you'd like your USB ports to all connect directly to the
1954   main bus inside the computer. Some laptops (and possibly some
1955   desktop systems) come wired with an internal USB hub between the
1956   ports and the system bus, which can then cause problems for various
1957   kinds of external USB devices, including some models of audio
1958   interfaces. It is very difficult to discover whether this is true or
1959   not, without simplying trying it out.</dd>
1960   <dt><abbr title="Central Processing Unit">CPU</abbr> speed control</dt>
1961   <dd>Handling audio with low latency requires that your processor keeps
1962   running at its highest speed at all times. Many portable systems try to
1963   regulate processor speed in order to save power&mdash;for low latency
1964   audio, you want this totally disabled, either in the BIOS or at the OS
1965   level.</dd>
1966   <dt>Excessive Interrupt Sharing</dt>
1967   <dd>If your audio interface is forced by your computer to share an
1968   interrupt line (basically a way to tell the CPU that something needs
1969   its attention) with too many, or the wrong, other devices, this can also
1970   prevent the audio interface from keeping up with the flow of data. In
1971   laptops it is generally impossible to do anything about this. In many
1972   desktop systems, it is possible at the BIOS level to reassign interrupts
1973   to work around the problem.</dd>
1974   <dt><abbr title="System Management Interrupt">SMI</abbr>s</dt>
1975   <dd>SMIs are interrupts sent by the motherboard to tell the computer
1976   about the state of various hardware. They cannot safely be disabled,
1977   but they can also take a relatively long time to process. It is better
1978   to have a motherboard which never sends SMIs at all&mdash; this is
1979   also a requirement for realtime stock trading systems, which have
1980   similar issues with latency.</dd>
1981   <dt>Hyperthreading</dt>
1982   <dd>This technology is becoming less common as actual multi-core CPUs
1983   become the norm, but it still exists and is generally not good for
1984   realtime performance. Sometimes you can disable this in the BIOS,
1985   sometimes you cannot. A processor that uses hyperthreading will be
1986   less stable in very low latency situations than one without.</dd>
1987   <dt>Excessive vibration</dt>
1988   <dd>This doesn't affect the flow of data to/from the audio interface,
1989   but it can cause the flow of data to/from your disk storage to become
1990   <em>much</em> slower. If you are going to use a computer in an
1991   environment with loud live sound (specifically, high bass volume),
1992   make sure to place it so that the disk is not subject to noticeable
1993   vibration. The vibrations will physically displace the head-write
1994   heads of disk, and the resulting errors will force a retry of the
1995   reading from the disk. Retrying over and over massively reduces the
1996   rate at which data can be read from the disk. Avoid this.</dd>
1997 </dl>
1998
1999 ---
2000 title: Mouse
2001 part: subchapter
2002 ---
2003
2004 <p>
2005   Ardour is designed to work best with a <dfn>three button mouse</dfn> 
2006   equipped with a <dfn>scroll wheel</dfn>.
2007 </p>
2008
2009 <p>
2010   It can be used with a two button mouse or touchpad, but at least two key
2011   operations will not (easily) be available to you:
2012 </p>
2013
2014 <ul>
2015   <li>time-constrained region copying</li>
2016   <li><a href="/using-control-surfaces/midi-learn/"><abbr title="Musical
2017   Instrument Digital Interface">MIDI</abbr> bindings</a>
2018   created by "learning" them from incoming MIDI data</li>
2019 </ul>
2020
2021 <p>
2022   You are strongly encouraged to invest in a three-button mouse. You will
2023   find that a good quality mouse (especially one with a weighted,
2024   latchable scroll wheel) will make your use of Ardour vastly more
2025   efficient. They are cheap, and time is not.
2026 </p> 
2027
2028 <p>
2029   For more detailed instructions, see 
2030   <a href="/ardours-interface/basic-gui-operations/using-the-mouse/">Using the mouse</a>.
2031 </p>
2032
2033
2034 ---
2035 title: System Setup
2036 part: chapter
2037 ---
2038
2039   
2040 ---
2041 title: Setting Up Your System
2042 part: subchapter
2043 ---
2044
2045 <p>
2046   Using a general purpose computer for recording digital audio is not
2047   trivial. This chapter will guide you through the basic steps and help
2048   you with some of the most common pitfalls on the way to a reliable and
2049   powerful audio workstation.
2050 </p>
2051
2052 ---
2053 title: Platform Specifics
2054 part: subchapter
2055 ---
2056
2057 <h2>Platform Specifics</h2>
2058
2059 <p>
2060   This section of the manual collects together the collective wisdom
2061   of the user community regarding details of using Ardour on various
2062   specific platforms
2063 </p>
2064
2065 ---
2066 title: Ubuntu Linux
2067 part: subchapter
2068 ---
2069
2070 <p>
2071   <dfn>Ubuntu Linux</dfn> is the most popular variety of Linux in use on desktop
2072   and laptop systems. It has the backing of a for-profit corporation
2073   (Canonical Inc.), a defined philosophy and a huge and
2074   worldwide user base. As a result, it is a common platform for people
2075   who want to use Ardour and other tools for music creation and
2076   pro-audio work.
2077 </p>
2078
2079 <h2>High Level Recommendations for Ubuntu Users</h2>
2080 <p>
2081   Currently, installing pro audio applications on vanilla Ubuntu requires
2082   some configuration, in order for the user to gain realtime privilege
2083   (read below).
2084   Ubuntu Studio, which is an official flavor of Ubuntu, and thus shares
2085   the repositories with Ubuntu, has this already configured.
2086   Other distributions, such as KXStudio, and Dreamstudio are largely based
2087   on Ubuntu, and like Ubuntu Studio, has these settings preconfigured, while
2088   also containing customized versions of Ubuntu packages, which often are
2089   more up to date.
2090 </p>
2091
2092 <h2>Installing Ardour</h2>
2093 <p>
2094   There may be unintended differences, and even bugs in Ubuntu native
2095   packages, as a result of a different building method. For this reason,
2096   Ardour developers highly recommend you to install the official
2097   ready-to-run version of the program that you can get from <a
2098   href="https://community.ardour.org/download">ardour.org</a>, as Ubuntu native
2099   packages are not supported in official Ardour forums or other
2100   support channels.
2101 </p>
2102 <p>
2103   Follow these steps to install the latest version of Ardour.
2104   <ol>
2105   <li>Download the latest release from <a href="https://community.ardour.org/download">
2106     ardour.org</a>.</li>
2107   <li><kbd class="mouse">Right+Click</kbd> the downloaded file and choose
2108     properties.</li>
2109   <li>Click the Permissions tab and check the option "Allow this file to
2110     run as a program"</li>
2111   <li>Close the dialog and double-click the file.</li>
2112   <li>Follow the prompts.</li>
2113 </ol>
2114 </p>
2115
2116 <h2>Problems with the interaction between PulseAudio and JACK</h2>
2117
2118 <h3>Background Info</h3>
2119 <p>
2120   Like many distributions, Ubuntu has decided to use <dfn>PulseAudio</dfn> as the
2121   default audio system. PulseAudio is a rich and capable system that
2122   provides excellent services for typical users of Linux on the
2123   desktop. However, it is not capable of the type of performance that
2124   tools like Ardour require and in particular does not offer the
2125   possibility of sending audio between applications that can make the
2126   Linux audio environment a very interesting one.
2127 </p>
2128 <p>
2129   This would not be a problem if it were not for the fact that JACK
2130   will not run correctly (if at all) if it needs to use the same
2131   soundcard/audio interface that PulseAudio is using. And since on
2132   Ubuntu, PulseAudio is configured by default to always use the
2133   (typically single) audio interface on your computer, this is a bit
2134   of a problem.
2135 </p>
2136 <p>
2137   The developers of JACK and PulseAudio got together in 2009 and
2138   agreed upon a mechanism by which PulseAudio and JACK could cooperate
2139   in their use of a single soundcard. Whether or not PulseAudio is running by
2140   default, when JACK starts up it sends out a request to use the
2141   soundcard. If PulseAudio is running, it will give up its use of the
2142   soundcard to allow JACK to take over (and can optionally be told to
2143   route its own audio through JACK). When JACK finishes, it sends out
2144   another message, and PulseAudio can once again use the soundcard
2145   directly.
2146 </p>
2147 <h3>What is the problem?</h3>
2148 <p>
2149   The specific issues known at this time for all flavors of Ubuntu
2150   12.04 and 12.10 are:
2151 </p>
2152   <ul>
2153     <li>a bug in PulseAudio that causes it not to give up the
2154       soundcard when JACK asks
2155       (<a href="https://bugs.launchpad.net/ubuntu/+source/pulseaudio/+bug/1163638">LP:
2156       #1163638</a>,
2157       fixed in Ubuntu 13.04).</li>
2158   </ul>
2159
2160 <h3>Symptoms</h3>
2161 <p>
2162     <samp>Cannot start JACK</samp> (though see the next section for other
2163       causes of this)
2164 </p>
2165
2166 <h3>How to fix</h3>
2167 <p>
2168   These bugs do not affect releases from 13.04, and earlier releases
2169   (12.04 and 12.10) are in the process of being fixed.
2170 </p>
2171
2172 <h2>Problems with JACK configuration</h2>
2173
2174 <h3>What is the problem?</h3>
2175     <p>
2176       To function as intended, JACK needs to run with access to two
2177       operating system facilities called <dfn>realtime scheduling</dfn> and
2178       <dfn>memory locking</dfn>. This means that you, the user who starts JACK, must be
2179       allowed access to these facilities. By default, Ubuntu does create a
2180       user group that has this permission but&mdash;it does not put new
2181       users into this group by default. Read more about why <a href="https://wiki.ubuntu.com/Audio/TheAudioGroup">here</a>.
2182       Consequently, you will not have permission to run JACK in the way you should.
2183     </p>
2184 <h3>Symptoms</h3>
2185     <p>
2186       A message like <samp>Cannot lock down memory</samp> in the output from JACK as
2187       it starts up. This output may be hidden in the Messages window of
2188       QJackctrl (aka JACK Control), so you should check there.
2189     </p>
2190
2191 <h3>How to fix</h3>
2192     <p>
2193       Make sure the file /etc/security/limits.d/audio.conf exists. If it is
2194       named /etc/security/limits.d/audio.conf.disabled, rename it to the former.
2195       Run the command
2196     </p>
2197     <kbd class="cmd lin">sudo usermod -a -G audio
2198     <em>YOUR-LOGIN-NAME</em></kbd>
2199     <p>
2200       Then log out and log in again. On Ubuntu Studio the user is a member of audio
2201       group by default, but not on other official flavors.
2202     </p>
2203
2204 <h2>Reporting Issues</h2>
2205
2206 <p>
2207   Given the difficulties in supporting Ubuntu and the limited time/resources
2208   of the Ardour team, the <dfn>Ubuntu Studio Project</dfn> has requested that
2209   issues and bug reports related to Ubuntu, Ubuntu Studio and other
2210   derivitives be directed to them.
2211 </p>
2212
2213 <h3>Contact Information for Ubuntu Studio</h3>
2214
2215 <p><a href="http://ubuntustudio.org">The Ubuntu Studio Homepage</a></p>
2216
2217 <p><a href="http://ubuntuforums.org/forumdisplay.php?f=335">The Ubuntu Studio Forums.</a></p>
2218
2219 <p><a href="https://help.ubuntu.com/community/UbuntuStudio/MailLists">Information on the Ubuntu Studio Mailing Lists.</a></p>
2220
2221 <p><a href="https://help.ubuntu.com/community/UbuntuStudio/IRC">Information on the Ubuntu Studio IRC channel.</a> #ubuntustudio on irc.freenode.net</p>
2222
2223 ---
2224 title: Microsoft Windows
2225 part: subchapter
2226 ---
2227
2228 <p>
2229   <dfn>Microsoft Windows</dfn> is not currently officially supported. If you are
2230   willing to live with bugs and <b>help to test</b> this platform, read on.
2231 </p>
2232
2233 <h2>Installing Ardour</h2>
2234
2235 <p>
2236   <ol>
2237     <li>Download the latest windows build from <a href="http://nightly.ardour.org/">
2238       the nightly build page</a>.</li>
2239     <li>Run the installer and follow the prompts.</li>
2240   </ol>
2241 </p>
2242
2243 <h2>How to help</h2>
2244
2245 <p>
2246   <ul>
2247     <li>Hang out in #ardour-windows on irc.freenode.net. You may ask questions
2248       there and if you can, answer questions that others have.</li>
2249     <li>Keep an eye on the <a href="https://community.ardour.org/forum/27"> Windows
2250       forum</a> and contribute to the discussions there.</li>
2251     <li>Update this manual via pull requests on <a href="https://github.com/Ardour/manual">github<a/>.</li>
2252   </ul>
2253 </p>
2254   
2255 ---
2256 title: KDE Plasma 5
2257 part: subchapter
2258 ---
2259
2260 <p>
2261   Under <dfn>KDE Plasma 5</dfn>, plugin and various other windows will not stay
2262   on top of any main window; therefore a workaround is required.
2263 </p>
2264
2265 <h2>Workaround for ancillary windows not staying on top in KDE Plasma 5</h2>
2266
2267 <p>
2268   In order to force ancillary windows in Ardour to stay on top, the following
2269   steps are necessary:
2270 </p>
2271
2272 <ol>
2273   <li>Launch the <kbd class="menu">System Settings</kbd> application.</li>
2274   <li>Open <kbd class="menu">Workspace &gt; Window Managment</kbd>.</li>
2275   <li>Select <kbd class="menu">Window Rules</kbd> in the left-hand sidebar. It
2276   should default to the <kbd class="menu">Window matching</kbd> tab.</li>
2277   <li>Click on the <kbd class="button">New...</kbd> button.</li>
2278   <li>On the line that says <kbd class="menu">Window class (application)</kbd>,
2279   set the combo box to <kbd class="menu">Substring Match</kbd> and type <kbd
2280   class="user">ardour</kbd> in the text entry field.</li>
2281   <li>In the list box that is labeled <kbd class="menu">Window types:</kbd>,
2282   click on the option <kbd class="menu">Dialog Window</kbd>, then press and
2283   hold <kbd>Ctrl</kbd> while clicking on the second option <kbd
2284   class="menu">Utility Window</kbd>.</li>
2285   <li>Select the <kbd class="menu">Arrangement & Access</kbd> tab.</li>
2286   <li>Check the box next to the <kbd class="menu">Keep above</kbd> option. On
2287   the same line, select <kbd class="menu">Force</kbd> from the combo box, then
2288   click on the <kbd class="menu">Yes</kbd> radio button for that line.</li>
2289   <li>Click on the <kbd class="button">OK</kbd> button to dismiss the dialog.
2290   </li>
2291 </ol>
2292
2293 <p>
2294   At this point you can close the <kbd class="menu">System Settings</kbd>
2295   application.
2296 </p>
2297
2298 <h3>Background Info</h3>
2299
2300 <p>
2301   <a href="https://bugs.kde.org/show_bug.cgi?id=172615#c26">According to one of
2302   the lead KDE developers</a>, they are not willing to follow the <abbr
2303   title="Inter-Client Communication Conventions Manual">ICCCM</abbr> standard
2304   for utility windows. Apparently they are alone in this understanding, as
2305   plugin windows on Ardour under Linux work out of the box on every other <abbr
2306   title="Window Manager">WM</abbr> out there.
2307 </p>
2308
2309 <p>
2310   Under KDE 4, there was a workaround in Ardour (<kbd class="menu">Preferences
2311   &gt; Theme &gt; All floating windows are dialogs</kbd>) that would "trick"
2312   KDE into forcing certain window types to be on top of their parent windows,
2313   but this no longer works under KDE Plasma 5.
2314 </p>
2315
2316
2317 ---
2318 title: I/O Setup
2319 part: chapter
2320 ---
2321
2322
2323 ---
2324 title: Connecting Audio and MIDI Devices
2325 part: subchapter
2326 ---
2327
2328 <p class="fixme">Add content</p>
2329
2330 ---
2331 title: Using More Than One Audio Device
2332 part: subchapter
2333 ---
2334
2335 <p>
2336   Ardour will only ever deal with a single <dfn>audio device</dfn>. If you 
2337   want to use more than one, you have two choices: 
2338 </p>
2339
2340 <ul>
2341   <li>
2342     If you want to use Ardour to start JACK (which handles all
2343     audio I/O) you will need to create a "fake" audio device on your
2344     computer the represents all the multiple devices you wish to
2345     use. How to do this is platform dependent and described below.
2346   </li>
2347   <li>
2348     Use a different tool to start JACK and manage all the devices.
2349   </li>
2350 </ul>
2351
2352 <p>
2353   Ardour is fundamentally designed to be a component in a
2354   pro-audio/music creation environment. Standard operating practice
2355   for such setups involves using only a single digital <dfn>sample
2356   clock</dfn> (something counting off the time between audio samples). 
2357   This means that trying to use multiple independent soundcards is
2358   problematic, because each soundcard has its own sample clock, running 
2359   independently from the others. Over time, these different clocks
2360   <dfn>drift</dfn> 
2361   out of sync with each other, which causes glitches in the audio. You 
2362   cannot stop this drift, although in some cases the effects may be
2363   insignificant enough that some people might not care about them.
2364 </p>
2365
2366 <p>
2367   Thus in an ideal world you should not use multiple independent
2368   soundcards but instead use a single device with a single clock and all
2369   the inputs, outputs and other features that you need.
2370 </p>
2371
2372 <p>
2373   Of course, a lot of people don't live in an ideal world, and believe
2374   that software should make up for this.
2375 </p>
2376
2377 <h2>OS X</h2>
2378 <p>
2379   In CoreAudio, <dfn>aggregate devices</dfn> provide a method to use 
2380   multiple soundcards as a single device. For example, you can 
2381   aggregate two 8-channel devices so that you can record 16 channels
2382   into Ardour.
2383 </p>
2384 <div class="note">
2385 <p>
2386   If you are using a <em>single</em> typical 3rd party
2387   audio interface (such as those from Apogee, RME, Presonus, and many
2388   others), <em>or</em> you are using JackPilot or a similar
2389   application to start JACK, you do not need to worry about this.<br />
2390   You will need to set up an aggregate device only if either 
2391   of the following conditions are true:
2392 </p>
2393 <ul>
2394   <li>You want to use two entirely separate
2395     devices <em>and</em> want to start JACK using Ardour.</li>
2396   <li>You want to use your <dfn>builtin audio device</dfn> <em>and</em>
2397     want to start JACK using Ardour.</li>
2398   <li>You want to use more than two entirely separate devices</li>
2399 </ul>
2400 </div>  
2401 <p>
2402   In the case of your builtin audio device, you will need to create
2403   an aggregate device that combines "Builtin Input" and "Builtin
2404   Output" into one device.
2405 </p>
2406 <p>
2407   The precise instructions for creating an aggregate device on OS X
2408   have varied from one released to another. Please read <a href="https://support.apple.com/en-us/HT202000">https://support.apple.com/en-us/HT202000</a>
2409 </p>
2410
2411 <h2>Linux</h2>
2412 <p>
2413   Please see the instructions at <a href="http://jackaudio.org/faq" title="http://jackaudio.org/faq">http://jackaudio.org/faq</a>
2414 </p>
2415   
2416
2417 ---
2418 title: Preferences
2419 part: chapter
2420 ---
2421
2422
2423 ---
2424 title: Preferences and Session Properties
2425 part: subchapter
2426 ---
2427
2428 <p>
2429   Ardour splits its configuration options into two categories:
2430 </p>
2431 <ul>
2432   <li>
2433     Global <dfn>preferences</dfn> control general workflow and system 
2434     configuration, and should apply to all sessions. They are located in
2435     <kbd class="menu">Edit &gt; Preferences</kbd> and stored in 
2436     Ardour's <dfn>user configuration file</dfn> in your home directory. 
2437   </li>
2438   <li><dfn>Session properties</dfn> control aspects of the workflow or
2439     configuration that pertain to the current session only. You can find them
2440     in <kbd class="menu">Session &gt; Properties</kbd>, and they will be stored
2441     in the session file.
2442   </li>
2443 </ul>
2444
2445 ---
2446 title: Global Preferences Dialog
2447 menu_title: Global Preferences
2448 part: subchapter
2449 ---
2450
2451 <p>
2452   These preferences apply to all Ardour sessions.
2453 </p>
2454
2455 <img src="/images/a4_preferences_misc.png" alt="ardour preferences
2456 dialog"/>
2457
2458 ---
2459 title: Misc Tab
2460 menu_title: Misc Tab
2461 part: subchapter
2462 ---
2463
2464 <p>
2465   This tab contains settings that do not belong on the other tabs.
2466 </p>
2467
2468 <img src="/images/a4_preferences_misc.png" alt="preferences
2469 misc tab"/>
2470
2471 <ul>
2472   <li>
2473     <p>
2474       <strong>DSP CPU Utilization</strong> sets how many cpu processors can be
2475       used to do signal processing. It can be set to use one up to all
2476       processors.
2477     </p>
2478   </li>
2479
2480   <li>
2481     <p>
2482       <dfn>Undo</dfn>
2483     </p>
2484     <ul>
2485       <li>
2486         <p>
2487           <strong>Limit undo history</strong> sets how many commands can be
2488           undone using <kbd class="mod1">Z</kbd> or
2489           <kbd class="menu">Edit &gt; Undo</kbd>.
2490         </p>
2491       </li>
2492
2493       <li>
2494         <p>
2495           <strong>Save undo history</strong> sets how many commands are saved so
2496           they are available to be undone after reopening the session.
2497         </p>
2498       </li>
2499
2500       <li>
2501         <p>
2502           <strong>Verify removal of last capture</strong> when enabled prompts to
2503           verify removal the last recording capture when
2504           <kbd class="menu">Edit &gt; Remove Last Capture</kbd> is executed.
2505         </p>
2506       </li>
2507
2508       <li>
2509         <p>
2510           <strong>Make periodic backups of the session file</strong> will create
2511           a backup session file after changes to the timeline. The backup file is
2512           the session name followed by <em>.ardour.bak</em>. The backup can be
2513           used to recover from crashes when the session had not been explicitly
2514           saved.
2515         </p>
2516       </li>
2517     </ul>
2518   </li>
2519
2520   <li>
2521     <p>
2522       <dfn>Session Management</dfn>
2523     </p>
2524     <ul>
2525       <li>
2526         <p>
2527           <strong>Always copy imported files</strong> selects, and then disables
2528           changes to, the <em>Copy&nbsp;files to&nbsp;session</em> option in the
2529           <a href="/adding-pre-existing-material/import-dialog/">
2530             Add Existing Media</a> dialog.
2531         </p>
2532       </li>
2533
2534       <li>
2535         <p>
2536           <strong>Default folder for new sessions:</strong> defalts the folder
2537           where Ardour will create new session folders. This is used in the
2538           <em>Session&nbsp;Setup</em> dialog displayed by
2539           <kbd class="menu">Session &gt; New</kbd>.
2540         </p>
2541       </li>
2542
2543       <li>
2544         <p>
2545           <strong>Maximum number of recent sessions:</strong> determines how many
2546           of the last opened sessions shows in the
2547           <em>Recent&nbsp;Sessions</em> dialog displayed by
2548           <kbd class="menu">Session &gt; Recent</kbd>.
2549         </p>
2550       </li>
2551     </ul>
2552   </li>
2553
2554   <li>
2555     <p>
2556       <dfn>Click</dfn>
2557     </p>
2558     <ul>
2559       <li>
2560         <p>
2561           <strong>Click audio file:</strong> sets a user defined sound to be
2562           played when Ardour's metronome is enabled in the
2563           <a href="/controlling-playback/using-the-transport-bar/">
2564             Transport Bar</a>
2565         </p>
2566       </li>
2567       <li>
2568         <p>
2569           <strong>Click emphasis audio file:</strong> sets an optional different
2570           metronome sound to be played on the downbeat.
2571         </p>
2572       </li>
2573       <li>
2574         <p>
2575           <strong>Click gain level:</strong> allows the metronome's click sounds
2576           to be boosted or attenuated.
2577         </p>
2578       </li>
2579     </ul>
2580   </li>
2581
2582   <li>
2583     <p>
2584       <dfn>Automation</dfn>
2585     </p>
2586     <ul>
2587       <li>
2588         <p>
2589           <strong>Thinning factor</strong> ranges from 0 to 1000 with larger
2590           values sending fewer automation changes. Thinning is like lossy
2591           audio compression, removing data that is less likely to be noticed,
2592           although the more you remove the more likely the loss will be noticed.
2593           The advantage to thinning is reduced CPU usage.
2594         </p>
2595       </li>
2596       <li>
2597         <p>
2598           <strong>Automation sampling interval</strong> ranges from 1 to
2599           1000&nbsp;ms. Determines how frequently the automation input is
2600           sampled. The shorter the interval the higher the accuracy but also
2601           the higher the CPU requirements.
2602         </p>
2603       </li>
2604     </ul>
2605
2606 </ul>
2607
2608 ---
2609 title: Transport Tab
2610 menu_title: Transport Tab
2611 part: subchapter
2612 ---
2613
2614 <p>
2615   This tab contains settings that relate to the behavior of the
2616   <a href="/controlling-playback/using-the-transport-bar">Transport Bar</a>
2617   and <a href="/synchronization/">Synchronization</a>.
2618 </p>
2619
2620 <img src="/images/a4_preferences_transport.png" alt="preferences
2621 transport tab"/>
2622
2623 <ul>
2624   <li>
2625     <p>
2626       <strong>Keep record-enable engaged on stop</strong> leaves the global
2627       record-enable engaged after transport is stopped.  Does not affect track
2628       level record-enable which is never changed on stop.
2629     </p>
2630   </li>
2631
2632   <li>
2633     <p>
2634       <strong>Play loop is a transport mode</strong> changes the behavior of the
2635       loop button, turning it into a toggle. When enabled, the loop button does
2636       not start playback but forces playback to always play the loop.  Looping
2637       stays engaged when the transport is stopped. Playback continues where the
2638       transport stopped and continues to loop.
2639     </p>
2640     <p>
2641       When disabled, the loop button starts playing the loop but stop then
2642       cancels loop playback.
2643     </p>
2644   </li>
2645   <li>
2646     <p>
2647       <strong>Stop recording when an xrun occurs</strong> will stop the transport
2648       when an xrun occurs during recording, ensuring no audible glitches are
2649       recorded.
2650     </p>
2651   </li>
2652   <li>
2653     <p>
2654       <strong>Create markers where xruns occur</strong> will create a new
2655       <a href="/working-with-markers/">marker</a> when an xrun occurs during
2656       recording at the location of the xrun. This marks where possible xruns
2657       might produce audible glitches when stopping on xruns is disabled.
2658     </p>
2659   </li>
2660   <li>
2661     <p>
2662       <strong>Stop at the end of the session</strong> causes the transport to
2663       stop during playback when it reaches the end marker. Behavior during
2664       recording is not changed.
2665     </p>
2666   </li>
2667   <li>
2668     <p>
2669       <strong>Do seamless looping</strong> removes any clicks that might
2670       otherwise be audible when the transport moves from the end of the loop
2671       range back to the beginning.
2672     </p>
2673   </li>
2674   <li>
2675     <p>
2676       <strong>Disable per-track record disarm while rolling</strong>, when
2677       enabled, will not allow the any track's record-enable to be disarmed
2678       during record, preventing accidentally stopping the recording of a take.
2679     </p>
2680   </li>
2681   <li>
2682     <p>
2683       <strong>12dB gain reduction during fast-forward and fast-rewind</strong>
2684       when enabled will reduce the unpleasant increase in perceived volume
2685       that occurs when fast-forwarding or rewinding through some kinds of audio.
2686     </p>
2687   </li>
2688   <li>
2689     <p>
2690       <strong>Sync/Slave</strong>
2691       <ul>
2692         <li>
2693           <p>
2694             <strong>External timecode source</strong> determines which external
2695             source to use when Ardour is using an external
2696             <a href="/synchronization/">synchronization</a> source.  Depending
2697             on the timecode source chosen, additional preference options are
2698             available.
2699           </p>
2700         </li>
2701         <li>
2702           <p>
2703             <strong>Match session video frame rate to external timecode</strong>
2704             controls the value of the video frame rate <em>while chasing</em>
2705             an external timecode source.
2706           </p>
2707           <p>
2708             When enabled, the session video frame rate will be changed to match
2709             that of the selected external timecode source.
2710           </p>
2711           <p>
2712             When disabled, the session video frame rate will not be changed to
2713             match that of the selected external timecode source. Instead, the
2714             frame rate indication in the main clock will flash red and Ardour
2715             will convert between the external timecode standard and the session
2716             standard.
2717           </p>
2718         </li>
2719         <li>
2720           <p>
2721             <strong>Sync-lock timecode to clock</strong> can disable drift
2722             compensation.
2723           </p>
2724           <p>
2725             When enabled, Ardour will never varispeed when slaved to external
2726             timecode. Sync Lock indicates that the selected external timecode
2727             source shares clock-sync (Black &amp; Burst, Wordclock, etc) with
2728             the audio interface. This options disables drift compensation.
2729             The transport speed is fixed at 1.0. Vari-speed LTC will be ignored
2730             and cause drift.
2731           </p>
2732           <p>
2733             When disabled, Ardour will compensate for potential drift regardless
2734             if the timecode sources shares clock sync.
2735           </p>
2736         </li>
2737         <li>
2738           <p>
2739             <strong>Lock to 29.9700 fps instead of 30000/1001</strong>, when
2740             enabled, will force Ardour to assume the external timecode source
2741             uses 29.97 fps instead of 30000/1001.
2742             SMPTE 12M-1999 specifies 29.97&nbsp;df as 30000/1001. The spec
2743             further mentions that drop-frame timecode has an accumulated error
2744             of -86&nbsp;ms over a 24&nbsp;hour period. Drop-frame timecode would
2745             compensate exactly for an NTSC color frame rate of 30 * 0.9990 (i.e.
2746             29.970000). That is not the actual rate. However, some vendors use
2747             that rate&mdash;despite it being against the specs&mdash;because the
2748             variant of using exactly 29.97&nbsp;fps has zero timecode drift.
2749           </p>
2750       </ul>
2751     </p>
2752   </li>
2753   <li>
2754     <p>
2755       <strong>LTC Reader</strong> specifies which incoming port will provide
2756       the LTC signal.
2757     </p>
2758   </li>
2759   <li>
2760     <strong>LTC Generator</strong>
2761     <ul>
2762       <li>
2763         <p>
2764           <strong>Enable LTC generator</strong>, when enabled Ardour will
2765           output an LTC timecode signal on it's <em>LTC-out</em> port.
2766         </p>
2767       </li>
2768       <li>
2769         <p>
2770           <strong>Send LTC while stopped</strong>, when enabled Ardour will
2771           continue to send LTC information even while the transport (playhed) is
2772           not moving.
2773         </p>
2774       </li>
2775       <li>
2776         <p>
2777           <strong>LTC generator level:</strong> specifies the peak volume of
2778           the generated LTC signal in dbFS. A good value is 0dBu^=-18dbFS in an
2779           EBU calibrated system.
2780         </p>
2781       </li>
2782     </ul>
2783   </li>
2784 </ul>
2785
2786 ---
2787 title: Editor Tab
2788 menu_title: Editor Tab
2789 part: subchapter
2790 ---
2791
2792 <p>
2793   This tab contains settings that affect behavior in the <dfn>Editor</dfn>
2794   window when <a href="/editing-and-arranging">Editing and Arranging</a>.
2795 </p>
2796
2797 <img src="/images/a4_preferences_editor.png" alt="preferences
2798 editor tab"/>
2799
2800 <ul>
2801   <li>
2802     <p>
2803       <strong>Allow dragging of the playhead</strong>, when enabled, allows
2804       dragging the playhead with the mouse in the <strong>Editor</strong> window.
2805     </p>
2806   </li>
2807   <li>
2808     <p>
2809       <strong>Move relevant automation when audio regions are moved</strong>,
2810       when enabled, causes automation data to stay with a region when the
2811       region is moved inside the playlist. When disabled, the automation is
2812       not affected by movement of regions.
2813     </p>
2814   </li>
2815   <li>
2816     <p>
2817       <strong>Show meters on tracks in the editor</strong>, when enabled, shows
2818       a small meter in the <strong>Editor</strong> window with each track. The
2819       meter is shown in the left side area along with the track name and buttons.
2820     </p>
2821   </li>
2822   <li>
2823     <p>
2824       <strong>Display master-meter in the toolbar</strong> when enabled displays
2825       a small copy of the master bus meter in the toolbar.
2826     </p>
2827   </li>
2828   <li>
2829     <p>
2830       <strong>Default fade shape:</strong> sets which
2831       <a href="/editing-and-arranging/create-region-fades-and-crossfades/">
2832         fade shape</a> is the default.
2833     </p>
2834   </li>
2835   <li>
2836     <p>
2837       <strong>Regions in active edit groups are edited together:</strong> sets
2838       the criteria to see if editing actions apply to tracks grouped together
2839       in an active group.
2840     </p>
2841   </li>
2842   <li>
2843     <p>
2844       <strong>Make rubberband selection rectangle snap to the grid</strong> when
2845       enabled uses the grid when
2846       <a href="/editing-and-arranging/select-regions/">selecting regions</a>
2847       with a rubberband rectangle.
2848     </p>
2849   </li>
2850   <li>
2851     <p>
2852       <strong>Show waveforms in regions</strong> when enabled shows a visual
2853       representation of the region's audio waveform. Changes to this setting
2854       take affect after restarting Ardour.
2855     </p>
2856   </li>
2857   <li>
2858     <p>
2859       <strong>Show gain envelopes in audio regions:</strong> sets the criteria
2860       for displaying the gain envelope in audio regions.
2861     </p>
2862   </li>
2863   <li>
2864     <p>
2865       <strong>Waveform scale:</strong> when waveforms are shown in audio region
2866       they can be displayed using a <em>linear</em> or a <em>logarithmic</em>
2867       scale.
2868       See <a href="/working-with-tracks/controlling-track-appearance/waveform-display/">
2869         Waveform disply</a>.
2870     </p>
2871   </li>
2872   <li>
2873     <p>
2874       <strong>Waveform shape:</strong> when waveforms are shown in audio region
2875       they can be displayed using a <em>traditional</em> or a <em>rectified</em>
2876       shape.
2877       See <a href="/working-with-tracks/controlling-track-appearance/waveform-display/">
2878         Waveform disply</a>.
2879     </p>
2880   </li>
2881   <li>
2882     <p>
2883       <strong>Waveform Clip Level (dBFS):</strong> sets the level at which the
2884       waveform shown in an audio region will be drawn in red to indicate
2885       clipping. Setting lower than 0.0&nbsp;dBFS can be useful if any tool in
2886       the audio chain has problems near 0.0&nbsp;dBFS.
2887     </p>
2888   </li>
2889   <li>
2890     <p>
2891       <strong>Show waveform for audio while it is being recorded</strong> when
2892       enabled, will draw the audio waveform in regions being recorded.  When
2893       disabled only a region block will be drawn while recording reducing CPU
2894       requirements.
2895     </p>
2896   </li>
2897   <li>
2898     <p>
2899       <strong>Show zoom toolbar</strong> when enabled shows a toolbar for
2900       zoom functions.  When disabled the zoom commands are still available
2901       with keyboard short-cuts and the View menu. Changes to this setting
2902       take affect after restarting Ardour.
2903     </p>
2904   </li>
2905   <li>
2906     <p>
2907       <strong>Update editor window during drags of the summary</strong> when
2908       enabled the contents of the editor window will redraw the tracks area
2909       as the selection rectangle in the summary area is moved or resized. The
2910       summary area is at the bottom of the editor and shows an overview of all
2911       regions on the timelime.
2912     </p>
2913   </li>
2914   <li>
2915     <p>
2916       <strong>Name new markers</strong> when enabled, popup a dialog when a new
2917       <a href="/working-with-markers/">marker</a> is created. This allows
2918       markers to be named as they are created.
2919     </p>
2920   </li>
2921   <li>
2922     <p>
2923       <strong>Auto-scroll editor window when dragging near its edges</strong>
2924       when enabled will scroll the editor window automatically when dragging a
2925       region. This can make it easier to see where to position the region.
2926     </p>
2927   </li>
2928   <li>
2929     <p>
2930       <strong>After splitting selected regions, select</strong> determines which,
2931       if any, regions are selected after a split operation. The options are no
2932       regions, the regions created by the split, and if more than one region
2933       was selected to start with, the existing selection and the new regions.
2934       Changes to this setting take affect after restarting Ardour.
2935     </p>
2936   </li>
2937 </ul>
2938
2939 ---
2940 title: Audio Tab
2941 menu_title: Audio Tab
2942 part: subchapter
2943 ---
2944
2945 <p>
2946   This tab contains settings for handling audio.
2947 </p>
2948
2949 <img src="/images/a4_preferences_audio.png" alt="preferences
2950 audio tab"/>
2951
2952 <ul>
2953   <li>
2954     <p>
2955       <strong>Buffering</strong> settings determine how many seconds of audio
2956       off of disk will be buffered in memory. Longer settings reduce the risk
2957       of buffer under-runs but consume more memory. The default value is
2958       5.0&nbsp;seconds.
2959     </p>
2960
2961     <ul>
2962       <li>
2963         <p>
2964           <strong>Playback</strong> sets how many seconds of audio Ardour will
2965           buffer during playback.
2966         </p>
2967       </li>
2968       <li>
2969         <p>
2970           <strong>Recording</strong> sets how many seconds of audio Ardour will
2971           buffer during recording.
2972         </p>
2973       </li>
2974     </ul>
2975   </li>
2976
2977   <li>
2978     <p>
2979       <strong>Monitoring</strong>
2980     </p>
2981     <ul>
2982       <li>
2983         <p>
2984           <strong>Record monitoring handled by:</strong> determines whether
2985           Ardour provides monitoring of incoming audio or whether
2986           monitoring is provided by hardware.  See
2987           <a href="/recording/monitoring/">Monitoring</a> for more information.
2988         </p>
2989       </li>
2990       <li>
2991         <p>
2992           <strong>Tape machine mode</strong> when enabled defaults new audio
2993           tracks to tape machine mode. See
2994           <a href="/working-with-tracks/track-types/">Track Types</a>
2995           for more information.
2996         </p>
2997       </li>
2998     </ul>
2999   </li>
3000
3001   <li>
3002     <p>
3003     <strong>Conection of tracks and busses</strong>
3004     </p>
3005     <ul>
3006       <li>
3007         <p>
3008           <strong>Auto-connect master/monitor busses</strong>
3009         </p>
3010       </li>
3011       <li>
3012         <p>
3013           <strong>Connect track inputs:</strong>
3014         </p>
3015       </li>
3016       <li>
3017         <p>
3018           <strong>Connect track and bus outputs:</strong>
3019         </p>
3020       </li>
3021     </ul>
3022   </li>
3023
3024   <li>
3025     <p>
3026     <strong>Denormals</strong> are a specific type of very small numbers that
3027     can cause issues with CPU consumption when using some plugins in some
3028     circumstances.
3029     </p>
3030     <p>
3031       Ardour provides two methods of handling the issue. Try different
3032       combinations of these settings to to find the setting that minimizes CPU
3033       consumption.
3034     </p>
3035     <ul>
3036       <li>
3037         <p>
3038           <strong>Use DC bias to protect against denormals</strong> adds a small
3039           constant value to numbers to move the numbers away from zero.
3040         </p>
3041       </li>
3042       <li>
3043         <p>
3044           <strong>Processor handling</strong>, if the computer's hardware
3045           supports it, offers two methods that can be used individually or
3046           combined. Flush to zero and denormals are zero.
3047         </p>
3048       </li>
3049     </ul>
3050   </li>
3051
3052   <li>
3053     <p>
3054     <strong>Plugins</strong>
3055     </p>
3056     <ul>
3057       <li>
3058         <p>
3059           <strong>Silence plugins when the transport is stopped</strong>
3060         </p>
3061       </li>
3062       <li>
3063         <p>
3064           <strong>Make new plugins active</strong> when enabled, will activate
3065           a plugin when it is added to a track or bus
3066           <a href="/working-with-plugins/processor-box/">Processor Box</a>.
3067         </p>
3068       </li>
3069     </ul>
3070   </li>
3071
3072   <li>
3073     <p>
3074     <strong>Regions</strong>
3075     </p>
3076     <ul>
3077       <li>
3078         <p>
3079           <strong>Enable automatic analysis of audio</strong>
3080         </p>
3081       </li>
3082       <li>
3083         <p>
3084           <strong>Replicate missing region channels</strong>
3085         </p>
3086       </li>
3087     </ul>
3088   </li>
3089 </ul>
3090
3091 ---
3092 title: Solo/Mute Tab
3093 menu_title: Solo/Mute Tab
3094 part: subchapter
3095 ---
3096
3097 <p>
3098   This tab contains settings that affect the use of
3099   <a href="/mixing/muting-and-soloing/">solo, muting</a>, and
3100   <a href="/mixing/panning/">panning</a>.
3101 </p>
3102
3103 <img src="/images/a4_preferences_solomute.png" alt="preferences
3104 solo/mute tab"/>
3105
3106 <ul>
3107   <li>
3108     <p>
3109       <strong>Solo</strong>
3110     </p>
3111     <ul>
3112       <li>
3113         <p>
3114           <strong>Solo-in-place mute cut</strong> sets the attenuation of the
3115           the other tracks when another track is soloed in place. This setting
3116           is also available from the <strong>Mixer</strong> monitor section.
3117         </p>
3118       </li>
3119       <li>
3120         <p>
3121           <strong>Solo controls are Listen controls</strong> when enabled the
3122           soloed track is soloed only on the monitor bus, the master fader mix
3123           is not affected by the solo. This option can also be set by enabling
3124           pre-fader listen or after-fader listen in the <strong>Mixer</strong>
3125           monitor section.
3126         </p>
3127       </li>
3128       <li>
3129         <p>
3130           <strong>Listen Position:</strong> determines what is listened to when
3131           the solo controls are used as listen controls. The options are
3132           after-fader or pre-fader.
3133         </p>
3134       </li>
3135       <li>
3136         <p>
3137           <strong>PFL signals come from:</strong> determines whether the
3138           pre-fader listen position is before or after the pre-fader processors.
3139         </p>
3140       </li>
3141       <li>
3142         <p>
3143           <strong>AFL signals come from:</strong> determines whether the
3144           after-fader listen position is before or after the after-fader
3145           processors.
3146         </p>
3147       </li>
3148       <li>
3149         <p>
3150           <strong>Exclusive solo</strong> when enabled will only solo that last
3151           track selected for solo. Previously soloed tracks will be un-soloed.
3152           This setting is also available from the <strong>Mixer</strong> monitor
3153           section.
3154         </p>
3155       </li>
3156       <li>
3157         <p>
3158           <strong>Show solo muting</strong> when enabled outlines the mute
3159           button on tracks and busses when another track is soloed.
3160         </p>
3161       </li>
3162       <li>
3163         <p>
3164           <strong>Soloing overrides muting</strong> when enabled allows a track
3165           to be heard when it is soloed while muted. This setting is also
3166           available from the <strong>Mixer</strong> monitor section.
3167         </p>
3168       </li>
3169     </ul>
3170   </li>
3171
3172   <li>
3173     <p>
3174       <strong>Default track/bus muting options</strong> sets the muting options
3175       for a newly created tracks or bus. The mute options for an existing track
3176       or bus are changed by the right-click context menu on a mute button.
3177     </p>
3178     <ul>
3179       <li>
3180         <p>
3181           <strong>Mute affects pre-fader sends</strong> when enabled pre-fader
3182           sends will be muted by default.
3183         </p>
3184       </li>
3185       <li>
3186         <p>
3187           <strong>Mute affects post-fader sends</strong> when enabled post-fader
3188           sends will be muted by default.
3189         </p>
3190       </li>
3191       <li>
3192         <p>
3193           <strong>Mute affects control outputs</strong> when enabled control
3194           outputs are muted by default.
3195         </p>
3196       </li>
3197       <li>
3198         <p>
3199           <strong>Mute affects main outputs</strong> when enabled main outputs
3200           are muted by default.
3201         </p>
3202       </li>
3203     </ul>
3204   </li>
3205
3206   <li>
3207     <p>
3208       <strong>Send Routing</strong> affects
3209       <a href="/signal-routing/aux-sends/">aux and external sends</a>.
3210     </p>
3211     <ul>
3212       <li>
3213         <p>
3214           <strong>Link panners of Aux and External Sends with main panner by
3215             default</strong> When enabled, sends follow the channel panner.
3216         </p>
3217         <p>
3218           When disabled, sends can panned independently of the channel panner
3219           and fader. Double clicking the send in the processor box toggles
3220           the main panner and fader between the aux send and the channel.
3221         </p>
3222       </li>
3223     </ul>
3224   </li>
3225 </ul>
3226
3227 ---
3228 title: MIDI Tab
3229 menu_title: MIDI Tab
3230 part: subchapter
3231 ---
3232
3233 <p>
3234   This tab contains settings related to the use of MIDI inside Ardour.
3235 </p>
3236
3237 <img src="/images/a4_preferences_midi.png" alt="preferences
3238 MIDI tab"/>
3239
3240 <ul>
3241   <li>
3242     <p>
3243       <strong>MIDI read-ahead time</strong>
3244     </p>
3245   </li>
3246
3247   <li>
3248     <p>
3249       <strong>Send MIDI Clock</strong> when enabled Ardour will generate MIDI
3250       clock on the <code>ardour:MIDI clock out</code> JACK port.
3251     </p>
3252   </li>
3253
3254   <li>
3255     <p>
3256       <strong>Send MIDI Time Code</strong> when enabled Ardour will generate MIDI
3257       time code on the <code>ardour:MTC out</code> JACK port.
3258     </p>
3259   </li>
3260
3261   <li>
3262     <p>
3263       <strong>Percentage either side of normal transport speed to transmit MTC:</strong> MIDI time code generation will be disabled when the transport speed is
3264       greater than normal sped plus this percentage or less than normal minus
3265       this percentage.
3266     </p>
3267   </li>
3268
3269   <li>
3270     <p>
3271       <strong>Obey MIDI Machine Control commands</strong> when enabled Ardour
3272       will respond to MIDI Machine Control commands received on the
3273       <code>ardour:MMC in</code> JACK port.
3274     </p>
3275   </li>
3276
3277   <li>
3278     <p>
3279       <strong>Send MIDI Machine Control commands</strong> when enabled Ardour
3280       will send MIDI Machine Control commands on the <code>ardour:MMC out</code>
3281       JACK port.
3282     </p>
3283   </li>
3284
3285   <li>
3286     <p>
3287       <strong>Send MIDI control feedback</strong>
3288     </p>
3289   </li>
3290
3291   <li>
3292     <p>
3293       <strong>Inbound MMC device ID:</strong> is the only device ID Ardour will
3294       respond to when an MMC command is received on the
3295       <code>ardour:MMC in</code> JACK port.
3296     </p>
3297   </li>
3298
3299   <li>
3300     <p>
3301       <strong>Outbound MMC device ID:</strong> is the MIDI device ID Ardour will
3302       use when it sends MMC commands.
3303     </p>
3304   </li>
3305
3306   <li>
3307     <p>
3308       <strong>Initial program change:</strong> Ardour will send a MIDI program
3309       change message on the <code>ardour:MMC out</code> JACK port when a session
3310       is loaded and whenever this field is changed. A value of -1 is for don't
3311       send any program change message.
3312     </p>
3313   </li>
3314
3315   <li>
3316     <p>
3317       <strong>Display first MIDI bank/program as 0</strong>
3318     </p>
3319   </li>
3320
3321   <li>
3322     <p>
3323       <strong>Never display periodic MIDI messages</strong>
3324     </p>
3325   </li>
3326
3327   <li>
3328     <p>
3329       <strong>Sound MIDI notes as they are selected</strong>
3330     </p>
3331   </li>
3332
3333   <li>
3334     <p>
3335       <strong>Midi Audition Synth</strong>
3336     </p>
3337   </li>
3338 </ul>
3339
3340 ---
3341 title: User Interaction Tab
3342 menu_title: User Interaction Tab
3343 part: subchapter
3344 ---
3345
3346 <p>
3347   This tab contains settings that affect the user's interaction with
3348   <a href="/ardours-interface">Ardours interface</a>.
3349 </p>
3350
3351 <img src="/images/a4_preferences_interaction.png" alt="preferences
3352 user interaction tab"/>
3353
3354 <ul>
3355   <li>
3356     <p>
3357       <strong>Use translations</strong>
3358     </p>
3359   </li>
3360   <li>
3361     <p>
3362       <strong>Keyboard</strong>
3363     </p>
3364     <ul>
3365       <li>
3366         <p>
3367           <strong>Edit using:</strong> Use this keyboard and mouse combination
3368           to edit a region's name, and for audio, the region gain.
3369         </p>
3370       </li>
3371       <li>
3372         <p>
3373           <strong>Delete using:</strong>
3374         </p>
3375       </li>
3376       <li>
3377         <p>
3378           <strong>Insert note using</strong> Using this mouse and keyboard
3379           combination allows MIDI note drawing while the <strong>Editor</strong>
3380           is in edit mode.
3381         </p>
3382       </li>
3383       <li>
3384         <p>
3385           <strong>Ignore snap using:</strong> This mouse and keyboard combination
3386           temporarily changes the
3387           <a href="/editing-and-arranging/snap-to-the-grid/">snap mode</a> to
3388           <strong>No Grid</strong>.
3389         </p>
3390       </li>
3391       <li>
3392         <p>
3393           <strong>Keyboard layout:</strong>
3394         </p>
3395       </li>
3396     </ul>
3397   </li>
3398 </ul>
3399
3400 ---
3401 title: Control Surfaces Tab
3402 menu_title: Control Surfaces Tab
3403 part: subchapter
3404 ---
3405
3406 <p>
3407   This tab contains settings for control surfaces. Also see
3408   <a href="/using-control-surfaces/">Using Control Surfaces</a>.
3409 </p>
3410
3411 <img src="/images/a4_preferences_control_surfaces.png" alt="preferences
3412 control surfaces tab"/>
3413
3414 <p>
3415   Enable a <dfn>Control Surface Protocol</dfn> and double-click on it to edit
3416   protocol specific  settings. Enable feedback to allow Ardour to send position
3417   information back to a control surface.
3418 </p>
3419
3420 <p>
3421   <strong>Control surface remote ID:</strong> can follow the order of the mixer
3422   or be user assigned.
3423 </p>
3424
3425 ---
3426 title: Video Tab
3427 menu_title: Video Tab
3428 part: subchapter
3429 ---
3430
3431 <p>
3432   This tab contains settings related to handling of Video.
3433 </p>
3434
3435 <img src="/images/a4_preferences_video.png" alt="preferences
3436 video tab"/>
3437
3438 <ul>
3439   <li>
3440     <p>
3441       <strong>Advanced Setup (remote video server)</strong>
3442     </p>
3443     <ul>
3444       <li>
3445         <p>
3446           <strong>Video Server URL:</strong>
3447         </p>
3448       </li>
3449       <li>
3450         <p>
3451           <strong>Video Folder:</strong>
3452         </p>
3453       </li>
3454     </ul>
3455   </li>
3456   <li>
3457     <p>
3458       <strong>Show Video Export Info before export</strong>
3459     </p>
3460   </li>
3461   <li>
3462     <p>
3463       <strong>Show Video Server Startup Dialog</strong>
3464     </p>
3465   </li>
3466 </ul>
3467
3468 ---
3469 title: Plugins Tab
3470 menu_title: Plugins Tab
3471 part: subchapter
3472 ---
3473
3474 <p>
3475   This tab contains settings that control the discovery and availability of
3476   plugins.
3477 </p>
3478
3479 <img src="/images/a4_preferences_plugins.png" alt="preferences
3480 plugins tab"/>
3481
3482 <ul>
3483   <li>
3484     <p>
3485       <strong>General</strong>
3486     </p>
3487     <ul>
3488       <li>
3489         <p>
3490           <strong>Scan for Plugins</strong> will initiate an immediate scan of
3491           the system for available plugins.
3492         </p>
3493       </li>
3494       <li>
3495         <p>
3496           <strong>Always Display Plugin Scan Progress</strong> When enabled a
3497           popup window showing plugin scan progress is displayed for indexing
3498           (cache load) and discovery (detect new plugins).
3499         </p>
3500       </li>
3501       <li>
3502         <p>
3503           <strong>Scan Time Out</strong> Specify the default timeout for plugin
3504           instantiation in 1/10 seconds. Plugins that require more time to load
3505           will be blacklisted. A value of 0 disables the timeout.
3506         </p>
3507       </li>
3508     </ul>
3509   </li>
3510
3511   <li>
3512     <p>
3513       <strong>VST</strong>
3514     </p>
3515     <ul>
3516       <li>
3517         <p>
3518           <strong>Clear VST Cache</strong> Remove all VST plugins from the list
3519           of plugins available to be inserted into the processor box.
3520         </p>
3521       </li>
3522       <li>
3523         <p>
3524           <strong>Clear VST Blacklist</strong> Make blacklisted VST plugins
3525           available to be added to the processor box.
3526         </p>
3527       </li>
3528       <li>
3529         <p>
3530           <strong>Scan for [new] VST Plugins on Application Start</strong> When
3531           enabled new VST plugins are searched, tested and added to the cache
3532           index on application start. When disabled new plugins will only be
3533           available after triggering a 'Scan' manually.
3534         </p>
3535       </li>
3536       <li>
3537         <p>
3538           <strong>Linux VST Path:</strong> Launch a dialog to manage the
3539           directories that will be searched for Linux VST plugins.
3540         </p>
3541       </li>
3542     </ul>
3543   </li>
3544 </ul>
3545
3546 ---
3547 title: GUI Tab
3548 menu_title: GUI Tab
3549 part: subchapter
3550 ---
3551
3552 <p>
3553   This tab contains settings that affect
3554   <a href="/ardours-interface/">Ardour's Interface</a>.
3555 </p>
3556
3557 <img src="/images/a4_preferences_gui.png" alt="preferences
3558 gui tab"/>
3559
3560 <ul>
3561   <li>
3562     <p>
3563       <strong>Graphically indicate mouse pointer hovering</strong>
3564     </p>
3565   </li>
3566   <li>
3567     <p>
3568       <strong>Use name highlight bars in region display</strong> When enabled the
3569       region name is displayed, in the editor,  in it's own bar at the bottom of
3570       the region. When disabled, the region name is display at the top of the
3571       region, possibly over audio waveforms or MIDI notes.
3572     </p>
3573   </li>
3574   <li>
3575     <p>
3576       <strong>Font scaling</strong> allows the display size of some text in the
3577       user interface to be scaled up or down. May require a restart to take
3578       affect.
3579     </p>
3580   </li>
3581   <li>
3582     <p>
3583       <strong>Update transport clock display at FPS</strong> when enabled the transport clock
3584       will update at the synchronization framerate instead of the default 100&nbsp;ms rate.
3585     </p>
3586   </li>
3587   <li>
3588     <p>
3589       <strong>Lock timeout</strong> Lock GUI after this many idle seconds (zero to never
3590       lock). GUI may also be locked with <kbd class="menu">Session &gt; Lock</kbd>. When
3591       locked a dialog will display a &quot;Click to unlock&quot; button.
3592     </p>
3593   </li>
3594   <li>
3595     <p>
3596       <strong>Mixer Strip</strong> Enable (checked) or disable (unchecked) display of
3597       controls in the mixer strip. Controls whose display can be toggled are
3598       <strong>Input</strong>, <strong>Phase&nbsp;Invert</strong>,
3599       <strong>Record&nbsp;&amp;&nbsp;Monitor</strong>, <strong>Solo&nbsp;Iso/Lock</strong>,
3600       <strong>Output</strong>, and <strong>Comments</strong>.
3601     </p>
3602   </li>
3603   <li>
3604     <p>
3605       <strong>Use narrow strips in the mixer by default</strong> When enabled, new mixer
3606       strips are created in narrow format. When disabled, they are created in wide format.
3607       Existing mixer strips width can be toggled with the width control at the top left of
3608       the mixer stip.
3609     </p>
3610   </li>
3611 </ul>
3612
3613 ---
3614 title: Metering Tab
3615 menu_title: Metering Tab
3616 part: subchapter
3617 ---
3618
3619 <p>
3620   This tab contains settings that affect <a href="/ardours-interface/meters/">
3621     Metering</a> in Ardour.
3622 </p>
3623
3624 <img src="/images/a4_preferences_metering.png" alt="preferences
3625 metering tab"/>
3626
3627 <ul>
3628   <li>
3629     <p>
3630       <strong>Peak hold time:</strong> Some meter types that have a peak
3631       indicator that has a user controlled hold time. The options are off, short,
3632       medium, or long.
3633     </p>
3634   </li>
3635   <li>
3636     <p>
3637       <strong>DPM fall-off:</strong>
3638     </p>
3639   </li>
3640   <li>
3641     <p>
3642       <strong>Meter line-up level; 0&nbsp;dBu:</strong>
3643     </p>
3644   </li>
3645   <li>
3646     <p>
3647       <strong>IEC1/DIN Meter line-up level; 0&nbsp;dBu:</strong>
3648     </p>
3649   </li>
3650   <li>
3651     <p>
3652       <strong>VU Meter standard:</strong>
3653     </p>
3654   </li>
3655   <li>
3656     <p>
3657       <strong>Peak threshold[dBFS]:</strong>
3658     </p>
3659   </li>
3660   <li>
3661     <p>
3662       <strong>LED meter style</strong>
3663     </p>
3664   </li>
3665 </ul>
3666
3667 ---
3668 title: Theme Tab
3669 menu_title: Theme Tab
3670 part: subchapter
3671 ---
3672
3673 <p>
3674   This tab contains settings that change the visual appearence of Ardour.
3675 </p>
3676
3677 <img src="/images/a4_preferences_theme.png" alt="preferences
3678 theme tab"/>
3679
3680 <ul>
3681   <li>
3682     <p>
3683       <strong>Restore Defaults</strong> When clicked will change all settings
3684       on the Theme tab back to Ardour's default values.
3685     </p>
3686   </li>
3687   <li>
3688     <p>
3689       <strong>All floating windows are dialogs</strong> When enabled Ardour will
3690       use type &quot;Dialog&quot; for all floating windows instead of using type
3691       &quot;Utility&quot; for some of them. This may help usability with some
3692       window managers. This setting requires a restart of Ardour to take effect.
3693     </p>
3694   </li>
3695   <li>
3696     <p>
3697       <strong>Transient windows follow front window</strong> When enabled
3698       transient windows will follow the front window when toggling between the
3699       editor and mixer. This setting requires a restart of Ardour to take effect.
3700     </p>
3701   </li>
3702   <li>
3703     <p>
3704       <strong>Draw &quot;flat&quot; buttons</strong> When enabled button controls
3705       in the user interface will be drawn with a flat look. When disabled button
3706       controls will have a slight 3D appearence.
3707     </p>
3708   </li>
3709   <li>
3710     <p>
3711       <strong>Blink Rec-Arm buttons</strong> When enabled the record-armed
3712       buttons on tracks will blink when they are armed but not currently
3713       recording. When disabled the record-armed buttons on tracks will be
3714       outlined in red instead of blinking.
3715     </p>
3716   </li>
3717   <li>
3718     <p>
3719       <strong>Color regions using their track's color</strong> When enabled
3720       the background color of regions in the editor will be displayed using the
3721       the color assigned to the track. When disabled the default region
3722       background color will be used.
3723     </p>
3724   </li>
3725   <li>
3726     <p>
3727       <strong>Show waveform clipping</strong> When enalbled the waveform
3728       displayed will show peaks marked in red if they exceed the clip level. The
3729       Waveform Clip Level is set with a slider on the Preferences
3730       <a href="/preferences-and-session-properties/preferences-dialog/editor/">
3731         Editor tab</a>
3732     </p>
3733   </li>
3734   <li>
3735     <p>
3736       <strong>Icon Set</strong> Changes the mouse cursor icons used to indicate
3737       different tool modes in the editor. An example would be the icons used to
3738       indicate whether the cursor will select a region or change the length of a
3739       region.
3740     </p>
3741   </li>
3742   <li>
3743     <p>
3744       <strong>Waveforms color gradient depth</strong> Determines how much
3745       gradient effect is applied to audio waveforms displayed in the editor.
3746       Values range from 0.00, no graident effect, to 0.95, maximum effect.
3747     </p>
3748   </li>
3749   <li>
3750     <p>
3751       <strong>Timeline item gradient depth</strong> Determines how much
3752       gradient effect is applied to the backgrounds of regions displayed in the
3753       editor. Values range from 0.00, no graident effect, to 0.95, maximum
3754       effect.
3755     </p>
3756   </li>
3757   <li>
3758     <p>
3759       <strong>Colors</strong> The color of an item in the user interface is
3760       determined by which named color is assigned to it, the color displayed for
3761       each named color in the palette, and in some cases, the transparency of
3762       stacked items.
3763     </p>
3764     <ul>
3765       <li>
3766         <p>
3767           <strong>Items</strong> Each display item has a named color assigned to
3768           it from the palette. Example color names are
3769           &quot;meter&nbsp;color9&quot; and &quot;color&nbsp;4&quot;.
3770         </p>
3771         <p>
3772           Click on an item's color example to change the named color choice.
3773         </p>
3774       </li>
3775       <li>
3776         <p>
3777           <strong>Palette</strong> Hover over a color to display it's name. Click
3778           on a color to open a color chooser dialog.
3779         </p>
3780       </li>
3781       <li>
3782         <p>
3783           <strong>Transparency</strong> Some items have a transparency value.
3784           Transparency can be changed from opaque to totally transparent.
3785         </p>
3786       </li>
3787     </ul>
3788   </li>
3789 </ul>
3790
3791 ---
3792 title: Session Properties Dialog
3793 menu_title: Session Properties
3794 part: subchapter
3795 ---
3796
3797 <img src="/images/a4_session_properties_timecode.png" alt="session properties dialog"/>
3798
3799 <p>
3800   This dialog allows you to change settings for the current session. These
3801   settings are initially set from the template used to create the session. To
3802   open the dialog use <kbd class="menu">Session &gt; Properties</kbd>
3803 </p>
3804
3805 ---
3806 title: Timecode Tab
3807 menu_title: Timecode Tab
3808 part: subchapter
3809 ---
3810
3811 <img src="/images/a4_session_properties_timecode.png" alt="session properties timecode tab"/>
3812
3813 <p>
3814   This tab is used to change how Ardour interprets and manipulates timecode.
3815 </p>
3816
3817 <ul>
3818   <li>
3819     Timecode Settings lets you set the number of frames per second 
3820     and pull up/down to match the timecode used other synchronized systems. 
3821   </li>
3822   <li>
3823     External Timecode Offsets allows Ardour to a fixed offset from other
3824     synchronized systems. <dfn>Slave Timecode offset</dfn> adds the 
3825     specified offset to the recieved timecode (MTC or LTC). 
3826     <dfn>Timecode Generator offset</dfn> adds the specified offset to
3827     the timecode generated by Ardour (so far only LTC).
3828   </li>
3829   <li>
3830     Jack Transport / Time Settings determines whether Ardour controls
3831     Bar|Beat|Tick and other information for Jack.
3832   </li>
3833 </ul>
3834
3835 ---
3836 title: Sync Tab
3837 menu_title: Sync Tab
3838 part: subchapter
3839 ---
3840
3841 <img src="/images/a4_session_properties_sync.png" alt="session properties sync tab"/>
3842
3843 <p>
3844   This tab is used to modify the timecode settings when working with video to 
3845   use the imported video's timecode settings instead of the session defaults.
3846 </p>
3847
3848 ---
3849 title: Fades Tab
3850 menu_title: Fades Tab
3851 part: subchapter
3852 ---
3853
3854 <img src="/images/a4_session_properties_fades.png" alt="session properties fades tab"/>
3855
3856 <p>
3857   Change how Ardour works with region crossfades.
3858 </p>
3859
3860 <ul>
3861   <li>
3862     <dfn>Destructive crossfade length</dfn> is used when an operation on a 
3863     region is destructive, such as when recording in a track is in tape mode.
3864   </li>
3865   <li>
3866     When <dfn>Region fades</dfn> <strong>active</strong> is checked, the 
3867     region fades set up in the mixer are used during playback.  When unchecked, 
3868     the fades are ignored.
3869   </li>
3870   <li>
3871     When <strong>Region fades visible</strong> is checked the region fades are visible
3872     in the the <strong>Editor</strong>.
3873   </li>
3874 </ul>
3875
3876 ---
3877 title: Media Tab
3878 menu_title: Media Tab
3879 part: subchapter
3880 ---
3881
3882 <img src="/images/a4_session_properties_media.png" alt="session properties media tab"/>
3883
3884 <p>
3885   Change how sound is stored on disk. These options do not change how sound is handled
3886   internally.
3887 </p>
3888
3889 <ul>
3890   <li>
3891     <dfn>Sample format</dfn> defaults to 32-bit floating point, the same as 
3892     the internal representation. 24 and 16-bit integer representation are 
3893     also available.
3894   </li>
3895   <li>
3896     <strong>File type</strong> options are WAVE,  WAVE-64, and CAF.
3897   </li>
3898 </ul>
3899
3900 ---
3901 title: Locations Tab
3902 menu_title: Locations Tab
3903 part: subchapter
3904 ---
3905
3906 <img src="/images/a4_session_properties_locations.png" alt="session properties locations tab"/>
3907
3908 <p>
3909   These options add file locations that will be searched to find the audio and 
3910   midi files used by the session. This is useful when the files have been 
3911   imported into the session but not copied into the session.
3912 </p>
3913
3914 <p>
3915   To add a location, navigate to the directory where the files are stored.  
3916   Drill down into the directory and then click open.  The directory will
3917   show up in the dialog.  The remove button next to the added directory can be used
3918   to remove it from the search path.
3919 </p>
3920
3921 ---
3922 title: Filenames Tab
3923 menu_title: Filenames Tab
3924 part: subchapter
3925 ---
3926
3927 <img src="/images/a4_session_properties_filenames.png" alt="session properties filenames tab"/>
3928
3929 <p>
3930   This tab is used to change how Ardour names recorded regions. 
3931   If <dfn>Prefix track number</dfn> is selected a unique number will appear on each track 
3932   in the <dfn>Editor</dfn> window and will prefix the region name. If the track number 
3933   is 2 and the region would have been Gtr-1.1 with track number prefix turned on the region 
3934   will be named 2_Gtr-1.1 instead.  See XX for base of the region name.
3935 </p>
3936
3937 <p>
3938   If <dfn>Prefix take name</dfn> is selected and the <dfn>Take name</dfn> has Take1 the region
3939   will have the name Take1_Gtr-1.1 instead.  If both boxes are checked the name will be
3940   Take1_2_Gtr-1.1 instead.      
3941 </p>
3942
3943 <p>
3944   When <dfn>Prefix take name</dfn> is enabled, the first time a track is recorded it will
3945   have the specified take name.  When recording is stopped, any trailing number on the 
3946   end of the take name will incremented by 1. If the track name specified doen't have
3947   a number on the end, the number 1 will be suffixed.
3948 </p>
3949
3950 ---
3951 title: Monitoring Tab
3952 menu_title: Monitoring Tab
3953 part: subchapter
3954 ---
3955
3956 <p>
3957   Provides options affecting monitoring.
3958 </p>
3959
3960 <img src="/images/a4_session_properties_monitoring.png" alt="session properties monitoring tab"/>
3961
3962 <p>
3963   The <strong>Track Input Monitoring automatically follows transport state</strong>
3964   affects how input monitoring is handling. See 
3965   <a href="/recording/monitoring/monitor-setup-in-ardour/">Monitor Setup in Ardour</a>.
3966 </p>
3967
3968 <img class="left" src="/images/a4_monitoring_section.png" alt="monitoring section"/>
3969
3970 <p>
3971   The 'Use monitor section' displays an extra section in the <strong>Mixer</strong> 
3972   window that is modelled on the similiarly named section on large analog consoles.
3973 </p>
3974
3975 ---
3976 title: Meterbridge Tab
3977 menu_title: Meterbridge Tab
3978 part: subchapter
3979 ---
3980
3981 <p>
3982   The meters from audio tracks always display in the <dfn>Meterbridge</dfn>.
3983   This tab changes what additional controls are also displayed. 
3984 </p>
3985
3986 <img src="/images/a4_session_properties_meterbridge.png" alt="session properties meterbridge tab"/>
3987
3988 <ul>
3989   <li>
3990     <dfn>Route Display</dfn> has options for showing midi tracks, busses, and the master bus.
3991   </li>
3992   <li>
3993     <dfn>Button Area</dfn> has options for adding record enable, mute, solo, and input monitor buttons.
3994   </li>
3995   <li>
3996     <dfn>Name Labels</dfn> adds the track name and, if numbers are enabled on the filenames tab, the number.
3997   </li>
3998 </ul>
3999
4000 <img src="/images/a4_meterbridge_full.png" alt="image of meterbidge with all options on"/>
4001
4002 ---
4003 title: Misc Tab
4004 menu_title: Misc Tab
4005 part: subchapter
4006 ---
4007
4008 <p>
4009   This tab has several things that don't fit on the other tabs.
4010 </p>
4011
4012 <img src="/images/a4_session_properties_misc.png" alt="session properties misc tab"/>
4013
4014 <ul>
4015   <li>
4016     <dfn>MIDI Options</dfn>
4017     <ul>   
4018       <li>
4019         If <dfn>MIDI region copies are independent</dfn> is selected, when a 
4020         MIDI region is copied or duplicated, the new region is not linked to 
4021         the region it was copied from. If it is not selected, the copied regions 
4022         are linked and any editing of one of the linked regions changes all 
4023         of the linked regions. 
4024       </li>
4025       <li>
4026         The <dfn>Editor</dfn> can be configured to handle overlapping MIDI notes 
4027         several ways.
4028         <ul>
4029           <li>never allow them</li>
4030           <li>don't do anything in particular</li>
4031           <li>replace any overlapped existing notes</li>
4032           <li>shorten the overlapped existing note</li>
4033           <li>shorten the overlapped new note</li>
4034           <li>replace both overlapping notes with a single note</li>
4035         </ul>
4036       </li>
4037     </ul>
4038   </li>
4039   <li>
4040     <dfn>Glue to bars and beats</dfn>
4041     <ul>
4042       <li>New markers can be glued to bars and beats</li>
4043       <li>New regions can be glued to bars and beats</li>
4044     </ul>
4045   </li>
4046   <li>
4047     Settings from the session properties dialogs can be saved to the 
4048     default session template.
4049   </li>
4050 </ul>
4051
4052
4053 ---
4054 title: Peripherals
4055 part: chapter
4056 ---
4057
4058
4059 ---
4060 title: Controlling Ardour with OSC
4061 part: subchapter
4062 include: controlling-ardour-with-osc.html
4063 ---
4064
4065 ---
4066 title: Controlling Ardour with OSC (Ardour 4.7 and Prior)
4067 part: subchapter
4068 include: controlling-ardour-with-osc-4.7-and-prior.html
4069 ---
4070
4071 ---
4072 title: OSC Feedback With Ardour
4073 part: subchapter
4074 ---
4075
4076 <p>
4077   Feedback from the Ardour to the the control surface is very useful for
4078   a number of things. Motor faders need to know where the the track
4079   they have been attached to is at before they were assigned otherwise
4080   the DAW fader will jump to where the controller fader is. Likewise, 
4081   the buttons on each strip need to know what their value is so they can
4082   light their LED correctly. Transport controls should let you know if
4083   they are active too. This is what feedback is all about.
4084 </p>
4085
4086 <p>
4087   Ardour does feedback by sending the same path back that is used to
4088   control the same function. As such any controls that have feedback
4089   have a parameter that is the value of the control or it's state
4090   (on or off). In the case of OSC paths listed on the main OSC page
4091   as having no parameter, if they have feedback, they will also work
4092   with a 1 for button press and 0 for button release. This is because
4093   many OSC controllers will only use exactly the same path for feedback
4094   as for control. For example:
4095 </p>
4096
4097 <dl class="bindings">
4098   <dt><kbd class="osc">/transport_stop</kbd></dt>
4099   <dd></dd>
4100 </dl>
4101
4102 <p>can be used also in the form:</p>
4103
4104 <dl class="bindings">
4105   <dt><kbd class="osc">/transport_stop <em>press</em></kbd></dt>
4106   <dd>where <em>press</em> is an int/bool indicating if the button is pressed or not.</dd>
4107 </dl>
4108
4109 <p>
4110   The feedback does not have the same meaning as the control message.
4111   Where the button release sent to Ardour will be ignored and has no
4112   meaning. Both states have meaning in feedback to the controller.
4113   The feedback will be:
4114 </p>
4115
4116 <dl class="bindings">
4117   <dt><kbd class="osc">/transport_stop <em>state</em></kbd></dt>
4118   <dd>where <em>state</em> is an int/bool indicating if the transport is stopped or not.</dd>
4119 </dl>
4120 <p>
4121   With feedback turned on, OSC control commands that try to change a
4122   control that does not exist will get feedback that resets that control
4123   to off. For example, sending a /strip/recenable to a buss will not work
4124   and Ardour will try to turn the controller LED off in that case. Also
4125   note that Pan operation may be limited by pan width in some cases.
4126   That is with pan width at 100% (or -100%) there is no pan position
4127   movement available.
4128 </p>
4129 <p>
4130   It may come as a surprise, but feedback often generates more network
4131   traffic than control itself does. Some things are more obvious like
4132   head position or meters. But even a simple button push like transport
4133   start sends not only a signal to turn on the play LED, but also one to
4134   turn off the stop LED, the Rewind LED, the Fast Forward LED and the
4135   Loop LED. That is still minor, think instead of a surface refresh
4136   such as happens when the surface is first connected and then most of
4137   that happens every time the fader strips are banked. This is why
4138   feedback is enabled in sections so that as little feedback as is
4139   actually needed is sent. This is also a consideration if the surface
4140   is connected via wifi.
4141 </p>
4142 <h2>List of OSC feedback messages</h2>
4143
4144 <h3>Feedback only</h3>
4145 <p>
4146   These messages are feedback only. They are sent as status from Ardour
4147   and some of them may be enabled separately from other feedback. See:
4148   <a href="/using-control-surfaces/controlling-ardour-with-osc/calculating-feedback-and-strip-types-values/">
4149   Calculating Feedback and Strip-types Values.</a>
4150 </p>
4151 <p class="note">
4152   See strip section below for info about ssid and wrapping it into the
4153   path. Also /master and /monitor support what the /strip does.
4154 </p>
4155 <p>
4156   In the case where Gainmode is set to position, the track name will
4157   show the dB value while values are changing.
4158 </p>
4159 <dl class="bindings">
4160   <dt><kbd class="osc">/strip/name <em>ssid</em> <em>track_name</em></kbd></dt>
4161   <dd>where <em>track_name</em> is a string representing the name of the track</dd>
4162   <dt><kbd class="osc">/session_name <em>session_name</em></kbd></dt>
4163   <dd>where <em>session_name</em> is a string representing the name of the session</dd>
4164   <dt><kbd class="osc">/strip/meter <em>ssid</em> <em>meter</em></kbd></dt>
4165   <dd>where <em>meter</em> is a value repesenting the current audio level.
4166   (the exact math used is determined by the feedback bits set)</dd>
4167   <dt><kbd class="osc">/strip/signal <em>ssid</em> <em>signal</em></kbd></dt>
4168   <dd>where <em>signal</em> is a float indicating the instantaneous
4169   audio level is -40dB or higher.</dd>
4170   <dt><kbd class="osc">/position/smpte <em>time</em></kbd></dt>
4171   <dd>where <em>time</em> is a string with the current play head time. Seconds as per smpte.</dd>
4172   <dt><kbd class="osc">/position/bbt <em>beat</em></kbd></dt>
4173   <dd>where <em>beat</em> is a string with the current play head bar/beat.</dd>
4174   <dt><kbd class="osc">/position/time <em>time</em></kbd></dt>
4175   <dd>where <em>time</em> is a string with the current play head time. Seconds are in milliseconds</dd>
4176   <dt><kbd class="osc">/position/samples <em>samples</em></kbd></dt>
4177   <dd>where <em>samples</em> is a string with the current play head position in samples.</dd>
4178   <dt><kbd class="osc">/heartbeat <em>LED</em></kbd></dt>
4179   <dd>where <em>LED</em> is a float that cycles 1/0 at 1 second intervals.</dd>
4180   <dt><kbd class="osc">/record_tally <em>state</em></kbd></dt>
4181   <dd>Some record enable is true or "ready to record". For a "Recording" sign at studio door.</dd>
4182 </dl>
4183
4184 <h3>Transport Control</h3>
4185 <dl class="bindings">
4186   <dt><kbd class="osc">/transport_stop <em>state</em></kbd></dt>
4187   <dd><em>state</em> is true when transport is stopped</dd>
4188   <dt><kbd class="osc">/transport_play <em>state</em></kbd></dt>
4189   <dd><em>state</em> is true when transport speed is 1.0</dd>
4190   <dt><kbd class="osc">/ffwd <em>state</em></kbd></dt>
4191   <dd><em>state</em> is true when transport is moving forward but not at speed 1.0</dd>
4192   <dt><kbd class="osc">/rewind <em>state</em></kbd></dt>
4193   <dd><em>state</em> is true when transport speed is less than 0.0</dd>
4194   <dt><kbd class="osc">/loop_toggle <em>state</em></kbd></dt>
4195   <dd><em>state</em> is true when loop mode is true</dd>
4196   <dt><kbd class="osc">/cancel_all_solos <em>state</em></kbd></dt>
4197   <dd>Where <em>state</em> true indicates there are active solos that can be canceled.</dd>
4198 </dl>
4199
4200 <h3>Recording control</h3>
4201 <dl class="bindings">
4202   <!--dt><kbd class="osc">/toggle_punch_in</kbd></dt>
4203   <dd></dd>
4204   <dt><kbd class="osc">/toggle_punch_out</kbd></dt>
4205   <dd></dd-->
4206   <dt><kbd class="osc">/rec_enable_toggle <em>state</em></kbd></dt>
4207   <dd>Master record enabled.</dd>
4208 </dl>
4209
4210 <h3>Master and monitor strips</h3>
4211 <p>
4212   Master and monitor strips are similar to track strips but do not use
4213   the SSID. Rather they use their name as part of the path:
4214 </p>
4215 <dl class="bindings">
4216   <dt><kbd class="osc">/master/gain <em>dB</em></kbd></dt>
4217   <dd>where <em>dB</em> is a float ranging from -193 to +6 representing the actual gain of master in dB</dd>
4218   <dt><kbd class="osc">/master/fader  <em>position</em></kbd></dt>
4219   <dd>where <em>position</em> is an int ranging from 0 to 1023 representing the fader control position</dd>
4220   <dt><kbd class="osc">/master/trimdB <em>dB</em></kbd></dt>
4221   <dd>where <em>dB</em> is a float ranging from -20 to +20 representing the actual trim for master in dB</dd>
4222   <dt><kbd class="osc">/master/pan_stereo_position <em>position</em></kbd></dt>
4223   <dd>where <em>position</em> is a float ranging from 0 to 1 representing the actual pan position for master</dd>
4224   <dt><kbd class="osc">/master/mute  <em>yn</em></kbd></dt>
4225   <dd>where <em>yn</em> is a bool/int representing the actual mute state of the Master strip</dd>
4226   <dt><kbd class="osc">/monitor/gain <em>dB</em></kbd></dt>
4227   <dd>where <em>dB</em> is a float ranging from -193 to 6 representing the actual gain of monitor in dB</dd>
4228   <dt><kbd class="osc">/monitor/fader  <em>position</em></kbd></dt>
4229   <dd>where <em>position</em> is an int ranging from 0 to 1023 representing the fader control position</dd>
4230 </dl>
4231
4232 <h3>Track specific operations</h3>
4233 <p>
4234   For each of the following, <em>ssid</em> is the surface strip ID for the track
4235 </p>
4236 <p class="note">
4237   Some Surfaces (many Android applets) are not able to deal with more
4238   than one parameter in a command. However, the two parameter commands
4239   below can also be sent as /strip/command/ssid param. Feedback can be
4240   set to match this with the /set_surface/feedback <em>state</em>
4241   command. See <a
4242   href="/using-control-surfaces/controlling-ardour-with-osc/calculating-feedback-and-strip-types-values/">
4243   Calculating Feedback and Strip-types Values.</a>
4244 </p>
4245
4246 <dl class="bindings">
4247   <dt><kbd class="osc">/bank_up <em>LED</em></kbd></dt>
4248   <dd>where <em>LED</em> is a bool that indicates another bank_up operation is possible.</dd>
4249   <dt><kbd class="osc">/bank_down <em>LED</em></kbd></dt>
4250   <dd>where <em>LED</em> is a bool that indicates another bank_down operation is possible.</dd>
4251   <dt><kbd class="osc">/strip/name <em>ssid</em> <em>track_name</em></kbd></dt>
4252   <dd>where <em>track_name</em> is a string representing the name of the track 
4253   (note there is no coresponding command to set the track name)</dd>
4254   <dt><kbd class="osc">/strip/mute <em>ssid</em> <em>mute_st</em></kbd></dt>
4255   <dd>where <em>mute_st</em> is a bool/int representing the actual mute state of the track</dd>
4256   <dt><kbd class="osc">/strip/solo <em>ssid</em> <em>solo_st</em></kbd></dt>
4257   <dd>where <em>solo_st</em> is a bool/int representing the actual solo state of the track</dd>
4258   <dt><kbd class="osc">/strip/monitor_input <em>ssid</em> <em>monitor_st</em></kbd></dt>
4259   <dd>where <em>monitor_st</em> is a bool/int. True/1 meaning the track is force to monitor input</dd>
4260   <dt><kbd class="osc">/strip/monitor_disk <em>ssid</em> <em>monitor_st</em></kbd></dt>
4261   <dd>where <em>monitor_st</em> is a bool/int. True/1 meaning the track is force to monitor disk,
4262   where both disk and input are false/0, auto monitoring is used.</dd>
4263   <dt><kbd class="osc">/strip/recenable <em>ssid</em> <em>rec_st</em></kbd></dt>
4264   <dd>where <em>rec_st</em> is a bool/int representing the actual rec state of the track</dd>
4265   <dt><kbd class="osc">/strip/record_safe <em>ssid</em> <em>rec_st</em></kbd></dt>
4266   <dd>where <em>rec_st</em> is a bool/int representing the actual record safe state of the track</dd>
4267   <dt><kbd class="osc">/strip/gain <em>ssid</em> <em>gain</em></kbd></dt>
4268   <dd>where <em>gain</em> is a float ranging from -193 to 6 representing the actual gain of the track in dB.</dd>
4269   <dt><kbd class="osc">/strip/fader <em>ssid</em>  <em>position</em></kbd></dt>
4270   <dd>where <em>position</em> is an float ranging from 0 to 1 representing the actual fader position of the track.</dd>
4271   <dt><kbd class="osc">/strip/trimdB <em>ssid</em>  <em>trim_db</em></kbd></dt>
4272   <dd>where <em>trim_db</em> is a float ranging from -20 to 20 representing the actual trim of the track in dB.</dd>
4273   <dt><kbd class="osc">/strip/pan_stereo_position <em>ssid</em> <em>position</em></kbd></dt>
4274   <dd>where <em>position</em> is a float ranging from 0 to 1 representing the actual pan position of the track</dd>
4275 </dl>
4276 <h3>Selection Operations</h3>
4277 <p>
4278   Selection feedback is the same as for strips, only the path changes
4279   from <em>/strip</em> to <em>/select</em> and there is no <em>ssid</em>.
4280   there are some extra feedback and commands that will be listed here.
4281 </p>
4282 <dl class="bindings">
4283   <dt><kbd class="osc">/select/n_inputs <em>number</em></kbd></dt>
4284   <dd>where <em>number</em> number of inputs for this strip</dd>
4285   <dt><kbd class="osc">/select/n_outputs <em>number</em></kbd></dt>
4286   <dd>where <em>number</em> number of outputs for this strip</dd>
4287   <dt><kbd class="osc">/select/comment <em>text</em></kbd></dt>
4288   <dd>where <em>text</em> is the strip comment</dd>
4289   <dt><kbd class="osc">/select/solo_iso <em>state</em></kbd></dt>
4290   <dd>where <em>state</em> is a bool/int representing the Actual solo isolate state of the track</dd>
4291   <dt><kbd class="osc">/select/solo_safe <em>state</em></kbd></dt>
4292   <dd>where <em>state</em> is a bool/int representing the actual solo safe/lock state of the track</dd>
4293   <dt><kbd class="osc">/select/polarity <em>invert</em></kbd></dt>
4294   <dd>where <em>invert</em> is a bool/int representing the actual polarity of the track</dd>
4295   <dt><kbd class="osc">/select/pan_stereo_width <em>width</em></kbd></dt>
4296   <dd>where <em>width</em> is a float ranging from 0 to 1 representing the actual pan width of the track</dd>
4297   <dt><kbd class="osc">/select/send_gain", <em>sendid</em> <em>send_gain</em></kbd></dt>
4298   <dd>where <em>sendid</em> = nth_send, <em>send_gain</em>is a float
4299   ranging from -193 to +6 representing the actual gain in dB for the send</dd>
4300   <dt><kbd class="osc">/select/send_fader", <em>sendid</em> <em>send_gain</em></kbd></dt>
4301   <dd>where <em>sendid</em> = nth_send, <em>send_gain</em>is a float
4302   ranging from 0 to 1 representing the actual position for the send as a fader</dd>
4303   <dt><kbd class="osc">/select/send_name <em>sendid</em> <em>send_name</em></kbd></dt>
4304   <dd>where <em>send_name</em> is a string representing the name of the buss
4305   this send goes to.</dd>
4306 </dl>
4307 <h3>Menu actions</h3>
4308 <p>
4309   Every single menu item in Ardour's GUI is accessible via OSC. However,
4310   there is no provision for returning the state of anything set this way.
4311   This is not a bad thing as most menu items either do not have an on/off
4312   state or that state is quite visible. Binding that affect other parameters
4313   that OSC does track will show on those OSC controls. Examples of this
4314   might be track record enable for tracks 1 to 32, play or stop.
4315 </p>
4316
4317 ---
4318 title: Calculating Feedback and Strip-types Values
4319 part: subchapter
4320 ---
4321
4322 <p>
4323   <em>/set_surface</em> has two values the user needs to calculate before
4324   use. In general these will not be calculated at run time, but
4325   beforehand. There may be more than one button with different values
4326   to turn various kinds of feedback on or off or to determine which
4327   kinds of strips are currently viewed/controlled.
4328 </p>
4329
4330 <p>
4331   Both ,<em>feedback</em> and <em>strip-types</em> use bitsets to keep
4332   track what they are doing. Any number in a computer is made out of
4333   bits that are on or off, but we represent them as normal base 10
4334   numbers. Any one bit turned on will add a unique value to the
4335   number as a whole. So for each kind of feedback or strip type
4336   to be used, that number should be added to the total.
4337 </p>
4338
4339 <h3>strip_types</h3>
4340
4341 <p>
4342   strip_types is an integer made up of bits. The easy way to
4343   deal with this is to think of strip_types items being worth a number and
4344   then adding all those numbers together for a value to send.
4345   Strip Types will determine What kind of strips will be included in 
4346   bank. This would include: Audio, MIDI, busses, VCAs, Master, Monitor
4347   and hidden or selected strips.
4348 </p>
4349
4350 <ul>
4351         <li>
4352                 1       - AudioTracks.
4353         </li>
4354         <li>
4355                 2       - MidiTracks.
4356         </li>
4357         <li>
4358                 4       - AudioBuses.
4359         </li>
4360         <li>
4361                 8       - MidiBuses.
4362         </li>
4363         <li>
4364                 16      - VCAs.
4365         </li>
4366         <li>
4367                 32      - Master.
4368         </li>
4369         <li>
4370                 64      - Monitor.
4371         </li>
4372         <li>
4373                 128     - Audio Aux.
4374         </li>
4375         <li>
4376                 256     - Selected.
4377         </li>
4378         <li>
4379                 512     - Hidden.
4380         </li>
4381   </ul>
4382 <p class="note">
4383   Selected and Hidden bits are normally not needed as Ardour defaults to
4384   showing Selected strips and not showing Hidden strips. The purpose of
4385   these two flags is to allow showing only Selected strips or only
4386   Hidden strips. Using Hidden with other flags will allow Hidden strips
4387   to show inline with other strips.
4388 </p>
4389 <p>
4390   Some handy numbers to use might be: 15 (all tracks and buses), 31
4391   (add VCAs to that). Master or Monitor strips are generally not useful
4392   on a surface that has dedicated controls for these strips as there are
4393   /master* and /monitor* commands already. However, on a surface with
4394   just a bank of fader strips, adding master or monitor would allow
4395   access to them within the banks. Selected would be useful for working
4396   on a group or a set of user selected strips. Hidden shows strips the
4397   GUI has hidden.
4398 </p>
4399 <p class-"note">
4400   Audio Aux? say what? I am sure most people will have noticed that they
4401   can find no <em>Aux</em> strips in the Ardour mixer. There are none.
4402   There are buses that can be used a number of ways. From analog days,
4403   in OSC a bus is something that gets used as a sub mix before ending up
4404   going to Master. An auxiliary bus is used like a separate mixer and
4405   it's output goes outside the program or computer to be used as:
4406   a monitor mix, a back up recording, or what have you. In OSC where
4407   controller strips may be limited, it may be useful not to use up a
4408   strip for an aux that is not really a part of the mix. It is also
4409   useful to get a list of only aux buses if the control surface is a
4410   phone used to provide talent monitor mix control on stage. Each
4411   performer would be able to mix their own monitor. The user is free
4412   to enable both buses and auxes if they would prefer.
4413 </p>
4414
4415 <h3>feedback</h3> 
4416 <p>Feedback is an integer made up of bits. The easy way to
4417   deal with this is to think of feedback items being worth a number and
4418   then adding all those numbers together for a value to send.
4419 </p>
4420   <ul>
4421         <li>
4422                 1 - Button status for strips.
4423         </li>
4424         <li>
4425                 2 - Variable control values for strips.
4426         </li>
4427         <li>
4428                 4 - Send SSID as path extension.
4429         </li>
4430         <li>
4431                 8 - heartbeat to surface.
4432         </li>
4433         <li>
4434                 16 - Enable master section feedback.
4435         </li>
4436         <li>
4437                 32 - Send Bar and Beat.
4438         </li>
4439         <li>
4440                 64 - Send timecode.
4441         </li>
4442         <li>
4443                 128 - Send meter as dB (-193 to +6) or 0 to 1 depending on gainmode
4444         </li>
4445         <li>
4446                 256 - Send meter a 16 bit value where each bit is a level
4447                 and all bits of lower level are on. For use in a LED strip. This
4448                 will not work if the above option is turned on.
4449         </li>
4450         <li>
4451                 512 - Send signal present, true if level is higher than -40dB
4452         </li>
4453         <li>
4454                 1024 - Send position in samples
4455         </li>
4456         <li>
4457                 2048 - Send position in time, hours, minutes, seconds and milliseconds
4458         </li>
4459         <li>
4460                 8192 - Turn on extra select channel feedback beyond what a /strip supports
4461         </li>
4462   </ul>
4463 <p>
4464   So using a value of 19 would turn on feedback for strip and master
4465   controls, but leave meters, timecode and bar/beat feedback off.
4466 </p>
4467
4468 ---
4469 title: Parameter Types in OSC
4470 part: subchapter
4471 ---
4472
4473 <p>
4474   An OSC message is laid out in this form:
4475 </p>
4476
4477 <kbd>
4478         /path/of/command type parameter
4479 </kbd>
4480
4481 <p>
4482         The type is there to indicate what the parameter is. This gives
4483         the idea that parameter types are quite strict and if the command
4484         requires an Integer <em>"i"</em> then the controller had better send it.
4485         However, the checking of the parameter type is left to the receiving
4486         software.
4487 </p>
4488
4489 <p>
4490         What this means in practical terms is that the surface can get away
4491         with sending the wrong type of parameter. There are some places
4492         where that just doesn't make sense. For example, a parameter that
4493         is specified as a Float with a range of 0 to 1, could be sent as
4494         an Integer, but would only have full scale and minimum value with
4495         nothing in between. This is not much use for a fader, though ok for
4496         a button.
4497 </p>
4498
4499 <p>
4500         There are a number of OSC controllers based on iOS and Android
4501         tablets that only send or receive parameters as floats or text.
4502         These controllers should have no problem sending bool or int values
4503         as floats. Ardour will interpret the values as required.
4504 </p>
4505
4506 ---
4507 title: Selection/Feedback Expansion Considerations in OSC
4508 part: subchapter
4509 ---
4510
4511 <p>
4512   Ardour does not send every possible feedback value for each channel.
4513   It does send expanded information on the selected channel. There are
4514   also extra commands for the selected strip. All the feedback and
4515   select commands have their own path <em>/select</em>.
4516   This means that for the selected channel the surface does not have to
4517   keep track of the strip ID. The /select strip will follow the
4518   "current mixer strip" in the GUI editor window.
4519 </p>
4520 <p>
4521   There are two major uses for this:
4522   <ol>
4523         <li>Single strip control surfaces. Using
4524           <em>/access_action Editor/select-next-route</em> or
4525           <em>/access_action Editor/select-prev-route</em>
4526           to step through the mixer strips.</li>
4527         <li>Using a "Super strip" section of knobs to control parts
4528         of the strip that are changed less often such as polarity, sends or
4529         plugin parameters.</li>
4530   </ol>
4531 </p>
4532 <p>
4533   Selection in Ardour's OSC implementation are complicated by the
4534   possibility of using more than one OSC controller at the same time.
4535   User "A" may select strip 4 and use a selected controller to make
4536   changes to that strip. User "B" may subsequently select strip 7 to
4537   make changes on. This leaves user "A" making changes to strip 7
4538   which they did not choose.
4539 </p>
4540
4541 <p>
4542   For this reason Ardour offers local expansion aside from the GUI
4543   selection. Local expansion only affects the one OSC controller. GUI
4544   selection is global and affects all controllers using GUI selection
4545   as well as the GUI.
4546 </p>
4547
4548 <p>
4549   In general, in a one user situation where that one user may use either
4550   the OSC surface or the GUI, using GUI based selection makes the most
4551   sense. This is the default because this is the more common use.
4552 </p>
4553
4554 <p>
4555   When there is more than one operator, then expansion only is the
4556   mode of choice. It may make sense for one of the surfaces to
4557   use GUI selection where the operator is also using the GUI for some
4558   things. However, the set up should be carefully analyzed for the
4559   possibility of selection confusions. Expansion should be
4560   considered the <em>safe</em> option.
4561 </p>
4562
4563 <p>
4564   It is always ok to use expansion on the surface even in a one
4565   user scenario. This allows the user to use GUI and surface selection
4566   for different uses.
4567 </p>
4568
4569 <p>
4570   It is also possible to use both if desired. /strip/select will ways
4571   set the GUI select, but /strip/expand will set the select feedback
4572   and commands locally without changing the GUI select. Another
4573   /strip/expand or a /strip/select will override that expand command
4574   and releasing the /strip/expand or /select/expand (setting it to 0 or
4575   false) will set the /select set of commands/feedback back to whichever
4576   strip the GUI has selected at that time. This could be used to switch
4577   between the GUI select and the local expand to compare two strips
4578   settings.
4579 </p>
4580
4581 ---
4582 title: Using the OSC Setup Dialog
4583 part: subchapter
4584 ---
4585
4586 <p>
4587   Starting with Ardour 5.1 OSC has a graphic setup dialog. This dialog
4588   can be accessed from Preferences->Control Surfaces. Select OSC and
4589   click on the Show Protocol Settings.
4590 </p>
4591
4592 <p>
4593   The Ardour OSC dialog has three tabs. The main tab, the Strip Types
4594   tab and the Feedback tab.
4595 </p>
4596
4597 <p>
4598   Many OSC devices get their IP from a DHCP making it difficult to set
4599   an IP in Ardour's OSC settings. Therefore, most of the settings are
4600   <em>default</em> settings. Values are set and the next OSC surface to
4601   send a /set_surface* message to Ardour will use those settings. An OSC
4602   surface that has previously sent a message to Ardour will retain the
4603   settings it already had. The <em>Clear OSC Devices</em> will reset all
4604   device settings. A <em>/refresh</em> message will both reset the
4605   device settings as well as set that device to any new settings. The
4606   Use of <em>/set_surface</em> will override all settings except
4607   <em>Port Mode</em>.
4608 </p>
4609
4610 <h2>Dialog settings</h2>
4611
4612 <h3>OSC setup tab</h3>
4613
4614 <p>
4615 <img alt="the OSC configuration dialog"
4616      src="/images/osc-dialog.png">
4617 </p>
4618
4619 <h4>Connection:</h4>
4620
4621 <p>
4622   This field is informational only. It shows where Ardour will receive
4623   OSC messages. The system Name and the Port are the most important parts.
4624 </p>
4625
4626 <h4>Port Mode:</h4>
4627
4628 <p>
4629   This drop down allows the choice of Auto or Manual outbound port
4630   setting. The default Auto port mode, will send OSC messages back to
4631   the port messages from that surface are received from. This setting
4632   allows two surfaces on the same IP to operate independently. However,
4633   there are a number of OSC control surfaces that do not monitor the
4634   same port they send from and in fact may change ports they send from
4635   as well. Manual allows the outgoing port (the port the surface will
4636   receive on, to be manually set. In Manual port mode only one control
4637   surface per IP can work. Most phone or tablet OSC controllers like
4638   touchOSC or Control need Manual port mode. More than one controller
4639   can be used so long as each has it's own IP.
4640 </p>
4641
4642 <h4>Manual Port:</h4>
4643
4644 <p>
4645   This is an Entry box for setting the outgoing port when in
4646   Manual port mode.
4647 </p>
4648
4649 <h4>Bank Size:</h4>
4650
4651 <p>
4652   This sets the default bank size for the next surface to send a
4653   <em>/set_surface/*</em> OSC message. Bank size 0 (the default) sets
4654   no banking and allows controlling all strips included in strip_types
4655   at once.
4656 </p>
4657
4658 <h4>Gain Mode:</h4>
4659
4660 <p>
4661   Sets the faders (and sends faders) feedback math to position where a
4662   value between 0 and 1 represents the fader position of the same fader
4663   in the mixer GUI or dB where the feedback from fader movement will be
4664   returned as a dB value. When the Gain Mode is set to position, the
4665   /*/name feedback for the channel will show dB values in text while the
4666   fader is being adjusted and then return the the name text.
4667 </p>
4668 <h4>Debug:</h4>
4669 <p>
4670   For debugging purposes this allows logging either good OSC messages
4671   Ardour receives or invalid messages received or none.
4672 </p>
4673 <h4>Preset:</h4>
4674 <p>
4675   Ardour now allows the use of preset settings. The default settings
4676   used are the settings from the last session or the factory defaults
4677   the first time OSC is enabled. As soon as any of these settings are
4678   changed, the Preset will change to "User" and the new settings will be
4679   save to the osc directory Ardour configuration directory as
4680   <em>user.preset</em>. This preset file can be renamed for future use.
4681   It is suggested to also change the name value inside to avoid confusion
4682   in the preset listing. Ardour will ship with some of it's own presets
4683   that go with some popular OSC control and map combinations.
4684 </p>
4685 <h4>Clear OSC Devices</h4>
4686 <p>
4687   This button clears operating device profiles so that Ardour will reset
4688   all devices settings to use the new defaults from changed settings. a
4689   device may still override these new settings with the /set_surface set
4690   of commands. The reason for setting defaults settings is that some OSC
4691   controllers are not able to send more than one parameter at a time and
4692   so having correct defaults allows one "Connect" button rather than 4.
4693 </p>
4694 <h3>Default Strip Types tab</h3>
4695 <p>
4696 <img alt="the Default Strip Types tab"
4697      src="/images/osc-strip-types.png">
4698 </p>
4699 <p>
4700   This allows selecting which of Ardour's mixer strips will be available
4701   for control. The Factory default is all strips except master, monitor
4702   and hidden strips. If it is desired to only see input tracks the
4703   others can be deselected. It is also possible to change these settings
4704   from the control surface. A set of buttons could select showing only
4705   inputs or only buses. If a group is selected in the GUI then showing
4706   only selected strips will show only that group. Showing hidden tracks
4707   is handy for cases where a groups of tracks that grouped to a bus or
4708   controlled by a VCA are hidden, but one of those tracks needs a tweak.
4709 </p>
4710
4711 <h3>Default Feedback tab</h3>
4712
4713 <p>
4714 <img alt="the Default Feedback tab"
4715      src="/images/osc-feedbackdefault.png">
4716 </p>
4717
4718 <p>
4719   This allows setting up which controls provide feedback. The Factory
4720   default is none. If the controller is unable to receive feedback, this
4721   should be left blank. In the case of metering, Metering as a LED strip
4722   only works if Metering as a Float is disabled.
4723 </p>
4724
4725 ---
4726 title: Querying Ardour with OSC
4727 part: subchapter
4728 ---
4729
4730 <p>
4731   In order to make a custom controller that knows what strips Ardour
4732   has, the controller needs to be able to query Ardour for that
4733   information. These set of commands are for smarter control surfaces
4734   That have the logic to figure out what to do with the information.
4735   These are not of value for mapped controllers like touchOSC and
4736   friends. The controller will need to send these queries to ardour
4737   as often as it needs this information. It may well make sense to use
4738   regular feedback for things that need to be updated often such as
4739   position or metering.
4740   Here are the commands used to query Ardour:
4741 </p>
4742
4743 <dl class="bindings">
4744   <dt><kbd class="osc">/strip/list</kbd></dt>
4745   <dd>Ask for a list of strips</dd>
4746   <dt><kbd class="osc">/strip/sends <em>ssid</em></kbd></dt>
4747   <dd>Asks for a list of sends on the strip <em>ssid</em></dd>
4748   <dt><kbd class="osc">/strip/receives <em>ssid</em></kbd></dt>
4749   <dd>Asks for a list of tracks that have sends to the strip <em>ssid</em> points to</dd>
4750   <dt><kbd class="osc">/strip/plugin/list <em>ssid</em></kbd></dt>
4751   <dd>Asks for a list of plug-ins for strip <em>ssid.</em></dd>
4752   <dt><kbd class="osc">/plugin/descriptor <em>ssid</em> <em>piid</em></kbd></dt>
4753   <dd>Asks for a list of descriptors for plug-in <em>piid</em> on strip <em>ssid</em></dd>
4754 </dl>
4755
4756 <h3>A list of strips</h3>
4757
4758 <p>
4759   <code>/strip/list</code> asks Ardour for a list of strips that the
4760   current session has. Ardour replies with a message for each
4761   strip with the following information:
4762   <ul>
4763     <li>Strip type</li>
4764     <li>Strip name</li>
4765     <li>Number of inputs</li>
4766     <li>Number of outputs</li>
4767     <li>Muted (bool)</li>
4768     <li>Soloed (bool)</li>
4769     <li>Ssid (strip number)</li>
4770     <li>Record enabled (bool)</li>
4771   </ul>
4772   After all the strip messages have been sent, one final message is
4773   sent with:
4774   <ul>
4775     <li>The text <code>end_route_list</code></li>
4776     <li>The session frame rate</li>
4777     <li>The last frame number of the session</li>
4778   </ul>
4779 </p>
4780 <p class="note">A bus will not have a record enable and so a bus message
4781   will have one less parameter than a track. It is the controllers
4782   responsability to deal with this.
4783 </p>
4784
4785 <h3>A list of sends</h3>
4786 <p>
4787   <code>/strip/sends <em>ssid</em></code> asks Ardour for a list of
4788   sends for strip number ssid. The reply is sent back to the
4789   controller as one message with the following information:
4790   <ul>
4791     <li>Ssid that information is for</li>
4792     <li>Each send's information:</li>
4793     <ul>
4794       <li>The send's target bus ssid</li>
4795       <li>The send's target bus name</li>
4796       <li>The send id for this strip</li>
4797       <li>The send gain as a fader possition</li>
4798       <li>The Send's enable state</li>
4799     </ul>
4800   </ul>
4801 </p>
4802 <p>
4803   The controller can tell how many sends there are from the number of
4804   parameters as each send has 5 parameters and there is one extra for
4805   ssid.
4806 </p>
4807
4808 <h3>A list if tracks that send audio to a bus</h3>
4809 <p>
4810   <code>/strip/receives <em>ssid</em></code> will return a list of
4811   tracks that have sends to the bus at the ssid. The reply will
4812   contain the following information for each track conntected to this
4813   bus:
4814   <ul>
4815     <li>The ssid of the track sending</li>
4816     <li>The name of the sending track</li>
4817     <li>The id of the send at that track</li>
4818     <li>It's gain in fader possition</li>
4819     <li>The send's enable state</li>
4820   </ul>
4821 </p>
4822
4823 <h3>A list of plug-ins for strip</h3>
4824 <p>
4825   <code>/strip/plugin/list <em>ssid</em></code> will return a list of
4826   plug-ins that strip ssid has. The reply will contain the following
4827   information:
4828   <ul>
4829     <li>Ssid that information is for</li>
4830     <li>Each plugin's information:</li>
4831     <ul>
4832       <li>The plug-in's id</li>
4833       <li>The plug-in's name</li>
4834     </ul>
4835   </ul>
4836 </p>
4837
4838 <h3>A list of a plug-in's parameters</h3>
4839 <p>
4840   <code>/plugin/descriptor <em>ssid</em> <em>piid</em></code> will
4841   return the plug-in parameters for ppid plug-in on the ssid strip. The
4842   reply will contain the following information:
4843   <ul>
4844     <li>Ssid of the strip the plug-in is in</li>
4845     <li>The plug-in id for the plug-in</li>
4846     <li>The plug-in's name</li>
4847     <li>Information about each parameter</li>
4848     <ul>
4849       <li>The parameter id</li>
4850       <li>The parameter's name</li>
4851       <li>A bitset of flags (see below)</li>
4852       <li>Data type</li>
4853       <li>Minimum value</li>
4854       <li>Maximum value</li>
4855       <li>The number of scale points</li>
4856       <li>zero or more scale points of one value and one string each</li>
4857       <li>The current parameter value</li>
4858     </ul>
4859   </ul>
4860 </p>
4861
4862 <p>
4863   The flag bitset above has been defined as (from lsb):
4864   <ul>
4865     <li>0 - enumeration</li>
4866     <li>1 - integer step</li>
4867     <li>2 - logarithmic</li>
4868     <li>3 - max unbound</li>
4869     <li>4 - min unbound</li>
4870     <li>5 - sample rate dependent</li>
4871     <li>6 - toggled</li>
4872     <li>7 - controllable</li>
4873   </ul>
4874 </p>
4875
4876 <p>
4877   While this seems complex, it is really not that bad. Minimum, maximum and value will in most cases give you all you need.
4878 </p>
4879
4880 ---
4881 title: Devices using Mackie/Logic Control Protocol
4882 menu_title: Mackie/Logic Control Devices
4883 part: subchapter
4884 ---
4885
4886 <p>
4887   This will walk you through the process of configuring and using 
4888   a MIDI control surface with Ardour that uses the <dfn>Mackie Control
4889   protocol</dfn> (MCP) or <dfn>Logic Control protocol</dfn>. Devices that 
4890   have been tested and are known to work include the SSL Nucleus, Mackie 
4891   Control Pro (plus extenders), Behringer devices in Mackie/Logic mode, 
4892   and Steinberg CMC devices.
4893 </p>
4894
4895 <h2>Enabling Mackie Control in Ardour</h2>
4896
4897 <p>
4898   Navigate to <kbd class="menu">Edit &gt; Preferences &gt; Control Surfaces</kbd>.
4899   Double-click on <kbd class="menu">Mackie Control</kbd> to see the setup dialog:
4900 </p>
4901
4902 <img src="/images/missing.png" alt="Mackie Control Setup Dialog" />
4903
4904 <p>
4905   From the selector at the top, choose the type of device you are using. 
4906   (<a
4907   href="/using-control-surfaces/devices-using-mackielogic-control-protocol/devices-not-listed/">
4908   What to do if your device is not listed</a>).
4909 </p>
4910
4911 <p>
4912   Once your setup is complete, click "OK" to close the dialog. Now click 
4913   on the enable checkbox for "Mackie Control".
4914 </p>
4915
4916 <h2>Connecting control surface and Ardour MIDI ports</h2>
4917
4918 <p>
4919   If you are using a device that uses ipMIDI, such as the SSL Nucleus, no 
4920   MIDI port connections are required&mdash;Ardour and your control 
4921   surface will be able to talk to each other automatically.
4922 </p>
4923
4924 <p>
4925   If you are using a device that uses normal MIDI (via a standard MIDI or 
4926   USB cable), you need to connect Ardour's Mackie Control in and out ports 
4927   to the MIDI ports leading to and coming from the control surface.
4928 </p>
4929
4930 <p>
4931   When you have made these connections once, Ardour will recreate them 
4932   for you in the future, as long as you leave Mackie Control enabled.
4933 </p>
4934
4935 <h2>Customizing your control surface</h2>
4936
4937 <p>
4938   Every possible Mackie Control button can be bound to any action present 
4939   in Ardour's GUI. Please check your control surface page for suggestions.
4940 </p>
4941
4942 <h2>Preparing your device for use with Ardour</h2>
4943
4944 <p>
4945   Most interfaces will require some configuration to send and respond to 
4946   MCP.
4947 </p> 
4948
4949 <p class="note">
4950   When setting up the control surface, do <em>not</em> use "Pro Tools"
4951   mode. Pro Tools is the only DAW that still requires HUI. The rest of
4952   world uses Mackie Control Protocol. Ardour does not support HUI.
4953 </p>
4954
4955 ---
4956 title: Behringer devices in Mackie/Logic Control Mode
4957 menu_title: Behringer devices
4958 part: subchapter
4959 ---
4960
4961 <h2>Behringer BCF-2000 Faders Controller</h2> 
4962
4963 <p>
4964   <img alt="Digramatic Image of the BCF2000"
4965      src="/images/BCF2000.png">
4966 </p>
4967
4968 <p>
4969   The Behringer BCF-2000 Fader Controller is a control surface with 8 motorized 
4970   faders, 8 rotary encoders and 30 push buttons. The device is a class
4971   compliant USB Midi Interface and also has standard Midi DIN IN/OUT/THRU  ports.
4972   The device has included a Mackie/Logic Control Emulation Mode since firmware v1.06.
4973   If you're devices firmware is older than v1.06 it will require an update before
4974   Mackie Control Emulation will work as described here.
4975 </p>
4976
4977 <p>
4978   <img alt="Digramatic Image of the BCF2000 in Edit Global Mode"
4979      src="/images/BCF2000-EG.png">
4980 </p>
4981
4982 <p>
4983   In order to put the controller into Mackie/Logic control mode turn on the 
4984   unit while holding third button from the left in the top most row
4985   of buttons (under the rotary encoder row). Hold the button down until <dfn>EG</dfn>
4986   or edit global mode is displayed on the LCD screen of the unit. The global parameters
4987   can then be edited using the 8 rotary encoders in the top row. 
4988 </p>
4989   <ul>
4990     <li><code>
4991       Encoder #1 sets the operating mode and should be set to <dfn>U-1</dfn> or
4992       USB mode 1 if using with a USB cable connection.
4993     </li></code>
4994     <li><code>
4995       Encoder #3 sets the foot switch mode and should most likely be set to
4996       <dfn>Auto</dfn> to detect how the foot switch is wired. 
4997     </li></code>
4998     <li><code>
4999       Encoder #5 sets the device id, if you are using only 1 device the id
5000       should be set to <dfn>ID 1</dfn>. If you are using multiple BCF/BCR2000 each
5001       device is required to be set up sequentially and one at a time.
5002     </li></code>
5003     <li><code>      
5004       Encoder #7 controls the MIDI <dfn>Dead Time</dfn> or the amount of milliseconds
5005       after a move has been made that the device ignores further changes, this 
5006       should be set to <dfn>100</dfn>.
5007     </li></code>
5008     <li><code>
5009       Encoder #8 controls the MIDI message <dfn>Send Interval</dfn> in milliseconds
5010       and should be set to <dfn>10</dfn>
5011     </li></code>
5012   </ul>
5013 <p>
5014   To exit the <dfn>EG</dfn> mode press the <dfn>Exit</dfn> button. The device is now
5015   ready to use with Ardour.
5016 </p>
5017
5018 <h3>Modes of Operation</h3>
5019 <p>
5020   <img alt="Digramatic Image of the BCF2000 Control Modes"
5021      src="/images/BCF2000-Modes.png">
5022 </p>
5023 <p>
5024   The four buttons arranged in a rectangle and located under the Behringer logo 
5025   are the mode selection buttons in Logic Control Emulation Mode,
5026   currently Ardour has implemented support for two of these modes.
5027 </p>
5028 <p>
5029 The surface can be broken into 8 groups of controls.
5030 </p>
5031
5032 <ol>
5033   <li>The rotary encoders at the top of the device</li>
5034   <li>The first row of buttons under the encoders</li>
5035   <li>The second row of buttons under the encoders</li>
5036   <li>The row of motorized faders<li>
5037   <li>
5038     The group of 4 buttons at the top right that will be
5039     referred to here as the <dfn>Shift Group</dfn>
5040   </li>
5041   <li>
5042     The group of 4 buttons under the <dfn>Shift Group</dfn>
5043     referred to here as the <dfn>Mode Group</dfn>
5044   </li>
5045   <li>
5046     The group of 2 buttons under the <dfn>Mode Group</dfn>
5047     referred to here as the <dfn>Select Group</dfn>
5048   </li>
5049   <li>
5050     The group of 4 buttons under the <dfn>Select Group</dfn>
5051     referred to here as the <dfn>Transport Group</dfn>
5052   </li>
5053 </ol>
5054
5055 <h3>Mixer Pan Mode</h3>
5056 <p>
5057   <img alt="Digramatic Image of the BCF2000 Control Modes"
5058      src="/images/BCF2000-Pan.png">
5059 </p>
5060 <p>
5061   This is the standard work mode that organizes the control surface to emulate
5062   a standard mixer layout where controls for each track/bus are arranged vertically.
5063   The order of the faders is either controlled by the order of the tracks in the
5064   mixer or can be set manually by the user.
5065 </p>
5066 <dl>
5067   <dt>Encoders</dt>
5068   <dd>Mixer Pans. The red LEDs show the amount of pan left or right</dd>
5069   <dt>First Row of Buttons</dt>
5070   <dd>Mixer Mutes. The button led lights if the track is currently muted</dd>
5071   <dt>Second Row of Buttons</dt>
5072   <dd>Select Active Track/Bus. Currently selected track/bus is indicated by the button led</dd>
5073   <dt>Faders</dt>
5074   <dd>Mixer Gains</dd>
5075   <dt>Shift Group</dt>
5076   <dd>
5077     The top and bottom left buttons are the simply shifts to change the function of other buttons
5078   </dd>
5079   <dd>
5080     The top right is the <dfn>Fine Control</dfn> button that allows the increment values sent by
5081     by rotary encoders and faders to be a small value for more precise editing. This button
5082     can also act as a shift button.
5083   </dd>
5084   <dd>
5085     The bottom right is the <dfn>Global Shift</dfn> button that allows you to change back to the
5086     standard Mixer Pan view from other views and modes. This button can also act as a shift button.
5087   </dd>
5088   <dt>Mode Group</dt>
5089   <dd>The top two buttons functions are not currently implemented in Ardour.</dd>
5090   <dd>The bottom left button sets the device to <dfn>Pan</dfn> mode and should currently be lit</dd>
5091   <dd>
5092     The bottom right button sets the device to <dfn>Send</dfn> mode but will only allow the switch
5093     if the currently selected track/bus has a send or sends to control.
5094   </dd>
5095   <dt>Select Group</dt>
5096   <dd>
5097     In this mode they function as bank select left and right. If your session has more than 8 tracks
5098     the next set of 8 tracks is selected with the right button and the faders will move to match the
5099     current gain settings of that bank of 8 tracks/busses. If the last bank contains less than 8 
5100     tracks/busses the unused  faders will move to the bottom and the pan lights will all turn
5101     off. An unlimited amount of tracks can be controlled with the device.
5102   </dd>
5103   <dt>Transport Group</dt>
5104   <dd>The upper left button controls <dfn>Rewind<dfn>.
5105   <dd>The upper right button controls <dfn>Fast Foreword</dfn>
5106   <dd>The lower left button controls stop</dd>
5107   <dd>The lower right button controls play</dd>
5108 </dl>
5109 <h3>Send Mode</h3>
5110 <p>
5111   <img alt="Digramatic Image of the Send Mode"
5112      src="/images/BCF2000-Send.png">
5113 </p>
5114 <p>
5115   Send mode allows for the top row of encoders to control the sends for a selected channel.
5116   One interesting option is to flip the controls from the encoders to the faders by pressing
5117   the shift 1 button and the global view button at the same time.
5118 </p>
5119 <dl>
5120   <dt>Encoders</dt>
5121   <dd>
5122     In send mode, the encoders control sends from left to right instead of mixer pans.
5123     If there are less than 8 sends the behavior of the encoder will be to continue controlling
5124     the mixer pan. Visually it's indicated by the change in the LED from originating at the 12
5125     o'clock position to originating at the 7 o'clock position. If <dfn>FLIP</dfn> is pressed 
5126     the encoder will control the mixer gain for the selected track/bus.
5127   </dd>
5128   <dt>First row of buttons</dt>
5129   <dd>No Change</dd>
5130   <dt>Second row of buttons</dt>
5131   <dd>No Change.</dd>
5132   <dt>Faders</dt>
5133   <dd>
5134     No change unless <dfn>FLIP</dfn>is pressed then it controls the send for the selected track/bus.
5135   </dd>
5136   <dt>Shift Group</dt>
5137   <dd>No Change</dd>
5138   <dt>Select Group</dt>
5139   <dd>No Change</dd>
5140   <dt>Transport Group</dt>
5141   <dd>No Change</dd>
5142 </dl>
5143 <h3>Mixer Pan While Holding Shift 1</h3>
5144 <p>
5145   <img alt="Digramatic Image of the Mixer Mode while holding down shift 1"
5146      src="/images/BCF2000-Shift1.png">
5147 </p>
5148 <p>
5149   The operations of various buttons change while holding down the <dfn>Shift 1</dfn> button
5150 </p>
5151 <dl>
5152   <dt>Encoders</dt>
5153   <dd>No Change</dd>
5154   <dt>First row of buttons</dt>
5155   <dd>These now control the Soloing of each track/bus in the current bank</dd>
5156   <dt>Second row of buttons</dt>
5157   <dd>These now control the Enable Record for each track</dd>
5158   <dt>Faders</dt>
5159   <dd>No Change</dd>
5160   <dt>Shift Group</dt>
5161   <dd>No change</dd>
5162   <dt>Mode Group</dt>
5163   <dd>No Change</dd>
5164   <dt>Select Group</dt>
5165   <dd>
5166     These now change the current bank of tracks being controlled over by
5167     one. So if you where controlling tracks 1-8 a push the right
5168     button the surface would now control tracks 2-9 pressing the left
5169     would then shift back to controlling tracks 1-8.
5170   </dd>
5171   <dt>Transport Group</dt>
5172   <dd>The upper left now controls turning on and off <dfn>Loop</dfn> mode.</dd>
5173   <dd>
5174     The upper right now toggles
5175     <dfn>Click</dfn>.
5176   </dd>
5177   <dd>The lower left toggles <dfn>Replace</dfn>.</dd>
5178   <dd>
5179     The lower right toggles
5180     <dfn>Global Record</dfn>.
5181   </dd>
5182 </dl>
5183 <h3>Mixer Pan While Holding Shift 2</h3>
5184 <p>
5185   <img alt="Digramatic Image of the Mixer Mode while holding down shift 2"
5186      src="/images/BCF2000-Shift2.png">
5187 </p>
5188 <p>
5189   The operations of various buttons change while holding down the <dfn>Shift 2</dfn> button
5190 </p>
5191 <dl>
5192   <dt>Encoders</dt>
5193   <dd>No Change</dd>
5194   <dt>First row of buttons</dt>
5195   <dd>FIX ME</dd>
5196   <dt>Second row of buttons</dt>
5197   <dd>These now control setting up different <dfn>Views</dfn>. See bellow for more info</dd>
5198   <dt>Faders</dt>
5199   <dd>No Change</dd>
5200   <dt>Shift Group</dt>
5201   <dd>No change</dd>
5202   <dt>Mode Group</dt>
5203   <dd>No Change</dd>
5204   <dt>Select Group</dt>
5205   <dd>Left button controls <dfn>Undo</dfn>(NEEDS VERIFIED)</dd>
5206   <dt>Transport Group</dt>
5207   <dd>FIX ME</dd>
5208   <dd>FIX ME</dd>
5209   <dd>FIX ME</dd>
5210   <dd>FIX ME</dd>
5211 </dl>
5212
5213 <h3>Views</h3>
5214
5215 <p>
5216   <img alt="Digramatic Image of the LED display for different Views"
5217      src="/images/BCF2000-Views.png">
5218 </p>
5219
5220 <p class="fixme">FIX ME</p>
5221
5222 ---
5223 title: SSL Nucleus
5224 part: subchapter
5225 ---
5226
5227 <p>
5228   The Nucleus, from Solid State Logic, is a 16 fader Mackie Control
5229   device that includes many buttons, separate meters, two LCD displays
5230   and other features. The device is not cheap (around US$5000 at the
5231   time of writing), and has some <a href="#design">design features</a>
5232   (or lack thereof) which some Ardour developers find
5233   questionable. Nevertheless, it is a very flexible device, and makes
5234   a nice 16 fader surface without the need to somehow attach an
5235   extender to your main surface.
5236 </p>
5237
5238 <h2>Pre-configuring the Nucleus</h2>
5239
5240 <p>
5241   Your Nucleus comes complete with a number of "profiles" for a few
5242   well-known DAWs. At the time of writing it does not include one for
5243   Ardour (or related products such as Harrison Mixbus). 
5244 </p>
5245 <p>
5246   We have prepared a profile in which as many buttons as possible send
5247   Mackie Control messages, which makes the device maximally useful
5248   with Ardour (and Mixbus). You can
5249   download <a href="https://community.ardour.org/files/ArdourNucleusProfile.zip">the
5250   profile</a>
5251   and load it to your Nucleus using the <code>Edit Profiles</code>
5252   button in SSL's Nucleus Remote application. Be sure to select it for
5253   the active DAW layer in order to make Ardour work as well as
5254   possible. <em>Note: unfortunately, the Nucleus Remote application
5255   only runs on OS X or Windows, so Linux users will need access to
5256   another system to load the profile. We will provide notes on the
5257   profile settings at a future time.</em>
5258 </p>
5259
5260 <h2>Connecting the Nucleus</h2>
5261
5262 <p>
5263   Unlike most Mackie Control devices, the Nucleus uses an ethernet
5264   connection to send and receive the MIDI messages that make up the
5265   Mackie Control protocol. Specifically, it uses a technology called
5266   "ipMIDI" which essentially "broadcasts" MIDI messages on a local
5267   area network, so that any connected devices (computers, control
5268   surfaces, tablets etc.) can participate.
5269 </p>
5270 <p>
5271   All other DAWs so far that support the Nucleus have chosen to do so
5272   by using a 3rd party MIDI driver called "ipMIDI", which creates a
5273   number of "virtual" MIDI ports on your computer. You, the user,
5274   tells the DAW which ports to connect to, and ipMIDI takes care of
5275   the rest.
5276 </p>
5277 <p>
5278   Ardour has builtin ipMIDI support, with no need of any 3rd party
5279   packages, and no need to identify the "ports" to connect to in order
5280   to communicate with the Nucleus. This makes setting it up a bit
5281   easier than most other systems.
5282 </p>
5283 <p>
5284   Unless ... you already installed the ipMIDI driver in order to use
5285   some other DAW with your Nucleus. If ipMIDI is configured to create
5286   any "ports", it is not possible for Ardour's own ipMIDI support to
5287   function. We decided to offer both methods of communicating with
5288   your Nucleus. If you regularly use other DAWs, and appreciate having
5289   ipMIDI permanently set up to communication with the Nucleus&mdash;that's
5290   OK, you can tell Ardour to use the ipMIDI driver you already
5291   have. But if you're not using other DAWs with the Nucleus (and thus
5292   have not installed the ipMIDI driver), then you can ignore the
5293   ipMIDI driver entirely, and let Ardour connect directly with no
5294   configuration.
5295 </p>
5296
5297 <h3>Connecting via Ardour's own ipMIDI support</h3>
5298
5299 <p class="alert alert-info">
5300   This is usable only on computers with no 3rd party ipMIDI
5301   driver software installed and configured. If you have the OS X or
5302   Windows ipMIDI driver from nerds.de, it <strong>MUST</strong> be
5303   configured to offer <strong>ZERO</strong> ports before using this
5304   method.
5305 </p>
5306
5307 <p>
5308   Open <code>Preferences > Control Surfaces</code>. Ensure that the
5309   Mackie protocol is enabled, then double-click on it to open the
5310   Mackie Control setup dialog.
5311 </p>
5312 <p>
5313   Ensure that the device selected is "SSL Nucleus". The dialog should
5314   show a single numerical selector control below it, defining the
5315   ipMIDI port number to use (it should almost always be left at the
5316   default value of 21928).
5317 </p>
5318 <p>
5319   Communication is automatically established with the Nucleus and you
5320   need do nothing more.
5321 </p>
5322 <p>
5323   If this does not work, then make sure your network cables are
5324   properly connected, and that you are <strong>not</strong> running
5325   other ipMIDI software on the computer.
5326 </p>
5327
5328 <h3>Connecting via 3rd party ipMIDI support</h3>
5329
5330 <p class="alert alert-info">
5331   This is usable only on computers with 3rd party ipMIDI
5332   driver software installed and configured for (at least) 2 ports.
5333 </p>
5334
5335 <p>
5336   Open <code>Preferences > Control Surfaces</code>. Ensure that the
5337   Mackie protocol is enabled, then double-click on it to open the
5338   Mackie Control setup dialog.
5339 </p>
5340 <p>
5341   Ensure that the device selected is "SSL Nucleus (via platform MIDI)". The dialog should
5342   show four combo/dropdown selectors, labelled (respectively):
5343 </p>
5344   <ul>
5345     <li><code>Main Surface receives via</code></li>
5346     <li><code>Main Surface sends via</code></li>
5347     <li><code>1st extender receives via</code></li>
5348     <li><code>1st extender sends via</code></li>
5349   </ul>
5350 <p>
5351   You should choose "ipMIDI port 1", "ipMIDI port 1", "ipMIDI port 2"
5352   and "ipMIDI port 2" for each of the 4 combo/dropdown selectors. 
5353 </p>
5354 <p>
5355   Communication should be automatically established with the Nucleus.
5356 </p>
5357 <p>
5358   If this does not work, then make sure your network cables are
5359   properly connected, and that you are running the approprate ipMIDI
5360   driver and have configured it for 2 (or more) ports.
5361 </p>
5362
5363 <h2><a name="design">Nucleus Design Discussion</a></h2>
5364
5365 <p>
5366   You might be reading this part of the manual seeking some guidance
5367   on whether the Nucleus would make a suitable control surface for
5368   your workflows. We don't want to try to answer that question
5369   definitively, since the real answer depends on the very specific
5370   details of your workflow and situation, but we would like to point
5371   out a number of design features of the Nucleus that might change
5372   your opinion.
5373 </p>
5374
5375 <h3>Cons</h3>
5376 <dl>
5377   <dt>No Master Faster</dt>
5378   <dd>It is not possible to control the level of the Master bus or
5379   Monitor section. Really don't know what SSL was thinking here.</dd>
5380   <dt>No dedicated rec-enable buttons</dt>
5381   <dd>You have to press the "Rec" button and convert the per-strip
5382     "Select" buttons into rec-enables</dd>
5383   <dt>No dedicated automation buttons</dt>
5384   <dd>You have to press the "Auto" button and convert the first 4
5385   vpots into 4 automation-related buttons, losing your current view
5386     of the session.</dd>
5387   <dt>No buttons with Mackie-defined "Marker" functionality</dt>
5388   <dd>Mackie's design intentions for the interoperation of the
5389     Marker, rewind and ffwd buttons requires profile editing in order
5390     to function properly.
5391   </dd>
5392   <dt>No "Dyn" button</dt>
5393   <dd>This is hard to assign in an edited profile. To be fair, other
5394     Mackie Control devices also lack this button.
5395   </dd>
5396 </dl>
5397
5398 <h3>Pros</h3>
5399 <dl>
5400   <dt>Single cable connectivity</dt>
5401   <dd>No need for multiple MIDI cables to get 16 faders</dd>
5402   <dt>Broadcast connectivity</dt>
5403   <dd>Connecting to multiple computers does not require recabling</dd>
5404   <dt>16 faders from a single box</dt>
5405   <dd>No need to figure out how to keep extenders together</dd>
5406   <dt>Meters separated from displays</dt>
5407   <dd>Contrast with the Mackie Control Universal Pro, where meters
5408     interfere with the display
5409   </dd>
5410   <dt>DAW profiles</dt>
5411   <dd>Easy to flip profiles for use by different DAWs.</dd>
5412 </dl>
5413
5414
5415 <h3>Ambiguous</h3>
5416 <dl>
5417   <dt>Ability to make buttons generate USB keyboard events</dt>
5418   <dd>The extent to which this is useful reflects the target DAWs
5419     inability to manage all of its functionality via Mackie Control
5420   </dd>
5421   <dt>Sophisticated "profile" editing</dt>
5422   <dd>It is nice to be able to reassign the functionality of most
5423     buttons, but this is only necessary because of the relatively few
5424     global buttons on the surface.
5425   </dd>
5426   <dt>Builtin analog signal path</dt>
5427   <dd>SSL clearly expects users to route audio back from their
5428   computer via the Nucleus' own 2 channel output path, and maybe even
5429   use the input path as well. They take up a significant amount of
5430   surface space with the controls for this signal path, space that
5431   could have been used for a master fader or more Mackie Control
5432   buttons. The USB audio device requires a proprietary driver, so
5433   Linux users can't use this, and OS X/Windows users will have to
5434   install a device driver (very odd for a USB audio device these
5435   days). The analog path also no doubt adds notable cost to the
5436   Nucleus. There's nothing wrong with this feature for users that
5437   don't already have a working analog/digital signal path for their
5438   computers. But who is going to spend $5000 on a Nucleus that
5439   doesn't have this already?</dd>
5440 </dl>
5441
5442 ---
5443 title: Mackie Control Setup on Linux
5444 part: subchapter
5445 ---
5446
5447 <h2>Devices using ipMIDI</h2>
5448
5449 <p>
5450   If you are using a device like the SSL Nucleus that uses ipMIDI, 
5451   no set up is required other than to ensure that your control surface 
5452   and computer are both connected to the same network.
5453 </p>
5454
5455 <h2>Devices using conventional MIDI</h2>
5456
5457 <p>
5458   Before attempting to use a Mackie Control device that communicates via 
5459   a standard MIDI cable or a USB cable, you should ensure that 
5460   <a href="/setting-up-your-system/setting-up-midi/midi-on-linux">your Linux 
5461   MIDI environment is setup</a>.
5462 </p>
5463
5464 ---
5465 title: What to do if your Device is not Listed
5466 menu_title: Unlisted devices
5467 part: subchapter
5468 ---
5469
5470 <p>
5471   All Mackie Control devices are based on the original Logic Control and the
5472   documentation in the user manual that came with it. The Mackie Control and
5473   the Mackie Control Pro and so on, all use this same protocol. Any units
5474   from other manufactures will also use the same encoding as best the
5475   hardware will allow. If the unit in use has more than one Mackie Control
5476   option, it is best to choose Logic Control or LC. Any Templates for the
5477   buttons should be chosen the same way as the Function key Editor uses these
5478   button names. The "Mackie Control" option should be considered default and
5479   should be tried with any unlisted device before attemping to create a
5480   custom definition file.
5481 </p>
5482
5483 ---
5484 title: Working With Extenders
5485 menu_title: Working With Extenders
5486 part: subchapter
5487 ---
5488
5489 <p>
5490   Extenders will require a custom file as there are no combinations listed
5491   at this time. The best way is to start with the mc.device file and copy it
5492   to a new name such as xt+mc.device and then edit that file. It is best to
5493   name the file with the order the devices are expected to be used in as
5494   the position of the master device is specified in this file.
5495 </p>
5496
5497 <p>
5498   The two lines of interest are:
5499 <p>
5500
5501 <pre>
5502  &lt;Extenders value="0"/&gt;
5503  &lt;MasterPosition value="0"/&gt;
5504 </pre>
5505
5506 <p>
5507   Add these two lines if they are not present. The <code>Extenders</code>
5508   value is the number of extenders used and should not include the master in
5509   that number.
5510 </p>
5511
5512 <p>
5513   When an <code>Extenders</code> value of greater than 0 is used, extra midi
5514   ports will appear for the extenders to be connected to. The MIDI ports
5515   for the controllers will be named <code>mackie control #1</code>,
5516   <code>mackie control #2</code> and up. The numbers will go from left to
5517   right. That is, from lowest number channel to highest.
5518 </p>
5519
5520 <p>
5521   The <code>MasterPosition</code> value is the port number the master unit
5522   (with the master fader) is connected to. So if there are three surfaces,
5523   <code>&lt;MasterPosition value="1"/&gt;</code> will expect the master on
5524   the left, <code>&lt;MasterPosition value="2"/&gt;</code> would be master
5525   in the middle and <code>&lt;MasterPosition value="3"/&gt;</code> would be
5526   master on the right. So the position matches the port name.
5527 </p>
5528
5529 <p class="note">
5530   The default value of <code>&lt;MasterPosition value="0"/&gt;</code> has
5531   the same effect as <code>&lt;MasterPosition value="1"/&gt;</code>.
5532 </p>
5533
5534 <p>
5535   If the <code>MasterPosition</code> value does not properly match the
5536   physcal position and MIDI port, the master fader and global controls will
5537   not work. The master unit will act like an extender.
5538 </p>
5539
5540 ---
5541 title: MIDI Binding Maps
5542 part: subchapter
5543 ---
5544
5545 <p>
5546   Ardour 2.X supported 
5547   <a href="/using-control-surfaces/midi-learn"><dfn>MIDI learning</dfn></a> 
5548   for more or less any control. This was a nice feature that quite a few other
5549   DAWs are providing by now, but it didn't allow Ardour to work "out of the
5550   box" with sensible defaults for existing commercial MIDI
5551   controllers. In Ardour 3 and later versions, we have augmented the
5552   MIDI learn feature with the ability to load a <dfn>MIDI binding map</dfn> 
5553   for a given controller, which can set up an arbitrary number of physical
5554   controls with anything inside Ardour that can be controlled. 
5555 </p>
5556
5557 <p>
5558   Currently (August 2016), we have presets for the following devices/modes:
5559 </p>
5560
5561 <ul>
5562   <li>AKAI MPD-32</li>
5563   <li>AKAI MPK61</li>
5564   <li>AKAI MPKmini</li>
5565   <li>Behringer BCF2000</li>
5566   <li>Behringer BCF2000 (Mackie Emulation mode; better to use
5567     Ardour's actual Mackie Control Protocol support)</li>
5568   <li>Behringer DDX3216</li>
5569   <li>Korg nanoKONTROL (2 layouts)</li>
5570   <li>Korg nanoKONTROL 2 (2 layouts)</li>
5571   <li>Korg Taktile</li>
5572   <li>M-Audio Axiom 25 (2 layouts)</li>
5573   <li>M-Audio Axiom 61</li>
5574   <li>M-Audio Oxygen 49</li>
5575   <li>M-Audio Oxygen 61v3</li>
5576   <li>M-Audio Oxygen 25</li>
5577   <li>M-Audio Oxygen 8v2</li>
5578   <li>Novation Impulse 49</li>
5579   <li>Novation Impulse 61</li>
5580   <li>Novation LaunchControl XL</li>
5581   <li>Novation LaunchKey 25</li>
5582   <li>Roland SI-24</li>
5583   <li>Roland V Studio 20</li>
5584   <li>Yamaha KX25</li>
5585 </ul>
5586   At this time, new binding maps need to be created with a text editor.
5587 <p>
5588   MIDI binding maps are accessible by double-clicking <kbd class="menu">Edit
5589   &gt; Preferences &gt; Control Surfaces &gt; Generic MIDI</kbd>. Ardour will 
5590   retain your selection after you choose one.
5591 </p>
5592
5593 <h2>Creating new MIDI maps</h2>
5594 <h3>The Basic Concept</h3>
5595 <p>
5596   Since the beginning of time (well, sometime early in the 2.X series), 
5597   Ardour has had the concept of identifying each track and bus with a 
5598   <dfn>remote control ID</dfn>. This ID uniquely identifies a track or bus 
5599   so that when messages arrive from elsewhere via MIDI or OSC , we can determine 
5600    which track or bus they are intended to control. Ardour has a 
5601    <a
5602   href="/working-with-tracks/controlling-track-ordering/track-ordering-and-remote-control-ids/">number 
5603    of ways of assigning remote control IDs</a>, but they don't really matter 
5604    very much when creating MIDI binding maps, so we won't discuss that here. 
5605    You just need to know that there is a "first track" and its remote control 
5606    ID is 1, and so on.
5607 </p>
5608 <h3>Getting Started</h3>
5609 <p>
5610   MIDI bindings are stored in files with the suffix ".map" attached to their 
5611   name. The minimal content looks like this:
5612 </p>
5613 <pre>
5614 &lt;?xml version="1.0" encoding="UTF-8"?&gt;
5615 &lt;ArdourMIDIBindings version="1.0.0" name="The name of this set of
5616 bindings"&gt;
5617 &lt;/ArdourMIDIBindings&gt;
5618 </pre>
5619 <p>
5620   So, to start, create a file with that as the initial contents.
5621 </p>
5622 <p>
5623   On OS X, Ardour loads midi maps from its binary-bundle folder in 
5624   <code>Ardour-&lt;version&gt;/midi_maps/</code> and checks 
5625   various other locations as well (defined by the ARDOUR_MIDIMAPS_PATH 
5626   environment variable). On GNU/Linux the easiest is to save the file to 
5627   <code>~/.config/ardour3/midi_maps/</code>.
5628 </p>
5629
5630 <h3>Finding out what your MIDI control surface sends</h3>
5631 <p>
5632   This is the most complex part of the job, but its still not very hard. 
5633   You need to connect the control surface to an application that will show 
5634   you the information that the device sends each time you modify a knob, 
5635   slider, button etc. There are a variety of such applications (notably 
5636   <code>gmidimon</code> and <code>kmidimon</code>, but you can actually use 
5637   Ardour for this if you want. Start Ardour in a terminal window, connect 
5638   MIDI ports up, and in the Preferences window, enable "Trace Input" on the 
5639   relevant MIDI port. A full trace of the MIDI data received will show up in 
5640   the terminal window. (Note: in Ardour3, you get a dedicated, custom dialog 
5641   for this kind of tracing.)
5642 </p>
5643 <h3>Types of Bindings</h3>
5644 <p>
5645   There are two basic kinds of bindings you can make between a MIDI message 
5646   and something inside Ardour. The first is a binding to a specific parameter 
5647   of a track or bus. The second is a binding to a function that will change 
5648   Ardour's state in some way.
5649 </p>
5650 <h4>Binding to Track/Bus controls</h4>
5651 <p>
5652   A track/bus binding has one of two basic structures
5653 </p>
5654 <code>
5655   &lt;Binding <em>msg specification</em>  uri="<em>... control address ...</em>"/&gt;
5656   &lt;Binding <em>msg specification</em>  function="<em>... function name ...</em>"/&gt;
5657 </code>
5658
5659 <h4>Message specifications</h4>
5660 <p>
5661   You can create a binding for either 3 types of channel messages, or for a
5662   system exclusive ("sysex") message.  A channel message specification looks 
5663   like this:
5664 </p>
5665 <code>
5666    &lt;Binding channel="1" ctl="13" ....
5667 </code>
5668 <p>
5669   This defines a binding for a MIDI Continuous Controller message involving 
5670   controller 13, arriving on channel 1. There are 16 MIDI channels, numbered 
5671   1 to 16. Where the example above says <code>ctl</code>, you can alternatively 
5672   use <code>note</code> (to create binding for a Note On message) or 
5673   <code>pgm</code>  (to create a binding for a Program Change message).
5674 </p>
5675 <p>
5676   As of Ardour 4.2, <code>enc-r</code>, <code>enc-l</code>, <code>enc-2</code> and
5677   <code>enc-b</code> may be used for surfaces that have encoders that send
5678   offsets rather than values. These accept Continuous Controller messages
5679   but treat them as offsets. These are good for banked controls as they are
5680   always at the right spot to start adjusting. (
5681    <a href="/using-control-surfaces/midi-binding-maps/working-with-encoders/">
5682    Learn more about working with encoders
5683    </a>)
5684 </p>
5685 <p>
5686   You can also bind sysex messages:
5687 </p>
5688 <code>
5689   &lt;Binding sysex="f0 0 0 e 9 0 5b f7" ....
5690   &lt;Binding sysex="f0 7f 0 6 7 f7" ....
5691 </code>
5692 <p>
5693   The string after the <code>sysex=</code> part is the sequence of MIDI bytes, 
5694   as hexadecimal values, that make up the sysex message.
5695 </p>
5696 <p>
5697   Finally, you can bind a totally arbitrary MIDI message:</p>
5698 <code>
5699   &lt;Binding msg="f0 0 0 e 9 0 5b f7" ....
5700   &lt;Binding msg="80 60 40" ....
5701 </code>
5702 <p>
5703   The string after the <code>msg=</code> part is the sequence of MIDI bytes, as 
5704   hexadecimal values, that make up the message you want to bind. Using this is 
5705   slightly less efficient than the other variants shown above, but is useful for 
5706   some oddly designed control devices.
5707 </p>
5708
5709 <p class="note">
5710   As of Ardour 4.6 it is possible to use multi-event MIDI strings such as
5711   two event CC messages, RPN or NRPN.
5712 </p>
5713
5714 <p class="note">
5715   The <code>sysex=</code> and <code>msg=</code> bindings will only work with
5716   <code>function=</code> or <code>action=</code> control addresses. They
5717   will <em>not</em> work with the <code>uri=</code> control addresses.
5718   Controls used with <code>uri=</code> require a <em>Value</em> which is
5719   only available in a known place with channel mode MIDI events.
5720 </p>
5721
5722 <h4>Control address</h4>
5723 <p>
5724   A <dfn>control address</dfn> defines what the binding will actually control. 
5725   There are quite a few different things that can be specified here:
5726 </p>
5727 <dl class="wide-table">
5728 <dt>/route/gain</dt>
5729 <dd>the gain control ("fader") for the track/bus</dd>
5730 <dt>/route/trim</dt>
5731 <dd>the trim control for the track/bus (new in 4.1)</dd>
5732 <dt>/route/solo</dt>
5733 <dd>a toggleable control for solo (and listen) of the track/bus</dd>
5734 <dt>/route/mute</dt>
5735 <dd>a toggleable control to mute/unmute the track/bus</dd>
5736 <dt>/route/recenable</dt>
5737 <dd>a toggleable control to record-enable the track</dd>
5738 <dt>/route/panwidth</dt>
5739 <dd>interpreted by the track/bus panner, should control image "width"</dd>
5740 <dt>/route/pandirection</dt>
5741 <dd>interpreted by the track/bus panner, should control image "direction"</dd>
5742 <dt>/route/plugin/parameter</dt>
5743 <dd>the Mth parameter of the Nth plugin of a track/bus
5744 </dd>
5745 <dt>/route/send/gain</dt>
5746 <dd>the gain control ("fader") of the Nth send of a track/bus</dd>
5747 </dl>
5748 <p>Each of the specifications needs an address, which takes various forms too. For track-level controls (solo/gain/mute/recenable), the address is one the following:</p>
5749 <dl class="wide-table">
5750 <dt>a number, eg. "1"
5751 </dt>
5752 <dd>identifies a track or bus by its remote control ID
5753 </dd>
5754 <dt>B, followed by a number
5755 </dt>
5756 <dd>identifies a track or bus by its remote control ID within the current bank (see below for more on banks)
5757 </dd>
5758 <dt>one or more words
5759 </dt>
5760 <dd>identifies a track or bus by its name
5761 </dd>
5762 </dl>
5763 <p>
5764   For send/insert/plugin controls, the address consists of a track/bus 
5765   address (as just described) followed by a number identifying the plugin/send 
5766   (starting from 1). For plugin parameters, there is an additional third 
5767   component: a number identifying the plugin parameter number (starting from
5768   1).
5769 </p>
5770 <p>
5771   One additional feature: for solo and mute bindings, you can also add 
5772   <code>momentary="yes"</code> after the control address. This is useful 
5773   primarily for NoteOn bindings&mdash;when Ardour gets the NoteOn it 
5774   will solo or mute the targetted track or bus, but then when a NoteOff 
5775   arrives, it will un-solo or un-mute it.
5776 </p>
5777
5778 <h4>Bindings to Ardour "functions"</h4>
5779 <p>
5780   Rather than binding to a specific track/bus control, it may be useful to 
5781   have a MIDI controller able to alter some part of Ardour's state. A 
5782   binding definition that does this looks like this:
5783 </p>
5784 <code>
5785   &lt;Binding channel="1" note="13" function="transport-roll"/&gt;
5786 </code>
5787 <p>
5788   In this case, a NoteOn message for note number 13 (on channel 1) will 
5789   start the transport rolling. The following function names are available:
5790 </p>
5791 <dl class="narrower-table">
5792 <dt>
5793 <code>transport-stop</code>
5794 </dt>
5795 <dd>stop the transport
5796 </dd>
5797 <dt>
5798 <code>transport-roll</code>
5799 </dt>
5800 <dd>start the transport "rolling"
5801 </dd>
5802 <dt>
5803 <code>transport-zero</code>
5804 </dt>
5805 <dd>move the playhead to the zero position
5806 </dd>
5807 <dt>
5808 <code>transport-start</code>
5809 </dt>
5810 <dd>move the playhead to the start marker
5811 </dd>
5812 <dt>
5813 <code>transport-end</code>
5814 </dt>
5815 <dd>move the playhead to the end marker
5816 </dd>
5817 <dt>
5818 <code>loop-toggle</code>
5819 </dt>
5820 <dd>turn on loop playback
5821 </dd>
5822 <dt>
5823 <code>rec-enable</code>
5824 </dt>
5825 <dd>enable the global record button
5826 </dd>
5827 <dt>
5828 <code>rec-disable</code>
5829 </dt>
5830 <dd>disable the global record button
5831 </dd>
5832 <dt>
5833 <code>next-bank</code>
5834 </dt>
5835 <dd>Move track/bus mapping to the next bank (see Banks below)
5836 </dd>
5837 <dt>
5838 <code>prev-bank</code>
5839 </dt>
5840 <dd>Move track/bus mapping to the previous bank (see Banks below)
5841 </dd>
5842 </dl>
5843
5844 <h4>Binding to Ardour "actions"</h4>
5845 <p>
5846   You can also bind a sysex or arbitrary message to any of the items
5847   that occur in Ardour's main menu (and its submenus).  The best place 
5848   to look for the (long) list of how to address each item is in your 
5849   keybindings file, which will contain lines that look like this:
5850 </p>
5851 <code>
5852 (gtk_accel_path "&lt;Actions&gt;/Editor/temporal-zoom-in" "equal")
5853 </code>
5854 <p>
5855   To create a binding between an arbitrary MIDI message (we'll use a 
5856   note-off on channel 1 of MIDI note 60 (hex) with release velocity 
5857   40 (hex)), the binding file would contain:
5858 </p>
5859 <code>
5860    &lt;Binding msg="80 60 40" action="Editor/temporal-zoom-in"/&gt;
5861 </code>
5862 <p>
5863   The general rule, when taken an item from the keybindings file and 
5864   using it in a MIDI binding is to simply strip the 
5865   <code>&lt;Action&gt;</code> prefix of the second field in the 
5866   keybinding definition.
5867 </p>
5868
5869 <h3>Banks and Banking</h3>
5870 <p>
5871   Because many modern control surfaces offer per-track/bus controls 
5872   for far fewer tracks &amp; busses than many users want to control, 
5873   Ardour offers the relatively common place concept of <dfn>banks</dfn>. Banks 
5874   allow you to control any number of tracks and/or busses easily, 
5875   regardless of how many faders/knobs etc. your control surface has.<br /> 
5876   To use banking, the control addresses must be specified using the 
5877   <dfn>bank relative</dfn> format mentioned above ("B1" to identify 
5878   the first track of a bank of tracks, rather than "1" to identify 
5879   the first track).
5880 </p>
5881 <p>
5882   One very important extra piece of information is required to use 
5883   banking: an extra line near the start of the list of bindings 
5884   that specifies how many tracks/busses to use per bank. If the 
5885   device has 8 faders, then 8 would be a sensible value to use for 
5886   this. The line looks like this:</p>
5887 <code>
5888    &lt;DeviceInfo bank-size="8"/&gt;
5889 </code>
5890 <p>
5891   In addition, you probably want to ensure that you bind something
5892   on the control surface to the <code>next-bank</code> and 
5893   <code>prev-bank</code> functions, otherwise you and other users 
5894   will have to use the mouse and the GUI to change banks, which 
5895   rather defeats the purpose of the bindings.
5896 </p>
5897 <h2>A Complete (though muddled) Example</h2>
5898 <pre>
5899 &lt;?xml version="1.0" encoding="UTF-8"?&gt;
5900 &lt;ArdourMIDIBindings version="1.0.0" name="pc1600x transport controls"&gt;
5901   &lt;DeviceInfo bank-size="16"/&gt;
5902   &lt;Binding channel="1" ctl="1"   uri="/route/gain B1"/&gt;
5903   &lt;Binding channel="1" ctl="2"   uri="/route/gain B2"/&gt;
5904   &lt;Binding channel="1" ctl="3"   uri="/route/send/gain B1 1"/&gt;
5905   &lt;Binding channel="1" ctl="4"   uri="/route/plugin/parameter B1 1 1"/&gt;
5906   &lt;Binding channel="1" ctl="6"   uri="/bus/gain master"/&gt;
5907
5908   &lt;Binding channel="1" note="1"  uri="/route/solo B1"/&gt;
5909   &lt;Binding channel="1" note="2"  uri="/route/solo B2" momentary="yes"/&gt;
5910
5911   &lt;Binding channel="1" note="15"  uri="/route/mute B1" momentary="yes"/&gt;
5912   &lt;Binding channel="1" note="16"  uri="/route/mute B2" momentary="yes"/&gt;
5913
5914   &lt;Binding sysex="f0 0 0 e 9 0 5b f7" function="transport-start"/&gt;
5915   &lt;Binding sysex="f0 7f 0 6 7 f7" function="rec-disable"/&gt;
5916   &lt;Binding sysex="f0 7f 0 6 6 f7" function="rec-enable"/&gt;
5917   &lt;Binding sysex="f0 0 0 e 9 0 53 0 0 f7" function="loop-toggle"/&gt;
5918
5919   &lt;Binding channel="1" note="13" function="transport-roll"/&gt;
5920   &lt;Binding channel="1" note="14" function="transport-stop"/&gt;
5921   &lt;Binding channel="1" note="12" function="transport-start"/&gt;
5922   &lt;Binding channel="1" note="11" function="transport-zero"/&gt;
5923   &lt;Binding channel="1" note="10" function="transport-end"/&gt;
5924 &lt;/ArdourMIDIBindings&gt;
5925 </pre>
5926 <p>
5927   Please note that channel, controller and note numbers are specified as 
5928   decimal numbers in the ranges 1-16, 0-127 and 0-127 respectively 
5929   (the channel range may change at some point).
5930 </p>
5931   
5932 ---
5933 title: Working With Encoders in Ardour
5934 menu_title: Working With Encoders
5935 part: subchapter
5936 ---
5937
5938 <p>
5939   Encoders are showing up more frequently on controllers. However, they use
5940   the same MIDI events as Continuous Controllers and they have no standard
5941   way of sending that information as MIDI events. Ardour 4.2 has implemented
5942   4 of the more common ways of sending encoder information.
5943 </p>
5944 <p>
5945   Encoders that send the same continuous values as a pot would are not
5946   discussed here as they are already supported by <code>ctl</code>.
5947 </p>
5948 <P>
5949   Encoders as this page talks about them send direction and offset that the
5950   DAW will add to or subtract from the current value.
5951 </p>
5952 <p>
5953   The 4 kinds of encoder supported are:
5954 </p>
5955 <ul>
5956 <li>
5957   enc-r:  On the bcr/bcf2000 this is called "Relative Signed Bit". The most
5958   significant bit sets positive and the lower 6 signifcant bits are the
5959   offset.
5960 </li>
5961 <li>
5962   enc-l: The bcr2000 calls this "Relative Signed Bit 2". The most
5963   significant bit sets negative and the lower 6 signifcant bits are the
5964   offset. If you are using one of these two and the values are right but
5965   reversed, use the other. This one is the one the Mackie Control Protocol
5966   uses.
5967 </li>
5968 <li>
5969   enc-2: The bcr2000 calls this one "Relative 2s Complement". Positive
5970   offsets are sent as normal from 1 to 64 and negative offsets are sent as
5971   2s complement negative numbers.
5972 </li>
5973 <li>
5974   enc-b: The bcr2000 calls this one "Relative Binary Offset". Positive
5975   offsets are sent as offset plus 64 and negative offsets are sent as 64
5976   minus offset.
5977 </li>
5978 </ul>
5979 <p>
5980   If the wrong one is chosen, either the positive or negative side will act
5981   incorrectly. It is not really possible to auto detect which one the
5982   controller is using. Trial and error is the only way if the specification
5983   of the controller is not known.
5984 </p>
5985 <p>
5986   Many controllers have more than one choice as well, check the manual for
5987   the surface.
5988 </p>
5989
5990 ---
5991 title: MIDI Learn
5992 part: subchapter
5993 ---
5994
5995 <h2>Philosophy</h2>
5996
5997 <p>
5998   There are no "best" ways to map an arbitrary MIDI controller for controlling Ardour. There may be very legitimate reasons for different users to prefer quite different mappings. 
5999 </p>
6000
6001 <p>
6002   On every platform that Ardour runs on, there are excellent free-of-charge tools for making connections between MIDI hardware and "virtual" MIDI ports like the ones that Ardour creates and uses. Rather than waste precious developer time replicating these connection/patch managers, we prefer to leverage their existence by having users rely on them to actually connect Ardour to other MIDI devices and software. On OS X, we recommend Pete Yandell's MIDI Patchbay. On Linux, a wide variety of tools are available including QJackctl, aconnect, Patchage, and more. 
6003 </p>
6004
6005 <h2>Basics</h2>
6006
6007 <ol>
6008   <li>Enable Generic MIDI control: <kbd class="menu">Edit &gt; Preferences
6009   &gt; Control Surfaces &gt; Generic MIDI</kbd></li>
6010   <li>Connect Ardour's MIDI port named <samp>control</samp> to whatever 
6011   hardware or software you want (using a MIDI patchbay app)</li>
6012   <li><kbd class="mod1 mouse">Middle</kbd>-click on whatever on-screen 
6013   fader, plugin parameter control, button etc. you want to control</li>
6014   <li>A small window appears that says "Operate Controller now"</li>
6015   <li>Move the hardware knob or fader, or press the note/key.</li>
6016   <li>The binding is complete. Moving the hardware should control the Ardour fader etc. </li>
6017 </ol>
6018
6019 <h2>Avoiding work in the future</h2>
6020
6021 <p>
6022   If you want the bindings you set up to be used automatically in every session, the simplest thing to do is to use <kbd class="menu">Session &gt; Save Template</kbd>. Then, when creating new sessions, select that template and all the bindings will be automatically set up for you.
6023 </p>
6024
6025 ---
6026 title: Using the Presonus Faderport
6027 menu_title: Presonus Faderport
6028 part: subchapter
6029 ---
6030
6031 <p>
6032   Since version 4.5, Ardour has had full support for the Presonus
6033   Faderport. This is a compact control surface featuring a single
6034   motorized fader, a single knob (encoder) and 24 buttons with fixed
6035   labels. It is a relatively low-cost device that functions very well
6036   to control a single (selected) track or bus, along with a variety of
6037   other "global" settings and conditions.
6038 </p>
6039
6040 <h2>Connecting the Faderport</h2>
6041
6042 <p>
6043   The Faderport comes with a single USB socket on the back. Connect a
6044   suitable USB cable from there to a USB port on your computer. As of
6045   the end of 2015, you should avoid USB3 ports&mdash;these cause erratic
6046   behaviour with the device. This issue might get fixed by Presonus in
6047   the future.
6048 </p>
6049
6050 <p class="well">
6051   Ardour uses the Faderport in what Presonus calls "native" mode. You
6052   do not need to do anything to enable this&mdash;Ardour will set the
6053   device to be in the correct mode. In native mode, the Faderport
6054   sends and receives ordinary MIDI messages to/from the host, and the
6055   host understands the intended meaning of these messages. We note
6056   this detail to avoid speculation about whether Ardour supports the
6057   device via the HUI protocol&mdash;it does not.
6058 </p>
6059
6060 <p>
6061   The Faderport will be automatically recognized by your operating
6062   system, and will appear in any of the lists of possible MIDI ports
6063   in both Ardour and other similar software.
6064 </p>
6065
6066 <p>
6067   To connect the Faderport to Ardour, open the Preferences dialog, and
6068   then click on "Control Surfaces". Click on the "Enable" button
6069   in the line that says "Faderport" in order to activate Ardour's
6070   Faderport support. Then double click on the line that says
6071   "Faderport". A new dialog will open, containing (among other things)
6072   two dropdown selectors that will allow you to identify the MIDI
6073   ports where your Faderport is connected.
6074 </p>
6075
6076 <p>
6077 <img alt="the Faderport configuration dialog"
6078      src="/images/faderport_dialog.png">
6079 </p>
6080
6081 <p>
6082   Once you select the input and output port, Ardour will initialize
6083   the Faderport and it will be ready to use. You only need do this
6084   once: once these ports are connected and your session has been
6085   saved, the connections will be made automatically in this and other
6086   future sessions.
6087 </p>
6088
6089 <p>
6090   You do not need to use the power supply that comes with the
6091   Faderport but without it, the fader will not be motorized. This
6092   makes the overall experience of using the Faderport much less
6093   satisfactory, since the fader will not move when Ardour tells it
6094   to, leading to very out-of-sync conditions between the physical
6095   fader position and the "fader position" inside the program.
6096 </p>
6097
6098 <h2>Using the Faderport</h2>
6099
6100 <p>
6101   The Faderport's controls can be divided into three groups:
6102   <ol>
6103     <li>Global controls such as the transport buttons</li>
6104     
6105     <li>Controls which change the settings for particular track or
6106       bus</li>
6107     
6108     <li>Controls which alter which track or bus is modified by the
6109       per-track/bus controls.</li>
6110   </ol>
6111 </p>
6112 <p>
6113   Because the Faderport has only a single set of per-track controls,
6114   by default those controls operate on the first selected track or
6115   bus. If there is no selected track or bus, the controls will do
6116   nothing.
6117 </p>
6118
6119 <h3>Transport Buttons</h3>
6120 <p>
6121   The transport buttons all work as you would expect.
6122   <dl>
6123     <dt>Rewind</dt>
6124     <dd>
6125       <p>
6126       When pressed on its own, starts the transport moving backwards. Successive presses
6127       speed up the "rewind" behaviour.
6128       </p>
6129       <p>
6130         If pressed while also holding the Stop button, the playhead will
6131         return to the zero position on the timeline.
6132       </p>
6133       <p>
6134         If pressed while also holding the Shift button, the playhead will
6135         move to the session start marker.
6136       </p>
6137     </dd>
6138     <dt>Fast Forward</dt>
6139     <dd>
6140       <p>
6141         When pressed on its own, starts the transport moving faster than normal. Successive presses
6142         speed up the "fast forward" behaviour.
6143       </p>
6144       <p>
6145         If pressed while also holding the Shift button, the playhead
6146         will move to the session end marker.
6147       </p>
6148     </dd>
6149     <dt>Stop</dt>
6150     <dd>
6151       Stops the transport. Also used in combination with the Rewind
6152       button to "return to zero".
6153     </dd>
6154     <dt>Play</dt>
6155     <dd>
6156       Starts the transport. If pressed while the transport is
6157       already rolling at normal speed, causes the playhead to jump to
6158       the start of the last "roll" and continue rolling ("Poor man's
6159       looping").
6160     </dd>
6161     <dt>Record Enable</dt>
6162     <dd>Toggles the global record enable setting
6163     </dd>
6164   </dl>
6165 </p>
6166
6167 <h3>Other Global Controls</h3>
6168 <p>
6169   The Mix, Proj, Trns buttons do not obviously correspond any
6170   particular functions or operations in Ardour. We have therefore
6171   allowed users to choose from a carefully curated set of possible
6172   actions that seem related to the button labels in some clear
6173   way. This can be done via the Faderport configuration dialog
6174   accessed via <code>Preferences &gt; Control Surfaces</code>. Each
6175   button has 3 possible actions associated with it:
6176   <ul>
6177     <li>Plain Press: action to be taken when the button is pressed on
6178       its own.</li>
6179     <li>Shift-Press: action to be taken when the button is pressed in
6180       conjunction with the Shift button.</li>
6181     <li>Long Press: action to be taken when the button is pressed on
6182       its own and held down for more than 0.5 seconds.</li>
6183   </ul>
6184   Click on the relevant drop-down selector to pick an action as you
6185   prefer.
6186 </p>
6187 <p>
6188   The User button also has no obvious mapping to specific Ardour
6189   functionality, so we allow users to choose from <em>any</em>
6190   possible GUI action. The menu for selecting the action is somewhat
6191   confusing and it can be hard to find what you're looking
6192   for. However, all possible actions are there, so keep looking!
6193 <p>
6194   <dl>
6195     <dt>Mix</dt>
6196     <dd>
6197       <p>
6198         Possible actions include:
6199         <ul>
6200           <li>Toggle Editor &amp; Mixer visibility</li>
6201           <li>Show/Hide the Editor mixer strip</li>
6202         </ul>
6203       </p>
6204     </dd>
6205     <dt>Proj</dt>
6206     <dd> 
6207       <p>
6208         Possible actions include:
6209         <ul>
6210           <li>Toggle Meterbridge visibility</li>
6211           <li>Toggle Session Summary visibility</li>
6212           <li>Toggle Editor Lists visibility</li>
6213           <li>Zoom to session</li>
6214           <li>Zoom in</li>
6215           <li>Zoom out</li>
6216         </ul>
6217       </p>
6218    </dd>
6219     <dt>Trns</dt>
6220     <dd>
6221       <p>
6222         Possible actions include:
6223         <ul>
6224           <li>Toggle Locations window visibility</li>
6225           <li>Toggle Metronome</li>
6226           <li>Toggle external sync</li>
6227           <li>Set Playhead at current pointer position</li>
6228         </ul>
6229       </p>
6230     </dd>
6231     <dt>Undo/Redo</dt>
6232     <dd>
6233       Undo Causes the last operation carried out in the editor to be
6234       undone. When pressed in conjuction with the Shift button, it
6235       causes the most recent undone operation to be re-done. 
6236     </dd>
6237     <dt>Punch</dt>
6238     <dd>
6239       <p>
6240         When pressed on its own, toggles punch recording. If there is no
6241         punch range set for the session, this will do nothing.
6242       </p>
6243       <p>
6244         When pressed in conjunction with the Shift button, this moves
6245         the playhead to the previous Marker
6246       </p>
6247     </dd>
6248     <dt>User</dt>
6249     <dd>
6250       <p>
6251         See above. Any and all GUI-initiated actions can be driven with
6252         by pressing this button on its own, or with a "long" press. 
6253       </p>
6254       <p>
6255         When pressed in conjunction with the Shift button, this will move
6256         the playhead to the next marker.
6257       </p>
6258     </dd>
6259     <dt>Loop</dt>
6260     <dd>
6261       <p>
6262         When pressed on its own, this toggles loop playback. If the
6263         Ardour preference "Loop-is-mode" is enabled, this does nothing
6264         to the current transport state. If that preference is disabled,
6265         then engaging loop playback will also start the transport.
6266       </p>
6267       <p>
6268         When pressed in conjunction with the Shift button, this will
6269         create a new (unnamed) marker at the current playhead
6270         position.
6271       </p>
6272     </dd>
6273   </dl>
6274 </p>
6275   
6276 <h3>Per-track Controls</h3>
6277 <p>
6278   <dl>
6279     <dt>Mute</dt>
6280     <dd>
6281       This toggles the mute setting of the currently controlled
6282       track/bus. The button will be lit if the track/bus is muted.
6283     </dd>
6284     <dt>Solo</dt>
6285     <dd>
6286       This toggles the solo (or listen) setting of the currently
6287       controlled track/bus. The button will be lit if the track/bus is
6288       soloed (or set to listen mode).
6289     </dd>
6290     <dt>Rec</dt>
6291     <dd>
6292       This toggles the record-enabled setting of the currently
6293       controlled track/bus. The button will be lit if the track is
6294       record-enabled. This button will do nothing if the Faderport is
6295       controlling a bus.
6296     </dd>
6297     <dt>Fader</dt>
6298     <dd>
6299       The fader controls the gain applied to the currently controlled
6300       track/bus. If the Faderport is powered, changing the gain in
6301       Ardour's GUI or via another control surface, or via automation,
6302       will result in the fader moving under its own control. 
6303     </dd>
6304     <dt>Knob/Dial/Encoder</dt>
6305     <dd>
6306       <p>
6307         The knob controls 1 or 2 pan settings for the current
6308         controlled track/bus. When used alone, turning the knob controls
6309         the "azimuth" or "direction" (between left and right) for the
6310         panner in the track/bus (if any). This is all you need when
6311         controlling tracks/busses with 1 input and 2 outputs.
6312       </p>
6313       <p>
6314         If controlling a 2 input/2 output track/bus, Ardour's panner
6315         has two controls: azimuth (direction) and width. The width
6316         must be reduced to less than 100% before the azimuth can be
6317         changed. Pressing the "Shift" button while turning the knob
6318         will alter the width setting.
6319       </p>
6320       <p>
6321         The knob can also be turned while the "User" button is held,
6322         in order to modify the input gain for the currently controlled
6323         track.
6324       </p>
6325     </dd>
6326     <dt>Read</dt>
6327     <dd>
6328       Enables playback/use of fader automation data by the controlled track/bus.
6329     </dd>
6330     <dt>Write</dt>
6331     <dd>
6332       Puts the fader for the controlled track/bus into automation
6333       write mode. While the transport is rolling, all fader changes
6334       will be recorded to the fader automation lane for the relevant track/bus.
6335     </dd>
6336     <dt>Touch</dt>
6337     <dd>
6338       Puts the fader for the controlled track/bus into automation
6339       touch mode. While the transport is rolling, touching the fader
6340       will initiate recording all fader changes until the fader is
6341       released. When the fader is not being touched, existing
6342       automation data will be played/used to control the gain level.
6343     </dd>
6344     <dt>Off</dt>
6345     <dd>
6346       This disables all automation modes for the currently controlled
6347       track/bus. Existing automation data will be left unmodified by
6348       any fader changes, and will not be used for controlling gain.
6349     </dd>
6350   </dl>
6351 </p>
6352
6353 <h3>Track Selection Controls</h3>
6354 <p>
6355   You can manually change the track/bus controlled by the Faderport by
6356   changing the selected track in Ardour's editor window. If you select
6357   more than 1 track, the Faderport will control the first selected
6358   track and <em>only</em> that track/bus.
6359 </p>
6360 <p>
6361   <dl>
6362     <dt>Left (arrow)</dt>
6363     <dd>
6364       This causes the Ardour GUI to select the previous track/bus
6365       (using the current visual order in the editor window), which
6366       will in turn cause the Faderport to control that track. If there
6367       is no previous track/bus, the selected track/bus is left
6368       unchanged, and the Faderport continues to control it.
6369     </dd>
6370     <dt>Right (arrow)</dt>
6371     <dd>
6372       This causes the Ardour GUI to select the next track/bus
6373       (using the current visual order in the editor window), which
6374       will in turn cause the Faderport to control that track. If there
6375       is no next track/bus, the selected track/bus is left
6376       unchanged, and the Faderport continues to control it.
6377     </dd>
6378     <dt>Output</dt>
6379     <dd>
6380       <p>
6381         Pressing the Output button causes the Faderport to control
6382         the fader, pan, mute and solo settings of the Master bus. If
6383         your session does not contain a Master bus, it does nothing.
6384         This is a toggle button&mdash;pressing it again returns Faderport
6385         to controlling whichever track/bus was selected before the
6386         first press of the Output button.
6387       </p>
6388       <p>
6389         If your session uses Ardour's monitor section, you can use
6390         Shift-Output to assign it to the Faderport in the same way
6391         that Output assigns the Master bus. This is also a toggle
6392         setting, so the second Shift-Output will return the Faderport
6393         to controlling whichever track/bus was selected before.
6394       </p>
6395       <p>
6396         If you press Shift-Output after a single press to Output
6397         (i.e. control the Monitor Section while currently controlling
6398         the Master bus) or vice versa (i.e. control the Master bus
6399         while currently controlling the Monitor Section), the press
6400         will be ignored. This avoids getting into a tricky situation
6401         where it is no longer apparent what is being controlled and
6402         what will happen if you try to change it.
6403       </p>
6404     </dd>
6405     <dt>Bank</dt>
6406     <dd>
6407       The "Bank" button is currently not used by Ardour
6408     </dd>
6409   </dl>
6410 </p>
6411
6412 ---
6413 title: Using the Ableton Push 2
6414 menu_title: Ableton Push 2
6415 part: subchapter
6416 ---
6417
6418 <p>
6419   <img alt="the Ableton Push 2 surface" src="/images/push2-main.jpg">
6420 </p>
6421
6422 <p>
6423   Since version 5.4, Ardour has had extensive support for the Ableton
6424   Push2. This is an expensive but beautifully engineered control
6425   surface primarily targetting the workflow found in Ableton's Live
6426   software and other similar tools such as Bitwig. As of version 5.4, Ardour
6427   does not offer the same kind of workflow, so we have designed our support for the
6428   Push 2 to be used for mixing and editing and musical performance,
6429   without the clip/scene oriented approach in Live. This may change in
6430   future versions of Ardour.
6431 </p>
6432
6433 <h2>Connecting the Push 2</h2>
6434
6435 <p>
6436   Plug the USB cable from the Push 2 into a USB2 or USB3 port on your
6437   computer. For brighter backlighting, also plug in the power supply
6438   (this is not necessary for use). 
6439 </p>
6440
6441 <p>
6442   The Push 2 will be automatically recognized by your operating
6443   system, and will appear in any of the lists of possible MIDI ports
6444   in both Ardour and other similar software.
6445 </p>
6446
6447 <p>
6448   To connect the Push 2 to Ardour, open the Preferences dialog, and
6449   then click on "Control Surfaces". Click on the "Enable" button
6450   in the line that says "Ableton Push 2" in order to activate Ardour's
6451   Push 2 support. 
6452 </p>
6453
6454 <p>
6455   Once you select the input and output port, Ardour will initialize
6456   the Push 2 and it will be ready to use. You only need do this
6457   once: once these ports are connected and your session has been
6458   saved, the connections will be made automatically in this and other
6459   future sessions.
6460 </p>
6461
6462 <h2>Push 2 Configuration</h2>
6463
6464 <p>
6465   The only configuration option at this time is whether the pads send
6466   aftertouch or polyphonic pressure messages. You can alter this
6467   setting via the Push 2 GUI, accessed by double-clicking on the "Push
6468   2" entry in the control surfaces list.
6469 <p>
6470
6471 <img alt="the Push 2 configuration dialog"
6472      src="/images/push2-gui.png">
6473 </p>
6474
6475 <h2>Basic Concepts</h2>
6476
6477 <p>
6478   With the Push 2 support in Ardour 5.4, you can do the following
6479   things:
6480   <dl>
6481     <dt>Perform using the 8 x 8 pad "grid"</dt>
6482     <dd>The Push 2 has really lovely pressure-sensitive pads that can
6483     also generate either aftertouch or note (polyphonic) pressure.</dd>
6484     <dt>Global Mixing</dt>
6485     <dd>See many tracks at once, and control numerous parameters for each.</dd>
6486     <dt>Track/Bus Mixing</dt>
6487     <dd>View a single track/bus, with even more parameters for the track.</dd>
6488     <dt>Choose the mode/scale, root note and more for the pads</dt>
6489     <dd>37 scales are available. Like Live, Ardour offers both
6490     "in-key" and "chromatic" pad layouts.</dd>
6491   </dl>
6492
6493   &hellip; plus a variety of tasks related to transport control, selection,
6494   import, click track control and more.
6495 </p>
6496
6497 <h2>Musical Performance</h2>
6498
6499 <p>
6500   Messages sent from the 8x8 pad grid and the "pitch bend bar" are
6501   routed to a special MIDI port within Ardour called "Push 2 Pads"
6502   (no extra latency is incurred from this routing). Although you can
6503   manually connect this port to whatever you wish, the normal
6504   behaviour of Ardour's Push 2 support is to connect the pads to the
6505   most recently selected MIDI track.
6506 </p>
6507
6508 <p>
6509   This means that to play a soft-synth/instrument plugin in a given
6510   MIDI track with the Push 2, you just need to select that track.
6511 </p>
6512
6513 <p>
6514   If multiple MIDI tracks are selected at once, the first selected
6515   track will be used. Note that messages originating from all other
6516   controls on the Push 2 will <em>not</em> not be delivered to the
6517   "Push 2 Pads" port. This makes no difference in practice, because
6518   the other controls do not send messages that are useful for musical
6519   performance. 
6520 </p>
6521
6522 <h2>Global Mix</h2>
6523
6524 <p>
6525   This is the default mode that Ardour will start the Push 2 in. In
6526   this mode, the 8 knobs at the top of the device, the 8 buttons below
6527   them, the video display and the 8 buttons below that are combined to
6528   provide a global view of the session mix.
6529 </p>
6530
6531 <p>
6532   <img alt="global mix mode on Push2 screen"
6533        src="/images/push2-globalmix.png">
6534 </p>
6535
6536 <p>
6537   The upper buttons are labelled by text in the video display just
6538   below them. Pressing one of the buttons changes the function of the
6539   knobs, and the parameters that will shown for each track/bus in the
6540   display.
6541 </p>
6542
6543 <p>
6544   As of Ardour 5.4, the possible parameters are:
6545   <dl>
6546     <dt>Volumes</dt>
6547     <dd>The display shows a knob and text displaying
6548       the current gain setting for the track, and a meter that
6549       corresponds precisely to the meter shown in the Ardour GUI for
6550       that track. Changing the meter type (e.g. from Peak to K12) in the
6551       GUI will also change it in the Push 2 display. The physical knob
6552       will alter track/bus gain.
6553     </dd>
6554     <dt>Pans</dt>
6555     <dd>The display shows a knob indicating the pan direction/azimuth
6556     for the corresponding track/bus. Turning the physical knob will
6557     pan the track left and right. If the track/bus has no panner
6558     (i.e. it has only a single output), no knob is shown and the
6559     physical knob will do nothing. </dd>
6560     <dt>Pan Widths</dt>
6561     <dd><p>For tracks with 2 outputs, the display will show a knob
6562         indicating the pan width setting for the corresponding
6563         track/bus. The physical knob can be turned to adjust the
6564         width. 
6565         </p>
6566
6567         <p>
6568         Unlike many DAWs, Ardour's stereo panners have "width"
6569         parameter that defaults to 100%. You cannot change the pan
6570         direction/azimuth of a track with 100% width, but must first
6571         reduce the width in order to pan it. Similarly, a track panned
6572         anywhere other than dead center has limits on the maximum
6573         width setting. If these concepts are not familiar to you,
6574         please be aware than many DAWs use a "panner" that actually
6575         implement "balance" and not "panning", hence the difference.
6576       </p>
6577     </dd>
6578     <dt>A Sends</dt>
6579     <dd>The display shows a knob indicating the gain level for the
6580       first send in that track. If the track has no send, no knob will
6581       be shown, and the physical knob for that track will do nothing.
6582     </dd>
6583     <dt>B Sends, C Sends, D Sends</dt>
6584     <dd>Like "A Sends", but for the 2nd, 3rd and 4th sends of a
6585       track/bus respectively.
6586     </dd>
6587   </dl>
6588 </p>
6589
6590 <p>
6591   To change which tracks are shown while in global mix mode, use the
6592   left and right arrow/cursor keys just below and to the right of the
6593   display. Tracks and busses that are hidden in Ardour's GUI will also
6594   be hidden from display on the Push 2.
6595 </p>
6596
6597 <p>
6598   To select a track/bus directly from the Push 2, press the
6599   corresponding button below the display. The track name will be
6600   highlighted, and the selection will change in Ardour's GUI as well
6601   (and also any other control surfaces).
6602 </p>
6603
6604 <h3>Soloing and Muting in Global Mix mode</h3>
6605
6606 <p>
6607   The Solo and Mute buttons to the left of the video display can be
6608   used to solo and mute tracks while in Global Mix mode. The operation
6609   will be applied to the <em>first</em> currently selected
6610   track(s).
6611 </p>
6612
6613 <p>
6614   There are two indications that one or more tracks are soloed:
6615   <ol>
6616     <li>The solo button will blink red</li>
6617     <li>Track names will be prefixed by "*" if they are soloed, and
6618       "-" if they are muted due to soloing.</li>
6619   </ol>
6620 </p>
6621
6622 <p>
6623   To cancel solo, either:
6624   <ul>
6625     <li>Select the soloed track(s) and press the solo button
6626       again</li>
6627     <li>Press and hold the solo button for more than 1 second</li>
6628   </ul>
6629 </p>
6630
6631 <h2>Track Mix</h2>
6632
6633 <p>Track Mix mode allows you to focus on a single track in more detail
6634   than is possible in Global Mix mode. To enter (or leave) Track Mix
6635   mode, press the "Mix" button.
6636 </p>
6637
6638 <p>
6639   In Track Mix mode, various aspects of the state of the first
6640   selected track/bus will be displayed on the Push 2. Above the
6641   display, the first 4 knobs control track volume (gain), pan
6642   directiom/azimuth, pan width, and where appropriate, track input
6643   trim. 
6644 </p>
6645
6646 <p>
6647   Below the display, 7 buttons provide immediate control of mute,
6648   solo, rec-enable, monitoring (input or disk or automatic), solo
6649   isolate and solo safe state. When a a track is muted due to other
6650   track(s) soloing, the mute button will flash (to differentiate from
6651   its state when it is explicitly muted). 
6652 </p>
6653
6654 <p>
6655   The video display also shows meters for the track, which as in
6656   Global Mix mode, precisely match the meter type shown in Ardour's
6657   GUI. There are also two time displays showing the current playhead
6658   position in both musical (beats|bars|ticks) format, and as
6659   hours:minutes:seconds.
6660 </p>
6661
6662 <p>
6663   To change which track is visible in Track Mix mode, use the
6664   left/right arrow/cursor keys just below and to the right of the
6665   video display.
6666 </p>
6667
6668 <h2>Scale Selection</h2>
6669
6670 <p>
6671   Press the Scale button to enter Scale mode. The display will look
6672   like this:
6673 </p>
6674
6675 <p>
6676   <img alt="track mix mode on Push2 screen"
6677        src="/images/push2-scale.png">
6678 </p>
6679
6680 <p>
6681   In the center, 37 scales are presented. Scroll through them by
6682   either using the cursor/arrow keys to the lower right of the
6683   display, or the knobs above the display. The scale will change
6684   dynamically as you scroll. You can also scroll in whole pages using
6685   the upper right and upper left buttons above the display (they will
6686   display "<" and ">" if scrolling is possible).
6687 </p>
6688
6689 <p>
6690   To change the root note of the scale, press the corresponding button
6691   above or below the video display.The button will be lit to indicate
6692   your selection (and the text will be highlighted).
6693 </p>
6694
6695 <p>
6696   By default, Ardour configures the Push 2 pads to use "in-key" mode,
6697   where all pads correspond to notes "in" the chosen scale. Notes
6698   corresponding to the root note, or the equivalent note in higher
6699   octaves, are highlighted with the color of the current target MIDI
6700   track.
6701 </p>
6702
6703 <p>
6704   In
6705   "chromatic" mode, the pads correspond to a continuous sequence of
6706   notes starting with your selected root note. Pads corresponding to
6707   notes in the scale are illuminated; those corresponding to the root
6708   note are lit with the color the current target MIDI track. Other
6709   pads are left dark, but you can still play them.
6710 </p>
6711
6712 <p>
6713   To switch between them, press button on the lower left of the video
6714   display; the text above it will display the current mode (though it
6715   is usually visually self-evident from the pad lighting pattern).
6716 </p>
6717
6718 <p>
6719   To leave Scale mode, press the "Scale" button again. You may also
6720   use the upper left button above the display, though if you have
6721   scrolled left, it may require more than one press.
6722 </p>
6723
6724 <h2>Specific Button/Knob Functions</h2>
6725
6726 <p>
6727   In addition to the layouts described above, many (but not all) of
6728   the buttons and knobs around the edges of the Push 2 will carry out
6729   various functions related to their (illuminated) label. As of Ardour
6730   5.4, this includes:
6731   <dl>
6732     <dt>Metronome (button and adjacent knob)</dt>
6733     <dd>
6734       Enables/disables the click (metronome). The knob directly above
6735       it will control the volume (gain) of the click.
6736     </dd>
6737     <dt>Undo/Redo</dt>
6738     <dd>
6739       Undo or redo the previous editing operation. 
6740     </dd>
6741     <dt>Delete</dt>
6742     <dd>
6743       Deletes the currently selected region, or range, or
6744       note. Equivalent to using Ctrl/Cmd-x on the keyboard.
6745     </dd>
6746     <dt>Quantize</dt>
6747     <dd>
6748       If a MIDI region is selected in Ardour, this will open the
6749       quantize dialog.
6750     </dd>
6751     <dt>Duplicate</dt>
6752     <dd>
6753       Duplicates the current region or range selection.
6754     </dd>
6755     <dt>Rec-Enable</dt>
6756     <dd>
6757       Enables and disables Ardour's global record enable state.
6758     </dd>
6759     <dt>Play</dt>
6760     <dd>
6761       Starts and stops the transport. Press Shift-Play to return to the session start.
6762     </dd>
6763     <dt>Add Track</dt>
6764     <dd>
6765       Opens Ardour's Add Track/Bus dialog.
6766     </dd>
6767     <dt>Browse</dt>
6768     <dd>
6769       Open's Ardour's import dialog to select and audition existing
6770       audio and MIDI files.
6771     </dd>
6772     <dt>Master</dt>
6773     <dd>
6774       Pressing this button jumps directly to Track Mix mode, with the
6775       master out bus displayed.
6776     </dd>
6777     <dt>Cursor arrows</dt>
6778     <dd>
6779       These are used by some modes to navigate within the display (e.g
6780       Scale mode). In other modes, the up/down cursor arrows will
6781       scroll the GUI display up and down, while the left/right cursor
6782       arrows will generally scroll within the Push 2 display itself.
6783     </dd>
6784     <dt>Repeat</dt>
6785     <dd>
6786       Enables/disables loop playback. This will follow Ardour's "loop
6787       is mode" preference, just like the loop button in the Ardour
6788       GUI. 
6789     </dd>
6790     <dt>Octave buttons</dt>
6791     <dd>
6792       These shift the root note of the current pad scale up or down by
6793       1 octave. 
6794     </dd>
6795     <dt>Page buttons</dt>
6796     <dd>
6797       These scroll Ardour's editor display left and right along the
6798       timeline. 
6799     </dd>
6800     <dt>Master (top right) knob</dt>
6801     <dd>
6802       This knob controls the gain/volume of Ardour's main output. If
6803       the session has a monitor saec
6804     </dd>
6805   </dl>
6806 </p>
6807
6808
6809 ---
6810 title: Configuring MIDI
6811 part: chapter
6812 ---
6813
6814
6815 ---
6816 title: Using External MIDI Devices
6817 part: subchapter
6818 ---
6819
6820 <p class="fixme">Add content</p>
6821
6822
6823 ---
6824 title: Setting Up MIDI
6825 part: subchapter
6826 ---
6827
6828 <h2>What Can Ardour Do With MIDI?</h2>
6829 <p>
6830   <dfn><abbr title="Musical Instrument Digital
6831   Interface">MIDI</abbr></dfn> is a way to describe musical
6832   performances and to control music hardware and software.
6833 </p> 
6834 <p>Ardour can import and record MIDI data, and perform a variety of
6835   editing operations on it. Furthermore, MIDI can be used to control
6836   various functions of Ardour.
6837 </p>
6838
6839 <h2>MIDI Handling Frameworks</h2>
6840 <p>
6841   MIDI input and output for Ardour are handled by the same "engine"
6842   that handles audio input and output. Up to release 3.5, that means
6843   that all MIDI I/O takes place via JACK. JACK itself uses the 
6844   native MIDI support of the operating system to receive and send
6845   MIDI data. The native MIDI support  provides device drivers for MIDI
6846   hardware and libraries needed by software applications that want to
6847   work with MIDI.
6848 </p>
6849
6850 <dl>
6851 <dt>OS X</dt>
6852 <dd>  <dfn>CoreMIDI</dfn> is the standard MIDI framework on OSX systems. 
6853 </dd>
6854 <dt>Linux</dt>
6855 <dd>
6856   <dfn><abbr title="Advanced Linux Sound API">ALSA</abbr> MIDI</dfn>
6857   is the standard MIDI framework on Linux systems.
6858 </dd>
6859 </dl>
6860
6861 <p class="note">
6862   On Linux systems, <dfn>QJackCtl</dfn> control software displays ALSA MIDI
6863   ports under its "ALSA" tab (it does not currently display CoreMIDI
6864   ports).  By contrast, JACK MIDI ports show up under
6865   the <kbd class="menu">MIDI</kbd> tab in QJackCtl.
6866 </p>
6867    
6868 <h2>JACK MIDI Configuration</h2>
6869 <p>
6870 By default, JACK will <strong>not</strong> automatically detect and use existing MIDI
6871 ports on your system. You must choose one of several ways
6872 of <dfn>bridging</dfn> between the native MIDI frameworks
6873 (e.g. CoreMIDI or ALSA) and JACK MIDI, as described in the sections
6874 below.
6875 </p>
6876
6877 ---
6878 title: MIDI on Linux
6879 part: subchapter
6880 ---
6881
6882 <p>The right approach for using MIDI on Linux depends on which version of
6883 JACK you use. The world divides into:</p>
6884
6885 <dl>
6886 <dt>Systems using JACK 1, versions 0.124 or later</dt>
6887 <dd>On these systems, just start JACK with the <code>-X alsa_midi</code> server argument. To support legacy control applications, you can also use the <code>-X seq</code> argument to the ALSA backend of JACK and get the exact same results.</dd>
6888 <dt>All others</dt>
6889 <dd>Use a2jmidid to act as a bridge between ALSA MIDI and JACK. Do not use the <code>-X seq</code> or <code>-X raw</code> arguments&mdash;the timing and performance of these options is not acceptable.
6890 </dd>
6891 </dl>
6892   
6893 <h2>a2jmidid</h2>
6894
6895 <p>
6896   <dfn>a2jmidid</dfn> is an application that bridges between the system
6897   <abbr title="Musical Instrument Digital Interface">MIDI</abbr> ports and
6898   <abbr title="JACK Audio Connection Kit">JACK</abbr>.
6899 </p>
6900
6901 <p>
6902   First you should make sure that there is no ALSA sequencer support enabled
6903   in JACK. To do that open QJackCtl's <kbd class="menu">Setup</kbd> window.
6904 </p>
6905
6906 <p>
6907   Set <kbd class="menu">Settings &gt; MIDI Driver</kbd> to <kbd
6908   class="input">none</kbd>.
6909   Then uncheck the <kbd class="optoff">Misc &gt; Enable ALSA Sequencer
6910   support</kbd> option.<br />
6911   Now it's time to restart your jack server before going on.
6912 </p>
6913
6914 <h3>Check for a2jmidid availability</h3>
6915
6916 <p>
6917   First, check whether a2jmidid is already installed in your system. After
6918   starting your JACK server, go to the command line and type
6919 </p>
6920
6921 <kbd class="cmd lin">a2jmidid -e</kbd>
6922
6923 <p>
6924   If a2jmidid does not exist, install it with the software manager of your
6925   Linux distribution and try again.
6926 </p>
6927
6928 <h2>Check available MIDI ports</h2>
6929
6930 <p>
6931   If you have correctly configured JACK for MIDI, then your MIDI ports should appear in
6932   qjackctl under <kbd class="menu">Connections &gt; MIDI </kbd>.
6933 </p>
6934
6935 <h3>Making it automatic</h3>
6936
6937 <p>
6938 Once you've verified that the ports appear in JACK as expected, you
6939 can make this happen whenever you start JACK.
6940 </p>
6941
6942 <p>If you use a newer version of JACK 1, just make sure the -X
6943 alsa_midi or -X seq options are enabled for whatever technique you use
6944 to start JACK.
6945 </p>
6946
6947 <p>
6948 For other versions of JACK,
6949 add <kbd class="input">a2jmidid -e &amp;</kbd> as an "after start-up" script
6950 in the <kbd class="menu">Setup &gt; Options</kbd> tab of QJackCtl, so
6951 that it is started automatically whenever you start JACK.
6952 </p>
6953
6954 <p class="fixme">Is this true anymore in Ardour 5? This section may have been relevant in Ardour 3, but it might not be relevant anymore.</p>
6955
6956 ---
6957 title: MIDI on OS X
6958 part: subchapter
6959 ---
6960
6961 <p>
6962   In order for CoreMIDI to work with Jack MIDI, a CoreMIDI-to-JACK-MIDI
6963   <dfn>bridge</dfn>
6964   is required. This feature is available on versions equal to or great than
6965   version 0.89 of JackOSX.
6966 </p>
6967
6968 <h2>Routing MIDI</h2>
6969
6970 <h3>Inside Ardour</h3>
6971
6972 <p>
6973   MIDI ports show up in Ardour's MIDI connection matrix in multiple
6974   locations. Bridged CoreMIDI ports as well as JACK MIDI ports that have 
6975   been created by other software clients will show up under the "Other" tab. 
6976   Bridged CoreMIDI hardware ports show up under the "Hardware" tab.
6977 </p>
6978
6979 <h3>External Applications</h3>
6980
6981 <p>
6982   There are multiple options for connecting MIDI ports outside of Ardour.
6983 </p>
6984
6985 <ul>
6986   <li><a href="http://www.snoize.com/MIDIMonitor/">MIDI Monitor</a> is a handy
6987   tool for doing various MIDI-related tasks.</li>
6988   <li><a href="http://notahat.com/midi_patchbay">MIDI Patchbay</a> lets you
6989   connect ports and filters MIDI data.</li>
6990 </ul>
6991
6992
6993 ---
6994 title: Sessions & Tracks
6995 part: part
6996 ---
6997
6998
6999 ---
7000 title: Sessions
7001 part: chapter
7002 ---
7003
7004
7005 ---
7006 title: New/Open Session Dialog
7007 part: subchapter
7008 ---
7009 <p class="fixme">Info is out of date, image needs updating</p>
7010
7011 <p>
7012   The initial <dfn>Session</dfn> dialog consists of several consecutive pages:
7013 </p>  
7014
7015 <h2>Open Session Page</h2>
7016 <p>
7017   On this page, you can open an <dfn>existing session</dfn>.  You can also 
7018   open any <a href="/working-with-sessions/snapshots/">snapshot</a> of a 
7019   particular session by clicking on the arrow next to the session name to 
7020   display all snapshots, and then selecting one.  If your session is 
7021   not displayed in the Recent Sessions list, the <kbd class="menu">Other
7022   Sessions</kbd> button will bring up a file selection dialog to navigate 
7023   your hard drive.<br />
7024   Alternatively, you can opt to create a <kbd class="menu">New
7025   Session</kbd>.
7026 </p>
7027
7028 <h2>New Session page</h2>
7029 <p>
7030   Here you can type in the name of a session, select a folder to save in, and 
7031   optionally use an existing <a href="/working-with-sessions/session-templates/">template</a>.
7032 </p>
7033 <p>
7034   Under <dfn>Advanced Options</dfn>, you can select whether you wish to create 
7035   a Master Bus, or a Control Bus, and how many channels you wish either to have.
7036   You can also decide whether you want Ardour to automatically connect all inputs 
7037   to the physical ports of your hardware. Ardour will do so 
7038   sequentially and in round-robin fashion, connecting the first track's
7039   input to the first input of your hardware and so on. When Ardour has used
7040   all available hardware inputs, it will begin again with the first physical
7041   input. 
7042   You can limit the number of channels on your physical hardware that Ardour
7043   uses. 
7044 </p>
7045 <p>
7046   By default Ardour will connect all tracks and busses to the Master Bus if 
7047   there is one. However you can also tell it to automatically connect each 
7048   output to the physical outputs of your interface or sound card, and limit
7049   the number of physical outputs used, as above.
7050 </p>
7051
7052 <h3>Audio/MIDI Setup</h3>
7053
7054 <img class="right" src="/images/Audio-MIDI_Setup.png" alt="The Audio+MIDI
7055 Setup Dialog"/>
7056
7057 <p>
7058   This page is not displayed if <abbr title="JACK Audio Connection
7059   Kit">JACK</abbr> is already running when you start
7060   Ardour. It provides a simple interface to configure JACK, which
7061   will then be started by Ardour. For more control and options regarding
7062   JACK, it is recommended that you start JACK before using Ardour, via a
7063   JACK control application such as QJackCtl (sometimes called "Jack
7064   Control"), JackPilot, etc.
7065 </p>
7066 <dl>
7067   <dt>Audio System</dt>
7068   <dd>Currently, the only option here is <kbd class="menu">JACK</kbd>. In the future, native
7069   hardware access may be supported.</dd>
7070   <dt>Driver</dt>
7071   <dd>
7072     On Mac OS X this will typically be <kbd class="menu">CoreAudio</kbd>. On Linux usually
7073     this will be either <kbd class="menu"><abbr title="Free Firewire Audio Driver fOr
7074     linux">FFADO</abbr></kbd>
7075     or <kbd class="menu"><abbr title="Advanced Linux Sound
7076     Architecture">ALSA</abbr></kbd>, depending on whether or not you are
7077     utilizing a firewire device. Advanced users on all platforms may also
7078     use <kbd class="menu">NetJack</kbd> which provides network audio I/O.
7079   </dd>
7080   <dt>Device</dt>
7081   <dd>The selector should show all availiable interfaces provided by the
7082   driver above and which are capable of duplex operation.
7083   <p class="warning">
7084     If you are using an Intel Mac running OS X and the builtin audio
7085     interface, you must
7086     first <a href="setting-up-your-system/using_more_than_one_audio_device/">merge
7087     its separate input and output devices into a single "aggregate
7088     device"</a> before Ardour will be able to use it.
7089    </p>
7090   </dd>
7091   <dt>Sample Rate</dt>
7092   <dd>
7093     The selector will allow you to select from any sample rate
7094     supported by the device selected above it.
7095   </dd>
7096   <dt>Buffer Size</dt>
7097   <dd>
7098     You can adjust the size of the buffer used by your audio interface
7099     to allow for either lower latency, or lower CPU usage and higher
7100     latency.
7101   </dd>
7102   <dt>Input/Output Channels</dt>
7103   <dd>
7104     Here you can specify the number of hardware channels to use. The
7105     default is <kbd class="menu">all available channels</kbd>.</dd>
7106   <dt>Hardware Input/Output Latency</dt>
7107   <dd>Specify the hardware delay in samples for precise latency compensation.</dd>
7108   <dt>Calibrate</dt>
7109   <dd>
7110     This button guides you through a semi-automated process to obtain
7111     precise hardware latency measurements for the above option.</dd>
7112   <dt>MIDI System</dt>
7113   <dd>
7114     Select the MIDI driver to use. On Mac OS X, this will be <kbd
7115     class="menu">CoreMIDI</kbd>. On Linux, you can change between two legacy
7116     ALSA drivers or the (preferred) new JACK+ALSA implementation.</dd>
7117 </dl>
7118
7119 ---
7120 title: What's in a Session?
7121 part: subchapter
7122 ---
7123
7124 <p>
7125   The <dfn>Session</dfn> is the fundamental document type that is created and 
7126   modified by the Ardour workstation.  A Session is a folder on your computer 
7127   filesystem that contains all the items that pertain to a particular project 
7128   or "recording/editing/mixing session".
7129 </p>
7130
7131 <p>
7132   The Session folder includes these files and folders:
7133 </p>
7134
7135 <ul>
7136   <li><code><em>session_name</em>.ardour</code> the main session snapshot</li>
7137   <li><code>*.ardour</code>, any additional snapshots </li>
7138   <li><code><em>session_name</em>.ardour.bak</code>, the auto-backup snapshot</li>
7139   <li><code><em>session_name</em>.history</code>, the undo history for the session </li>
7140   <li><code>instant.xml</code>, which records the last-used  zoom scale and other metadata</li>
7141   <li><code>interchange/</code>, a folder which holds your raw audio and MIDI 
7142   files (whether imported or recorded)</li>
7143   <li><code>export/</code>, a folder which contains any files created by the
7144   <kbd class="menu">Session &gt; Export</kbd> function</li>
7145   <li><code>peaks/</code>, a folder which contains waveform renderings of
7146   all audio files in the session</li>
7147   <li><code>analysis/</code>, a folder which contains transient and pitch 
7148   information of each audio file that has been analysed</li>
7149   <li><code>dead sounds/</code>, a folder which contains sound files which 
7150   Ardour has detected are no longer used in the session (during a <kbd
7151   class="menu">Session &gt; Clean-up &gt; Clean-up Unused Sources</kbd>
7152   operation, will be purged by <kbd class="menu">Flush Waste Basket</kbd>)</li>
7153 </ul>
7154 <p>
7155   A session combines some setup information (such as audio and MIDI routing, 
7156   musical tempo &amp; meter, timecode synchronization, etc.) with one or more 
7157   Tracks and Buses, and all the Regions and Plug-Ins they contain.
7158 </p>
7159   
7160 ---
7161 title: Where Are Sessions Stored?
7162 part: subchapter
7163 ---
7164
7165 <p>
7166   <dfn>Sessions</dfn> are stored in a single folder on your computer's filesystem. 
7167 </p>
7168
7169 <p>
7170   The first time you run Ardour, you will be asked where you would like the
7171   default location for sessions to be, with the initial choice being your 
7172   home folder. 
7173 </p>
7174
7175 <p>
7176   After the first-run dialog, you can still change the default location at 
7177   any time via <kbd class="menu">Edit &gt; Preferences &gt; Misc &gt; Session
7178   Management</kbd>. You can also specify a particular (different) location for 
7179   a session when creating it, in the 
7180   <a href="/working-with-sessions/new-session-dialog/">New Session dialog</a>.
7181 </p>
7182   
7183 ---
7184 title: Backup and Sharing of Sessions
7185 part: subchapter
7186 ---
7187
7188 <p>
7189   An Ardour session is stored in a single folder on your computer's filesystem. 
7190   This makes <dfn>backup</dfn> very easy&mdash;any tool capable of backing up 
7191   a folder can be used to backup a session. You pick the location of a session 
7192   when it is created&mdash;by default it will be in your default session location, 
7193   which can be altered via <kbd class="menu">Edit &gt; Preferences &gt; Misc &gt; Session
7194   Management</kbd>. 
7195 </p>
7196
7197 <p class="warning">
7198   There is one complication: a session may reference media files that are stored 
7199   outside of the session folder, if the user has opted not to select <kbd
7200   class="optoff">Session &gt; Import &gt; Copy to Session</kbd> during
7201   import. Backing up a session with embedded files will not create a 
7202   copy of the session containing those files.
7203 </p>
7204
7205 <p>
7206   The single folder approach also makes sharing a project easy. Simply copy the session 
7207   folder (onto a storage device, or across a network) and another Ardour user (on any 
7208   platform) will be able to use it. The limitation regarding embedded files applies to 
7209   session sharing as well.
7210 </p>
7211   
7212 ---
7213 title: Interchange with other DAWs
7214 part: subchapter
7215 ---
7216
7217 <p>
7218   It has never been particularly easy to move sessions or projects from one
7219   <abbr title="Digital Audio Workstation">DAW</abbr> to another. There are two 
7220   <dfn>interchange standards</dfn> that have reasonably widespread support:</p>
7221 <ul>
7222   <li>OMF (Open Media Framwwork), also known as OMFI. Developed and controlled 
7223   by Avid, never standardized</li>
7224   <li>AAF (Advanced Authoring Format). Developed by a consortium of media-related 
7225   corporations.</li>
7226 </ul>
7227 <p>
7228   In practice both of these standards have such complex and/or incomplete 
7229   specifications that different DAWs support them only partially,
7230   differently, or not at all.
7231 </p>
7232 <h2>Moving an Ardour session to another DAW</h2>
7233 <p>To move an Ardour session to another DAW, you have 3 basic choices:</p>
7234 <ul>
7235   <li>Copy the interchange folder</li>
7236   <li>Stem exports</li>
7237   <li>Use AATranslator</li>
7238 </ul>
7239 <h3>Moving another DAW session to Ardour</h3>
7240 <p>To move a session from another DAW to Ardour, you have 2 basic choices:</p>
7241 <ul>
7242 <li>Stem exports</li>
7243 <li>Use AATranslator</li>
7244 </ul>
7245
7246 ---
7247 title: Copying The Interchange Folder
7248 part: subchapter
7249 ---
7250
7251 <p>
7252   All media in a session folder is stored in a sub-folder called 
7253   <samp>interchange</samp>. Below that is another folder with the name 
7254   of the session. You can copy either of these to another location and 
7255   use the files within them with any other application, importing them 
7256   all into a project/session. You will lose all information about regions, 
7257   tracks, and timeline positioning, but all the data that Ardour was working 
7258   with will be present in the other DAW. Nothing below the interchange 
7259   folder is specific to Ardour&mdash;any DAW or other audio/MIDI 
7260   application should be able to handle the files without any issues.
7261 </p>
7262   
7263 ---
7264 title: Stem Exports
7265 part: subchapter
7266 ---
7267
7268 <p>
7269   <dfn>Stem exports</dfn> are covered fully in the 
7270   <a href="/exporting">Export</a> chapter. A stem export creates one file
7271   per track, starting at the beginning of the session. You can then import
7272   each track into another DAW and begin working on it. You lose all data
7273   except the actual audio/MIDI (no plugins, no automation). This is one of
7274   the most common methods of interchange because it works between all DAWs.
7275 </p>
7276   
7277 ---
7278 title: Using AATranslator
7279 part: subchapter
7280 ---
7281
7282 <p>
7283   <dfn>AATranslator</dfn> is a Windows 
7284   application that can convert sessions/projects from many diffferent DAWs 
7285   into other formats. At the present time (December 2016), it can read and 
7286   write Ardour 2.X sessions, and can read Ardour 3 sessions. 
7287 </p>
7288 <p>
7289   The program runs very well on Linux using 
7290   <a href="http://www.winehq.org/">Wine</a> (a Windows environment for Linux). 
7291   There are equivalent solutions for running Windows applications on OS X, 
7292   but we have no experience with them at this time. Ardour users have reported 
7293   great results using AATranslator on Ardour 2.X sessions.</p>
7294 <p>
7295   The <a href="http://www.aatranslator.com.au/">AATranslator website</a> 
7296   has full details on supported formats and DAWs. The list includes
7297   ProTools, Live, Reaper, OMF, AAF and many more.
7298 </p>
7299 <p class="warning">
7300   AATranslator is closed-source, non-free software (as of this writing, Dec. 2016, the cost is 60 USD for the "Standard" version, and 200 USD for the "Enhanced" version).
7301 </p>
7302
7303 ---
7304 title: Renaming a Session
7305 part: subchapter
7306 ---
7307
7308 <p>
7309   Use <kbd class="menu">Session &gt; Rename</kbd> to give your session a 
7310   new name. A dialog will appear to ask you for the new name.
7311 </p>
7312
7313 <p>
7314   This operation does <strong>not</strong> make a new session folder &mdash;
7315    the existing session folder and relevant contents are renamed. If your 
7316    session was not saved before a rename operation, it will be saved 
7317    automatically and then renaming will continue.
7318 </p>
7319
7320 <p class="warning">
7321   Ardour's <kbd class="menu">Session &gt; Save As</kbd> operation will not
7322   make a new copy of the session folder and its contents. All it does is
7323   create a new session file.
7324 </p>
7325
7326 ---
7327 title: Session Templates
7328 part: subchapter
7329 ---
7330
7331 <p>
7332   <dfn>Session templates</dfn> are a way to store the setup of a session 
7333   for future use. They do not store any <em>audio</em> data but can store:
7334 </p>
7335
7336 <ul>
7337   <li>The number of tracks and busses, along with their names</li>
7338   <li>The plugins present on each track or bus (if any)</li>
7339   <li>All I/O connections</li>
7340 </ul>
7341
7342 <h2>Creating a Session Template</h2>
7343
7344 <p>
7345   Choose <kbd class="menu">Session &gt; Save Template</kbd>. A dialog will ask 
7346   you for the name of the new template.
7347 </p>
7348
7349 <h2>Using a Session Template</h2>
7350
7351 <p>
7352   In the New Session dialog, choose the desired template from the combo 
7353   selector.
7354 </p>
7355
7356 <p>
7357   Note that you can also use an existing session as a template, without 
7358   saving it as one. This is available as an option in the New Session dialog. 
7359   Doing this will not alter the existing session at all, but will use its track, 
7360   bus and plugin configuration just like a template.
7361 </p>
7362
7363 <p>
7364   See also <a href="/missing">Track &amp; Bus templates</a> for information 
7365   on templates for individual tracks or busses.
7366 </p>
7367   
7368 <p class="fixme">Broken link</p>
7369
7370 ---
7371 title: Snapshots
7372 part: subchapter
7373 ---
7374
7375 <p>
7376   Sometimes you will want to save a <dfn>snapshot</dfn> of the current state of a session for possible 
7377   use in the future. For example, you may be about to change the entire
7378   arrangement of a piece, or drastically alter the signal processing, and 
7379   want a reference to come back to, should that not work out.
7380 </p>
7381
7382 <p>
7383   This is easily accomplished using <kbd class="menu">Session &gt;
7384   Snapshot</kbd>. 
7385   A small dialog will appear, allowing you to enter a name for the snapshot. 
7386   The default name is based on the current date and time.<br />
7387   You can create any number of snapshots.
7388 </p>
7389
7390 <p class="warning">
7391   Creating a snapshot does <strong>not</strong> modify your session, 
7392   nor does it save your session. Instead, it saves an alternate version 
7393   of the session, within the session folder. The snapshot shares all data 
7394   present in the session. 
7395 </p>  
7396
7397 <p>
7398   After creating a snapshot, you can continue working on the session and 
7399   save it normally using <kbd class="menu">Session &gt; Save</kbd> and any 
7400   existing snapshots will remain unchanged.
7401 </p>
7402
7403 <h2>Switching to a Snapshot</h2>
7404
7405 <p>
7406   If you are already working on a session and want to to switch to an
7407   existing snapshot, navigate the Snapshots tab of the 
7408   <a href="/ardours-interface/introducing-the-editor-window/editor-lists">Editor List</a>. 
7409   Find the name of the snapshot in the list and click it. Ardour will switch 
7410   to the snapshot. If there are unsaved changes in the  current session, Ardour will
7411   ask what you want to do.
7412 </p>
7413
7414 <h2>Starting Ardour With a Snapshot</h2>
7415
7416 <p>
7417   Since a snapshot is just another session file stored within the session
7418   folder, you can specify that "version" when loading an existing session. 
7419   The browser in the "Open Session" dialog will show an expander arrow for 
7420   sessions that have more than 1 session file (i.e. snapshots) present&mdash;click on it to see the list, and then click on the name of the 
7421   snapshot you want to load.
7422 </p>
7423
7424 <h2>Saving and Switching to a Snapshot</h2>
7425
7426 <p>
7427   Sometimes you may want to create a snapshot and then have all future 
7428   edits and modifications saved to that snapshot rather than the main 
7429   session. This is easily done using <kbd class="menu">Session &gt; Save
7430   As</kbd>. This does not create a new session folder,  but saves your 
7431   session as a new snapshot and then switches the "current snapshot" 
7432   to the newly created one. All subsequent saves of the session will 
7433   be stored in this new snapshot, and existing snapshots (and the main 
7434   session) will be left unaffected. 
7435 </p>
7436   
7437 ---
7438 title: Metadata
7439 part: subchapter
7440 ---
7441
7442 <p>
7443   Sessions can have various items of metadata attached to them, via
7444   <kbd class ="menu">Session &gt; Metadata &gt; Edit Metadata...</kbd> and 
7445   <kbd class ="menu">Session &gt; Metadata &gt; Import Metadata...</kbd>.
7446 </p>
7447
7448 <h2>Edit Session Metadata Dialog</h2>
7449
7450 <img src="/images/edit-session-metadata.png" />
7451
7452 <p class="fixme">Add content</p>
7453
7454 ---
7455 title: Cleaning up Sessions
7456 part: subchapter
7457 ---
7458
7459 <p>
7460   Recording and editing any serious session might leave the session with some
7461   unused or misplaced files here and there. Ardour can help deal with this clutter thanks
7462   to the tools located in the <kbd class="menu">Session &gt; Clean-up</kbd> menu.
7463 </p>
7464
7465 <h2 id="bring_all_media_into_session_folder">Bring all media into session folder</h2>
7466
7467 <p>
7468   When <a href="/adding-pre-existing-material/">importing media files</a>, if
7469   the <kbd class="option">Copy files to session</kbd> hasn't been checked, Ardour uses
7470   the source file from its original destination, which can help avoiding file duplication.
7471   Nevertheless, when the session needs to be archived or transfered to another computer, moving
7472   the session folder won't move those <em>external</em> files as they are not in the folder, as seen
7473   in <a href="/working-with-sessions/backup-and-sharing-of-sessions/">Backup and sharing of sessions</a>.
7474 </p>
7475
7476 <p>
7477   Using the <kbd class="menu">Bring all media into session folder</kbd> menu ensures
7478   that all media files used in the session are located inside the session's folder, hence avoiding
7479   any missing files when copied.
7480 </p>
7481
7482 <h2 id="reset_peak_files">Reset Peak Files</h2>
7483
7484 <p>
7485   Ardour represents audio waveforms with peak files, that are graphical images generated from the
7486   sound files. This generation can be time and CPU consuming, so it uses a cache of the generated
7487   images to speed up the display process. To watch for files modification, Ardour relies on the file-modification
7488   time. If an external file is embedded in the session and that file changes, but the system-clock is skewed
7489   or it is stored on an external USB disk (VFAT), Ardour can't know the change happend, and will still use its
7490   deprecated peak files.
7491 </p>
7492
7493 <p>
7494   Using the <kbd class="menu">Reset Peak Files</kbd> menu allows to reset this cache, which frees up disk space,
7495   and forces the re-creation of the peak files used in the session. It can prove useful if some waveforms
7496   are not used anymore, or if a graphical or time glitch happens.
7497 </p>
7498
7499 <h2 id="clean_up_unused_sources">Clean-up Unused Sources...</h2>
7500
7501 <p>
7502   Recording usually lefts a lot of unused takes behind, be it in midi or audio form, that can clutter
7503   the Region List, and eat up a lot of hard drive space. While its generally a good practice to keep as
7504   many things as possible while recording, when transferring or archiving the session, some clean up can
7505   help a lot in reducing the sessions clutter and size.
7506 <p>
7507
7508 <p>
7509   Selecting <kbd class="menu">Clean-up Unused Sources...</kbd> will force Ardour to detect those unused waveforms
7510   by looking for unused regions, and (through a prompt) for unused playlists. The media files won't be destroyed, though.
7511   At this stage, they are just copied in a particular place of the session path (namely, in the <code>dead sounds/</code>
7512   sub-folder).
7513 </p>
7514
7515 <h2 id="flush_wastebasket">Flush Wastebasket</h2>
7516
7517 <p>
7518   Although Ardour is a <em>non-destructive</em> audio-editor, it allows for a very careful destruction of unused media materials.
7519   This function is closely linked to the previous one. When the unused sources have been cleaned up and quarantined, the
7520   <kbd class="menu">Flush Wastebasket</kbd> menu will allow for their physical destruction.
7521 </p>
7522
7523 <p>
7524   As a safeguarding mechanism though, Flushing the wastebasket in impossible in the same working session as the Cleaning up of unused sources:
7525   the user needs to close the session and reload it before flushing. It allows to test the playback of the session and ensure both that Ardour didn't commit
7526   any mistake (unlikely, but better safe than sorry), and that the user is absolutely sure of what he does.
7527 </p>
7528
7529 <p class="warning">
7530   Notice that all media destroyed this way is not sent to the system's <em>trash can</em> but permanently deleted. If a file is mistakenly destroyed this way, the user will have to rely on data recovery techniques to try getting it back.
7531 </p>
7532
7533 ---
7534 title: Copying versus Linking
7535 part: subchapter
7536 ---
7537
7538 <p>
7539   <dfn>Copying</dfn> and <dfn>linking</dfn> are two different methods of 
7540   using existing audio files on your computer (or network file system) 
7541   within a session. They differ in one key aspect:
7542 </p>
7543
7544 <h2>Copying</h2>
7545
7546 <p>
7547   An existing media file is copied to the session's audio folder, and 
7548   if necessary converted into the session's native format.
7549 </p>
7550
7551 <p>
7552   For audio files, you can control the choice of this format (eg. WAVE 
7553   or Broadcast WAVE). Audio files will also be converted to the session 
7554   sample rate if necessary (which can take several minutes for larger 
7555   files).
7556 </p>
7557
7558 <p>
7559   MIDI files will already be in SMF format, and are simply copied into 
7560   the session's MIDI folder.
7561 </p>
7562
7563 <h2>Linking</h2>
7564
7565 <p>
7566   A link to an existing media file somewhere on the disk is used as a the
7567   source for a region, but the data is <strong>not copied or modified</strong> 
7568   in any way.
7569 </p>
7570
7571 <p class="warning">
7572   While linking is handy to conserve disk space, it means that your session
7573   is <dfn>no longer self-contained</dfn>. If the external file moves, it
7574   will become unavailable, and any changes to it from elsewhere will affect
7575   the session. A backup of the session directory will miss linked files.
7576 </p>
7577
7578 <p>
7579   You can choose to copy or link files into your session with the 
7580   <kbd class="option">Copy file to session</kbd> option in the Import 
7581   dialog window.
7582 </p>
7583
7584 <p>
7585   <img class="left" src="/images/225-ARDOUR_1_2_1.png" />
7586   &larr; This file will be imported in the audio/MIDI folder of your session.
7587 </p>
7588
7589 <p>
7590   <img class="left" src="/images/226-ARDOUR_1_2_1.png" />
7591   &larr; This file won't be copied.
7592 </p>
7593
7594 <p class="note">
7595   There is a global preference <kbd class="menu">Edit &gt; Preferences &gt; Misc &gt; Session Management &gt; Always copy imported files</kbd>. If it is enabled, you will not be able to link a file.
7596 </p>
7597
7598 ---
7599 title: Adding Pre-existing Material
7600 part: subchapter
7601 ---
7602
7603 <p>
7604   There are several ways to importing an audio or MIDI file into a 
7605   session:
7606 </p>
7607 <ul>
7608   <li><kbd class="menu">Session &gt; Import</kbd></li>
7609   <li>Region List context menu: <kbd class="menu">Import To Region List</kbd></li>
7610   <li>Track context menu: <kbd class="menu">Import Existing Media</kbd>
7611 </li>
7612 </ul>
7613 <p>
7614   These methods are all equivalent: they open the <a
7615   href="/adding-pre-existing-material/import-dialog/">Add Existing Media</a> 
7616   dialog.  
7617 </p>
7618 <p>
7619   Finally, you can also easily import files into your project by dragging 
7620   and dropping a file from some other application (e.g. your platform's 
7621   file manager). You can drag onto the 
7622   <dfn>Region List</dfn>, into the desired <dfn>track</dfn> or into empty 
7623   space in the editor track display.<br />
7624   The file will be imported and copied 
7625   into your session, and placed at the position where the drag ended.
7626 </p>
7627
7628 ---
7629 title: Import Dialog
7630 part: subchapter
7631 ---
7632
7633 <p>
7634   Many sessions will require the use of <dfn>existing material</dfn>, 
7635   whether it consists of audio and/or MIDI data. Using existing samples, 
7636   loops and riffs from files stored on your system can be the basis for 
7637   a new session, or a way to deepen and improve one that is already 
7638   underway. 
7639 </p>
7640
7641 <p>
7642   You can import audio and MIDI data into your session with the 
7643   <dfn>Add Existing Media</dfn> dialog.
7644 </p>
7645
7646 <p class="fixme">Update image, possibly update content if out of date</p>
7647 <img src="/images/209-ARDOUR_1_2_1.png" />
7648
7649 <h2>The Soundfile Information Box</h2>
7650
7651 <p>
7652   This box will display information about the currently selected file:
7653 </p>
7654
7655 <ul>
7656   <li>number of channels,</li>
7657   <li>sample rate,</li>
7658   <li>file format,</li>
7659   <li>length,</li>
7660   <li>embedded timestamp (applies to some professional formats such as
7661   Broadcast WAVE), and</li>
7662   <li>tags (attached metadata to help categorize files in a library).</li>
7663 </ul>
7664
7665 <p>
7666   If the sample rate differs from the current session rate, it is displayed
7667   in red, which indicates that the file must be resampled before
7668   importing. Resampling is controlled by the <kbd class="menu">Conversion quality</kbd> option described below.
7669 </p>
7670
7671 <h2>Auditioner</h2>
7672
7673 <p>
7674   Files can be auditioned before importing. The slider under the play and
7675   stop buttons allows you to scrub around, a fader on the right side allows
7676   you to control the playback volume.
7677 </p>
7678
7679 <h2>Importing options</h2>
7680
7681 <p>
7682   You can import files into new, automatically created tracks, to the region
7683   list (from where you can manually drag them into a track), or as new 
7684   <a href="/working-with-tracks/track-types/">Tape tracks</a> with the
7685   <kbd class="menu">Add new files as...</kbd> option.  
7686 </p>
7687
7688 <p>
7689   New files will be inserted at either the file timestamp (if available,
7690   zero by default), at the <a href="/missing">edit point</a>, at the
7691   playhead, or at the start of the session, as specified in <kbd
7692   class="menu">Insert at...</kbd>.
7693 </p>
7694
7695 <p>
7696   The Channel <kbd class="menu">mapping</kbd> is either "one track/region per
7697   file", or "one track/region per channel". The latter splits multichannel
7698   source files into mono regions. If you have selected multiple files and are importing them into a track,
7699   you can also choose whether to sequence all files into a single track in
7700   the order of selection, or to create as many tracks as there are files to
7701   import.
7702 </p>
7703
7704 <p>
7705   The <kbd class="menu">Conversion quality</kbd> drop-down controls the
7706   quality of the resampling process, if the sampling rate of the source file
7707   differs from the session rate. 
7708 </p>
7709
7710 <p>
7711   Finally, and most importantly, you can decide whether to <kbd
7712   class="option">Copy files to session</kbd>, or to link them. Please read
7713   <a href="/adding-pre-existing-material/copying-versus-linking/">Copying
7714   versus Linking</a> for details.
7715 </p>
7716
7717 ---
7718 title: Searching and Importing From Freesound
7719 menu_title: Freesound Search/Import
7720 part: subchapter
7721 ---
7722
7723 <p class="fixme">This section is irrelevant now, as the Freesound import function has been removed due to changes done on Freesound's end</p>
7724
7725 <p>
7726   <a href="http://www.freesound.org"
7727   title="http://www.freesound.org"><dfn>Freesound</dfn></a> 
7728   is an online repository of searchable sound files licensed under
7729   Creative-Commons term. The <kbd class="menu">Search  Freesound</kbd> tab 
7730   of the import dialog allows you to search the Freesound database, 
7731   and to download and audition files directly.
7732 </p>
7733
7734 <dl>
7735   <dt>Tags</dt>
7736   <dd>Enter metadata tags that you would like to search for. You may enter 
7737   multiple search terms separated by spaces. For example, 
7738   <kbd class="input">drums 120bpm</kbd> will search for files that are tagged 
7739   <samp>drums</samp>, <samp>120bpm</samp>, or both.</dd>
7740   <dt>Sort</dt>
7741   <dd>Choosing one of the sort options will cause Freesound to return the list 
7742   of available files sorted accordingly. This can save time if you know (for 
7743   example) the sound you need is very short.</dd>
7744   <dt>Search</dt>
7745   <dd>Click this button to initiate the search. Freesound will begin returning 
7746   pages of information, with 20 items per page. The <kbd
7747   class="menu">Stop</kbd> button interrupts the download.</dd>
7748   <dt>The file list</dt>
7749   <dd>Click on a file to download it from Freesound. Double-click the file to 
7750   auto-play it in the auditioner.</dd>
7751 </dl>
7752
7753 <p>
7754   Files imported with Freesound will automatically include any tags that are 
7755   associated with the file, and these tags will be included in a search when 
7756   you use the <kbd class="menu">Search Tags</kbd> tab.
7757 </p>
7758   
7759 ---
7760 title: Searching for Files Using Tags
7761 part: subchapter
7762 ---
7763
7764 <p>
7765   A <dfn>tag</dfn> is bit of information, or metadata, that is associated 
7766   with a data file. Specifically, tags are keywords or terms that you feel 
7767   have some relevance to a particular soundfile. Ardour can store these tags 
7768   in a searchable <dfn>database</dfn> so that you can quickly search for sounds
7769   based on the tags that you have assigned to them. 
7770 </p>
7771
7772 <p>
7773   For example you can assign the term <kbd class="input">120bpm</kbd> to a 
7774   sound, and then when you search for this tag, the file will appear in the
7775   search list. Tags are independent of the filename or anything else about 
7776   the file. Tags, and the file paths that they are associated with, are 
7777   stored in a file called <samp>sfdb</samp> in your Ardour user folder.
7778 </p>
7779
7780 <p>
7781   To <dfn>add tags</dfn> to a given file, open the <kbd class="menu">Session &gt;
7782   Import</kbd> dialog, select the file in the browser, and type new tags into tag
7783   area in the soundfile information box on the right. Tags are stored when the
7784   input box loses focus, there is no need to explicitly save them.
7785 </p>
7786
7787 <p>
7788   You can <dfn>search</dfn> for specific tags in the <kbd
7789   class="menu">Search Tags</kbd> tab of the same dialog. Files which have 
7790   been tagged with the relevant terms will appear in the results window. 
7791   Selected files can be auditioned and marked with additional tags if
7792   required. 
7793 </p>
7794     
7795 ---
7796 title: Supported File Formats
7797 part: subchapter
7798 ---
7799
7800 <p>
7801   The list of audio file formats that Ardour can understand is quite long. 
7802   It is based on the functionality offered by <dfn>libsndfile</dfn>, an excellent and 
7803   widely used software library by Australian programmer Erik de Castro Lopo. 
7804   As libsndfile's capabilities expand, so will Ardour's abilities to import 
7805   (and export) new formats. Ardour supports all common audio file formats, 
7806   including WAV, AIFF, AIFC, CAF, W64 and BWF, with all typical sample formats 
7807   (8-, 16-, 24-, 32-bit integer, floating point, and more).
7808 </p>
7809
7810 <p>
7811   You can find a full list of libsndfile's supported formats 
7812   <a href="http://www.mega-nerd.com/libsndfile/#Features">here</a>.
7813 </p>
7814
7815 <p>
7816   For MIDI import, Ardour will read any Standard MIDI Format (SMF) file. 
7817 </p>
7818
7819
7820 ---
7821 title: Ardour Main Windows
7822 part: chapter
7823 ---
7824
7825
7826 ---
7827 title: Introducing the Editor Window
7828 part: subchapter
7829 ---
7830
7831 <p class="fixme">Add content</p>
7832
7833 ---
7834 title: Editor Lists
7835 part: subchapter
7836 ---
7837
7838 <p>
7839   At the right of the editor is an optional area which provides one of a
7840   range of useful lists of parts of your session. It is not shown by default
7841   when you first start using Ardour. The <dfn>Editor list</dfn> can be hidden
7842   or shown using <kbd class="menu">View &gt; Show Editor List</kbd>. The very 
7843   right-hand side of the list gives a selection of tabs which are used to
7844   choose the list to view. The left-hand border of the list can be dragged to
7845   vary the width of the list.
7846 </p>
7847
7848 ---
7849 title: Ranges &amp; Marks List
7850 part: subchapter
7851 ---
7852
7853 <p>
7854   For information on this list see
7855   <a href="/working-with-markers/rangesmarks-list/">Ranges
7856   &amp; Marks List</a> in the "Working with Markers" section of the manual.</p>
7857   
7858 ---
7859 title: Region List
7860 part: subchapter
7861 ---
7862
7863 <p>
7864   The region list shows all the regions in the session. The left-hand column gives the region name, and there are a range of times given for information:
7865 </p>
7866
7867 <dl>
7868   <dt>Position</dt><dd>position of the start of the region on the global timeline</dd>
7869   <dt>End</dt><dd>position of the region on the global timeline</dd>
7870   <dt>Length</dt><dd>duration of the region</dd>
7871   <dt>Sync</dt><dd>position of the sync point, relative to the start of region (can be negative)</dd>
7872   <dt>Fade In</dt><dd>duration of the fade in. Can't be less than 1 ms, to avoid clipping.</dd>
7873   <dt>Fade Out</dt><dd>duration of the fade out (positive value, &ge; 1 ms).</dd>
7874 </dl>
7875
7876 <p>
7877   The units used to display those times are those used for the clock, so changing the units on the clocks change the display of this values.
7878 </p>
7879
7880 <p>
7881   At the right of the list are four columns of flags that can be altered:
7882 </p>
7883
7884 <dl>
7885   <dt>L</dt>
7886   <dd>whether the region position is locked, so that it cannot be moved.</dd>
7887   <dt>G</dt>
7888   <dd>whether the region's position is &lsquo;glued&rsquo; to bars and beats. If so, the region will stay at the same position in bars and beats even if the tempo and/or time signature change.</dd>
7889   <dt>M</dt>
7890   <dd>whether the region is muted, so that it will not be heard.</dd>
7891   <dt>O</dt>
7892   <dd>whether the region is opaque; opaque regions &lsquo;block&rsquo; regions below them from being heard, whereas &lsquo;transparent&rsquo; regions have their contents mixed with whatever is underneath. </dd>
7893 </dl>
7894
7895 <p>
7896   Hovering the mouse pointer over a column heading shows a tool-tip which can be handy to remember what the columns are for.
7897 </p>
7898
7899 <p>
7900   A handy feature of the region list is that its regions can be dragged and dropped into a suitable track in the session.
7901 </p>
7902   
7903 ---
7904 title: Snapshot List
7905 part: subchapter
7906 ---
7907
7908 <p>
7909   This list gives the snapshots that exist of this session. Clicking on a snapshot
7910   name will load that snapshot.
7911 </p>
7912
7913 <p>
7914   See <a href="/working-with-sessions">Working with Sessions</a> for more
7915   information on snapshots.
7916 </p>
7917
7918 ---
7919 title: Track &amp; Bus Group List
7920 part: subchapter
7921 ---
7922
7923 <p>
7924   This shows the track/bus groups that exist in the session. These groups allow related tracks to share various properties (such as mute or record enable state). For full details, see the section called <a href="/working-with-tracks/track-and-bus-groups/">Track and Bus Groups</a>.
7925 </p>
7926
7927 <p>
7928   The columns in this list are as follows:
7929 </p>
7930
7931 <dl>
7932   <dt>Col</dt>
7933   <dd>the colour that the group uses for its tab in the editor.</dd>
7934   <dt>Name</dt>
7935   <dd>the group name.</dd>
7936   <dt>V</dt>
7937   <dd>whether the tracks and busses in the group are visible.</dd>
7938   <dt>On</dt>
7939   <dd>whether the group is enabled.</dd>
7940   <dt>G</dt>
7941   <dd>ticked if the constituents of the group are sharing gain settings.</dd>
7942   <dt>Rel</dt>
7943   <dd>ticked if shared gains are relative.</dd>
7944   <dt>M</dt>
7945   <dd>ticked if the constituents share mute status.</dd>
7946   <dt>S</dt>
7947   <dd>ticked if the constituents share solo status.</dd>
7948   <dt>Rec</dt>
7949   <dd>ticked if the constituents share record-enable status.</dd>
7950   <dt>Mon</dt>
7951   <dd>whether the constituents share monitor settings.</dd>
7952   <dt>Sel</dt>
7953   <dd>whether the constituents are selected together.</dd>
7954   <dt>A</dt>
7955   <dd>whether the constituents share active status. </dd>
7956 </dl>
7957   
7958 ---
7959 title: Tracks &amp; Busses List
7960 part: subchapter
7961 ---
7962
7963 <p>
7964   This lists the tracks and busses that are present in the session. The list order reflects the order in the editor, and you can drag-and-drop track or bus names in the editor list to re-order them in the editor. The columns in the list represent the following:
7965 </p>
7966
7967 <dl>
7968   <dt id="visible">V</dt>
7969   <dd>whether the track or bus is visible; they can be hidden, in which case they will still play, but just not be visible in the editor; this can be useful for keeping the display uncluttered.</dd>
7970   <dt id="active">A</dt>
7971   <dd>whether the track or bus is active; unactive tracks will not play, and will not consume any CPU.</dd>
7972   <dt id="input">I</dt>
7973   <dd>for MIDI tracks, whether the MIDI input is enabled; this dictates whether MIDI data from the track's inputs ports will be passed through the track.</dd>
7974   <dt id="record">R</dt>
7975   <dd>whether the track is record-enabled.</dd>
7976   <dt id="record-safe">RS</dt>
7977   <dd>whether the track is record safe; a record safe track cannot be armed for recording, to protect against a mistake.</dd>
7978   <dt id="mute">M</dt>
7979   <dd>whether the track is muted.</dd>
7980   <dt id="solo">S</dt>
7981   <dd>track solo state.</dd>
7982   <dt id="solo-isolated">SI</dt>
7983   <dd>track solo-isolated state.</dd>
7984   <dt id="solo-safe">SS</dt>
7985   <dd>solo safe state. </dd>
7986 </dl>
7987
7988 <p class="note">
7989   Each icon in these columns can be clicked to toggle the track/bus state, which is a very fast way to set multiple tracks/busses state at once.
7990 </p>
7991
7992 <p>
7993   As with the region list, hovering the mouse pointer over a column heading shows a tool-tip which can be handy to remember what the columns are for.
7994 </p>
7995   
7996 ---
7997 title: The Editing Toolbar
7998 part: subchapter
7999 ---
8000
8001 <p class="fixme">Need toolbar image</p>
8002
8003 <h2>Mouse Modes</h2>
8004 <dl class="wide-table">
8005   <dt id="object">Object Mode</dt>
8006   <dd>The <dfn>object mode</dfn> is used for selecting, moving, deleting and 
8007   copying objects. When in object mode, the mouse pointer appears as a hand
8008   whenever it is over the track canvas or the rulers. The mouse can now be
8009   used to select and perform operations on objects such as regions, markers etc.
8010   This is the most common mode to work in, as it allows you to select and move regions,
8011   as well as modify automation points on the automation tracks.
8012   </dd>
8013   <dt>Range Mode</dt>
8014   <dd>When in <dfn>range mode</dfn>, the mouse pointer appears as a vertical line
8015   whenever it is over the track canvas or the rulers. The mouse will now be
8016   able to select a point or range of time. Time ranges can be selected over
8017   one or several tracks, depending on the selection of your tracks.
8018   <p>
8019   If none of your tracks are selected, the Range Tool will operate on all the
8020   session track visualized in the Editor.
8021   </p>
8022   <p>
8023   If you want to edit only particular tracks, select them before you apply
8024   the range tool.
8025   </p>
8026   </dd>
8027   <dt>Zoom Tool</dt>
8028   <dd>When in <dfn>zoom mode</dfn>, the mouse pointer appears as a magnifying glass
8029   whenever it is over the track canvas or the rulers. Select the area to
8030   zoom to with a <kbd class="mouse">Left drag</kbd>. A single <kbd
8031   class="mouse">Left</kbd> click zooms in by one level around the mouse cursor, 
8032   likewise a single <kbd class="mouse">Right</kbd> click will zoom out by one
8033   level.</dd>
8034   <dt>Region Gain Tool</dt>
8035   <dd>When in <dfn>gain edit</dfn> mode, the mouse pointer will change to
8036   cross-hairs. You can then click within a region to change the <dfn>gain
8037   envelope</dfn> for that region. This curve is separate from fader automation
8038   for individual tracks. It will remain locked to the region's time, so if the
8039   region is moved, the region gain envelope is moved along with it.</dd>
8040   <dt>Time Effects Tool</dt>
8041   <dd>When in <dfn>time fx</dfn> mode, the mouse pointer appears as a
8042   distinctive expanding square symbol whenever it is over the track canvas or
8043   the rulers. This mode is used to resize regions using a timestretch
8044   algorithm.
8045   Click on an edge of a region of audio and drag it one way or the other to
8046   stretch or shrink the region.</dd>
8047   <dt>Audition Tool</dt>
8048   <dd>Clicking a region using the <dfn>audition tool</dfn> will play this
8049   region to the control room outputs.
8050   <p>You can also <dfn>scrub</dfn> with this tool by clicking and dragging in
8051   the direction you wish to listen.  The amount you drag in one direction or
8052   the other will determine the playback speed.</p>
8053   </dd>
8054   <dt>Draw Tool</dt>
8055   <dd></dd>
8056   <dt>Internal/Region Edit Mode</dt>
8057   <dd></dd>
8058 </dl>
8059
8060 <h3>Object Tool</h3>
8061 <dl class="wide-table">
8062 <dt>Selecting Regions</dt>
8063 <dd></dd>
8064 <dt>Resizing Regions</dt>
8065 <dd></dd>
8066 <dt>Moving Regions</dt>
8067 <dd></dd>
8068 <dt>Editing Fade In and Fade Out</dt>
8069 <dd></dd>
8070 </dl>
8071 <h3 id="smartmode">Smart Mode</h3>
8072 <p>
8073   The <dfn>Smart Mode</dfn> button to the left of the mouse mode buttons
8074   modifies <dfn>Object mode</dfn>. When enabled, the mouse behaves as if it
8075   is in "Range Tool" mode in the upper half of a region, and in "Object Tool"
8076   mode in the lower half.
8077 </p>
8078   
8079 <p class="fixme">Add missing content</p>
8080
8081 ---
8082 title: The Transport Bar
8083 part: subchapter
8084 ---
8085
8086 <p class="fixme">Add content</p>
8087
8088 ---
8089 title: Introducing the Mixer Window
8090 part: subchapter
8091 ---
8092
8093 <p class="fixme">Add content</p>
8094
8095
8096 ---
8097 title: Tracks
8098 part: chapter
8099 ---
8100
8101
8102 ---
8103 title: Track Types
8104 part: subchapter
8105 ---
8106
8107 <p>
8108   Ardour offers three <dfn>track types</dfn> depending on the type of 
8109   data they contain, and differentiates between three <dfn>track modes</dfn>,
8110   depending on their recording behaviour.
8111 </p>
8112
8113 <h2>Track types</h2>
8114
8115 <p>
8116   An Ardour track can be of type <dfn>audio</dfn> or <dfn>MIDI</dfn>,
8117   depending on the <dfn>data</dfn> that the track will primarily record 
8118   and play back. <em>However, either type of track can pass either 
8119   type of data.</em> Hence, for example, one might have a MIDI track that
8120   contains an instrument plugin; such a track would record and play back 
8121   MIDI data from disk but would produce audio, since the instrument plugin 
8122   would turn MIDI data into audio data.
8123 </p>
8124
8125 <p>
8126   Nevertheless, when adding tracks to a session, you typically have an idea 
8127   of what you need to use the new tracks for, and Ardour offers you three 
8128   choices:
8129 </p>
8130
8131 <dl class="narrower-table">
8132   <dt>Audio</dt>
8133   <dd>An <dfn>Audio Track</dfn> is created with a user-specified number of 
8134   inputs. The number of outputs is defined by the master bus channel count 
8135   (for details see <a href="#channelconfiguration">Channel Configuration</a> 
8136   below). This is the type of track to use when planning to work with 
8137   existing or newly recorded audio.</dd>
8138   <dt>MIDI</dt>
8139   <dd>A <dfn>MIDI track</dfn> is created with a single MIDI input, and a 
8140   single MIDI output. This is the type of track to use when planning to 
8141   record and play back MIDI. There are several methods to enable playback 
8142   of a MIDI track: add an instrument plugin to the track, connect the 
8143   track to a software synthesizer, or connect it to external MIDI hardware. 
8144   <p class="note">
8145     If you add an instrument plugin, the MIDI track outputs audio instead
8146     of MIDI data.
8147   </p></dd>
8148   <dt>Audio/MIDI</dt>
8149   <dd>There are a few notable plugins that can usefully accept both <dfn>Audio 
8150   and MIDI</dfn> data (Reaktor is one, and various "auto-tune" like plugins 
8151   are another). It can be tricky to configure this type of track manually, 
8152   so Ardour allows you to select this type specifically for use with such 
8153   plugins. It is <em>not</em> generally the right choice when working normal 
8154   MIDI tracks, and a dialog will warn you of this.</dd>
8155 </dl>
8156
8157 ---
8158 title: Adding Tracks, Busses and VCAs
8159 part: subchapter
8160 ---
8161
8162 <img class="right" src="/images/add-track-or-bus.png" alt="the add-track dialog" />
8163
8164 <p>
8165   A track, bus or VCA can be added to a session in various ways:
8166 </p>
8167
8168 <ul>
8169   <li>Choose <kbd class="menu">Track &gt; Add Track, Bus or VCA...</kbd>.</li>
8170   <li><kbd class="mouse">Right</kbd>-click in an empty part of the track controls area.</li>
8171   <li>Click the <kbd class="menu">Plus (+)</kbd> button underneath the list of tracks in the mixer.</li>
8172 </ul>
8173
8174 <p>
8175   Any of these actions will open the Add Track/Bus/VCA dialog.
8176 </p>
8177
8178 <dl>
8179   <dt>Add</dt>
8180   <dd>Here you can select the number of tracks, busses or VCAs you wish to create, and
8181   their <a href="/working-with-tracks/track-types/">types</a>.</dd>
8182   <dt>Name</dt>
8183   <dd>Defines the name of the new track(s). If multiple tracks are created, or if a track with the same name already exists, a space and number will be happened at the end (e.g.: Audio 1, Audio 2...)</dd>
8184   <dt>Configuration</dt>
8185   <dd>This menu lets you choose from a number of route templates, which determine the number of input ports and optionally contain plugins and other mixer strip configuration. The most common choices here are <em>mono</em> and <em>stereo</em>.</dd>
8186   <dt>Record mode</dt>
8187   <dd>This option is only available for audio tracks and affects how it behaves when recording. See <a href="/working-with-tracks/track-types/#trackmodes">Track Modes</a> for details.</dd>
8188   <dt>Instrument</dt>
8189   <dd>This option is only available for MIDI tracks and busses and lets you select a
8190   default instrument from the list of available plugins.</dd>
8191   <dt>Group</dt>
8192   <dd>Tracks and busses can be assigned groups so that a selected range of 
8193   operations are applied to all members of a group at the same time (selecting 
8194   record enable, or editing, for example). This option lets you assign to an 
8195   existing group, or create a new group.</dd>
8196   <dt>Insert</dt>
8197   <dd>Defines where in the track list is the track created. The default is <em>Last</em>, i.e. after all the tracks and busses, and can also be <em>First</em>, <em>Before Selection</em> (to place it just above the selected track) or <em>After selection</em>.</dd>
8198   <dt>Output Ports</dt>
8199   <dd>Defines how the number of output responds to adding a plugin with a different number of outputs than the track itself. in <em>Strict I/O</em> mode, the track will only use a few of the plugins I/O and will keep its own number of output fixed, while in <em>lexible I/O</em> mode, it will automatically adapt to the I/O of its plugins. See <a href="/signal-routing/signal-flow/">Signal flow</a> to learn more about those options.</dd>
8200 </dl>
8201
8202 <p>
8203   New tracks appear in both the editor and mixer windows. The editor window 
8204   shows the timeline, with any recorded data, and the mixer shows just the 
8205   processing elements of the track (its plugins, fader and so on).
8206 </p>
8207
8208 <h2>Removing Tracks and Busses</h2>
8209
8210 <p>
8211   To <dfn>remove</dfn> tracks and busses, select them, <kbd
8212   class="mouse">right</kbd>-click and choose <kbd
8213   class="menu">Remove</kbd> 
8214   from the menu. A warning dialog will pop up, as track removal cannot be undone; 
8215   use this option with care!
8216 </p>
8217
8218 ---
8219 title: Selecting Tracks
8220 part: subchapter
8221 ---
8222
8223 <p>
8224   Tracks are <dfn>selected</dfn> by clicking on the Track header at the left
8225   of the Editor window. You can select multiple tracks with <kbd class="mod1
8226   mouse">Left</kbd> clicks, or a range of consecutive tracks with <kbd
8227   class="mod3 mouse">Left</kbd>.
8228 </p>
8229 <p>
8230   By default, <dfn>selecting regions</dfn> has no impact on 
8231   <dfn>track selection</dfn>. 
8232   You can select a track, then select a region in another track 
8233   (or vice versa) and both selections will co-exist happily. 
8234   Operations that are applied to tracks will use the track selection, 
8235   and those that apply to regions will use the region selection. 
8236   Similarly, deselecting a region will not deselect the track it 
8237   is in (if that track was selected).
8238 </p>
8239 <p>
8240   In some workflows, and particularly if you have experience with 
8241   other <abbr title="Digital Audio Workstation">DAW</abbr>s, this 
8242   is not the most comfortable way to work. You may prefer to work 
8243   in a style where selecting a region will also select the track 
8244   that the region is in. Similarly, when the last selected region 
8245   in a track is deselected, the track will also become unselected.
8246 </p>
8247 <p>
8248   To control this behaviour, set <kbd class="menu">Edit &gt;
8249   Preferences &gt; Editor &gt; Link selection of regions and tracks</kbd>.
8250 </p>
8251   
8252 ---
8253 title: Controlling Track Appearance
8254 part: subchapter
8255 ---
8256
8257 <p>
8258   Ardour offers many options for controlling the appearance of tracks, including color, height, waveform style and more. These can all be found in the <kbd class="menu">Edit &gt; Preferences &gt; Editor</kbd> menu.
8259 </p>
8260
8261 ---
8262 title: Layering Display
8263 part: subchapter
8264 ---
8265
8266 <img class="right" style="clear:both" src="/images/track-layer-dialog.png"
8267 alt="Track layering menu" />
8268
8269 <p>
8270   Ardour allows arbitrary <dfn>layering</dfn> of regions&mdash;you can
8271   have as many regions you wish at a given position. By default, the regions are
8272   <dfn>overlaid</dfn> in the editor window, to save vertical space.
8273 </p>
8274
8275 <p>
8276   However, this display mode can be confusing for tracks with many overdubs, 
8277   because its not obvious in which order the overdubs are layered. Although 
8278   there are other methods of moving particular regions to the top of an
8279   overlapping set, and although Ardour also has playlists to let you manage
8280   <a href="/working-with-playlists/playlist_usecases/">takes</a> a bit more 
8281   efficiently than just continually layering, 
8282   there are times when being able to clearly see all regions in a track without 
8283   any overlaps is reassuring and useful. 
8284 </p>
8285
8286 <p>
8287   Here is an image of a track with a rather drastic overdub situation, 
8288   viewed in normal <dfn>overlaid mode</dfn>:
8289 </p>
8290
8291 <img src="/images/a3_overlaps_layered.png" alt="overlapping regions in overlaid mode" />
8292
8293 <p>
8294   To change this display, right click on the track header, and you'll see
8295   the menu displayed above. There are two choices for layers. <kbd
8296   class="menu">overlaid</kbd> is currently selected. Click on <kbd
8297   class="menu">stacked</kbd> and the track display changes to this:
8298 </p>
8299
8300 <img src="/images/a3_layers_stacked.png" alt="overlapping regions in stacked mode" />
8301
8302 <p>
8303   You can still move regions around as usual, and in fact you can 
8304   even drag them so that they overlay each again, but when you 
8305   release the mouse button, things will flip back to them all being 
8306   stacked cleanly. The number of <dfn>lanes</dfn> for the track is determined by 
8307   the maximum number of regions existing in any one spot throughout 
8308   the track, so if you have really stacked up 10 overdubs in one spot, 
8309   you'll end up with 10 lanes. Obviously, using a large track height 
8310   works much better for this than a small one.
8311 </p>
8312   
8313 ---
8314 title: Track Color
8315 part: subchapter
8316 ---
8317
8318 <p>
8319   New tracks in Ardour are assigned a random color from a pastel color
8320   palette, so they should never end up being particularly bright or 
8321   particularly dark. 
8322 </p>
8323
8324 <h2>Changing the color of specific tracks</h2>
8325
8326 <p>
8327   Select the tracks whose color you wish to change. Context-click
8328   on the track header of one of them. From the context menu, select 
8329   <kbd class="menu">Color</kbd> and pick a hue to your taste in the
8330   color dialog. Every selected track will be re-colored.
8331 </p>
8332
8333 <p>
8334   Note that if you are only changing one track, context-clicking on 
8335   that track's header will be enough to select it, saving the extra 
8336   mouse click.
8337 </p>
8338
8339 <h2>Changing the color of all tracks in a group</h2>
8340
8341 <p>
8342   Tracks that belong to a 
8343   <a href="/working-with-tracks/track-and-bus-groups">track/bus group</a> 
8344   can share a common color by enabling the <kbd
8345   class="option">Color</kbd> option for the group. With this enabled,
8346   any color change will be propagated to all group members.
8347 </p>
8348
8349 <p>
8350   You can also explicitly change the group color by context-clicking 
8351   on the group tab in the Mixer, selecting <kbd class="menu">Edit
8352   Group...</kbd> and then clicking on the Color selector in that dialog
8353   that is displayed. 
8354 </p>
8355   
8356 ---
8357 title: Track Height
8358 part: subchapter
8359 ---
8360
8361 <p> 
8362   Depending on the stage of your production, you may require a quick
8363   overview over as many tracks as possible, a detailed view into just a
8364   few, or a combination of the two. To facilitate this, the 
8365   <dfn>height</dfn> may be configured individually for each track in 
8366   the editor window.
8367 </p>
8368
8369 <p>
8370   A context click on a track header will display the 
8371   <kbd class="menu">Height</kbd> menu, and allow you to choose from a
8372   list of standard sizes. All selected tracks will be redrawn using that 
8373   height.
8374 </p>
8375
8376 <p>
8377   Alternatively, select the tracks you wish to resize. Move the pointer 
8378   to the bottom edge of one track header. The cursor will change to a 
8379   two-way vertical arrow shape. <kbd class="mouse">Left</kbd>-drag to 
8380   dynamically resize all selected tracks.
8381 </p>
8382
8383 <h2>Fit to the Editor Window</h2>
8384
8385 <p>
8386   Select the tracks you wish to display in the Editor window. 
8387   Choose <kbd class="menu">Track &gt; Height &gt; Fit Selected Tracks</kbd> 
8388   or use the keyboard shortcut, <kbd>f</kbd>. Ardour adjusts the track 
8389   heights and view so that the selected tracks completely fill the vertical 
8390   space available, unless the tracks cannot be made to fit even at the smallest 
8391   possible size.
8392 </p>
8393
8394 <p class="note">
8395   You can use <dfn>Visual Undo</dfn> (default shortcut: <kbd class="mod3">Z</kbd> 
8396   to revert this operation.
8397 </p>
8398   
8399 ---
8400 title: Waveform display
8401 part: subchapter
8402 ---
8403
8404 <p>
8405   The display of <dfn>waveforms</dfn> (or, more correctly, <dfn>peak
8406   envelopes</dfn>, since the actual waveform is only visible at the highest
8407   zoom levels) is configurable via the <kbd
8408   class="menu">Edit &gt; Preferences &gt; Editor</kbd> dialog, to support 
8409   different usecases and user preferences. The following options are
8410   available:
8411 </p>
8412
8413 <dl class="wide-table">
8414   <dt>Show waveforms in regions</dt>
8415   <dd>By default, Ardour draws waveforms within audio regions. Disable this
8416   option to hide them.</dd>
8417   <dt>Waveform scale</dt>
8418   <dd>
8419     <dl>
8420       <dt>Linear</dt>
8421       <dd>This is the traditional <dfn>linear</dfn> (1:1) display of the 
8422       peak envelope, or, at higher zoom levels, the individual samples.</dd>
8423       <dt>Logarithmic</dt>
8424       <dd>Alternatively, you can use a <dfn>logarithmic</dfn> display of the 
8425       peak envelope. This will give you a better idea of program loudness (it is similar 
8426       to dBs) and plot soft passages more clearly, which is useful for soft
8427       recordings or small track height.</dd>
8428     </dl>
8429   </dd>
8430   <dt>Waveform shape</dt>
8431   <dd>
8432     <dl>
8433       <dt>Traditional</dt>
8434       <dd>The <dfn>zero</dfn> line appears in the middle of the display and waveforms 
8435       appear as positive and negative peaks above <em>and</em> below.</dd>
8436       <dt>Rectified</dt>
8437       <dd>The zero line appears at the bottom of the display and waveforms appear 
8438       as absolute peaks <em>above</em> the line only.</dd>
8439     </dl>
8440   </dd>
8441 </dl>
8442
8443 ---
8444 title: Controlling Track Ordering
8445 part: subchapter
8446 ---
8447
8448 <p>
8449   Ardour does not impose any particular ordering of tracks and busses in 
8450   either the editor or mixer windows. The default arrangements are as follows:
8451 </p>
8452
8453 <p>
8454   In the <dfn>Editor</dfn>, the Master bus will always be on top unless
8455   hidden. Tracks and busses will appear in their initial order, from top to
8456   bottom. The monitor section (if used) will never be visible in the editor
8457   window.
8458 </p>
8459
8460 <p>
8461   In the <dfn>Mixer</dfn>, the tracks and busses will be displayed in their
8462   initial order, from left to right. The Master bus is always on the far
8463   right and occupies its own pane, so that it is always visible no matter
8464   how you scroll the other mixer strips. If a Monitor section is used, 
8465   it shows up at the right edge of the mixer window, from where it can be
8466   torn off into a separate window.
8467 </p>
8468
8469 ---
8470 title: Reordering Tracks
8471 part: subchapter
8472 ---
8473
8474 <p>
8475   The <dfn>track ordering</dfn> of the Editor and Mixer is <dfn>synchronized</dfn>: if you 
8476   reorder in one window, the ordering in the other window will follow.
8477 </p>
8478
8479 <h2>Reordering in the Editor Window</h2>
8480
8481 <p>
8482   Select the tracks you want to move. Then use<br />
8483   <kbd class="menu">Track &gt; Move Selected Tracks Up</kbd>
8484   (shortcut: <kbd class="mod1">&uarr;</kbd>) or<br />
8485   <kbd class="menu">Track &gt; Move Selected Tracks Down</kbd>
8486   (shortcut: <kbd class="mod1">&darr;</kbd>).
8487 </p>
8488
8489 <p>
8490   Alternatively, you can use the <kbd class="menu">Tracks &amp; Busses</kbd> 
8491   panel of the
8492   <a href="/ardours-interface/introducing-the-editor-window/editor-lists/">Editor
8493   Lists</a>, if visible.  
8494   Here, you can freely drag-and-drop tracks and busses into any order you prefer.
8495 </p>
8496
8497 <h2>Reordering in the Mixer Window</h2>
8498
8499 <p>
8500   Within the <kbd class="menu">Strips</kbd> pane at the top left of the
8501   Mixer window, you can freely drag-and-drop tracks and busses into any
8502   desired order.
8503 </p>
8504
8505 <h2>"Collecting" Group Members</h2>
8506
8507 <p>
8508   Tracks and Busses that are members of a group can be reordered so that they 
8509   display contiguously within the Editor and Mixer windows. Context-click on 
8510   the group tab and choose <kbd class="menu">Collect</kbd>.
8511 </p>
8512
8513 <h2>Ordering of New Tracks</h2>
8514
8515 <p>
8516   When <dfn>adding new tracks</dfn>, the current selection determines their 
8517   placement. New tracks will be placed after the rightmost (in the mixer) or 
8518   bottom-most (in the editor) selected track. If no tracks are selected, new 
8519   tracks will be added at the end.
8520 </p>
8521
8522 <p class="note">
8523   Because new tracks are automatically selected, you can quickly reorder them 
8524   in the editor window via the keyboard shortcuts after adding them (see above).
8525 </p>
8526
8527 ---
8528 title: Track Ordering and Remote Control IDs
8529 part: subchapter
8530 ---
8531
8532 <p>
8533   Every track and bus in Ardour is assigned a <dfn>remote control ID</dfn>. 
8534   When a <a href="/using-control-surfaces/">control surface</a> or any other
8535   remote control is used to control Ardour, these IDs are used to identify 
8536   which track(s) or buss(es) are the intended target of incoming commands.
8537 </p>
8538
8539 <p>
8540   By default, remote IDs will be assigned to tracks and busses in the order 
8541   that they are created, starting from 1. The master bus and monitor section 
8542   have their own unique IDs (318 and 319).
8543 </p>
8544
8545 <p>
8546   Ardour provides two methods to control remote control IDs, which can be 
8547   chosen via <kbd class="menu">Edit &gt; Preferences &gt; Control Surfaces
8548   &gt; Control surface remote ID</kbd>:
8549 </p>
8550
8551 <dl class="wide-table">
8552   <dt>follows order of mixer</dt>
8553   <dd>This will reset the remote control IDs to match the mixer and editor 
8554   track order order, starting with rcID 1. Manual assignment of rcIDs is 
8555   not possible.</dd>
8556   <dt>assigned by user</dt>
8557   <dd>When enabled, the remote control ID is completely independent of the 
8558   ordering in either window, and may be changed manually by the user via the
8559   <kbd class="menu"><em>trackname</em> &gt; Remote Control ID...</kbd>
8560   dialog in each mixer strip.
8561   </dd>
8562 </dl>
8563
8564 ---
8565 title: Bus Controls
8566 part: subchapter
8567 ---
8568
8569 <p>A typical control area or <dfn>bus header<dfn> is shown below:</p>
8570
8571 <img src="/images/typical-bus-controls.png" alt="bus controls" />
8572
8573 <p>
8574   At the top-left of the controls is the name of the bus, which can be
8575   edited by double-clicking on it. The new name must be unique within the 
8576   session. Underneath the name is a copy of the bus' main level fader. 
8577   The control buttons to the right-hand side are:
8578 </p>
8579
8580 <dl>
8581   <dt id="mute">M</dt>
8582   <dd><dfn>Mute</dfn>&mdash;click to mute the bus. Right-click to display 
8583   a menu which dictates what particular parts of the bus should be muted.</dd>
8584   <dt id="solo">S</dt>
8585   <dd><dfn>Solo</dfn>&mdash;solo the bus. The behaviour of the solo system 
8586   is described in detail in the section <a
8587   href="/mixing/muting-and-soloing/">Muting and Soloing</a>.</dd>
8588   <dt id="automation">A</dt>
8589   <dd><dfn>Automation</dfn>&mdash;opens the automation menu for the 
8590   bus. For details see <a href="/automation/">Automation</a>.</dd>
8591   <dt id="group">G</dt>
8592   <dd><dfn>Group</dfn>&mdash;lets you assign the bus to an existing or a
8593   new group. For details see <a href="/working-with-tracks/track-and-bus-groups/">Track and bus groups</a>. </dd>
8594 </dl>
8595   
8596 ---
8597 title: Audio Track Controls
8598 part: subchapter
8599 ---
8600
8601 <p>
8602   A typical control area or <dfn>track header</dfn> for an audio track is 
8603   shown below:
8604 </p>
8605
8606 <img src="/images/typical-audio-track-controls.png" alt="audio track controls"
8607   />
8608
8609 <p> 
8610   An audio track has the same 
8611   <a href="/working-with-tracks/bus-controls">controls as a bus</a>, with the
8612   addition of two extras. 
8613 </p>
8614
8615 <dl>
8616   <dt id="record" style="color:red;font-weight:bold;">[&bull;]</dt>
8617   <dd><dfn>Record</dfn>&mdash;The button with the pink circle arms the track 
8618   for recording. When armed, the entire button will turn pink, and change to 
8619   bright red as soon as the transport is rolling and the track is recording.</dd>
8620   <dt id="playlist">p</dt>
8621   <dd><dfn>Playlist</dfn>&mdash;Opens a playlist menu when clicked. The menu 
8622   offers various operations related to the track's <a
8623   href="/working-with-playlists/">playlist</a>.
8624   </dd>
8625 </dl>
8626   
8627 ---
8628 title: MIDI Track Controls
8629 part: subchapter
8630 ---
8631
8632 <p>A typical <dfn>MIDI track header</dfn> looks like this:</p>
8633
8634 <img src="/images/typical-midi-track-controls.png" alt="midi track controls"
8635   />
8636   
8637 <p>
8638   To see the full set of MIDI track controls, you need to increase the 
8639   <a href="/working-with-tracks/controlling-track-appearance/track-height/">track height</a> 
8640   beyond the default. MIDI tracks show only a few of the control elements 
8641   when there is insufficient vertical space.
8642 </p>
8643
8644 <p>
8645   A MIDI track has the same basic
8646   <a href="/working-with-tracks/audio-track-controls">controls as an audio track</a>, 
8647   with the addition of two extra elements. The set of buttons below the main track 
8648   controls the <dfn>MIDI channel</dfn>(s) that will be visible in the editor. A MIDI track's 
8649   data may span any number of the 16 available MIDI channels, and sometimes it is 
8650   useful to view only a subset of those channels; different instruments may, 
8651   for example, be put on different channels. Clicking on a channel number toggles 
8652   its visibility.
8653 </p>
8654
8655 <p>
8656   To the right of the MIDI track controls is a representation of a piano keyboard 
8657   called the <dfn>scroomer</dfn> (a portmanteau of scrollbar and zoomer). This performs several functions:
8658 </p>
8659
8660 <ul>
8661   <li>The scrollbar controls the range of pitches that are visible on the
8662   track, as visualized by the piano keyboard.</li>
8663   <li>Dragging the body of the scrollbar up and down displays higher or lower
8664   pitches.</li>
8665   <li>Dragging the scrollbar handles zooms in and out and increases and decreases the range of visible pitches.</li>
8666   <li>Clicking on the piano plays the corresponding MIDI note for reference.</li>
8667 </ul>
8668
8669 <p>
8670   To edit the contents of a MIDI track see <a href="/editing-and-arranging/edit-midi/">Edit
8671   MIDI</a>.
8672 </p>
8673
8674 ---
8675 title: Track Context Menu
8676 part: subchapter
8677 ---
8678
8679 <p>
8680   Within the editor window, context-click (right-click) on either a region 
8681   or empty space within a track to display the <dfn>track context menu</dfn>. 
8682   The context menu provides easy access to many track-level operations.
8683 </p>
8684
8685 <p>
8686   If you click on a <dfn>region</dfn>, the first item in the menu is the name of the 
8687   region. If you click on a 
8688   <a href="/working-with-tracks/controlling-track-appearance/layering-display/">layered region</a>, 
8689   the next item in the menu is <kbd class="menu">Choose Top</kbd>. If selected, 
8690   you will see a dialog that allows you to change the vertical order of layers 
8691   at that point. See <a href="/missing">Controlling Region Layering</a> for more details.
8692   <p class="fixme">Broken link</p>
8693 </p>
8694
8695 <p>
8696   The rest of the track context menu is structured as follows:
8697 </p>
8698
8699 <dl class="narrower-table">
8700   <dt>Play</dt>
8701   <dd>
8702     <dl class="narrower-table">
8703       <dt>Play from Edit Point</dt>
8704       <dd>Play from the location of the current <a href="/editing-and-arranging/edit-point">edit point</a>.</dd>
8705       <dt>Play from Start </dt>
8706       <dd>Play from the start of the session</dd>
8707       <dt>Play Region(s)</dt>
8708       <dd>Plays the duration of the session from the start of the earliest selected region to the end of the latest selected region</dd>
8709     </dl>
8710   </dd>
8711   <dt>Select</dt>
8712   <dd>
8713     <dl class="narrower-table">
8714       <dt>Select All in Track</dt>
8715       <dd>Selects all regions in a track</dd>
8716       <dt>Select All Objects</dt>
8717       <dd>Selects all regions in the session</dd>
8718       <dt>Invert Selection in Track</dt>
8719       <dd></dd>
8720       <dt>Invert Selection</dt>
8721       <dd></dd>
8722       <dt>Set Range to Loop Range</dt>
8723       <dd></dd>
8724       <dt>Set Range to Punch Range</dt>
8725       <dd></dd>
8726       <dt>Select All After Edit Point</dt>
8727       <dd></dd>
8728       <dt>Select All Before Edit Point</dt>
8729       <dd></dd>
8730       <dt>Select All After Playhead</dt>
8731       <dd></dd>
8732       <dt>Select All Before Playhead</dt>
8733       <dd></dd>
8734       <dt>Select All Between Playhead and Edit Point</dt>
8735       <dd></dd>
8736       <dt>Select All Within Playhead and Edit Point</dt>
8737       <dd></dd>
8738       <dt>Select Range Between Playhead and Edit Point</dt>
8739       <dd></dd>
8740     </dl>
8741   </dd>
8742   <dt>Edit</dt>
8743   <dd>
8744     <dl class="narrower-table">
8745       <dt>Cut</dt>
8746       <dd></dd>
8747       <dt>Copy</dt>
8748       <dd></dd>
8749       <dt>Paste</dt>
8750       <dd></dd>
8751       <dt>Align</dt>
8752       <dd></dd>
8753       <dt>Align Relative</dt>
8754       <dd></dd>
8755     </dl>
8756   </dd>
8757   <dt>Insert Selected Region</dt>
8758   <dd></dd>
8759   <dt>Insert Existing Media</dt>
8760   <dd></dd>
8761   <dt>Nudge</dt>
8762   <dd>
8763     <dl class="narrower-table">
8764       <dt>Nudge Entire Track Later</dt>
8765       <dd></dd>
8766       <dt>Nudge Track After Edit Point Later</dt>
8767       <dd></dd>
8768       <dt>Nudge Entire Track Earlier</dt>
8769       <dd></dd>
8770       <dt>Nudge Track After Edit Point Earlier</dt>
8771       <dd></dd>
8772     </dl>
8773   </dd>
8774   <dt>Freeze</dt>
8775   <dd></dd>
8776 </dl>
8777
8778 <p>
8779 <i>This text here to prevent following FIXME from corrupting the above table</i>
8780 </p>
8781 <p class="fixme">Add missing content</p>
8782
8783
8784 ---
8785 title: Grouping Tracks
8786 part: chapter
8787 ---
8788
8789
8790 ---
8791 title: Track and Bus Groups
8792 part: subchapter
8793 ---
8794
8795 <p>
8796   Tracks and busses can be put into <dfn>groups</dfn>. Members of a group 
8797   can share various settings&mdash;useful for managing tracks that are closely 
8798   related to each other. Examples might include tracks that contain 
8799   multiple-microphone recordings of a single source (an acoustic guitar, 
8800   perhaps, or a drum-kit).
8801 </p>
8802
8803 <p>
8804   You can group tracks and busses in various ways. In the editor window, 
8805   a track's controls might look like these:
8806 </p>
8807
8808 <img class="left" src="/images/track-in-group.png" alt="track headers for a group" />
8809
8810 <p> 
8811   The green tab to the left of the track header indicates that this track 
8812   is in a group called <samp>Fred</samp>. You can drag these tabs to add 
8813   adjacent tracks to a group.
8814 </p>
8815
8816 <h2>Create New Groups</h2>
8817
8818 <p>
8819   There are several ways to <dfn>create groups</dfn> for tracks and bussess:
8820 </p>
8821
8822 <ul>
8823   <li>Context-click on the group tab and use one of the <kbd
8824   class="menu">Create...</kbd> options there. You can create a group with 
8825   no members, or one that starts with the currently selected tracks, or 
8826   record-enabled tracks, or soloed tracks.</li>
8827   <li>Alternatively, click the â€˜g’ button on a track header to open the 
8828   Group menu. The menu lists the available groups. Selecting one of these 
8829   groups will add the track or bus to that group. The menu also lets you 
8830   create a new group.</li>
8831   <li>Finally, the Groups tab of the 
8832   <a href="/ardours-interface/introducing-the-editor-window/editor-lists">Editor Lists</a> 
8833   or the Mixer Window has a <kbd class="menu">plus (+)</kbd> button at the 
8834   bottom of the list. Click on the plus sign to create a new group.</li>
8835 </ul>
8836
8837 <h2>Remove Groups</h2>
8838
8839 <p>
8840   Context-click on a <dfn>group tab</dfn> and select <kbd class="menu">Remove
8841   Group</kbd> from the menu. Removing a group does <em>not</em> remove 
8842   the members of a group.
8843 </p>
8844
8845 <p>
8846   You can also remove groups by selecting them in the Groups tab of the 
8847   <a href="/ardours-interface/introducing-the-editor-window/editor-lists">Editor Lists</a> 
8848   or Mixer Window and then pressing the <kbd class="menu">minus (-)</kbd> 
8849   button at the bottom of the list.
8850 </p>
8851
8852 <h2>Add/Remove Tracks and Busses From a Group</h2>
8853
8854 <p>
8855   Click the <kbd class="menu">g</kbd> button to display a menu with a list 
8856   of the available groups. Select one of these groups to add the track or bus 
8857   to that group. Select <kbd class="menu">No Group</kbd> to remove it.
8858 </p>
8859
8860 <p>
8861   Alternatively, you can also drag a group tab to add or remove tracks from 
8862   the group.
8863 </p>
8864
8865 <h2>Activate/Deactivate Groups via the Group Tab</h2>
8866
8867 <p>
8868   Clicking on a group tab toggles the group between being active and inactive. 
8869   An inactive group has no effect when editing its members. An active group 
8870   will share its configured properties across its members. Tabs for disabled 
8871   groups are coloured grey.</p>
8872
8873 <h2>Modify Group Properties</h2>
8874
8875 <p>
8876   To edit the properties of a group, context-click on its tab and choose 
8877   <kbd class="menu">Edit Group…</kbd>. This opens the track/bus group dialog, 
8878   which is also used when creating new groups:
8879 </p>
8880
8881 <img class="right" src="/images/route-group-dialogue.png" alt="the track/bus group dialog" />
8882
8883 <h3>Group Color</h3>
8884
8885 <p>
8886   Click on the color selector button to change a group's colour. This affects 
8887   the colour of the group's tab in the editor and mixer windows. The color does 
8888   <em>not</em> affect the color of the group members unless you also enable the 
8889   shared <kbd class="menu">Color</kbd> property. 
8890 </p>
8891
8892 <h3>Shared Properties</h3>
8893
8894 <p>
8895   <kbd class="option">Gain</kbd> means that the track faders will be synced to 
8896   always have the same value; <kbd class="option">Relative</kbd> means that the 
8897   gain changes are applied relative to each member's current value. If, for 
8898   example, there are two tracks in a group with relative gain sharing, and their 
8899   faders are set to -3&nbsp;dB and -1&nbsp;dB, a change of the first track to a 
8900   gain of -6&nbsp;dB will result in the second track having a gain of
8901   -4&nbsp;dB (the <em>difference</em> of the gains remains the same).
8902 </p>
8903
8904 <p>
8905   <a href="/working-with-tracks/bus-controls/#mute"><kbd class="option">Muting</kbd></a>, 
8906   <a href="/working-with-tracks/bus-controls/#solo"><kbd class="option">Soloing</kbd></a>, 
8907   <a href="/working-with-tracks/audio-track-controls/#record"><kbd class="option">record enable</kbd></a>, 
8908   <a href="/ardours-interface/introducing-the-editor-window/editor-lists/tracks--busses-list/#active"><kbd class="option">active state</kbd></a>, 
8909   <a href="/working-with-tracks/controlling-track-appearance/track-coloring/"><kbd class="option">colour</kbd></a> and 
8910   <a href="/recording/monitoring/"><kbd class="option">monitoring</kbd></a> 
8911   are all straightforward. They simply mean that all member tracks or busses will 
8912   share the same settings in these respects.
8913 </p>
8914
8915 <p>
8916   <kbd class="option">Selection</kbd> means that if a region is selected or 
8917   deselected on one member track, <a
8918   href="/working-with-regions/corresponding-region-selection/">corresponding
8919   regions</a> on other member tracks 
8920   will be similarly selected. Since region editing operations are applied to all 
8921   currently selected regions, this is the way to make edits apply across all tracks in the group.
8922 </p>
8923
8924 <p class="fixme">Broken link</p>
8925
8926 <h3>Group Tab Context Menu</h3>
8927
8928 <p>Context-clicking on the group tab offers a further menu of group-related actions. </p>
8929
8930 <dl class="wide-table">
8931         <dt>Create a New Group</dt>
8932         <dd>create a new group</dd>
8933         <dt>Create New Group from...</dt>
8934         <dd> create a new group and automatically add ...
8935         <dl class="narrower-table">
8936                 <dt>Selected</dt>
8937                 <dd>all currently selected tracks and busses</dd>
8938                 <dt>Rec-enabled</dt>
8939                 <dd>all currently record-enabled tracks</dd>
8940                 <dt>Soloed</dt>
8941                 <dd>all currently soloed tracks and busses</dd>
8942         </dl>
8943         </dd>
8944         <dt>Collect Group</dt>
8945         <dd>moves all the member tracks so that they are together in the editor window</dd>
8946         <dt>Remove Group</dt>
8947         <dd>removes the group (and only the group, not its members).</dd>
8948         <dt>Add New Subgroup Bus</dt>
8949         <dd> creates a bus (giving it the name of the group) and connects the output of each member to the new bus. 
8950         </dd>
8951         <dt>Add New Aux Bus</dt>
8952         <dd>adds a bus and gives each member a send to that bus. There are two options for this, specifying whether the sends should be placed pre- or post-fader.</dd>
8953         <dt>Fit to Window</dt>
8954         <dd> will zoom the member tracks so that they fill the editor window.</dd>
8955         <dt>Enable All Groups</dt>
8956         <dd>makes all group active, including any hidden groups.</dd>
8957         <dt>Disable All Groups</dt>
8958         <dd>makes all groups inactive, including any hidden groups.</dd>
8959 </dl>
8960
8961
8962 ---
8963 title: The Clip List
8964 part: chapter
8965 ---
8966
8967
8968 ---
8969 title: Workspace Browsers
8970 part: chapter
8971 ---
8972
8973
8974 ---
8975 title: Importing and Exporting Session Data
8976 part: chapter
8977 ---
8978
8979
8980 ---
8981 title: File and Session Management and Compatibility
8982 part: chapter
8983 ---
8984
8985
8986 ---
8987 title: Playback & Recording
8988 part: part
8989 ---
8990
8991
8992 ---
8993 title: Playing Back Track Material
8994 part: chapter
8995 ---
8996
8997
8998 ---
8999 title: Using Ardour Clock Displays
9000 part: subchapter
9001 ---
9002
9003 <p>
9004   <dfn>Clocks</dfn> in Ardour are used to display <dfn>time values</dfn> precisely.
9005   In many cases, they are also one way to edit (change) time values, and in a few
9006   cases, the only way. All clocks share the same basic appearance and functionality, 
9007   which is described below, but a few clocks serve particularly important roles.
9008 </p>
9009
9010 <h2>Transport Clocks</h2>
9011
9012 <p>
9013   In the transport bar of the editor window there are two clocks (unless you
9014   are on a very small screen), that display the current position of the playhead
9015   and additional information related to transport control and the timeline. These
9016   are called the <dfn>transport clocks</dfn>; the left one is the primary
9017   transport clock and the right one is the secondary transport clock. 
9018   They look like this:
9019 </p>
9020
9021 <img src="/images/a3_new_main_clocks.png" alt="An image of the transport clocks in Ardour 3" />
9022
9023 <p>
9024   Editing the time in the transport clocks will reposition the playhead in the same
9025   way that various other editing operations will.
9026 </p>
9027
9028 <h3>The Big Clock</h3>
9029 <p>
9030   To show the current playhead position in a big, resizable window, activate
9031   <kbd class="menu">Window &gt; Big Clock</kbd>. The big clock is very useful 
9032   when you need to work away from the screen but still want to see the playhead
9033   position clearly (such as when working with a remote control device across
9034   a room). The big clock will change its visual appearance to indicate when active
9035   recording is taking place. Below on the left is a screenshot showing a fairly
9036   large big clock window filling a good part of the display, and on the right,
9037   the same clock during active recording.
9038 </p>
9039 <a href="/images/bigclock.png"><img src="/images/bigclock.png" height="100" alt="an image of the big clock filling a screen" /></a> <a href="/images/bigclock-recording.png"><img src="/images/bigclock-recording.png" height="100" alt="an image of the big clock while recording"
9040 /></a>
9041
9042 <h3>The Special Role of the Secondary Transport Clock</h3>
9043 <p>
9044   On a few occasions Ardour needs to display time values to the user, but there
9045   is no obvious way to specify what units to use. The most common case is the big
9046   cursor that appears when dragging regions. For this and other similar cases, 
9047   Ardour will display time using the same units as the secondary clock.
9048 </p>
9049 <h4>Why are there two transport clocks?</h4>
9050 <p>
9051   Having two transport clocks lets you see the playhead position in two different
9052   time units without having to change any settings. For example, you can see the
9053   playhead position in both timecode units and BBT time.
9054 </p>
9055
9056 <h3>Selection and Punch Clocks</h3>
9057 <p>
9058   The transport bar also contains a set of 5 clocks that show the current
9059   <dfn>selection range</dfn> and <dfn>punch ranges</dfn>. Clicking on the punch
9060   range clocks will locate to either the beginning or end of the punch range.
9061   Similarly, clicking on the range clocks will locate to either the beginning
9062   or end of the current selection. In this screen shot there is no current 
9063   selection range, so the selection clocks show an "off" state.
9064 </p>
9065
9066 <img src="/images/selectionpunchclocks.png" alt="An image of the the selection and punch clocks in Ardour 3" />
9067
9068 <h2>Clock Modes</h2>
9069 <p>
9070   Every clock in Ardour has four different, selectable <dfn>clock
9071   modes</dfn>. Each mode displays time using different units. 
9072   You can change the clock mode by <kbd class="mouse">Right</kbd>-clicking 
9073   on the clock and selecting the desired mode from the menu. Some clocks are
9074   entirely independent of any other clock's mode; others are linked so that
9075   changing one changes all clocks in that group. The different modes are:
9076 </p>
9077 <dl>
9078   <dt>Timecode</dt>
9079   <dd>Time is shown as <dfn><abbr title="Society of Motion Picture and Television
9080   Engineers">SMPTE</abbr> timecode</dfn> in Hours:Minutes:Seconds:Frames, 
9081   measured from the timecode zero point on the timeline (which may not 
9082   correspond to the session start and/or absolute zero on the timeline,
9083   depending on configurable timecode offsets). 
9084   The frames value is dictated by either the session <abbr title="Frames Per
9085   Second">FPS</abbr> setting, or, if slaved to an external timecode master, 
9086   the master's setting. In the transport clocks, the FPS value is shown below 
9087   the time display, along with an indication of the current timecode source
9088   (<samp>INT</samp> means that Ardour is its own timecode source).</dd>
9089   <dt>BBT</dt>
9090   <dd>Time is shown as Bars:Beats:Ticks, indicating <dfn>musical time</dfn> measured
9091   from the start of the session. The transport clocks show the current tempo
9092   in <abbr title="Beats Per Minute">bpm</abbr> and meter below the time
9093   display.</dd>
9094   <dt>Minutes:Seconds</dt>
9095   <dd>Time is shown as Hours:Minutes:Seconds.Milliseconds, measured from the
9096   absolute start of the timeline (ignoring the session start and any timecode 
9097   offsets).</dd>
9098   <dt>Samples</dt>
9099   <dd>Time is shown as a <dfn>sample count</dfn> from the absolute start of the timeline 
9100   (ignoring the session start and any timecode offsets). The number of
9101   samples per second is given by the current sample rate, and in the transport
9102   clocks, this rate is shown below the time display along with any 
9103   pullup/pulldown adjustment.</dd>
9104 </dl>
9105
9106 <h3>Special Modes for the Transport Clocks</h3>
9107 <p>
9108   In addition to the time-unit modes mentioned above, each of the two transport 
9109   clocks (if you work on a small screen, you may only have one) can be
9110   independently set to display <dfn>Delta to Edit Point</dfn> in whatever time 
9111   units its current mode indicates. This setting means that the clock shows the
9112   distance between the playhead and the current edit point, and it may show a 
9113   positive or negative value depending on the temporal order of these two points. 
9114   The clocks will use a different color when in this mode to avoid confusion.
9115 </p>
9116 <p>
9117   To switch either (or both!) of the transport clocks into this mode, use 
9118   <kbd class="menu"> Edit &gt; Preferences &gt; Transport</kbd> and select
9119   the relevant checkboxes.
9120 </p>
9121 <p>
9122   Note that when in <samp>Delta to Edit Point</samp> mode, the transport clocks 
9123   cannot be edited.
9124 </p>
9125
9126 <h2>Changing clock values with the keyboard</h2>
9127 <p>
9128   New values for the clock can be typed in after clicking on the relevant clock. 
9129   Clicking on the clock will show a thin vertical cursor bar just to the right 
9130   of the next character to be overwritten. Enter time in the same order as the 
9131   current clock mode&mdash;if the clock is in Timecode mode, you need to enter 
9132   hours, minutes, seconds, frames. So, to change to a time of 12:15:20:15 you 
9133   would type <kbd class="input">1 2 1 5 2 0 1 5</kbd>. Each number you type will 
9134   appear in a different color, from right to left, overwriting the existing value. 
9135   Mid-edit, after typing <kbd class="input">3 2 2 2</kbd> the clock might look like this:
9136 </p>
9137 <img src="/images/clockedit.png" alt="An image of a clock being edited in Ardour 3" />
9138 <p>
9139   To finish the edit, press <kbd>&crarr;</kbd> or <kbd>Tab</kbd>. To exit an
9140   edit without changing the clock press <kbd>ESC</kbd>. If you mis-type an entry 
9141   so that the new value would be illegal (for example, resulting in more than 30 
9142   frames when Timecode is set to 30 frames per second), the clock will reset at 
9143   the end of the edit, and move the cursor back to the start so that you can
9144   start over.
9145 </p>
9146
9147 <h3>Avoiding the mouse entirely</h3>
9148 <p>
9149   There is a shortcut available for those who wish to be able to edit the transport 
9150   clocks entirely without the mouse. It can be found in 
9151   <kbd class="menu">Window &gt; Key Bindings &gt; Transport &gt; Focus On
9152   Clock</kbd>. If bound to a key (<kbd>&divide;</kbd> on the numerical
9153   keypad is the 
9154   default), then pressing that key is equivalent to clicking on the primary (left) 
9155   transport clock, and editing can begin immediately.
9156 </p>
9157
9158 <h3>Entering Partial Times</h3>
9159 <p>
9160   One detail of the editing design that is not immediately obvious is that it is 
9161   possible to enter part of a full time value. Suppose that the clock is in BBT
9162   mode, displaying <samp>024|03|0029</samp>, and you want to alter the value to 
9163   the first beat of the current bar. Click on the clock and type 
9164   <kbd class="input">0 1 0 0 0 0</kbd>. Similarly, if it is in Minutes:Seconds 
9165   mode, displaying <samp>02:03:04.456</samp>, and you want to get to exactly 2 
9166   hours, click on the clock and type <kbd class="input">0 0 0 0 0 0 0</kbd> to 
9167   reset the minutes, seconds and milliseconds fields.
9168 </p>
9169
9170 <h3>Entering Delta Times</h3>
9171 <p>
9172   You can also type values into the clock that are intended as a relative change, 
9173   rather than a new absolute value. Simply end the edit by pressing 
9174   <kbd>+</kbd> or <kbd>-</kbd> (the ones on any keypad will also work). The plus
9175   key will add the entered value to the current value of the clock, minus will 
9176   subtract it. For example, if the clock is in Samples mode and displays 
9177   <samp>2917839</samp>, you move it back 2000 samples by typing 
9178   <kbd class="input">2 0 0 0</kbd> and <kbd>-</kbd>, rather than ending with
9179   Enter or Tab. </p>
9180   
9181 <h2>Changing clock values with the mouse</h2>
9182
9183 <h3>Using a scroll wheel</h3>
9184
9185 <p>
9186   Position the mouse pointer over the clock, and move the scroll wheel. Moving
9187   the scroll wheel up (<kbd class="mouse">&uArr;</kbd>) increases the value 
9188   shown on the clock, moving it down  (<kbd class="mouse">&uArr;</kbd>)
9189   decreases it. The step size is equal to the unit of the field
9190   you are hovering over (seconds, hours, etc.).
9191 </p>
9192
9193 <h3>Dragging the mouse</h3>
9194
9195 <p>
9196   Position the mouse pointer over the clock, press the left mouse button and drag. 
9197   Dragging upwards increases the value shown on the clock, dragging downwards
9198   decreases it, again with a step size equal to the unit of the field you
9199   began the drag on.
9200 </p>
9201
9202 ---
9203 title: Controlling Playback
9204 part: subchapter
9205 ---
9206
9207 <p class="fixme">There is no discussion of starting playback anywhere in here. Starting/stopping needs to be explained</p>
9208
9209 <p>
9210   Ardour offers many ways to <dfn>control playback</dfn> of your session, including the transport bar, key bindings and remote controls. You can also use markers to define locations or ranges within the session and rapidly move around between them.
9211 </p>
9212
9213 <img src="/images/transport-bar.png" alt="Ardour's transport bar" />
9214
9215 <p class="note">
9216   If you synchronize Ardour with other devices then some or all of these control methods may be unavailable&mdash;depending on the synchronization protocol, Ardour may respond only to commands sent from its master device(s).
9217 </p>
9218
9219 <p>
9220   The <dfn>Transport Bar</dfn> at the top of the window is made of:
9221 </p>
9222
9223 <ul>
9224   <li><a href="/controlling-playback/using-the-transport-bar/">the Transport Controls</a></li>
9225   <li><a href="/ardours-interface/using-ardour-clock-displays/">the Clocks</a></li>
9226   <li>3 status indicators:
9227     <ul>
9228       <li><dfn>Solo</dfn>: Blinks when one or more tracks are being soloed, see <a href="/mixing/muting-and-soloing/">Muting and Soloing</a>. Clicking this button disables any active explicit and implicit solo on all tracks and busses.</li>
9229       <li><dfn>Audition</dfn>: Blinks when using the import dialog to audition material.</li>
9230       <li><dfn>Feedback</dfn>: Blinks when Ardour detects a <dfn>feedback loop</dfn>, which happens when the output of an audio signal chain is plugged back to its input. This is probably not wanted and can be dangerous for the hardware and the listener.</li>
9231     </ul></li>
9232   <li>A global Meter, showing the level of the Master Output, see <a href="/ardours-interface/meters/">Metering in Ardour</a></li>
9233   <li>the Mode Selector, allowing to switch between Editor and Mixer views, or edit the Preferences.</li>
9234 </ul>
9235
9236 ---
9237 title: Looping the Transport
9238 part: subchapter
9239 ---
9240
9241 <p>
9242   When the <dfn>loop transport</dfn> button is pressed, the playhead will 
9243   jump the start of the loop range, and continue to the end of that range 
9244   before returning to the start and repeating.
9245   While looping, a light green area is displayed in the time ruler over 
9246   the tracks to show the loop range.
9247 </p>
9248
9249 <p>
9250   By default, looping is bound to the <kbd>l</kbd> key.
9251 </p>
9252
9253 <p>
9254   For more information on defining and altering the loop range see 
9255   <a href="/working-with-markers/the-loop-range">Loop Range Markers</a>.
9256 </p>
9257   
9258 <p class="fixme">Broken link</p>
9259
9260 ---
9261 title: Positioning the Playhead
9262 part: subchapter
9263 ---
9264
9265 <p>
9266   The <dfn>playhead</dfn> is a vertical line with two arrows at each end 
9267   that indicates the current position of playback.
9268 </p>
9269
9270 <h2>Positioning the playhead at the current pointer position</h2>
9271
9272 <p>
9273   Pressing <kbd>P</kbd> will set the playhead to the current position of 
9274   the mouse pointer, if it is within the editor track area.
9275 </p>
9276
9277 <h2>Positioning the playhead on the timeline</h2>
9278
9279 <p>
9280   A <kbd class="mouse">Left</kbd> click anywhere on the timeline (rulers)
9281   will move the playhead to that position.
9282 </p>
9283
9284 <h2>Positioning the playhead with the transport clocks</h2>
9285
9286 <p>
9287   Click on either the primary or secondary transport clock and 
9288   <a href="/ardours-interface/using-ardour-clock-displays">edit their value</a> 
9289   to move the playhead to a specific position.
9290 </p>
9291
9292 <h2>Positioning the playhead at a marker</h2>
9293
9294 <p>
9295   Click <kbd class="mouse">Right</kbd> on the marker and select either 
9296   <kbd class="menu">Locate to here</kbd> or <kbd class="menu">Play from
9297   here</kbd>. 
9298 </p>
9299
9300 <p>
9301    The playhead can also be moved backward and forward through the markers by
9302    respectively pressing the <kbd>Q</kbd> and <kbd>W</kbd> keys. Pressing
9303    <kbd>Home</kbd> and <kbd>End</kbd> will move the playhead to the special
9304    markers <dfn>start</dfn> and <dfn>end</dfn>, respectively.
9305 </p>
9306
9307 ---
9308 title: Using Key Bindings
9309 part: subchapter
9310 ---
9311
9312 <p>
9313   Ardour has many available commands for playback control that can be bound 
9314   to keys. Many of them have default bindings, some do not, so the list below 
9315   shows both the default bindings and internal command names.
9316 </p>
9317
9318 <dl class="wide-table">
9319   <dt><kbd>Space</kbd></dt>
9320   <dd>switch between playback and stop.</dd>
9321   <dt><kbd>Home</kbd></dt>
9322   <dd>Move playhead to session start marker</dd>
9323   <dt><kbd>End</kbd></dt>
9324   <dd>Move playhead to session end marker</dd>
9325   <dt><kbd>&rarr;</kbd></dt>
9326   <dd></dd>
9327   <dt><kbd>&larr;</kbd></dt>
9328   <dd></dd>
9329   <dt><kbd>0</kbd></dt>
9330   <dd>Move playhead to start of the timeline</dd>
9331 </dl>
9332
9333 <p>Commands without default bindings include:</p>
9334   
9335 <p class="fixme">Add content</p>
9336
9337 ---
9338 title: Using the Nudge Controls
9339 part: subchapter
9340 ---
9341
9342 <p class="fixme">Add image of Nudge Controls</a>
9343
9344 <p>
9345   If there are no selected objects, the <dfn>nudge controls</dfn> can be 
9346   used to move the playhead backward or forward by a fixed amount. The left 
9347   and right buttons move either backward or forward in time, and the small 
9348   clock to the left of these buttons sets the amount of time to nudge by. 
9349   As with all other clocks, you can right-click on the clock to choose the 
9350   time representation you want to use.
9351 </p>
9352
9353 <p>
9354   Note that this is a secondary purpose of the nudge controls&mdash;it is
9355   usually used to move selected <dfn>objects</dfn> by specific distances, rather than
9356   the playhead.
9357 </p>
9358   
9359 ---
9360 title: Using the Transport Bar
9361 part: subchapter
9362 ---
9363
9364 <p>
9365   The <dfn>Transport Bar</dfn> groups all the actions regarding the control of playback and recording.
9366 </p>
9367
9368 <img src="/images/transport.png" alt="The transport controls" />
9369
9370 <p>
9371   This bar is made of (from left to right):
9372 </p>
9373
9374 <ul>
9375   <li>
9376     <dfn>Midi Panic</dfn>: allows to immediately stop all midi output.
9377   </li>
9378   <li>
9379     <dfn>Enable/disable Audio Click</dfn>: Toggles (on/off) a click track (metronome) along the <a href="/tempo-meter/tempo-and-meter/">tempo</a>.
9380   </li>
9381   <li>
9382     <dfn>Go to Start of the Session</dfn>: Jumps back at the beginning of the session, as defined by the <a href="/working-with-markers/">start marker</a>.
9383   </li>
9384   <li>
9385     <dfn>Go to End of the Session</dfn>: Jumps forward to the end of the session, as defined by the <a href="/working-with-markers/">end marker</a>.
9386   </li>
9387   <li>
9388     <dfn>Play Loop Range</dfn>: Repeats the defined <a href="/controlling-playback/looping-the-transport/">loop</a> as defined by the <a href="/working-with-markers/loop-range/">Loop range</a>, until the "Stop playback" button is pressed. Clicking the "Play loop Range" button while already active switches to normal Play mode, which allows to exit the loop without stopping and restarting the playback.
9389   </li>
9390   <li>
9391     <dfn>Play Range/Selection</dfn>: If a range has been defined using the Range Mode button, plays the range, of if an audio or MIDI region is selected, plays this region. In both cases, the playback stops at the end of the range or selected region.
9392   </li>
9393   <li>
9394     <dfn>Play from playhead</dfn>: Starts the playback and optionally record (more bellow).
9395   </li>
9396   <li>
9397     <dfn>Stop</dfn>: Whatever the playing mode (loop, range, &hellip;) stops all playback. Depending on other settings, some effects (like chorus or reverb) might still be audible for a while.
9398   </li>
9399   <li>
9400     <dfn>Toggle Record</dfn>: Global switch button to activate/deactivate recording. While active, the button blinks red. The button doesn't start the recording itself: if one or more tracks are marked as record-enabled, pressing the "Play from Playhead" starts the recording on this/these track(s). See <a href="/recording/">Recording</a>.
9401   </li>
9402 </ul>
9403
9404 <p class="fixme">Language in the above paragraphs is awkward</p>
9405
9406 <p class="note">
9407   All these actions are bound to keyboard shortcuts, which allows for speedier use and more focused work.
9408 </p>
9409
9410 <p>
9411   Under these buttons is the <dfn>Shuttle Speed Control</dfn> that allows to scrub through the audio quickly.
9412 </p>
9413
9414 <p>
9415   The Shuttle Speed Control supports 2 operating modes, that can be chosen with right click > Mode:
9416 </p>
9417
9418 <ul>
9419   <li><dfn>Sprung mode</dfn> that allows for a temporary scrub: it only scubs while the mouse is left clicked on the control.</li>
9420   <li><dfn>Wheel mode</dfn> that allows to set a playback speed until the "Stop" button is pressed, which stops the playback and resets its speed.
9421 </ul>
9422
9423 <p>
9424   The mode is displayed on the right of the control. The current playback speed is shown by a green slider, that is square and centered when the playback speed is normal (1X) and becomes a circle when its changed. The further from the center the slider is set, the faster the playback will scrub in both directions, as displayed on the left of the control.
9425 <p>
9426
9427 <p>
9428   The 3 vertical buttons on the right of the transport bar control the behaviour of the playhead:
9429 </p>
9430
9431 <ul>
9432   <li>
9433      The positional sync button (which might show <dfn>Internal</dfn>, or <dfn>MTC</dfn> or several other values) can be used to control whether or not the transport position and start is controlled by Ardour, or by an external positional synchronization source, such as MIDI Time Code (MTC), Linear Time Code (LTC) or JACK. (see <a href="/synchronization/timecode-generators-and-slaves/">Timecode Generators and Slaves</a>).
9434   </li>
9435   <li>
9436     <dfn>Follow Edits</dfn> is a toggle that can be used to control whether or not making a selection (range or object) will move the playhead to the start of the selection.
9437   </li>
9438   <li>
9439     <dfn>Auto Return</dfn> is a toggle switch too. When active, pressing the Stop button returns the playhead to its previous position, and when inactive, pressing Stop keeps the playhead at its current location. Activating Auto Return can be useful for earing back the same part of the audio before and after having tweaked it, without having to loop on it.
9440   </li>
9441 </ul>
9442
9443   
9444 ---
9445 title: Record Setup
9446 part: chapter
9447 ---
9448
9449
9450 ---
9451 title: Track Recording Modes
9452 part: subchapter
9453 ---
9454
9455 <p>
9456   The <dfn>Recording mode</dfn> is a per-track property (applies to audio 
9457   tracks only) that affects the way that recording new material on top of 
9458   existing material ("overdubbing") operates <em>in that track</em>. 
9459 </p>
9460
9461 <h2 id="trackmodes">Track Modes</h2>
9462
9463 <p>
9464   Audio tracks in Ardour have a <dfn>mode</dfn> which affects how they behave 
9465   when recording:
9466 </p>
9467
9468 <dl class="narrower-table">
9469   <dt>Normal</dt>
9470   <dd>Tracks in <dfn>normal mode</dfn> will record non-destructively&mdash;new
9471   data is written to new files, and when overdubbing, new regions will be 
9472   layered on top of existing ones. This is the recommended mode for most
9473   workflows.
9474   </dd>
9475   <dt>Non-Layered</dt>
9476   <dd>Tracks using <dfn>non-layered mode</dfn> will record non-destructively&mdash;new data is written to new files, but when overdubbing,
9477   the existing 
9478   regions are trimmed so that there are no overlaps. This does not affect
9479   the previously recorded audio data, and trimmed regions can be expanded
9480   again at will. Non-layered mode can be very useful for spoken word material, 
9481   especially in combination with <a href="/editing-and-arranging/change-region-lengths/pushpull-trimming">push/pull trimming</a>.
9482
9483   <p class="fixme">Broken link</p>
9484
9485   </dd>
9486   <dt>Tape</dt>
9487   <dd><dfn>Tape-mode</dfn> tracks do <strong>destructive</strong> recording: 
9488   all data is recorded to a single file and if you overdub a section of existing 
9489   data, the existing data is destroyed irrevocably&mdash;there is no undo. 
9490   Fixed crossfades are added at every punch in and out point. This mode can be 
9491   useful for certain kinds of re-recording workflows, but it not suggested for normal 
9492   use.</dd>
9493 </dl>
9494
9495 <img class="right" src="/images/a3_nonlayered_example.png" alt="normal and non-layered overdubbing comparision"
9496 />
9497
9498 <p>
9499   The screenshot on the right shows the subtle difference between an overdub 
9500   in <dfn>normal mode</dfn> (upper track) and one in <dfn>non-layered mode</dfn> 
9501   (lower track). Both tracks were created using identical audio data.
9502 </p>
9503
9504 <p>
9505   The upper track shows a new region which has been <dfn>layered on
9506   top</dfn> of the the existing (longer) region. You can see this if you look 
9507   carefully at the region name strips. The lower track has split the existing
9508   region in two, trimmed each new region to create space for the new overdub,
9509   and inserted the overdub region in between. 
9510 </p>
9511
9512 <h2 id="channelconfiguration">Channel Configuration</h2>
9513
9514 <p>
9515   Ardour tracks can have any number of inputs and any number of outputs, and
9516   the number of either can be changed at any time (subject to restrictions
9517   caused by any plugins in a track). However it is useful to not have to
9518   configure this sort of thing for the most common cases, and so the 
9519   <a href="/working-with-tracks/adding-tracks">Add Tracks</a> dialog allows you
9520   to select "Mono", "Stereo" and few other typical multichannel presets.
9521   The name of the preset describes the number of <dfn>input channels</dfn>
9522   of the track or bus.
9523 </p>
9524
9525 <p>
9526   If you have configured Ardour to automatically connect new tracks and
9527   busses for you, the number of outputs will be determined by the number of
9528   inputs of the <dfn>master <a
9529   href="/introducing-ardour/understanding-basic-concepts-and-terminology/#busses">bus</a></dfn>,
9530   to which the track outputs will be connected.
9531 </p>
9532
9533 <p>
9534   For example, if you have a two-channel master bus, then a Mono track has one 
9535   input and two outputs; a Stereo track has two inputs and two outputs.
9536 </p>
9537
9538 <p class="note">
9539   Setting <kbd class="menu">Edit &gt; Preferences &gt; Audio
9540   &gt; Connection of Tracks and Busses</kbd> to <kbd
9541   class="menu">manual</kbd> will leave tracks disconnected by default
9542   and there will be as many outputs as there are inputs. It is up to you to
9543   connect them as you wish. This is not a particularly useful way to work 
9544   unless you are doing something fairly unusual with signal routing and
9545   processing. It is almost always preferable to allow Ardour to make
9546   connections automatically, even if some of them have to be changed manually
9547   at some point.
9548 </p>
9549
9550   
9551 ---
9552 title: Audio Recording
9553 part: chapter
9554 ---
9555
9556
9557 ---
9558 title: Monitoring
9559 part: subchapter
9560 ---
9561
9562 <p>
9563   When recording, it is important that performers hear themselves, and to 
9564   hear any pre-recorded tracks they are performing with.
9565   Audio recorders typically let you <dfn>monitor</dfn> (i.e. listen to) 
9566   the input signal of all tracks that are armed for recording, and playing 
9567   back the unarmed tracks.
9568 </p>
9569
9570 ---
9571 title: Latency Considerations
9572 menu_title: Latency
9573 part: subchapter
9574 ---
9575
9576 <p>  
9577   In the days of analog tape recording, the routing of monitor signals was
9578   performed with relays and other analog audio switching devices.  Digital 
9579   recorders have the same feature, but may impart some 
9580   <a
9581   href="/synchronization/latency-and-latency-compensation/"><dfn>latency</dfn></a> 
9582   (delay) between the time you make a noise and the time that you hear it 
9583   come back from the recorder.
9584 </p>
9585
9586 <p>
9587   The latency of <em>any</em> conversion from analog to digital and back to 
9588   analog is about 1.5&ndash;2&nbsp;ms. Some musicians claim that even the 
9589   basic <abbr title="Analog to Digital to Analog">A/D/A</abbr> conversion 
9590   time is objectionable. However even acoustic instruments such as the piano 
9591   can have approximately 3&nbsp;ms of latency, due to the time the sound
9592   takes to travel from the instrument to the musician's ears. Latency below 
9593   5&nbsp;ms should be suitable for a professional recording setup. Because
9594   2&nbsp;ms are already used in the A/D/A process, you must use extremely low 
9595   <dfn>buffer sizes</dfn> in your workstation <abbr title="Input/Output">I/O</abbr> 
9596   setup to keep the overall latency below 5ms. Not all 
9597   <a href="/setting-up-your-system/the-right-computer-system-for-digital-audio">computer audio systems</a> 
9598   are able to work reliably at such low buffer sizes.
9599 </p>
9600
9601 <p>
9602   For this reason it is sometimes best to route the monitor signal
9603   through an external mixing console while recording, an approach taken by
9604   most if not all professional recording studios. Many computer I/O devices 
9605   have a hardware mixer built in which can route the monitor signal "around"
9606   the computer, avoiding the system latency.
9607 </p>
9608
9609 <p>
9610   In either case, the monitoring hardware may be digital or analog.  And in 
9611   the digital case you will still have the A-D-A conversion latency of
9612   1&ndash;2&nbsp;ms.
9613 </p>
9614
9615 ---
9616 title: Monitor Signal Flow
9617 menu_title: Signal Flow
9618 part: subchapter
9619 ---
9620
9621 <p>
9622   There are three basic ways to approach monitoring:
9623 </p>
9624
9625 <h3>External Monitoring</h3>
9626
9627 <p><img class="right" src="/images/external-monitoring.png" /></p>
9628
9629 <p>
9630   When using <dfn>external monitoring</dfn>, Ardour plays no role in monitoring at all. Perhaps the recording set-up has an external mixer which can be used to set up monitor mixes, or perhaps the sound-card being used has a "listen to the input" feature. This approach yields zero or near-zero latency. On the other hand it requires external hardware, and the monitoring settings are less flexible and not saved with the session.
9631 </p>
9632
9633 <h3>JACK-Based Hardware Monitoring</h3>
9634
9635 <p><img class="right" src="/images/jack-monitoring.png" /></p>
9636
9637 <p>
9638   Some sound cards have the ability to mix signals from their inputs to their outputs with very low or even zero latency, a feature called <dfn>hardware monitoring</dfn>. Furthermore, on some cards this function can be controlled by JACK. This is a nice arrangement, if the sound card supports it, as it combines the convenience of having the monitoring controlled by Ardour with the low latency operation of doing it externally.
9639 </p>
9640
9641 <p class="fixme">Broken link</p>
9642
9643 <h3>Software Monitoring</h3>
9644
9645 <p><img class="right" src="/images/ardour-monitoring.png" /></p>
9646
9647 <p>
9648   With the <dfn>software monitoring</dfn> approach, all monitoring is performed by Ardour&mdash;it makes track inputs available at track outputs, governed by various controls. This approach will almost always have more routing flexibility than JACK-based monitoring. The disadvantage is that there will be some latency between the input and the output, which depends for the most part on the JACK buffer size that is being used. 
9649 </p>
9650
9651 ---
9652 title: Monitor Setup in Ardour
9653 menu_title: Setup in Ardour
9654 part: subchapter
9655 ---
9656
9657 <p>
9658   Ardour has three main settings which affect how
9659   monitoring is performed. The first is 
9660   <kbd class="menu">Edit &gt; Preferences &gt; Audio &gt; 
9661   Record monitoring handled by</kbd>.  There are two or three
9662   options here, depending on the capabilities of your hardware.
9663 </p>
9664
9665 <p>
9666   The other two settings are more complex.  One is 
9667   <kbd class="menu">Tape machine mode</kbd>, found in the
9668   same dialog, and the other is the
9669   <kbd class="option">Session &gt; Properties &gt; Monitoring
9670   automatically follows transport state</kbd> setting.
9671 </p> 
9672
9673 <p>
9674   Monitoring also depends on the state of the track's record-enable button,
9675   the session record-enable button, and on whether or not the transport is
9676   rolling.
9677 </p>
9678
9679 <h2>Software or Hardware Monitoring Modes</h2> 
9680
9681 <p>
9682   If Ardour is set to <dfn>external monitoring</dfn>, the explanation of 
9683   Ardour's monitoring behaviour is simple: it does not do any. 
9684 </p>
9685
9686 <h2>Monitoring in Non-Tape-Machine Mode</h2>
9687
9688 <p>
9689   When <dfn>Tape-Machine mode is off</dfn>, and a track is armed,
9690   Ardour <em>always</em> monitors the live input, except in one case: 
9691   the transport is rolling, the session is not recording, and
9692   <dfn>auto-input</dfn> 
9693   is active. In this case only, you will hear playback from an armed track.
9694 </p> 
9695
9696 <p>
9697   Unarmed tracks will play back their contents from disc, unless the
9698   transport is stopped <em>and</em> <dfn>auto-input</dfn> is enabled.
9699   In this case, the track monitors its live input.
9700 </p>
9701
9702 <h2>Monitoring in Tape-Machine Mode</h2>
9703
9704 <p>
9705   In <dfn>Tape-Machine mode</dfn>, things are slightly simpler: when a 
9706   track is armed, its behaviour is the same as in non-tape-machine mode.
9707 </p> 
9708
9709 <p>
9710   Unarmed tracks however will always just play back their contents from 
9711   disk; the live input will never be monitored. 
9712 </p>
9713
9714
9715 ---
9716 title: MIDI Recording
9717 part: chapter
9718 ---
9719
9720
9721 ---
9722 title: Punch Recording Modes
9723 part: chapter
9724 ---
9725
9726
9727 ---
9728 title: Working With Markers
9729 part: subchapter
9730 ---
9731
9732 <p>
9733   It is very useful to be able to tag different locations in a session for
9734   later use when editing and mixing. Ardour supports both
9735   <dfn>locations</dfn>, which define specific positions in time, 
9736   and <dfn>ranges</dfn> which define a start and end position in time. 
9737 </p>
9738
9739 <p>
9740   In addition to the standard location markers, there are three kinds of 
9741   special markers:
9742 </p>
9743
9744 <ul>
9745   <li>
9746     <dfn>CD markers</dfn> are locations that are restricted to legal 
9747     <dfn>CD sector boundaries</dfn>. They can be used to add track index 
9748     markers to compact disc images.
9749   </li>
9750   <li>
9751     The <dfn>Loop range</dfn> defines the start end end points for Looping.
9752   </li>
9753   <li>
9754     The <dfn>punch range</dfn> defines the in and out points for punch
9755     recording.
9756   </li>
9757 </ul>
9758
9759 ---
9760 title: Creating Location Markers
9761 part: subchapter
9762 ---
9763
9764 <p>
9765   <dfn>Location Markers</dfn> appear in the <dfn>Locations ruler</dfn> at the top
9766   of the timeline. The <dfn>start</dfn> and <dfn>end</dfn> markers appear 
9767   automatically, but you can create custom markers at any position in a 
9768   session.
9769 </p>
9770
9771 <p>
9772   To add a marker at the <strong>current playhead position</strong>, press
9773   <kbd>Num-&crarr;</kbd> (the Enter key on the numeric  keypad).
9774   Alternatively, use <kbd class="menu">Transport &gt; Markers &gt; Add 
9775   Mark from Playhead</kbd>.
9776 </p>
9777
9778 <p>
9779   To add a marker at an <strong>arbitrary location</strong> on the timeline,
9780   navigate to the desired position, right-click on the Locations ruler and
9781   select <kbd class="menu">New Location Marker</kbd>.
9782   You can also go to the Editor list, click <kbd class="menu">New
9783   Marker</kbd> and use the clock widget to set its position.
9784 </p>
9785
9786 <p>
9787   For details see 
9788   <a href="/working-with-markers/rangesmarks-list/">Ranges &amp; Marks
9789   List</a>
9790   and <a href="/ardours-interface/using-ardour-clock-displays/"> Using
9791   Ardour Clock Displays</a>.
9792 </p>
9793
9794 ---
9795 title: Creating Range Markers
9796 part: subchapter
9797 ---
9798
9799 <p class="fixme">Add images</a>
9800   
9801 <p>
9802   <dfn>Range markers</dfn> are essentially two location markers the are grouped
9803   together to mark the beginning and end of a section in the timeline. 
9804 </p> 
9805
9806 <h2>Creating a Range on the timeline</h2>
9807
9808 <p>
9809   To create a new <dfn>range</dfn>, right-click on the  
9810   Ranges ruler at the top of the timeline, then select
9811   <kbd class="menu">New Range</kbd>. 
9812   Two markers with the same name will appear along the ruler. 
9813   Both marks can be moved along the timeline by clicking and dragging 
9814   them to the desired location.
9815 </p>
9816
9817 <p>
9818   It is also possible to create range markers from a selected range or
9819   region in the Editor window, or to use the <kbd class="menu">Ranges 
9820   &amp; Marks List</kbd> in the Editor list.
9821 </p>
9822   
9823 ---
9824 title: Ranges &amp; Marks List
9825 part: subchapter
9826 ---
9827
9828 <p>
9829   The <dfn>Ranges &amp; Marks List</dfn> is a tab in the <dfn>Editor
9830   Lists</dfn> area on the right of the Editor window. If the editor 
9831   list area isn't visible it can be enabled by checking 
9832   <kbd class="option">View &gt; Show Editor List</kbd>. 
9833   The Ranges &amp; Marks list can be used as a single point 
9834   of control for all range and location markers (including the punch and 
9835   loop ranges), or as a supplement to other methods of working with them.
9836 </p>
9837
9838 <h2>Common elements</h2>
9839
9840 <p>
9841   Each section has a set of <dfn>editable <a
9842   href="/ardours-interface/using-ardour-clock-displays/">clock widgets</a></dfn> 
9843   which display
9844   the location of a marker, or the start, end, and duration times of a range,
9845   respectively.<br />
9846   The <kbd class="menu">Use PH</kbd> buttons allow you to set 
9847   the corresponding clock to the current playhead position.
9848   A <kbd class="mouse">Middle</kbd> click on any of the clocks will move 
9849   the playhead to that location. Both functions are also available from the
9850   clock context menus.<br />
9851   Right clicking on any of the clocks brings up a context menu that allows 
9852   changing of the display between Timecode, Bars:Beats, Minutes:Seconds,
9853   and Samples.<br />
9854 </p>
9855 <p>
9856  The <kbd class="menu">&mdash;</kbd> (subtract) button in front of each
9857  user-defined range or marker in the list allows that particular item to
9858  be removed. The name fields of custom ranges and markers can be edited. 
9859 </p>    
9860 <p>
9861   The <kbd class="option">Hide</kbd> checkboxes make markers and ranges invisible 
9862   on the respective ruler to reduce visual clutter; the markers remain
9863   active however, and can be used normally.<br />
9864   Selecting <kbd class="option">Lock</kbd> prevents the respective marker 
9865   from being moved until unlocked.
9866   Where applicable, <kbd class="option">Glue</kbd> fixes the marker position
9867   relative to the current musical position expressed in bars and beats, rather 
9868   than the absolute time. This will make the respective marker follow
9869   changes in the tempo map.
9870 </p>
9871 <p>
9872   At the bottom of the list are buttons to add new markers or ranges.
9873 </p>
9874  <h2>List sections</h2>
9875
9876 <dl>
9877   <dt>Loop/Punch Ranges</dt>
9878   <dd>This list shows the current <dfn>loop</dfn> and <dfn>punch</dfn> range 
9879   settings. Since these are built-in ranges, you cannot rename or remove them.</dd>
9880   <dt>Markers (Including CD Index)</dt>
9881   <dd>This section lists the session's <dfn>markers</dfn>. By ticking <kbd
9882   class="option">CD</kbd>, you instruct Ardour to create a <dfn>CD track
9883   index</dfn> from this marker, which will be included in the TOC or CUE file when you
9884   export.</dd>
9885   <dt>Ranges (Including CD Track Ranges)</dt>
9886   <dd>This is the list of <dfn>ranges</dfn> (including <dfn>CD track
9887   ranges</dfn>). Ticking <kbd class="option">CD</kbd> will convert
9888   the range to a <dfn>CD track</dfn>, which will again be included in
9889   exported TOC or CUE files. This is relevant for Disk-At-Once recordings
9890   that may contain audio data between tracks.</dd>
9891 </dl>
9892
9893 ---
9894 title: Moving Markers
9895 part: subchapter
9896 ---
9897
9898 <h2>Single marker</h2>
9899
9900 <p>
9901   <kbd class="mouse">Left</kbd>-click and drag to move a single marker to a 
9902   new location on the timeline.
9903 </p>
9904
9905 <h2>Multiple markers</h2>
9906
9907 <p>
9908   It is possible to move multiple markers by the same distance. <kbd
9909   class="mouse mod1">Left</kbd>-click each marker you want to move, then drag 
9910   one of the selected markers to a new location. All selected markers will
9911   then move together. Note that the markers are bounded by the zero point on 
9912   the timeline. In other words, the first marker in your selection cannot move 
9913   to the left of zero on the timeline.
9914 </p>
9915
9916 <h2>Both ends of a range marker</h2>
9917
9918 <p>
9919   <kbd class="mod1 mouse">Left</kbd>-drag either end of the range marker. The 
9920   other end will move by the same distance.
9921 </p>
9922
9923 ---
9924 title: The Loop Range
9925 part: subchapter
9926 ---
9927
9928 <p class="fixme">Missing content</a>
9929
9930 <p>
9931   The <dfn>loop range</dfn> is a special range that defines the start and end points
9932   for loop play, which can be enabled in the transport bar.
9933 </p>
9934
9935 <p>
9936   It can be defined via the <a href="/missing">timeline</a> or the <a
9937   href="/working-with-markers/rangesmarks-list/">Ranges &amp; Marks
9938   list</a>.
9939 </p>
9940
9941 <p class="fixme">Broken links</a>
9942   
9943 ---
9944 title: Marker Context Menu
9945 part: subchapter
9946 ---
9947
9948 <p>
9949   <kbd class="mouse">Right</kbd>-clicking a marker in the timeline opens the 
9950   marker context menu. From this menu, you can:
9951 </p>
9952 <dl>
9953   <dt>Locate to Here</dt>
9954   <dd>Move the playhead to this marker's position.</dd>
9955   <dt>Play from Here</dt>
9956   <dd>start playback from this marker's position.</dd>
9957   <dt>Move Mark to Playhead</dt>
9958   <dd>Move this marker to the current playhead position.</dd>
9959   <dt>Create Range to Next Marker</dt>
9960   <dd>Create a range marker between this location and the next one along on 
9961   the timeline.</dd>
9962   <dt>Hide</dt>
9963   <dd>Hide this marker from the view. It can be made visible again from the
9964   <kbd class="menu">Window &gt; Locations</kbd> window or the <a
9965   href="/working-with-markers/rangesmarks-list/">Ranges &amp; Marks
9966   list</a>.</dd>
9967   <dt>Rename</dt>
9968   <dd>Change the name of the marker.</dd>
9969   <dt>Lock</dt>
9970   <dd>If this is ticked, it will be impossible to drag the marker's 
9971   position; useful if you want to prevent accidental movements.</dd>
9972   <dt>Glue to Bars and Beats</dt>
9973   <dd>If this is ticked, the marker will maintain its position in bars and 
9974   beats even if there are changes in tempo and meter.</dd>
9975   <dt>Remove</dt>
9976   <dd>Removes the marker. </dd>
9977 </dl>
9978
9979 <p>
9980   There are also a few options in <kbd class="menu">Transport &gt; Active
9981   Mark</kbd>. These options apply to the currently selected location marker, 
9982   and move it to a nearby region boundary, region sync point, or to the 
9983   playhead or mouse.
9984 </p>
9985   
9986 ---
9987 title: Punch Range
9988 part: subchapter
9989 ---
9990
9991 <p class="fixme">Missing content</a>
9992
9993 <p>
9994   The <dfn>punch range</dfn> is a special range used to define where 
9995   recording will start and/or stop during a <dfn>punch</dfn>.
9996 </p>
9997
9998 <p>
9999   It can be defined on the <a href="/missing">timeline</a> or in the 
10000   <a href="/working-with-markers/rangesmarks-list/">Ranges &amp; Marks</a> 
10001   list.
10002 </p>
10003
10004 <p class="fixme">Broken links</a>
10005   
10006   
10007 ---
10008 title: Editing
10009 part: part
10010 ---
10011
10012   
10013 ---
10014 title: Editing Basics
10015 part: chapter
10016 ---
10017
10018
10019 ---
10020 title: Working With Regions
10021 part: subchapter
10022 ---
10023
10024 <h2>Working With Regions</h2>
10025
10026 <p>
10027   <dfn>Regions</dfn> are the basic elements of editing and composing in 
10028   Ardour. In most cases, a region represents a single contiguous section 
10029   of one or more media files. Regions are defined by a fixed set of attributes:
10030 </p>
10031 <ul>
10032   <li>the audio or 
10033   <abbr title="Musical Instrument Digital Interface">MIDI</abbr>
10034   <dfn>source file(s)</dfn> they represent,</li>
10035   <li>an <dfn>offset</dfn> (the "start point") in the audio or MIDI file(s), and</li>
10036   <li>a <dfn>length</dfn>.</li>
10037 </ul>
10038 <p>
10039   When placed into a playlist, they gain additional attributes:
10040 </p>
10041 <ul>
10042   <li>a <dfn>position</dfn> along the timeline, and</li>
10043   <li>a <dfn>layer</dfn>.</li>
10044 </ul>
10045 <p>
10046   There are other attributes as well, but they do not <em>define</em> the 
10047   region. Things you should know about regions:
10048 </p>
10049
10050 <h3>Regions Are Cheap</h3>
10051 <p>
10052   By themselves, regions consume very little of your computer's resources.
10053   Each region requires a small amount of memory, and represents a rather 
10054   small amount of CPU work if placed into an active track. So, don't worry 
10055   about creating regions whenever you need to.
10056 </p>
10057
10058 <h3>Regions Are Not Files</h3>
10059 <p>
10060   Although a region can represent an entire audio file, they are never 
10061   equivalent to an audio file. Most regions represent just parts of an audio 
10062   file(s) on disk, and removing a region from a track has nothing to do with 
10063   removing the audio file(s) from the disk (the <kbd
10064   class="menu">Destroy</kbd> operation, one of Ardour's few destructive
10065   operations, can affect this). Changing the length of a region has no effect 
10066   on the audio file(s) on disk. Splitting and copying regions does not alter 
10067   the audio file in anyway, nor does it create new audio files (only
10068   <dfn>recording</dfn>, 
10069   and the <kbd class="menu">Export</kbd>, <kbd class="menu">Bounce</kbd> and 
10070   <kbd class="menu">Reverse</kbd> operations create new audio files).</p>
10071
10072 ---
10073 title: Region Naming
10074 part: subchapter
10075 ---
10076
10077 <p>
10078   <dfn>Region names</dfn> are initially derived from either</p>
10079 <ul>
10080   <li>the name of the playlist for which they were recorded,</li>
10081   <li>the name of the track for which they were recorded, or</li>
10082   <li>the name of the embedded/imported file they represent.</li>
10083 </ul>
10084 <p class="fixme">
10085   It appears that recorded regions are always named after the track, not the
10086   active playlist in that track.
10087 </p>
10088
10089 <h2>Whole File Region Names</h2>
10090 <p>
10091   These are not audio files, but regions that represent the full extent of an
10092   audio file. Every time a new recording is done, or a new file is imported
10093   to the session, a new region is created that represents the <dfn>entire audio 
10094   file</dfn>. This region will have the name of the track/playlist/original file, 
10095   followed by a "-", then a number plus a dot and then a number.
10096 </p>
10097 <p>
10098   For <dfn>recorded regions</dfn>, the number will increase each time a new recording 
10099   is made. So, for example, if there is a playlist called
10100   <samp>Didgeridoo</samp>, the 
10101   first recorded whole file region for that playlist will be called
10102   <samp>Digderidoo-1</samp>. The next one will be <samp>Digeridoo-2</samp> and so on.
10103 </p>
10104 <p>
10105   For <dfn>imported regions</dfn>, the region name will be based on the original file 
10106   name, but with any final suffix (e.g. ".wav" or ".aiff") removed.
10107 </p>
10108 <p>
10109   Normally, whole file regions are not inserted into tracks or playlists, 
10110   but regions derived from them are. The whole-file versions live in the 
10111   editor region list where they act as an organizing mechanism for regions 
10112   that are derived from them.
10113 </p>
10114
10115 <h2>Normal Region Names</h2>
10116 <p>
10117   When a region is inserted into a track and playlist, its initial name will 
10118   end in a <dfn>version number</dfn>, such as <samp>.1</samp>. For a recorded region, 
10119   if the whole file region was <samp>Hang drum-1</samp>, then the region in 
10120   the track will appear with the name <samp>Hang drum-1.1</samp>. For an 
10121   imported region, if the whole file region was <samp>Bach:Invention3</samp>, 
10122   then the region in the track will appear with the name
10123   <samp>Bach:Invention3.1</samp>.
10124 </p>
10125
10126 <h2>Copied Region Names</h2>
10127 <p>
10128   If you <dfn>copy a region</dfn>, it initially shares the same name as the original. 
10129   When you perform an operation modifies one of the copies, Ardour will 
10130   increment the version number on the particular copy that changed.
10131 </p>
10132
10133 <h2>Renaming Regions</h2>
10134 <p>
10135   You can <dfn>rename a region</dfn> at any time. Use the region context menu to 
10136   pop up the <kbd class="menu">Rename</kbd> dialog. The new name does not need to 
10137   have a version number in it (in fact, it probably should not). Ardour will add a 
10138   version number in the future if needed (e.g. if you copy or split the region).
10139 </p>
10140
10141 ---
10142 title: Corresponding Regions Selection
10143 part: subchapter
10144 ---
10145
10146 <p>
10147   <a href="/working-with-tracks/track-and-bus-groups/">Track Groups</a> have
10148   a property titled <kbd class="option">Select</kbd> which, if enabled, cause 
10149   Ardour to propagate a region selection in one track of a group to the
10150   <dfn>corresponding regions</dfn> of the other tracks in that group.
10151  </p>
10152 <p>
10153   For example, let's assume you have used multiple microphones to record a 
10154   drum kit to multiple tracks. You have created a track group, added all the 
10155   drum tracks, enabled the group and enabled the Select property for the group. 
10156   When you select a region in one of the drum tracks, Ardour will select the
10157   corresponding region in every other drum track in the group, which in turn
10158   means that a subsequent edit operation will affect all the grouped drum
10159   tracks together. 
10160 </p>
10161
10162 <h2>How Ardour Decides Which Regions are "Corresponding"</h2>
10163 <p>
10164   Regions in different tracks are considered to be corresponding for the purposes 
10165   of sharing <dfn>selection</dfn> if they satisfy <em>all</em> the following criteria:
10166 </p>
10167 <ol>
10168   <li>Each region starts at the <dfn>same offset</dfn> within its source file,</li>
10169   <li>each region is located at the <dfn>same position</dfn> on the timeline, and</li>
10170   <li>each region has the <dfn>same length</dfn>.</li>
10171 </ol>
10172
10173 <h2>Overlap Correspondence</h2>
10174 <p>
10175   Sometimes, the rules outlined above are too strict to get Ardour to do what you 
10176   want. Regions may have been trimmed to slightly different lengths, or positioned 
10177   slightly differently, and this will cause Ardour to not select regions in other 
10178   grouped tracks.</p>
10179 <p>
10180   In this case, change  
10181   <kbd class="menu">Edit &gt; Preferences &gt; Editor &gt; Regions in
10182   active edit groups are edited together:</kbd> to <kbd
10183   class="menu">whenever they overlap in time</kbd>. With this option enabled, r
10184   egions in different tracks will be considered equivalent for the purposes of selection if they
10185   <dfn>overlap</dfn>. This is much more flexible and will cover almost all of the 
10186   cases that the fixed rules above might make cumbersome.
10187 </p>
10188   
10189 ---
10190 title: Region Context Menu
10191 part: subchapter
10192 ---
10193
10194 <p class="fixme">Need to add detail to the context menu table to describe what the options do</p>
10195
10196 <p>
10197   In the editor window, right clicking (context clicking) on a region
10198   displays a menu with <dfn>track and region operations</dfn>. The menu begins with the
10199   name of the region, or <kbd class="menu">Selected Regions</kbd> if multiple 
10200   regions are selected.
10201 </p>
10202 <p>
10203   If there is more than one region layered at the point where you clicked, the 
10204   menu will also contain an item <kbd class="menu">Choose Top</kbd>. This
10205   dialog lets you select which region you want on the top <dfn>layer</dfn>. See 
10206   <a href="manual/region_layering">Adjusting Region Layering</a> for more details.
10207 </p>
10208 <p>
10209   Below these items is the rest of the 
10210   <a href="/working-with-tracks/track-context-menu">Track Context Menu</a>, which 
10211   provides access to <dfn>track-level operations</dfn>. To see the contents
10212   of the region context menu, select the region name or "Selected Regions", and 
10213   the following submenu structure appears:
10214 </p>
10215 <dl class="narrower-table">
10216   <dt>Play</dt>
10217   <dd></dd>
10218   <dt>Loop</dt>
10219   <dd></dd>
10220   <dt>Properties</dt>
10221   <dd></dd>
10222   <dt>Rename</dt>
10223   <dd></dd>
10224   <dt>Edit</dt>
10225   <dd>
10226     <dl class="wide-table">
10227       <dt>Combine</dt>
10228       <dd></dd>
10229       <dt>Uncombine</dt>
10230       <dd></dd>
10231       <dt>Split</dt>
10232       <dd></dd>
10233       <dt>Make Mono Regions</dt>
10234       <dd></dd>
10235       <dt>Opaque</dt>
10236       <dd></dd>
10237       <dt>Mute</dt>
10238       <dd></dd>
10239       <dt>Pitch Shift</dt>
10240       <dd></dd>
10241       <dt>Reverse</dt>
10242       <dd></dd>
10243       <dt>Close Gaps</dt>
10244       <dd></dd>
10245       <dt>Place Transients</dt>
10246       <dd></dd>
10247       <dt>Rhythm Ferret</dt>
10248       <dd></dd>
10249       <dt>Strip Silence</dt>
10250       <dd></dd>
10251     </dl>
10252   </dd>
10253   <dt>Position</dt>
10254   <dd>
10255     <dl class="wide-table">
10256       <dt>Move To Original Position</dt>
10257       <dd></dd>
10258       <dt>Lock</dt>
10259       <dd></dd>
10260       <dt>Glue to Bars and Beats</dt>
10261       <dd></dd>
10262       <dt>Snap Position to Grid</dt>
10263       <dd></dd>
10264       <dt>Set Sync Position</dt>
10265       <dd></dd>
10266       <dt>Remove Sync</dt>
10267       <dd></dd>
10268 <dt>Nudge Later</dt>
10269 <dd></dd>
10270 <dt>Nudge Earlier</dt>
10271 <dd></dd>
10272 <dt>Nudge Later by capture offset</dt>
10273 <dd></dd>
10274 <dt>Nudge Earlier by capture offset</dt>
10275 <dd></dd>
10276 </dl>
10277 </dd>
10278 <dt>Trim</dt>
10279 <dd>
10280 <dl class="wide-table">
10281 <dt>Trim Start at Edit Point</dt>
10282 <dd></dd>
10283 <dt>Trim End at Edit Point</dt>
10284 <dd></dd>
10285 <dt>Trim to Loop</dt>
10286 <dd></dd>
10287 <dt>Trim to Punch</dt>
10288 <dd></dd>
10289 <dt>Trim to Previous</dt>
10290 <dd></dd>
10291 <dt>Trim to Next</dt>
10292 <dd></dd>
10293 </dl>
10294 </dd>
10295 <dt>Layering</dt>
10296 <dd>
10297 <dl class="wide-table">
10298 <dt>Raise to Top</dt>
10299 <dd></dd>
10300 <dt>Raise</dt>
10301 <dd></dd>
10302 <dt>Lower</dt>
10303 <dd></dd>
10304 <dt>Lower to Bottom</dt>
10305 <dd></dd>
10306 </dl>
10307 </dd>
10308 <dt>Ranges</dt>
10309 <dd>
10310 <dl class="wide-table">
10311 <dt>Set Loop Range</dt>
10312 <dd></dd>
10313 <dt>Set Punch Range</dt>
10314 <dd></dd>
10315 <dt>Add Single Range Marker</dt>
10316 <dd></dd>
10317 <dt>Add Range Marker per Region</dt>
10318 <dd></dd>
10319 <dt>Set Range Selection</dt>
10320 <dd></dd>
10321 </dl>
10322 </dd>
10323 <dt>Gain</dt>
10324 <dd>
10325 <dl class="wide-table">
10326 <dt>Normalize</dt>
10327 <dd></dd>
10328 <dt>Boost</dt>
10329 <dd></dd>
10330 <dt>Cut</dt>
10331 <dd></dd>
10332 <dt>Reset Envelope</dt>
10333 <dd></dd>
10334 <dt>Envelope Active</dt>
10335 <dd></dd>
10336 </dl>
10337 </dd>
10338 <dt>Fades</dt>
10339 <dd>
10340 <dl class="wide-table">
10341 <dt>Fade In</dt>
10342 <dd></dd>
10343 <dt>Fade Out</dt>
10344 <dd></dd>
10345 <dt>Fades        </dt>
10346 <dd></dd>
10347 </dl>
10348 </dd>
10349 <dt>Duplicate</dt>
10350 <dd>
10351 <dl class="wide-table">
10352 <dt>Duplicate</dt>
10353 <dd></dd>
10354 <dt>Multi-Duplicate</dt>
10355 <dd></dd>
10356 <dt>Fill Track</dt>
10357 <dd></dd>
10358 </dl>
10359 </dd>
10360 <dt>Export</dt>
10361 <dd></dd>
10362 <dt>Bounce (without processing)</dt>
10363 <dd></dd>
10364 <dt>Bounce (with processing)</dt>
10365 <dd></dd>
10366 <dt>Spectral Analysis</dt>
10367 <dd></dd>
10368 <dt>Remove</dt>
10369 <dd></dd>
10370 </dl>
10371
10372 ---
10373 title: Common Region Edit Operations
10374 menu_title: Region Editing
10375 part: subchapter
10376 ---
10377
10378 <p>
10379   This section covers a set of <dfn>region editing operations</dfn>
10380   that you are likely to use often while working on a session. 
10381   Depending on your work habits (and experience of other 
10382   <abbr title="Digital Audio Workstation">DAW</abbr>s) you will find 
10383   some of these operations critical while others are used only rarely. 
10384 </p>
10385
10386 <p>
10387   You can carry out all of these operations from the keyboard (see 
10388   <a href="/default-keyboard-bindings">Default Keyboard Shortcuts</a> 
10389   for a list). Equivalent operations can be performed with the mouse 
10390   in most cases. 
10391 </p>
10392
10393 <p>
10394   You may want to review your understanding of 
10395   <a href="/editing-and-arranging/edit-point">the edit point/range</a> and 
10396   <a href="/editing-and-arranging/which-regions-are-affected">which regions will be affected by region operations</a>.
10397 </p>
10398
10399 <dl class="wide-table">
10400 <dt><kbd class="menu">Spot (Align)</kbd></dt>
10401 <dd>Move selected regions to the edit point.</dd>
10402 <dt><kbd class="menu">Split</kbd></dt>
10403 <dd>Split selected regions at the edit point.</dd>
10404 <dt><kbd class="menu">Trim Start</kbd></dt>
10405 <dd>Adjust the start of selected regions to the edit point (or as close as
10406 possible).</dd>
10407 <dt><kbd class="menu">Trim End</kbd></dt>
10408 <dd>Adjust the end of selected regions to the edit point (or as close as
10409 possible).</dd>
10410 <dt><kbd class="menu">Duplicate</kbd></dt>
10411 <dd>Make a copy of each selected region and position it immediately after the
10412 original.</dd>
10413 <dt><kbd class="menu">Crop</kbd></dt>
10414 <dd>Truncate selected regions to the edit range.</dd>
10415 <dt><kbd class="menu">Separate</kbd></dt>
10416 <dd>Split selected regions at both ends of the edit range.</dd>
10417 <dt><kbd class="menu">Set Fade In</kbd></dt>
10418 <dd>Adjust selected audio regions' fade in to end at the edit point.</dd>
10419 <dt><kbd class="menu">Set Fade Out</kbd></dt>
10420 <dd>Adjust selected audio regions' fade out to end at the edit point.</dd>
10421 <dt><kbd class="menu">Toggle Fade In</kbd></dt>
10422 <dd>Turn selected audio regions' fade in on or off.</dd>
10423 <dt><kbd class="menu">Toggle Fade Out</kbd></dt>
10424 <dd>Turn selected audio regions' fade out on or off.</dd>
10425 <dt><kbd class="menu">Play Region</kbd></dt>
10426 <dd>Play session from the start of the earliest selected region.</dd>
10427 <dt><kbd class="menu">Zoom To Region</kbd></dt>
10428 <dd>Zoom horizontally so that the selected regions span the editor track
10429 view.</dd>
10430 <dt><kbd class="menu">Set Sync Point</kbd></dt>
10431 <dd>Set the sync point of all selected regions to the edit point.</dd>
10432 <dt><kbd class="menu">Insert</kbd></dt>
10433 <dd>Inserts the currently selected regions in the Region List at the edit
10434 point.</dd>
10435 </dl>
10436
10437 ---
10438 title: Copy Regions
10439 part: subchapter
10440 ---
10441
10442 <h2>Copy a Single Region</h2>
10443
10444 <p>
10445   To copy a region, make sure you are in object mouse mode. Move the mouse 
10446   pointer into the region and <kbd class="mouse mod1">left</kbd>-drag. Ardour 
10447   creates a new region and follows the mouse pointer as it moves. See 
10448   <a href="/editing-and-arranging/move-regions/">Move Regions</a> for more 
10449   details on moving the copied region.
10450 </p>
10451
10452 <h2>Copy Multiple Regions</h2>
10453
10454 <p>
10455   To copy multiple regions, select them before copying. Then 
10456   <kbd class="mouse mod1">left</kbd>-drag one of the selected regions. All the 
10457   regions will be copied and as they move. The copied regions will keep their 
10458   positions relative to each other.
10459 </p>
10460
10461 <h2>Fixed-Time Copying</h2>
10462
10463 <p>
10464   If you want to copy region(s) to other track(s) but keep the copies at the 
10465   exact position on the timeline as the originals, simply use 
10466   <kbd class="mouse mod1">Middle</kbd>-drag instead.
10467 </p>
10468   
10469 ---
10470 title: Move Regions
10471 part: subchapter
10472 ---
10473
10474 <p class="fixme">Add images</p>
10475
10476 <p>
10477   Ardour has a global <dfn>edit mode</dfn> selector at the left of the
10478   Editing toolbar, which affect how regions are moved or copied:
10479 </p>
10480
10481 <dl>
10482   <dt><kbd class="menu">Slide</kbd></dt>
10483   <dd>Regions move freely. Ardour creates overlaps when necessary.</dd>
10484   <dt><kbd class="menu">Lock</kbd></dt>
10485   <dd>No region motion is permitted (except for "nudge").</dd>
10486   <dt><kbd class="menu">Ripple</kbd></dt>
10487   <dd>The effect of an edit is reflected in the regions to the "right" of the edit</dd>
10488 </dl>
10489
10490 <h2>More details about Ripple</h2>
10491
10492 <p>
10493   Ripple Edit mode provides the following conveniences:
10494   <ul>
10495     <li> Deleting a range will move later regions to compensate for the deleted time </li>
10496     <li> Deleting a region will move later regions to compensate for the deleted region's length </li>
10497     <li> Moving a region will move later regions to compensate for the length of the move</li>
10498     <li> Inserting a new region (via dragging or via Paste) will move later regions to the right to compensate</li>
10499   </ul>
10500 </p>
10501
10502 <p class="note">
10503   If <kbd class="menu">Snap To Grid</kbd> is enabled, then regions can 
10504   only move so that they align with locations determined by the current 
10505   snap settings (beats, or seconds, or other region boundaries, etc). 
10506   See <a href="/editing-and-arranging/snap-to-the-grid">Snap To the Grid</a> 
10507   for details.
10508 </p>
10509   
10510 ---
10511 title: Move Regions With the Mouse
10512 part: subchapter
10513 ---
10514
10515 <p>
10516   To move or copy a region, make sure you are in object mode. If you are 
10517   using smart mode, the pointer must be in the lower half of the region 
10518   to begin a move or copy operation.
10519 </p>
10520
10521 <p>
10522   Move the pointer into the region, use a <kbd class="mouse">Left</kbd>-drag. 
10523   The region will follow the pointer as you move it around. By default, 
10524   the region can move freely along the timeline. 
10525 </p>
10526
10527 <p>
10528   To move a region from one track to another, simply start a move as 
10529   described above, but move the pointer into the desired track. The 
10530   region will follow the pointer. Note that if you have other kinds of 
10531   tracks visible, the region will remain where it is as the pointer 
10532   moves across them, and will then jump to the new track. This serves as 
10533   a visual reminder that you cannot drag an audio region into an automation 
10534   track or a bus, for example.
10535 </p>
10536
10537 <h2>Move Multiple Regions</h2>
10538
10539 <p>
10540   To move multiple regions, select them before moving. Then 
10541   <kbd class="mouse">Left</kbd>-drag one of the selected regions. All the 
10542   regions will move, keeping their positions relative to each other.
10543 </p>
10544
10545 <h2>Fixed-Time Motion</h2>
10546
10547 <p>
10548   Sometimes, you want to move a region to another track, but keeping its 
10549   position along the timeline exactly the same. To do this, use 
10550   <kbd class="mouse">Middle</kbd>-drag instead.
10551 </p>
10552   
10553 ---
10554 title: Align (Spot) Regions
10555 part: subchapter
10556 ---
10557
10558 <p>
10559   Aligning regions (sometimes called "spotting") means moving one or more 
10560   regions based on a defined location, which in Ardour is always the 
10561   <a href="/editing-and-arranging/edit-point">edit point</a>. An 
10562   alignment operation moves the region(s) so that some part of the region 
10563   is positioned at the edit point. Available alignment commands include:
10564 </p>
10565
10566 <dl class="wide-table">
10567   <dt>Align Region starts <kbd class="mod14">a</kbd></dt>
10568   <dd>Selected region(s) are moved so that their start is located at the current edit point</dd>
10569   <dt>Align Region ends <kbd class="mod2">a</kbd></dt>
10570   <dd>Selected region(s) are moved so that the end is located at the current edit point</dd>
10571   <dt>Align Region sync points <kbd>Shift-a</kbd></dt>
10572   <dd>Selected region(s) are moved so that their sync point is located at the current edit point</dd>
10573   <dt>Align Region starts relative <kbd class="mod4">a</kbd></dt>
10574   <dd>Selected region(s) are moved so that the start of the earliest region is located at the current edit point, and all others maintain their relative position relative to that region</dd>
10575 </dl>
10576
10577
10578 ---
10579 title: Edit Mode and Tools
10580 part: chapter
10581 ---
10582
10583
10584 ---
10585 title: Edit Point
10586 part: subchapter
10587 ---
10588
10589 <p>
10590   Editing operations in a Digital Audio Workstation like Ardour can be broken 
10591   down according to how many points on the timeline are required to carry the 
10592   operation out. Splitting a region for example, requires just one position 
10593   on the timeline (the one where the split will happen). Cutting out a time 
10594   range requires two positions, one for the start of the cut and one for the end. 
10595 </p>
10596
10597 <p>
10598   In Ardour the <dfn>edit point</dfn> is the location where most single-point 
10599   editing operations take place. It can be set to either of the following:
10600 </p>
10601
10602 <ul>
10603   <li>the <dfn>playhead</dfn></li>
10604   <li>the position of the <dfn>pointer</dfn> (mouse or touch)</li>
10605   <li>the selected (or "active") <dfn>marker</dfn></li>
10606 </ul>
10607
10608 <p>
10609   The default edit point is the location of the pointer.
10610 </p>
10611
10612 <p>
10613   There are 2 keybindings available to cycle through the edit point options. 
10614   The most common workflow tends to involve switching back and forth between 
10615   the playhead and mouse as the edit point. Press the grave accent key 
10616   <kbd>`</kbd> to switch between these two. Use <kbd class="mod1">`</kbd> to 
10617   cycle through all three choices (including the selected marker).  You can 
10618   also switch the edit point using a combo-selector just right of the snap/grid 
10619   unit selector.
10620 </p>
10621
10622 <p class="fixme">Add images</p>
10623
10624 ---
10625 title: Which Regions Are Affected?
10626 menu_title: Affected Regions
10627 part: subchapter
10628 ---
10629
10630 <p>
10631   This section explains the rules used to decide which regions are affected
10632   by editing operations. You don't really have to understand them&mdash;hopefully
10633   things will Just Work&trade;&mdash;but it may be useful eventually to understand the rules.
10634 </p>
10635
10636 <p>
10637   Editing operations in Ardour either operate on a single point in time 
10638   (<kbd class="menu">Split</kbd> being the obvious example) or on two 
10639   points (which can also be considered to be a range of sorts); <kbd
10640   class="menu">Separate</kbd> is a good example of this.
10641 </p>
10642
10643 <p> 
10644   Most operations will operate on the currently selected region(s), but if 
10645   no regions are selected, the region that the mouse is in will be used 
10646   instead. Single-point operations will generally pick a set of regions to 
10647   use based on the following rules:
10648 </p>
10649
10650 <ul>
10651   <li> If the edit point is 'mouse', then
10652     <ul>
10653      <li>if the mouse is over a selected region, or no region, use all selected
10654      regions, or</li>
10655      <li>if the mouse is over an unselected region, use just that region.</li>
10656     </ul>
10657   </li>
10658   <li> For all other edit points
10659     <ul>
10660       <li>
10661         use the selected regions <em>and</em> those that are both
10662         under the edit position <em>and</em> on a selected track, 
10663         or on a track which is in the same active edit-enabled route group
10664         as a selected region.
10665       </li>
10666     </ul>
10667   </li>
10668 </ul>
10669
10670 <p>
10671   The rationale here for the two different rules is that the mouse edit point 
10672   is special in that its position indicates both a time and a track; the other 
10673   edit points (Playhead, Marker) indicate a time only.
10674 </p>
10675
10676 ---
10677 title: Snap to the Grid
10678 menu_title: Snap to Grid
10679 part: subchapter
10680 ---
10681
10682 <p class="fixme">Get rid of all the &lt;br&gt;s, they look like shit</p>
10683
10684 <p>
10685   Ardour's editor utilizes a <dfn>grid</dfn> to assist in the placement 
10686   of regions on the timeline, or with editing functions that need to happen 
10687   at a specific point in time.  You can choose if you want the cursor and 
10688   various objects to snap to this grid, and how you want the snapping to 
10689   behave. You can modify the grid units to fit your needs.
10690 </p>
10691
10692 <h2>About Snapping</h2>
10693
10694 <p>There are two ways to think about aligning material to a grid.
10695   The first and most obvious one is where an object\'s position is clamped
10696   to grid lines. In Ardour, this is called <dfn>absolute snap</dfn>
10697   and is commonly used when working with sampled material where audio
10698   begins exactly at the beginning of a file, note or region.</br>
10699   The second, <dfn>relative snap</dfn>, is used when an object's position
10700   relative to the grid lines is important. In music, this allows you to
10701   move objects around without changing the "feel" (or timing) of a performance.</br>
10702   Absolute snap is the default method of snapping in Ardour.</br>
10703   While dragging objects you may switch from absolute to relative snap by
10704   pressing the absolute snap modifier key(s).</br>
10705   You may also disable snap entirely by using the snap modifier (see below).</br>
10706   Note that in relative snap mode the reference point is taken to be the distance
10707   to the nearest grid line.</br>
10708   Note also that when an object lies exactly on a grid line, there will be no difference
10709   between relative and absolute snap modes.</br>
10710   The realtive snap and snap modifiers (along with other modifier keys) may be set in
10711   <kbd class="menu">Edit &gt; Preferences &gt; User Interaction</kbd></br>
10712   For common use patterns, it is recommended that you assign a unique key for
10713   one snap modifier and two keys for the other in such a way that they share an otherwise unused key.
10714   For example, you may choose the snap modifier to be the <kbd class="mod2">&nbsp;</kbd> key and the
10715   relative snap modifier to be the <kbd class="mod2">&nbsp;</kbd> and <kbd class="mod4">&nbsp;</kbd> keys.
10716 </p>.
10717
10718 <h2>Snap Modes</h2>
10719 <p>
10720   Using the above modifications, Ardour supports three different modes of snapping to the grid:
10721 </p>
10722
10723 <dl class="wide-table">
10724   <dt><kbd class="menu">No Grid</kbd></dt>
10725   <dd>disables the grid. All objects move freely in this mode.</br>
10726   In <kbd class="menu">No Grid</kbd> mode, you may temporarily activate the grid by pressing the
10727   snap modifier (for absolute snap) or switch to relative snap by pressing the relative snap modifier.</dd>
10728   <dt><kbd class="menu">Grid</kbd></dt> 
10729   <dd>activates normal snapping. All positions of objects snap to
10730   the grid. (See <a href="#gridunits">Grid Units</a> below
10731   to change the grid). If you try to move an object in "Grid"-mode, it 
10732   does not change its position until you move the mouse far enough for the 
10733   object to reach the next grid line.</br>
10734   Sometimes you may wish to maintain an objects' position relative to the grid line.
10735   In order to do this, use the "snap relative" modifier.
10736   When holding down this modifier during a drag, the dragged object will jump
10737   while maintaining its original distance from the line.</br>
10738   New objects will always be created at grid points.</br>
10739   Holding down the snap modifier will disable the current grid setting and allow you to move the object freely.</br>
10740   </dd>
10741   <dt><kbd class="menu">Magnetic</kbd></dt>
10742   <dd>is a less strict type of snapping. Objects can still be moved to any 
10743   position, but positions close to the relative or absolute grid points will snap.
10744   In order to move an object very close to a snap point, it may be necessary
10745   to zoom in to prevent snapping to that point, or to use the snap modifier to disable snap completely.</br>
10746   As with Grid mode, the snap modifier will disable snap completely while the
10747   absolute snap modifier will move the "notch" of Magnetic snap to the grid lines.</dd>
10748 </dl>
10749
10750 <h2>Syncing Regions to the Grid</h2>
10751 <p>
10752   By default, a region's beginning will be used as the reference for both types of snapping,
10753   but you can change this behaviour by setting a <dfn>sync point</dfn> in
10754   the region. Select the region(s) and press <kbd>V</kbd>. This will set 
10755   the sync point to your edit point.</p>
10756
10757 <h2 id="gridunits">Grid Units</h2>
10758 <p>
10759   The selector next to the grid mode selector defines the size of the grid 
10760   elements. You can set your grid to several different units:
10761 </p>
10762 <dl class="wide-table">
10763   <dt><kbd class="menu">CD Frames</kbd></dt>
10764   <dd>A CD Frame is 1/75th of a second. Snapping to CD Frames (using absolute snap) can be used to avoid issues with CD track
10765   lengths.</dd>
10766   <dt><kbd class="menu">Timecode Frames/Seconds/Minutes</kbd></dt>
10767   <dd>The duration of a frame depends on the timecode settings for the
10768   session.</dd>
10769   <dt><kbd class="menu">Seconds/Minutes</kbd></dt>
10770   <dd>These are absolute time units, unaffected by sample rate or timecode settings</dd>
10771   <dt><kbd class="menu">Beats/N</kbd></dt>
10772   <dd>Set the grid to units of 1/N beats, where N can be 128, 64, 32, 16, 8, 7, 6, 5, 4, 3, 2. The duration of a grid unit will depend on the tempo and meter in effect at that point in the timeline.</dd>
10773   <dt><kbd class="menu">Beats</kbd></dt>
10774   <dd>Set the grid to whole beats. The duration of a grid unit will depend on the tempo and meter in effect at that point in the timeline.</dd>
10775   <dt><kbd class="menu">Bars</kbd></dt>
10776   <dd>Set the grid to whole bars. The duration of a grid unit will depend on the tempo and meter in effect at that point in the timeline.</dd>
10777   <dt><kbd class="menu">Markers</kbd></dt>
10778   <dd>The grid lines are the markers.</dd>
10779   <dt><kbd class="menu">Region Starts</kbd></dt>
10780   <dd>The grid lines are constructed from region start points (see below).</dd>
10781   <dt><kbd class="menu">Region Ends</kbd></dt>
10782   <dd>The grid lines are constructed from region end points (see below).</dd>
10783   <dt><kbd class="menu">Region Syncs</kbd></dt> 
10784   <dd>The grid lines are constructed from region sync points.</dd>
10785   <dt><kbd class="menu">Region Bounds</kbd></dt>
10786   <dd>The grid lines are constructed from region start or end points.</dd>
10787 </dl>
10788
10789 <p>
10790   To use Region starts/ends/syncs/bounds as snap choices, you must have
10791 either
10792 </p>
10793
10794 <ul>
10795   <li><em>No</em> tracks selected, which means that Ardour snaps to regions on any track, or </li>
10796   <li>Several tracks selected, which means that Ardour only snaps to regions on those selected tracks.</li>
10797 </ul>
10798
10799 <p>
10800   If you are moving items on a track, and only the current track is selected, 
10801   then you will only be able to snap to other regions on the same track.  
10802   This means that enabling 
10803   <kbd class="menu">Edit &gt; Preferences &gt; Editor &gt; Link Selections of Regions and
10804   Tracks</kbd> will make the "Region" grid unit unusable.  Avoid the use of this option if 
10805   you are going to use any of the Region grid units.
10806 </p>  
10807
10808
10809 ---
10810 title: Making Selections
10811 part: chapter
10812 ---
10813
10814
10815 ---
10816 title: Select Regions
10817 part: subchapter
10818 ---
10819
10820 <p class="fixme">Remove all "you" references FFS</p>
10821
10822 <p>
10823   Many editing operations in Ardour require you to first <dfn>select one or more 
10824   regions</dfn> that you want to change in some way. You can select a single region, 
10825   or multiple regions, including regions in different tracks. When you select 
10826   a region, it will appear in a darker color than unselected regions.
10827 </p>
10828
10829 <p>
10830   Note that if a track is a member of a group that is active and has the
10831   <kbd class="option">Select</kbd> property enabled, then Ardour will attempt to 
10832   match whatever selections you make in one track across every other track of the 
10833   group. See 
10834   <a href="/working-with-regions/corresponding-regions-selection/">Corresponding
10835   Regions Selection</a> for more information on precisely how selections will be 
10836   propagated to other tracks.
10837 </p>
10838
10839 <h2>Region Selection and Track Selection</h2>
10840
10841 <p>
10842   Please read 
10843   <a href="/working-with-tracks/selecting-tracks/region-and-track-selection">Region &amp; Track Selection</a> 
10844   for more information on how selecting regions and selecting tracks interact.
10845 </p>
10846
10847 <p class="fixme">Broken link</p>
10848
10849 <h2>Select a Region</h2>
10850
10851 <p>
10852   Confirm that you are using the 
10853   <a href="/ardours-interface/introducing-the-editor-window/the-editing-toolbar/#object">Object tool</a>, 
10854   then click on a region to select it. If 
10855   <a href="/ardours-interface/introducing-the-editor-window/the-editing-toolbar/#smartmode">smart mode</a> 
10856   is enabled, click in the lower half of the region.
10857 </p>
10858
10859 <h2>Deselect a Region</h2>
10860
10861 <p>
10862   Confirm you are using the 
10863   <a href="/ardours-interface/introducing-the-editor-window/the-editing-toolbar/#object">Object tool</a>, 
10864   then <kbd class="mouse mod1">Left</kbd>-click the region. If 
10865   <a href="/ardours-interface/introducing-the-editor-window/the-editing-toolbar/#smartmode">smart mode</a> 
10866   is enabled, click in the lower half of the region. 
10867 </p>
10868
10869 <p>
10870   Note that a <kbd class="mouse mod1">left</kbd> click simply toggles the 
10871   selected status of an object, so it can be used to select unselected regions
10872   too.
10873 </p>
10874
10875 <h2>Select Multiple Regions in a Track</h2>
10876
10877 <p>Do one of the following:</p>
10878
10879 <ul>
10880   <li><kbd class="mouse mod1">Left</kbd>-click each region, or</li>
10881   <li>
10882     drag a rubberband box from an empty point in a track before the first 
10883     region you wish to select to a point within or after the last region 
10884     you wish to select (you can <kbd class="mouse mod1">left</kbd>-drag to do this 
10885     multiple times), or,
10886   </li>
10887   <li>
10888     if the regions are all adjacent to one another, click the first region 
10889     you wish to select, then <kbd class="mouse mod3">Left</kbd>-click the last 
10890     region you wish to select.
10891   </li>
10892 </ul>
10893
10894 <h2>Select All Regions in a Track</h2>
10895
10896 <p>
10897   Context-click the track, and in the context menu, navigate to 
10898   <kbd class="menu">Select &gt; Select All In Track</menu>.
10899 </p>
10900
10901 <p>
10902   See the <a href="/working-with-tracks/the-track-context-menu">Track Context Menu</a> 
10903   for more information on other per-track selection operations that are available.
10904 </p>
10905
10906 <p class="fixme">Broken link</p>
10907
10908 <h2>Select Multiple Regions Across Different Tracks</h2>
10909
10910 <p>
10911   <kbd class="mouse mod1">Left</kbd>-click or <kbd class="mouse
10912   mod3">Left</kbd>-click the regions you wish to select.
10913 </p>
10914
10915 <h2>Select a Region From the Region List</h2>
10916
10917 <p>
10918   Click the name of the region in the 
10919   <a href="/ardours-interface/introducing-the-editor-window/editor-lists/region-list/">Region List</a>. 
10920   Note that this will do nothing for whole-file regions, since they do not exist 
10921   anywhere in a playlist or track.
10922 </p>
10923
10924
10925 ---
10926 title: Editing Clips and Selections
10927 part: chapter
10928 ---
10929
10930 ---
10931 title: Trimming Regions
10932 part: subchapter
10933 ---
10934
10935 <p class="fixme">Add images, description of mouse cursor changes that signal this type of editing</p>
10936
10937 <p>
10938   Changing the <dfn>length</dfn> of a region is a very common editing 
10939   operation, often known as <dfn>trimming</dfn>. There are several ways 
10940   to accomplish this with Ardour, and some very useful specialized trimming 
10941   operations.
10942 </p>
10943
10944 <h2>Drag-Trimming With the Mouse</h2>
10945
10946 <p>
10947   In object mode, move the pointer near the beginning or end of the region. 
10948   The cursor will change to indicate that trimming is possible, and you then 
10949   <kbd class="mouse">Left</kbd>-drag the edge of the region. 
10950 </p>
10951
10952 <p>
10953   Trimming will obey <a href="/editing-and-arranging/snap-to-the-grid/">Snap settings</a>.
10954 </p>
10955
10956 <h2>Click Trimming With the Mouse</h2>
10957
10958 <p>
10959   <kbd class="mouse">Left</kbd>-click in the colored bar at the bottom of a region. 
10960   If you are nearer to the start of a region, this will trim the start time to the 
10961   position of the pointer. If you are nearer to the end of a region, it will trim the 
10962   end time.
10963 </p>
10964
10965 <h2>Keyboard Shortcuts for Trimming</h2>
10966 <p>
10967   There are several commands for region trimming. Some use the 
10968   <a href="/editing-and-arranging/edit-point">edit point</a> to determine where 
10969   to trim to. Some are not bound to any keys by default (but could be via the 
10970   Keybindings Editor).
10971 </p>
10972
10973 <dl class="wide-table">
10974   <dt><kbd class="menu">Region/trim-front</kbd> <kbd>j</kbd></dt>
10975   <dd>Trim selected region(s) start to edit point.</dd>
10976   <dt><kbd class="menu">Region/trim-end</kbd> <kbd>k</kbd></dt>
10977   <dd>Trim selected region(s) end to edit point.</dd>
10978 </dl>
10979
10980 <h2 id="trimtonextprevious">Trim to Next/Previous Region</h2>
10981
10982 <p>
10983   Sometimes you just want to extend the start or end of region so that it reaches 
10984   the end or start of an adjacent region. There is now an operation accessible 
10985   from the region context menu, under <kbd class="menu">Edit &gt;Trim &gt; Trim to
10986   Next</kbd> or <kbd class="menu">Edit &gt; Trim &gt; Trim to Previous</kbd>. This 
10987   will extend the selected regions so they directly adjoin their neighbours, unless 
10988   their source files are not long enough, in which case they will be extended to the 
10989   maximum possible. Trim to Next will extend the end of the selected regions to the 
10990   start of the next region; Trim to Previous will extend the start of the selected 
10991   regions to the end of the previous region.
10992 </p>
10993
10994 <dl class="wide-table">
10995   <dt><kbd class="menu">Region/trim-to-previous-region</kbd> <kbd class="mod1">j</kbd></dt>
10996   <dd>Trim the start of selected region(s) to the end of the previous
10997   region.</dd>
10998   <dt><kbd class="menu">Region/trim-to-next-region</kbd> <kbd class="mod1">k</kbd></dt>
10999   <dd>Trim the end of selected region(s) to the start of the following
11000   region.</dd>
11001 </dl>
11002
11003 <h2>Other Possible Commands for Trimming</h2>
11004
11005 <p>
11006   These are not bound to any keys by default, but could be via the Keybindings 
11007   Editor. They can also be sent via OSC or other control protocols.
11008 </p>
11009
11010 <dl class="wide-table">
11011   <dt><kbd class="menu">Region/trim-region-to-loop</kbd></dt>
11012   <dd>Trim region to match the current loop range.</dd>
11013   <dt><kbd class="menu">Region/trim-region-to-punch</kbd></dt>
11014   <dd>Trim region to match the current punch range.</dd>
11015 </dl>
11016
11017 ---
11018 title: Push/Pull Trimming
11019 part: subchapter
11020 ---
11021
11022 <p>
11023   Normally, when you trim regions by dragging with the mouse, it affects 
11024   only the selected regions. Their lengths are directly affected by the 
11025   trim operation, but nothing else is. Sometimes though, you might like 
11026   to trim a region that directly adjoins another, and keep this relationship
11027   the same&mdash;you are not trying to make one of the regions extend 
11028   over the other&mdash;you would like the junction to move in one 
11029   direction or the other as part of the trim. This requires trimming both 
11030   regions on either side of the junction, in opposite directions. 
11031   <dfn>Push/Pull trim</dfn>, activated by pressing shift key before 
11032   starting the drag, will do just that. Here's a few pictures to show the 
11033   difference in the results of a normal trim and push/pull trim. First, 
11034   the initial situation:
11035 </p>
11036
11037 <p class="center"><img src="/images/a3_before_trim.png" alt="region arrangement before trim" /></p>
11038
11039 <p>
11040   Here is what happens after we trim the right hand (selected) region by 
11041   dragging its starting position earlier:
11042 </p>
11043
11044 <p class="center"><img src="/images/a3_after_trim.png" alt="region arrangement after a trim" /></p>
11045
11046 <p>
11047   You can see that it now overlaps the earlier region and a crossfade has 
11048   been created between them.
11049 </p>
11050
11051 <p>
11052   Lets look now at what happens if we do the same trim, but <kbd
11053   class="mouse mod3">Left</kbd>-dragging to turn it into a push-pull trim instead:
11054 </p>
11055
11056 <p class="center"><img src="/images/a3_after_push_trim.png" alt="region arrangement after a push trim" /></p>
11057
11058 <p>
11059   There is no overlap, and the end of the earlier region has been moved 
11060   along with the start of the later region, so that they still directly 
11061   adjoin each other.
11062 </p>
11063
11064 ---
11065 title: Separate Under
11066 part: subchapter
11067 ---
11068
11069 <p>
11070   You may have a situation where you have positioned one region over another, 
11071   and you just want to cut the lower region so that it directly adjoins both 
11072   ends of the overlapping one, with no overlaps. To do this, select the upper 
11073   region, then choose <kbd class="menu">Edit &gt; Separate &gt; Separate
11074   Under</kbd>. This will split the lower region so that it no longer overlaps 
11075   the upper region at all.
11076 </p>
11077
11078 <p>
11079   Here is an example where we start with a short region placed so that it 
11080   overlaps a longer region:
11081 </p>
11082
11083 <p class="center"><img src="/images/a3_before_separate_under.png" alt="region arrangement before separate under" /></p>
11084
11085 <p>
11086   When we perform the <dfn>Separate Under</dfn> edit, the lower region splits 
11087   in two, with boundaries exactly positioned at the edges of the upper region:
11088 </p>
11089
11090 <p class="center"><img src="/images/a3_after_separate_under.png" alt="region arrangement after separate under" /></p>
11091
11092 <p>
11093   If the upper region covers only one end of the lower region, then this 
11094   operation is equivalent to 
11095   <a href="/editing-and-arranging/change-region-lengths/#trimtonextprevious">Trim to Next/Previous Region</a>, depending on which end is covered.
11096 </p>
11097
11098 ---
11099 title: Separate Range
11100 part: subchapter
11101 ---
11102
11103 <p class="fixme">Add example with images; 1p &ge; 1,000w</p>
11104
11105 <p>
11106   A final new editing feature is an operation in the context menu of a 
11107   range labeled <kbd class="menu">Separate Regions Under Range</kbd>. 
11108   This splits any selected regions that are covered by the range at both 
11109   ends of the range (or just one, if the range only covers part of the 
11110   region). This makes it easy to generate regions that correspond 
11111   precisely to a range.
11112 </p>
11113   
11114 ---
11115 title: Strip Silence from Audio Regions
11116 menu_title: Stripping Silence
11117 part: subchapter
11118 ---
11119
11120 <p>
11121   From the region context menu, choose <kbd class="menu">Edit &gt; Strip
11122   Silence</kbd> to detect silence (based on a user-chosen threshold in 
11123   <abbr title="Decibels relative to Full Scale">dBFS</abbr>), split a 
11124   region based on the boundaries of the silent segments, and remove the 
11125   silence. You can also specify a minimum length for silence&mdash;useful
11126   when editing very percussive material and just needing to automatically trim
11127   the ends of a region. The dialog looks like this:
11128 </p>
11129
11130 <p class="center">
11131   <img src="/images/a3_strip_silence.png" alt="strip silence dialog" />
11132 </p>
11133
11134 <p>
11135   The edit applies to all selected regions, allowing batch processing. 
11136   You can also see in the screenshot how the main editor window is used 
11137   to show silent segments and report the number and durations of the 
11138   shortest segments.
11139 </p>
11140
11141
11142 ---
11143 title: Fades and Crossfades
11144 part: chapter
11145 ---
11146
11147
11148 ---
11149 title: Create Region Fades and Crossfades
11150 part: subchapter
11151 ---
11152
11153 <p class="fixme">Add images--an image is worth more than 1,000 words</p>
11154
11155 <p>
11156   Every Region has a fade-in and fade-out. By default, the region fade 
11157   is very short, and serves to de-click the transitions at the start and 
11158   end of the region. By adjusting the regions fade length, a more 
11159   gradual transition can be accomplished.
11160 </p>
11161
11162 <h2>Region Fades</h2>
11163
11164 <p>
11165   <dfn>Region fades</dfn>  are possible at the beginning and end of
11166   all audio regions. In object mode, a grip appears at the top left and
11167   top right of an audio region when the cursor hovers over it. Placing
11168   the cursor over the top of the grip displays the region fade cursor
11169   tip. Click and drag the grip left or right in the timeline to 
11170   adjust the length of the fade.
11171 </p>
11172
11173 <h2>Crossfades</h2>
11174
11175 <p>
11176   <dfn>Crossfades</dfn> refer to the behavior when you want to make
11177   a smooth transition (mix) from one audio region to another on the same
11178   track. Historically, this was done by splicing 2 pieces of analog
11179   tape together, and this concept was carried forward into digital
11180   editing. Each track is a sequence of sound files (regions). If
11181   two regions are butted against each other, there needs to be a method
11182   to splice them smoothly together. The crossfade allows one region
11183   to fade smoothly out, while the next region fades smoothly in, like 2
11184   pieces of tape that have been cut at and angle, and overlapped.
11185 </p>
11186
11187 <p>
11188   But Ardour uses a more refined "layered" editing model, and
11189   therefore it is possible for multiple regions to be stacked on a single
11190   location with arbitrary overlaps between different layers. For
11191   this reason, crossfades must be implemented differently. We can't
11192   assume that a crossfade is an entitry that exists between 2 regions;
11193   instead each region must have its own associated crossfades at each
11194   end, and the topmost region must always crossfade down to the
11195   underlying region(s), if any.
11196 </p>
11197
11198 <p>
11199   Ardour solves this problem by putting a crossfade at the beginning
11200   and end of every region. The fades of the bottom-most region are
11201   first rendered, and then each region is rendered on top of the one
11202   below it, with fades at the end of each region providing a crossfade to
11203   the region(s) beneath it.
11204 </p>
11205
11206 <p>
11207   It is important to understand that region fades <em>are</em> crossfades. When one region has
11208   another region or multiple regions beneath its fade area, then you will
11209   hear the topmost region fade-out be mirrored as a fade-in on the
11210   underlying region(s). The grip for the topmost region will allow
11211   changing the length and type of the crossfade into the underlying
11212   region(s). In this way you can create a complicated series of
11213   crossfades, and then layer another region atop the others, and fade
11214   into <em>that</em> complicated series.
11215 </p>
11216 <p class="fixme">An image here would probably help.</p>
11217
11218 <p>
11219   If a region doesn't have any region(s) under it, then the region is
11220   crossfaded to silence; for convenience we call this a "fade"
11221   rather than a crossfade.
11222 </p>
11223
11224 <h2>Fade Shapes</h2>
11225 <p>
11226   To activate/deactivate or change the shape of a region's fade-in or
11227   fade-out, hover the cursor over the region fade grip till the cursor tip
11228   indicates region fade editing and context-click to bring up a context
11229   menu. In the context menu there is a list of options for the
11230   region fade. <kbd class="menu">Activate/Deactivate</kbd> enables and
11231   disables the region fade.
11232 </p>
11233
11234 <p>
11235   Because each fade is also a crossfade, it has an inverse fade shape
11236   for the audio beneath the fade. It is important to know how the
11237   shapes differ, and which are most suitable for various editing tasks.
11238 </p>
11239
11240 <p>
11241   The different types of fades are:
11242 </p>
11243
11244 <dl class="narrower-table">
11245   <dt><kbd class="menu">Linear</kbd></dt>
11246   <dd>A simple linear coefficient decrease, and its mathematical inverse. A Linear fade starts attentuating quickly and then cuts off even more abruptly at lower levels. When used as a crossfade, the signals are each -6dB attenuated at the midpoint. This is the correct crossfade to use with highly-correlated signals for a smooth transition.</dd>
11247   <dt><kbd class="menu">Constant Power</kbd></dt>
11248   <dd>The constant power curve starts fading slowly and then cuts off abruptly. When used as a crossfade between 2 audio regions, the signals are symetrically attenuated, and they each reach -3dB at the midpoint. This is the correct crossfade to use when you want to splice audio in the general (uncorrelated) case.</dd>
11249   <dt><kbd class="menu">Symmetric</kbd></dt>
11250   <dd>The Symmetric fade starts slowly, then attenuates significantly before transitioning to a slower fade-out near the end of the fade. When used as a crossfade, the Symmetric curve is not mathematically correct like the Equal Power or Linear curves, but it provides a slower fade-out at low volumes. This is sometimes useful when editing two entire works of music together so that the transition is more gradual.</dd>
11251   <dt><kbd class="menu">Fast</kbd></dt>
11252   <dd>The Fast curve is a linear decibel fade; It sounds like a perfectly smooth fader or knob moved to silence. This shape is excellent as a general-purpose fade-in. When used as a crossfade, the inverse fade curve maintains constant power but is therefore non-symmetric; so its use is limited to those cases where the user finds it appropriate.</dd>
11253   <dt><kbd class="menu">Slow</kbd></dt>
11254   <dd>The Slow curve is a modified linear decibel fade. The initial curve starts more gradually so that it has a less abrupt transition near unity. After that, it sounds like a perfectly smooth fader or knob moved to silence. This shape is excellent as a general-purpose fade-out. When used as a crossfade, the inverse fade curve maintains constant power but is therefore non-symmetric; so its use is limited to those cases where the user finds it appropriate.</dd>
11255 </dl>
11256
11257 <p>
11258   Although these fade shapes serve specific purposes, any of the shapes is usable in certain situations. The final decision is an artistic choice rather than a rigidly prescribed one.
11259 </p>
11260
11261 <p>
11262   These fade curves are developed to provide a range of common uses, and
11263   are developed with the least possible amount of changes in the "slope"
11264   of the line. This provides artifact-free crossfades. Some
11265   DAWs provide complicated fade editors with parametric "spline" controls
11266   of the fade curves. While it might be interesting to develop a
11267   fade curve with a faster cutoff, the mathematical difference between
11268   this and simply shortening the fade is vanishingly small; the
11269   amount of effort to shorten the fade is much easier than fooling around with a
11270   crossfade editor dialog.
11271 </p>
11272
11273
11274 ---
11275 title: Playlists
11276 part: chapter
11277 ---
11278
11279
11280 ---
11281 title: Understanding Playlists
11282 part: subchapter
11283 ---
11284
11285 <p>
11286   A <dfn>playlist</dfn> is a list of regions ordered in time. It defines 
11287   which parts of which source files should be played and when.  Playlists 
11288   are a fairly advanced topic, and can be safely ignored for many types 
11289   of audio production. However, the use of playlists allows the audio 
11290   engineer more flexibility for tasks like multiple takes of a single 
11291   instrument, alternate edits of a given recording, parallel effects such 
11292   as reverb or compression, and other tasks.
11293 </p>
11294 <p>
11295   Each audio <dfn>track</dfn> in Ardour is really just a mechanism for
11296   taking a playlist and generating the audio stream that it represents. 
11297   As a result, editing a track really means modifying its playlist in 
11298   some way. Since a playlist is a list of regions, most of the 
11299   modifications involve manipulating regions: their position, length 
11300   and so forth. This is covered in the chapter
11301   <a href="/working-with-regions/">Working With Regions</a>.<br />
11302   Here, we cover some of the things you can do with playlists as objects
11303   in their own right.
11304 </p>
11305
11306 <h2>Tracks are not Playlists</h2>
11307 <p>
11308   It is important to understand that a track <em>is not</em> a playlist. 
11309   A track <em>has</em> a playlist. A track is a mechanism for generating 
11310   the audio stream represented by the playlist and passing it through a 
11311   signal processing pathway. At any point in time, a track has a single 
11312   playlist associated with it. When the track is used to record, that 
11313   playlist will have one or more new regions added to it. When the track 
11314   is used for playback, the contents of the playlist will be heard. 
11315   You can change the playlist associated with a track at (almost) any 
11316   time, and even share playlists between tracks.
11317 </p>
11318
11319 <p>
11320   If you have some experience of other 
11321   <abbr title="Digital Audio Workstation">DAW</abbr>s, then you might 
11322   have come across the term <dfn>"virtual track"</dfn>, normally defined as a track 
11323   that isn't actually playing or doing anything, but can be 
11324   mapped/assigned to a real track. This concept is functionally 
11325   identical to Ardour's playlists. We just like to be little more 
11326   clear about what is actually happening rather than mixing old and 
11327   new terminology ("virtual" and "track"), which might be confusing.</p>
11328
11329 <h2>Playlists are Cheap</h2>
11330
11331 <p>
11332   One thing you should be clear about is that playlists are cheap. They 
11333   don't cost anything in terms of CPU consumption, and they have very 
11334   minimal efforts on memory use. Don't be afraid of generating new 
11335   playlists whenever you want to. They are not equivalent to tracks, 
11336   which require extra CPU time and significant memory space, or audio 
11337   files, which use disk space, or plugins that require extra CPU time. 
11338   If a playlist is not in use, it occupies a small amount of memory, and 
11339   nothing more.
11340 </p>
11341   
11342 ---
11343 title: Playlist Operations
11344 part: subchapter
11345 ---
11346
11347 <p>
11348   In the track header (editor window, left pane) is a button labelled <kbd
11349   class="menu">p</kbd> (for "Playlist"). If you click on this button, Ardour 
11350   displays the following menu:
11351 </p>
11352
11353 <dl class="wide-table">
11354   <dt>(Local Playlists)</dt>
11355    <dd>Shows all of the playlists associated with this track, and indicates 
11356    the currently selected playlist</dd>
11357   <dt>Rename</dt>
11358   <dd>Displays a dialog to rename the current playlist</dd>
11359   <dt>New</dt>
11360   <dd>Creates a new empty playlist, and the track switches to the new playlist</dd>
11361   <dt>New Copy</dt>
11362   <dd>Creates a new playlist that is a copy of the current playlist; the track switches to the new playlist</dd>
11363   <dt>Clear Current</dt>
11364   <dd>Removes all regions from the current playlist</dd>
11365   <dt>Select From All</dt>
11366   <dd>Displays a playlist browser to manually choose which playlist this track should use. (You can even select playlists from other tracks here)</dd>
11367 </dl>
11368
11369 <h2>Renaming Playlists</h2>
11370
11371 <p>
11372   Playlists are created with the name of the track of which they are 
11373   associated, plus a version number. So, the first playlist for a track 
11374   called "Cowbell" will be called <samp>Cowbell.1</samp>. This name will 
11375   be used to define the names of any regions added to the playlist by 
11376   recording. You can change the name at any time, to anything you want. 
11377   Ardour does not require that your playlist names are all unique, but it 
11378   will make your life easier if they are. Suggested examples of user-assigned 
11379   names for a playlist might include <kbd class="input">Lead Guitar, 2nd
11380   take</kbd>, <kbd class="input">vocals (quiet)</kbd>, 
11381   and <kbd class="input">downbeat cuica</kbd>. Notice how these might be 
11382   different from the associated track names, which for these examples might 
11383   be <kbd class="input">Lead Guitar</kbd>, 
11384   <kbd class="input">Vocals</kbd> and <kbd class="input">Cuica</kbd>. The 
11385   playlist name provides more information because it is about a specific 
11386   version of the material that may (or may not) end up in the final version 
11387   of the track.
11388 </p>
11389
11390 <p>
11391   If you are going to rename your playlists, do so before recording new
11392   material to them.
11393 </p>
11394
11395 <p class="fixme">
11396   It appears that recorded regions are not named after the playlist, but
11397   after the track.
11398 </p>
11399
11400 <h2>Sharing Playlists</h2>
11401
11402 <p>
11403   It is entirely possible to <dfn>share playlists</dfn> between tracks. The only 
11404   slightly unusual thing you may notice when sharing is that edits to the 
11405   playlist made in one track will magically appear in the other. If you 
11406   think about this for a moment, its an obvious consequence of sharing.  
11407   One application of this attribute is parallel processing, described 
11408   below.
11409 </p>
11410
11411 <p>
11412   You might not want this kind of behaviour, even though you still want 
11413   two tracks to use the same (or substantially the same) playlist. To 
11414   accomplish this, select the chosen playlist in the second track, and 
11415   then use New Copy to generate an <dfn>independent copy</dfn> of it for 
11416   that track. You can then edit this playlist without affecting the original.
11417 </p>
11418
11419 ---
11420 title: Playlist Usecases
11421 part: subchapter
11422 ---
11423
11424 <h3>Using Playlists for Parallel Processing</h3>
11425
11426 <p>
11427   One of the uses of playlists is to apply multiple effects to the same 
11428   audio stream. For example, let's say you would like to apply two 
11429   different non-linear effects such as distortion or compression to the 
11430   same audio source (for linear effects, you could just apply them one after
11431   the other in the same track).<br />
11432   Create a new track, apply the original track's playlist, and 
11433   then apply effects to both tracks independently. 
11434 </p>
11435
11436 <p class="note"> 
11437   The same result could be achieved by feeding your track to multiple busses which
11438   then contain the processing, but this increases the overall latency,
11439   complicates routing and uses more space in the Mixer window.
11440 </p>
11441
11442 <h2>Using Playlists for "Takes"</h2>
11443
11444 <p>
11445   Using Playlists for <dfn>takes</dfn> is a good solution if you are going 
11446   to need the ability to edit individual takes, and select between them. 
11447 </p>
11448
11449 <p>
11450   Each time you start a new take, create a new playlist with 
11451   <kbd class="menu">p &gt; New</kbd> 
11452   Later, you can Select your way back to previous or later takes as 
11453   desired.
11454 </p>
11455
11456 <p>
11457   If you want to create a composite edit from multiple takes, create a new
11458   track to assemble the final version, and "cherry pick" from the playlists
11459   in the original track by copying regions over as required.
11460 </p>
11461
11462 <p>
11463   Alternatively, record each successive take on top of the 
11464   others in "layers" and then edit them using the layer tools, explained 
11465   later.
11466 </p>
11467   
11468 <h2>Using Playlists for Multi-Language Productions</h2>
11469
11470 <p>  
11471   The same approach as for takes is useful when you are recording or 
11472   editing content in multiple versions, such as dubbed movie dialog in
11473   several languages, and you want all versions on the same track, to 
11474   get the same processing. <br />
11475   Select the appropriate language before exporting the session.
11476 </p>
11477
11478
11479 ---
11480 title: Rhythm Ferret
11481 part: chapter
11482 ---
11483
11484
11485 ---
11486 title: MIDI
11487 part: part
11488 ---
11489
11490
11491 ---
11492 title: MIDI Editing
11493 part: chapter
11494 ---
11495
11496
11497 ---
11498 title: Edit MIDI
11499 part: subchapter
11500 ---
11501
11502 <p>
11503   Ardour's handling of <dfn><abbr title="Musical Instrument Digital Interface">MIDI</abbr> editing</dfn> differs from most other <abbr title="Digital Audio Workstation">DAW</abbr>s and MIDI sequencers.
11504 </p>
11505
11506 <h2>Key features of Ardour MIDI handling</h2>
11507
11508 <ul>
11509   <li>
11510     All editing is done in-place, in-window. There is no separate piano roll window or pane. Edit notes right where you see them.
11511   </li>
11512   <li>
11513     All MIDI I/O is done via <abbr title="Jack Audio Connection Kit">JACK</abbr> for sample accurate timing and maximal efficiency when communicating with external software synthesizers.
11514   </li>
11515   <li>
11516     Every MIDI track has its own JACK MIDI port for input; it may have an arbitrary combination of audio and MIDI outputs, depending on the signal processing in the track; the full flexibility of JACK connectivity is present for MIDI just as it is for audio.
11517   </li>
11518   <li>
11519     Full automation for MIDI tracks, integrated with the handling of all MIDI <abbr title="Continuous Controller">CC</abbr> data for each track.
11520   </li>
11521   <li>
11522     Controllers (CC data) can be set to discrete or continuous modes (the latter will interpolate between control points and send additional data).
11523   </li>
11524   <li>
11525     There is a <em>Normal</em> and a <em>Percussive</em> mode for note data editing.
11526   </li>
11527   <li>
11528     The <dfn>scroomer</dfn> is a combination scroll/zoom tool for altering 
11529     the zoom level and range of visible MIDI data.
11530   </li>
11531 </ul>
11532
11533 <h2>Notable Differences</h2>
11534
11535 <ul>
11536   <li>
11537     Fader (volume) control currently operates on transmitted MIDI data, not by sending CC #7.
11538   </li>
11539   <li>
11540     All note/data editing is per-region. There are no cross-region operations at this time.
11541   </li>
11542   <li>
11543     By default, copying a MIDI region creates a <dfn>deep link</dfn>&mdash;both regions share the same data source, and edits to the contents of one will affect the other. To break this link, select <kbd class="menu">MIDI &gt; Unlink from other copies</kbd> from the region context menu, after which the selected region(s) will have their own copies of <em>only</em> the data that they visually display on screen. You will not be able to trim the region back its original length after an Unlink operation, and the operation cannot be undone.
11544   </li>
11545 </ul>
11546
11547 ---
11548 title: Fundamental Concepts
11549 part: subchapter
11550 ---
11551
11552 <p class="fixme">Check to see if this is still true for v5</p>
11553
11554 <p>Ardour's MIDI editing is based on two basic principles:</p>
11555
11556 <ol>
11557   <li>Editing should be done without having to enter a new window</li>
11558   <li>
11559     Editing should be able to carried out completely with the keyboard, 
11560     or completely with the mouse, or with any combination of the two.
11561   </li>
11562 </ol>
11563
11564 <p>
11565   Currently,  MIDI editing is primarily restricted to note data. Other 
11566   kinds of data (controller events, sysex data) are present and can be 
11567   added and deleted, but not actually edited. 
11568 </p>
11569
11570 <h2>Fundamentals of MIDI Editing in Ardour 3</h2>
11571
11572 <p>
11573   MIDI, just like audio, exists in <dfn>regions</dfn>. MIDI regions 
11574   behave like audio regions: they can be moved, trimmed, copied (cloned),
11575   or deleted. Ardour allows either editing MIDI (or audio) regions, or MIDI 
11576   region content (the notes), but never both at the same time. The
11577   <kbd>e</kbd> key (by default) toggles between <dfn>region level</dfn> 
11578   and <dfn>note level</dfn> editing, as will double-clicking on a MIDI region.
11579 </p>
11580
11581 <p class="note">
11582   One very important thing to note: editing note information in Ardour
11583   occurs in only a single region. There is no way currently to edit in note 
11584   data for multiple regions at the same time, so for example you cannot select 
11585   notes in several regions and then delete them all, nor can you copy-and-paste 
11586   notes from one region to another. You can, of course, copy and paste the 
11587   region(s), just as with audio.
11588 </p>  
11589
11590 ---
11591 title: Create MIDI Tracks
11592 part: subchapter
11593 ---
11594
11595 <p>
11596   To create a new <dfn>MIDI track</dfn>, choose <kbd class="menu">Session &gt; 
11597   Add Track/Bus</kbd>. In the Add Track/Bus dialog, pick <kbd class="menu">MIDI
11598   Track</kbd> from the combo selector at the upper right. 
11599 </p>
11600
11601 <p>
11602   You may decide to use a track template if you have one. You may also know the instrument (a plugin that will generate audio in response to receiving MIDI) that you want to use in the track. The Instrument selector will show you a list of all plugins that you have which accept MIDI input and generate audio output.
11603 </p>
11604   
11605 <p class="fixme">Remove "you" language</p>
11606
11607 ---
11608 title: Create MIDI Regions
11609 part: subchapter
11610 ---
11611
11612 <p>
11613   Although recording MIDI is a common way to create new MIDI regions, it is 
11614   often desirable to do so as part of editing/arranging.
11615 </p>
11616
11617 <p>
11618   To create a new MIDI region, simply <kbd class="mouse">Left</kbd>-click in 
11619   a MIDI track. A region will be created that is one bar long. It can 
11620   <a href="/editing-and-arranging/changing-region-lengths">trimmed</a> to any 
11621   length desired.
11622 </p>
11623
11624 <p class="fixme">Broken link</p>
11625
11626 <p>
11627   Once a region has been created, <a href="/editing-and-arranging/edit-midi/add-new-notes">notes can be added</a> to it.
11628 </p>
11629   
11630 ---
11631 title: Add New Notes
11632 part: subchapter
11633 ---
11634
11635 <h2>Adding new notes</h2>
11636
11637 <p>
11638   In general, most MIDI editing will be done with the mouse in object mode. This allows selecting notes, copying, moving or deleting them and altering their properties (see below). <em>Adding</em> notes to a MIDI region using the mouse requires dragging with the mouse if they are to be anything other than a fixed length. Since this would normally be a selection operation if the mouse is in object mode, there needs to be some way to tell Ardour to <dfn>draw</dfn> new notes within a MIDI region. Ardour provides two ways do this: one is to leave the mouse in object mode and <kbd class="mouse mod1">Left</kbd>-drag; the other, useful if entering a lot of notes for a while, is to switch the mouse into <kbd class="menu">Draw Notes</kbd> mode, which will now interpret any drags and clicks as requests to add a new note. For obvious reasons, Draw Notes mode cannot be used while using region-level editing.
11639 </p>
11640
11641 <p>So, to summarize:</p>
11642
11643 <dl class="wide-table">
11644   <dt>Selecting, moving, copying, trimming, deleting <em>regions</em></dt>
11645   <dd>
11646     leave <kbd class="menu">Note Level Editing</kbd> disabled, use object, 
11647     range or other mouse modes
11648   </dd>
11649   <dt>Selecting, moving, copying trimming, deleting <em>notes</em></dt>
11650   <dd>enable <kbd class="menu">Note Level Editing</kbd>and use mouse object mode</dd>
11651   <dt>Adding new notes</dt>
11652   <dd>
11653     enable "Note Level Editing" and then either
11654     <ul>
11655       <li>use mouse object mode and <kbd class="mouse mod1">Left</kbd>-drag,
11656       or</li>
11657       <li>use mouse draw mode.</li>
11658     </ul>
11659   </dd>
11660 </dl>
11661
11662 <!-- FIXME: This is needed to keep the table from sucking up the following note's styling. Probably need a fix in the CSS. -->
11663 <p>&nbsp;</p>
11664
11665 <p class="note">
11666   It is also a <a href="/editing-and-arranging/edit-midi/step-entry">a step entry editor</a> allowing entry of notes from a virtual keyboard, and lots more besides.
11667 </p>
11668
11669 ---
11670 title: Change Note Properties
11671 part: subchapter
11672 ---
11673
11674 <p>
11675   Details about a selected note can be viewed by context-clicking on it. The
11676   dialog that pops up will also allow modification of all the properties of the
11677   selected note(s). Individual properties can be modified more efficiently using
11678   the techniques described below:
11679 </p>
11680
11681 <dl>
11682   <dt>Moving notes</dt>
11683   <dd>
11684     Right arrow and Left arrow move the selected note(s) early and later in time.
11685   </dd>
11686   <dt>Changing pitch values</dt>
11687   <dd>
11688     <kbd>&uarr;</kbd> increases the pitch of the selected notes.<br />
11689     <kbd>&darr;</kbd> reduces the pitch of the selected notes.<br />
11690     If any of the selected notes are already at the maximum or minimum value, 
11691     no changes will be made to any of the notes, to preserve relative pitches. 
11692     This can be overridden with <kbd class="mod2">&zwnj;</kbd>. The default shift 
11693     distance is one semitone. Use <kbd class="mod3">&zwnj;</kbd> to alter this to 
11694     one octave.
11695   </dd>
11696   <dt>Changing velocity values</dt>
11697   <dd>
11698     <kbd class="mod1">&uarr;</kbd> increases the velocity of the selected notes.
11699     <br/>
11700     <kbd class="mod1">&darr;</kbd> reduces the velocity of the selected
11701     notes.<br />
11702     If any of the selected notes are already at the maximum or minumum value, 
11703     no changes will be made to any of the notes, to preserve relative velocities. 
11704     This can be overridden with <kbd class="mod2">&zwnj;</kbd>.
11705     Presssing <kbd>v</kbd> will popup a dialog that will allow the setting of 
11706     the absolute velocity value of each selected note. Finally, the scroll wheel 
11707     <kbd class="mouse">&uArr;</kbd> <kbd class="mouse">&dArr;</kbd> will also 
11708     adjust notes in the same way as the arrow keys.
11709     <p class="note">Like the arrow keys, it only affects selected notes, not the note the pointer is over.</p>
11710   </dd>
11711   <dt>Changing channel</dt>
11712   <dd>
11713     Press <kbd>c</kbd> to bring up a dialog that allows viewing and altering the 
11714     MIDI channel of the selected notes. If the selected notes use different 
11715     channels, they will all be forced to the newly selected channel.
11716   </dd>
11717   <dt>Changing start/end/duration</dt>
11718   <dd>
11719     <kbd>,</kbd> (comma) will alter the start time of the note. <br />
11720     <kbd>.</kbd> (period) will alter the end time of the note. Both keys will by 
11721     default make the note longer (either by moving the start earlier or the end 
11722     later). For the opposite effect, use <kbd class="mod1">,</kbd>/<kbd
11723     class="mod1">.</kbd>. The note will be altered by the current grid setting. 
11724     To change the start/end positions by 1/128th of a beat, use the <kbd
11725     class="mod2">&zwnj;</kbd> modifier in addition to these shortcuts.
11726   </dd>
11727   <dt>Quantization</dt>
11728   <dd>
11729     <kbd>q</kbd> will quantize the selected notes using the current quantize 
11730     settings. If the quantize settings have not been set for this session yet, 
11731     the quantize dialog will appear. <kbd class="mod2">q</kbd> will display the 
11732     quantize dialog to allow resetting of the quantize settings, and then 
11733     quantize the selected notes. The default quantize settings are: quantize 
11734     note starts to the current grid setting, no swing, no threshold, full 
11735     strength.
11736   </dd>
11737   <dt>Step Entry, Quantize etc.</dt>
11738   <dd><em>missing</em></dd>
11739 </dl> 
11740
11741 <p class="fixme">Add missing content</p>
11742
11743 ---
11744 title: Handling Overlapping Notes
11745 menu_title: Overlapping Notes
11746 part: subchapter
11747 ---
11748
11749 <p>
11750   Every MIDI note consists of two messages, a NoteOn and a NoteOff. Each one 
11751   has a note number and a channel (also a velocity, but that isn't relevant 
11752   here). The MIDI standard stresses that it is invalid to send a second NoteOn 
11753   for the same note number on the same channel before a NoteOff for the first 
11754   NoteOn. It is more or less impossible to do this with a physical MIDI 
11755   controller such as a keyboard, but remarkably easy to trigger when editing 
11756   in a DAW&mdash;simply overlapping two instances of the same note will do it.
11757 </p>
11758
11759 <p>
11760   Ardour offers many options for how to deal with instances where you overlap 
11761   two instances of the same note. Which one to use is a per-session property 
11762   and can be modified from <kbd class="menu">Session &gt; Properties &gt; Misc &gt; MIDI
11763   Options</kbd>.
11764 </p>
11765
11766 <dl class="wide-table">
11767   <dt>never allow them</dt>
11768   <dd>Edits that would create note overlaps are not allowed</dd>
11769   <dt>don't do anything in particular</dt>
11770   <dd>Ardour leaves overlapping notes alone&mdash;the behaviour of a MIDI receiver (plugin or hardware) is undefined</dd>
11771   <dt>replace any overlapped existing note</dt>
11772   <dd>When one note is moved to overlap another, remove the one that wasn't being moved</dd>
11773   <dt>shorten the overlapped existing note</dt>
11774   <dd>When one note is moved to overlap another, shorten the one that wasn't moved so that there is no overlap</dd>
11775   <dt>shorten the overlapping new note</dt>
11776   <dd>When one note is moved to overlap another, shorten the one that was moved so that there is no overlap</dd>
11777   <dt>replace both overlapping notes with a single note</dt>
11778   <dd>When one note is moved to overlap another, merge them both to form one (longer) note</dd>
11779 </dl>
11780
11781 <p>
11782   Changing the option in use will not retroactively make changes&mdash;it will 
11783   only affect new note overlaps created while the option remains chosen.
11784 </p>
11785
11786 <p class="warning">
11787   Ardour does not check for note overlaps across tracks or even across regions. 
11788   If you create these, it is your responsibility to deal with the consequences.
11789 </p>
11790   
11791 ---
11792 title: Note Cut, Copy and Paste 
11793 part: subchapter
11794 ---
11795
11796 <p>
11797   While in note edit mode, selected notes can be cut using 
11798   <kbd class="mod1">x</kbd>, copied with <kbd class="mod1">c</kbd> and 
11799   deleted with <kbd>Delete</kbd>, just as regions can. Once cut or 
11800   copied, they can be pasted at the edit point using 
11801   <kbd class="mod1">v</kbd>.
11802 </p>
11803   
11804 ---
11805 title: Note Selection
11806 part: subchapter
11807 ---
11808
11809 <h2>Selecting/Navigating note-by-note</h2>
11810
11811 <p>
11812   Tab selects the next note. <kbd class="mod1">Tab</kbd> selects the previous 
11813   note. <kbd class="mod3">Tab</kbd> or <kbd class="mod13">Tab</kbd> adds 
11814   the next/previous note to the selection.
11815 </p>
11816
11817 <h2>Selecting notes with the mouse</h2>
11818
11819 <p>
11820   While in mouse object mode, you can click on a note to select it. Once you 
11821   have selected one note, <kbd class="mouse mod3">Left</kbd>-click on another 
11822   to select all notes between them. To add or remove a note to/from the 
11823   selection, click <kbd class="mouse mod1">Left</kbd>. You can also click and 
11824   drag outside of a note to <dfn>rubberband select</dfn> a series of notes.
11825 </p>
11826
11827 <p>
11828   Three different selection operations are possible if you switch to mouse 
11829   range mode:
11830 </p>
11831
11832 <ul>
11833   <li>
11834     Vertical drags within the MIDI region will select all notes within the 
11835     spanned note range.
11836   </li>
11837   <li>
11838     Clicks on the piano header of the track (if visible&mdash;the track must 
11839     be tall enough to display it) will select all occurences of that note.
11840   </li>
11841   <li>
11842     Drags on the piano header of the track will select all notes within the 
11843     spanned note range.
11844   </li>
11845 </ul>
11846
11847 <h2>Listening to Selected Notes</h2>
11848
11849 <p>
11850   If <kbd class="menu">Edit &gt; Preferences &gt; MIDI &gt; Sound MIDI notes 
11851   as they are selected</kbd> is enabled, Ardour will send a pair of 
11852   NoteOn/NoteOff messages through the track, which will typically allow you to 
11853   hear each note as it is selected.
11854 </p>
11855   
11856 ---
11857 title: Quantize MIDI
11858 part: subchapter
11859 ---
11860
11861 <p class="fixme">Needs fleshing out; this is a bit thin at the moment</p>
11862
11863 <p><img class="right" src="/images/a3_quantize.png" alt="quantize dialog" /></p>
11864
11865 <p>Accessed via <kbd>q</kbd>, the dialog includes:</p>
11866
11867 <ul>
11868   <li>Options for grid, legato and groove quantize</li>
11869   <li>Snap note start, or end</li>
11870   <li>Snap to current grid, or many beat subdivisions</li>
11871   <li>Quantize threshold (how far away from a chosen position a note must be in order to be quantized)</li>
11872   <li>Strength (how close to move a note to its new position, as a percentage of the nominal distance)</li>
11873   <li>Swing</li>
11874 </ul>
11875
11876 ---
11877 title: Step Entry
11878 part: subchapter
11879 ---
11880
11881 <p>
11882   Sometimes editing MIDI data directly from a connected MIDI device like a musical
11883   keyboard or pad controller is desired; sometimes using the mouse is. Sometimes
11884   the fine-grained control, precision and speed of entry that comes from using a
11885   custom note entry dialog is; the <dfn>Step Entry</dfn> dialog aims to be the
11886   latter.
11887 </p>
11888
11889 <p>
11890   The step entry dialog is accessed via a right click context menu on the
11891   rec-enable button, because step entry is related to <em>recording</em> MIDI
11892   data&mdash;step editing and recording MIDI via the track's MIDI port cannot be
11893   done simultaneously.
11894 </p>
11895
11896 <p class="center"><img src="/images/a3_step_entry.png" /></p>
11897
11898 <p>The dialog (closely modeled after Logic's) contains:</p>
11899
11900 <ul>
11901   <li>
11902     Chord entry switch (successive notes are stacked in a chord until
11903     it is released)</li>
11904   <li>Note length selectors</li>
11905   <li>Triplet toggle</li>
11906   <li>Normal, single, double and triple dotted note selectors</li>
11907   <li>Sustain button</li>
11908   <li>Buttons to:
11909     <ul>
11910      <li>Insert a rest of the current selected note duration</li>
11911      <li>Insert a rest of the current grid step size</li>
11912      <li>Move back to the last inserted note</li>
11913      <li>Move forward to the next beat, or bar</li>
11914      <li>Move forward to the edit point</li>
11915     </ul>
11916   </li>
11917   <li>Dynamics controls from pianississimo to fortississimo</li>
11918   <li>Channel selector</li>
11919   <li>
11920     Explicit numerical velocity selector, for more precise control 
11921     than the dynamics selectors offer
11922   </li>
11923   <li>Octave selector</li>
11924   <li>Buttons to add bank or program change events</li>
11925   <li>a full 10 octave virtual keyboard</li>
11926 </ul>
11927
11928 <p>
11929   More or less all actions in the step entry dialog can be driven directly from
11930   the keyboard, so moving back and forth from keyboard to mouse to do complex data
11931   insertion is unnecessary.
11932 </p>
11933
11934 ---
11935 title: Patch Change
11936 part: subchapter
11937 ---
11938
11939 <p>
11940   A <dfn>patch change</dfn> is Ardour's description for a combination 
11941   of MIDI program change and bank select messages, that (typically) 
11942   instruct a synthesizer or sampler to select a different sound to use 
11943   on a particular channel. 
11944 </p>
11945
11946 <p>
11947   Patch changes are shown within MIDI regions as small rectangles or 
11948   <dfn>flags</dfn>, as shown below:
11949 </p>
11950
11951 <p class="fixme">Add missing images</p>
11952
11953 <h2>Inserting Patch Changes</h2>
11954
11955 <p>
11956   Ensure that the 
11957   <a href="/editing-and-arranging/edit-point">edit point</a> is 
11958   located where the patch change should be (within an existing 
11959   MIDI region). Context click, and from the MIDI region's context menu, 
11960   select <kbd class="menu">MIDI &gt; Insert Patch Change</kbd>. A 
11961   dialog will appear allowing the setting of the bank and program values. 
11962 </p>
11963
11964 <h2>Modifying Patch Changes</h2>
11965
11966 <p>
11967   Context-clicking on a patch change will bring up the same dialog that 
11968   was used to create it, allowing the modification of the program and/or bank 
11969   numbers.
11970 </p>
11971
11972 <p>
11973   The mouse wheel can also be used: <kbd class="mouse">&uArr;</kbd>/<kbd
11974   class="mouse">&dArr;</kbd> on the patch change will alter the program 
11975   number, <kbd class="mouse mod1">&uArr;</kbd>/<kbd 
11976   class="mouse mod1">&dArr;</kbd> will modify the bank number.
11977 </p>
11978
11979 <h2>Moving Patch Changes</h2>
11980
11981 <p>
11982   Just <kbd class="mouse">Left</kbd>-drag on the patch change to move it 
11983   around.
11984 </p>
11985
11986 <h2>Removing Patch Changes</h2>
11987
11988 <p>
11989   Put the mouse pointer into the rectangular area, and press <kbd>Del</kbd> 
11990   or use the delete mouse button operation. This will remove the patch change 
11991   (the operation can be undone).
11992 </p>
11993
11994 <h2>Names for Patch Numbers: MIDNAM files</h2>
11995
11996 <p>
11997   &hellip;mising&hellip;
11998 </p>
11999
12000 <p class="fixme">Add missing content</p>
12001
12002 ---
12003 title: Independent and Dependent MIDI Region Copies
12004 menu_title: Copy MIDI Region
12005 part: subchapter
12006 ---
12007
12008 <p>
12009   When <dfn>copying a MIDI region</dfn>, Ardour has to decide whether to make the
12010   copy refer to the same data as the original or not. If it does refer
12011   to the same data, then editing either the copy or the original will
12012   affect the both of them. If it refers to an independent copy of the
12013   data then each one can be edited without affecting the other.
12014 </p>
12015
12016 <h2>Changing dependent/independent copying for the entire session</h2>
12017
12018 <p>
12019   <kbd class="menu">Sesson &gt; Properties &gt; Misc &gt; MIDI region copies are
12020   independent</kbd> can be used to control the default behaviour when
12021   making a copy of a MIDI region. 
12022 </p>
12023
12024 <p>
12025   When enabled, every new copy of a MIDI
12026   region results in a copy being made of the MIDI data used by the
12027   region, and the new copy of the region will refer to that data. 
12028 </p>
12029
12030 <p>
12031   When disabled, every new copy of a MIDI region will refer to the same
12032   MIDI data, and thus editing any copy will change the contents of all
12033   of them.
12034 </p>
12035
12036 <p>
12037   Changing the status of this option has no effect on the existing
12038   dependent/independent status of existing region copies.
12039 </p>
12040
12041 <h2>Making an existing copy of a MIDI region independent</h2>
12042
12043 <p>
12044   Context-click on the MIDI region to be made independent. From the context menu, select <kbd class="menu">MIDI &gt; Unlink From Other Copies</kbd>. The copy is now using an independent version of the data, and edits to the copy will affect only the copy. Other linked copies will continue to share data.
12045 </p>
12046
12047 <p class="note">
12048   The copied data only covers the extent of the region when the copy is made. If the region was already trimmed and then a copy is made, an independent copy will have no access to data that is earlier or later than the bounds of the region it was copied from. Put differently, if an independent copy of a trimmed MIDI region is made, it cannot be "untrimmed" to a larger size.
12049 </p>
12050
12051 ---
12052 title: Automating MIDI - Pitch bending and aftertouch
12053 menu_title: Automating MIDI
12054 part: subchapter
12055 ---
12056
12057 <p>
12058   Adding pitch bending or aftertouch can add a lot of subtlety to an otherwise plain sounding midi region and help humanize it.
12059 </p>
12060
12061 <img src="/images/MIDI_pitch_bending.png" alt="Automation: pitch bending" />
12062
12063 <p>
12064   Pitch bending and aftertouch both work the same way, through automation. Right click the MIDI track's header &gt; Automation &gt; Bender <em>(or Pressure)</em> &gt; <em>choose the channel you want to bend</em>.
12065 </p>
12066
12067 <p>
12068   Using the Draw tool, as for all the automation, allows creation of a gradual change from one drawn point to another. A line in the center produces no change to the pitch, while a line above the center will bend the pitch to a higher note (up to 4 semitones) and a line going under the middle will bend the pitch to a lower note.
12069 </p>
12070
12071 <p>
12072   The values can be anything between 0 (-4 semitones) to 16,383 (+4 semitones). No automation or a value of 8,192 means no pitch shifting.
12073 </p>
12074
12075 <p>
12076   Aftertouch works very similarly, though the values are between 0 and 127. It should be noted that aftertouch differs from velocity, as aftertouch allows to slightly change the timbre or create a vibrato, while the velocity sets the power with which the note is played (e.g. on a keyboard, the key is hit).
12077 </p>
12078
12079 ---
12080 title: Transforming MIDI - Mathematical operations
12081 menu_title: Transforming MIDI
12082 part: subchapter
12083 ---
12084
12085 <p>
12086   Considering the numerical nature of MIDI events, it can be tempting to apply mathematical transformations to our MIDI regions by using mathematical operations. Ardour makes it very easy and powerful with the Transform tool.
12087 </p>
12088
12089 <p class="center"><img src="/images/MIDI_transform.png" alt="MIDI transformation" /></p>
12090
12091 <p>
12092   To access the Transform tool, right click the MIDI region &gt; <em>name_of_the_region</em> &gt; MIDI &gt; Transform...
12093 </p>
12094
12095 <p>
12096   First, select the property you want to modify in the 'Set' field, then change the target value using the 2 following fields. If you want to add more operands, click the "+" sign to create new lines. You can remove a superfluous line using the "-" sign on the right of the newly created line.
12097 </p>
12098
12099 <p>
12100   In the picture above, we've used the Transform tool to add a bit of humanization, by slightly changing the velocity of each note of the region, by a random number between -19 and +19 from it's original velocity. So we've used 3 operations:
12101 </p>
12102
12103 <ul>
12104         <li>Set velocity to this note's velocity</li>
12105         <li>+ a random number from 1 to 20</li>
12106         <li>- a random number from 1 to 20</li>
12107 </ul>
12108
12109 <p>Each note will trigger a calculation of its own, so its velocity will be increased by a random number between 1 and 20, then decreased by a random number between 1 and 20.</p>
12110
12111 <p>
12112   The properties that can be computed are:
12113 </p>
12114
12115 <ul>
12116         <li>note number (eg C2 is note number 24, C#2 is 25 and so on)</li>
12117         <li>velocity (the global intensity of the note, between 0 and 127)</li>
12118         <li>start time (in beats)</li>
12119         <li>length (in beats)</li>
12120         <li>channel</li>
12121 </ul>
12122
12123 <p>
12124   and the calculation may be based on the following properties:
12125 </p>
12126
12127 <ul>
12128         <li>this note's</li>
12129         <li>the previous note's</li>
12130         <li>this note's index (number of the note, i.e. the first one is 0, the second is 1, etc.)</li>
12131         <li>exactly (for a constant value, between 1 and 127)</li>
12132         <li>a random number from <em>lower</em> to <em>higher</em> (<em>lower</em> and <em>higher</em> beeing constant values between 1 and 127)</li>
12133         <li>equal steps from <em>lower</em> to <em>higher</em> (<em>lower</em> and <em>higher</em> beeing constant values between 1 and 127)</li>
12134 </ul>
12135
12136 <p>
12137   The mathematical operators can be:
12138 </p>
12139
12140 <ul>
12141         <li>+ (addition)</li>
12142         <li>- (substration)</li>
12143         <li>* (multiplication)</li>
12144         <li>/ (euclidian division)</li>
12145         <li>mod (rest of the euclidian division)</li>
12146 </ul>
12147
12148 <p>
12149   All this operations can be very handy, as long as you find a mathematical way to achieve your goal. Beware though of odd "border cases": division by zero (which does nothing), using the note's index and forgetting it starts at 0 and not 1, etc.
12150 </p>
12151
12152 <p>
12153   You can nevertheless create very interesting results, like humanizing (randomizing the velocity, start time and duration of all the notes), creating arpeggios, automating tedious tasks, transposing, etc.
12154 </p>
12155
12156
12157 ---
12158 title: MIDI Editors
12159 part: chapter
12160 ---
12161
12162
12163 ---
12164 title: MIDI Scene Automation
12165 part: subchapter
12166 ---
12167
12168 <p>
12169   Ardour is capable of being used to both record and deliver MIDI
12170 "scene" automation. These are MIDI messages typically used to switch
12171 presets or "scenes" on a variety of external equipment (or
12172 software), including lighting and other audio/video tools. A common
12173 use case is to automatically change presets between songs or to change
12174 lighting conditions based on a specific position on the timeline.
12175 </p>
12176
12177 <p>
12178   Each change from one scene to another is represented by a marker in
12179 the "Marker" bar. 
12180 </p>
12181
12182 <p>
12183   Technically, scene changes are delivered as a combination of bank and
12184 program change MIDI messages. MIDI allows for 16,384 banks, each with
12185 128 programs.
12186 </p>
12187
12188 <h2>Recording Scene Changes</h2>
12189
12190 <p>
12191   Ardour has a dedicated MIDI port named "Scene In". Connect this port
12192 to whatever source(s) of MIDI scene (bank/program change) messages you
12193 wish to record.
12194 </p>
12195
12196 <p>
12197   Whenever the global record enable button is engaged and Ardour's
12198   transport is rolling, a new marker will be created for each scene
12199 change message received via the "Scene In" port. 
12200 </p>
12201
12202 <p>
12203   If two different scene changes are received within a certain time
12204 period, only the later one will be recorded as a new marker. The
12205 default threshold for this is one millisecond.
12206 </p>
12207
12208 <p>
12209   If a scene change message is received while the playhead is close to
12210 an existing marker with an associated scene change, the recording
12211 process will alter the scene change in the existing marker rather than
12212 adding a new one. The default threshold for this "proximity" test is one
12213 millisecond.
12214 </p>
12215
12216 <h2>Manually Creating Scene Changes</h2>
12217
12218 <p>
12219   This feature is not currently implemented.
12220 </p>
12221
12222 <h2>Playing back Scene Changes</h2>
12223
12224 <p>
12225   Ardour has a dedicated MIDI port named "Scene Out". Connect this port
12226 to wherever you wish to send MIDI scene (bank/program change) messages.
12227 </p>
12228
12229 <p>
12230   When the global record enable button is
12231 <em>not</em> enabled, the relevant message(s) will be sent via the
12232 "Scene Out" port as the playhead rolls past each marker with a scene
12233 change associated with it.
12234 </p>
12235
12236 <h2>Editing Scene Changes</h2>
12237
12238 <p>
12239   This feature is not currently implemented.
12240 </p>
12241
12242 <h2>Disabling Scene Changes</h2>
12243
12244 <p>
12245   This feature is not currently implemented.
12246 </p>
12247
12248
12249 ---
12250 title: Score Editor
12251 part: chapter
12252 ---
12253
12254
12255 ---
12256 title: MIDI Event List
12257 part: chapter
12258 ---
12259
12260
12261 ---
12262 title: Arranging
12263 part: part
12264 ---
12265
12266
12267 ---
12268 title: Time, Tempo and Meter
12269 part: chapter
12270 ---
12271
12272
12273 ---
12274 title: Tempo and Meter
12275 part: subchapter
12276 ---
12277
12278 <p>
12279   Tempo and meter belong together. without both, there is no way to know where a beat lies in time.
12280 </p>
12281
12282 <p>
12283   Tempo provides a musical pulse, which is divided into beats and bars by a meter. When tempo is changed or an audio-locked meter is moved, all objects on the timeline that are glued to bars and beats (locations, regions) will move in sympathy.
12284 </p>
12285
12286 <p class="note">
12287   When performing meter or tempo operations, it is advised to show the BBT ruler (available by right-clicking an existing marker or ruler name), and that the constraint modifier is set (in Preferences->User Interaction) so that no other modifiers share its key combination.
12288 </p>
12289
12290 <p>
12291   The constraint modifier is the "Constrain drags using:" setting under the "When Beginning a Drag" heading. One viable setting is <kbd class="mod1"></kbd><kbd class="mod3"></kbd>.
12292 </p>
12293
12294 <h3>Tempo</h3>
12295
12296 <p>
12297   Tempo can be adjusted in several ways:
12298 </p>
12299
12300 <ul>
12301   <li>by double clicking on a tempo marker. This opens the tempo dialog which will allow entering the tempo directly into an entry box.</li>
12302   <li>by using the constraint modifier (which is set in Preferences->User Interaction) to drag the beat/bars in the BBT ruler or the tempo/meter lines.
12303   This is the preferred way to match the tempo to previously recorded material.</li>
12304
12305   <p class ="note">
12306     When dragging the BBT ruler, musical snap has no effect, however be warned that non-musical snap is in effect if enabled. Snapping to a minute while dragging a beat may result in some verly slow tempos. Snapping a beat to a video frame however is an incredibly useful way to ensure a soundtrack is punchy and synchronised to the sample.
12307   </p>
12308
12309   <li>by holding down the constaint modifier while dragging a tempo vertically. This is used for more complex tempo solving, as it allows changing the position and tempo of a tempo marker in the same drag; it is, however, a useful way to adjust the first tempo for a quick result.</li>
12310 </ul>
12311
12312 <p>
12313   A tempo may be locked to audio or musical time. This may be changed by right-clicking on a tempo. If a tempo is locked to music, an entry will be available to lock it to audio. Similarly an audio-locked tempo may be locked to music by right clicking it an selecting the "Lock to Music" entry.
12314 </p>
12315
12316 <p>
12317   Audio locked tempo marks stay in their frame position as their neigbours positions are altered. Their pulse (musical) position will change as their neighbours move. Music locked tempo marks move their frame position as their neighbours are moved, but keep their pulse position (they will move as the music is moved).
12318 </p>
12319
12320 <p>
12321   A tempo may be ramped or constant.
12322   <ul>
12323     <li>A constant tempo will keep the sesion tempo constant until the next tempo section, at which time it will jump instantly to the next tempo. These are mostly useful abrupt changes, and is the way in which traditional DAWs deal with tempo changes (abrupt jumps in tempo).</li>
12324     <li>A ramped tempo increases its tempo over time so that when the next tempo section has arrived, the sesion tempo is the same as the second one. This is useful for matching the session tempo to music which has been recorded without a metronome. Ramps may also be used as a compositional tool, but more on this later. Note that a ramp requires two points&mdash;a start and an end tempo. The first tempo in a new session is ramped, but appears to be constant as it has no tempo to ramp to. It is only when a new tempo is added and one of them is adjusted that a ramp will be heard. The same applies to the last tempo in the session&mdash;it will always appear to be constant until a new last tempo is added and changed.
12325   </li>
12326   </ul>
12327 </p>
12328
12329 <p>
12330   <img src="/images/constant-tempo.png" alt="A constant tempo displaying the tempo at the playhead in the audio clock">
12331   <br>
12332   A series of constant tempo markers. The tempo at the playhead position is the same as the previous tempo.
12333 </p>
12334
12335 <p>
12336   <img src="/images/ramped-tempo.png" alt="A ramped tempo displaying the tempo at the playhead in the audio clock">
12337   <br>
12338   A ramped tempo marker. The tempo at the playhead position is approaching the second tempo. Because the playhead is equidistant (in beats) between the
12339   two markers, the tempo at the playhead is the average of the two.
12340 </p>
12341
12342 <p>
12343   To add a new tempo, use the primary modifier and click on the tempo line at the desired position. The new tempo will be the same as the tempo at the position of the mouse click (it will not change the shape of the ramp).
12344 </p>
12345
12346 <p>
12347   To copy a tempo, hold down the primary modifier and drag the tempo desired to be copied.
12348 </p>
12349
12350 <h3>Meter</h3>
12351
12352 <p>
12353   Meter positions beats using the musical pulse of a tempo, and groups them into bars using its number of divisions per bar.
12354 </p>
12355
12356 <p>
12357   The first meter in a new session may be moved freely. It has an associated tempo which cannot be dragged by itself (although all others can). It can be moved freely and is locked to audio.
12358 </p>
12359
12360 <p>
12361   New meters are locked to music. They may only occur on a bar line if music locked.
12362 </p>
12363
12364 <p>
12365   An audio locked meter provides a way to cope with musical passages which have no meter (rubato, pause), or to allow a film composer to insert a break in music which cannot be counted in beats.
12366 </p>
12367
12368 <p>
12369   If a meter is audio-locked, its bar number is fixed from the point at which it left the main score. That bar number cannot be changed, nor can tempo motion allow the previous bar to overlap. If another bar is needed, lock the meter to music again (right click->"Lock to Music"), drag the meter to the desired bar and re-lock to audio. The new bar may be freely moved again.
12370 </p>
12371
12372 <li>To change a meter, double click it. A dialog will appear.</li>
12373 <li>To copy a meter, hold down <kbd class="mod1"></kbd> and drag it.</li>
12374
12375 ---
12376 title: Techniques for Working with Tempo and Meter
12377 part: subchapter
12378 ---
12379
12380 <h3>Techniques </h3>
12381
12382 <p>
12383   As a general approach, the best way to control tempo ramps is to use them in pairs.
12384 </p>
12385
12386 <p>
12387   Lets imagine we want to match the click to a drum performance recorded in 'free time'.
12388 </p>
12389
12390 <p>
12391   The first thing we need to do is determine where the first beat is. Drag the first meter to that position.
12392 </p>
12393
12394 <p>
12395   Now the first click will be in time with the first beat. To get all the other beats to align, we listen to the drums and visually locate the position of bar 4. You may wish to place the playhead here.
12396 </p>
12397
12398 <p>
12399   We then locate bar 4 in the BBT ruler and while holding the constraint modifier, drag it to bar 4 in the drum performance.
12400 </p>
12401
12402 <p>
12403   We notice that the click now matches the first 4 bars, but after that it wanders off. You will see this reflected in the tempo lines.. they won't quite match the drum hits. We now locate the earliest position where the click doesn't match, and place a new tempo just before this. Two bars later, place another new tempo.
12404 </p>
12405
12406 <p>
12407   Now while dragging any beat <strong>after</strong> the second new tempo, watch the drum audio and tempo lines until they align.
12408 </p>
12409
12410 <p class="note">
12411   Notice what is happening here: the tempo previous to your mouse pointer is being changed so that the beat you grabbed aligns with the pointer. Notice that the tempo lines previous to the changed one also move. This is because the previous tempo is ramping <strong>to</strong> the tempo you are changing. Look further to the left. The tempo lines in the first four bars do not move.
12412 </p>
12413
12414 <p>
12415   Again, some time later the click will not align. I didn't say this was easy.
12416 </p>
12417
12418 <p>
12419   Repeat the same technique: add two new tempos and drag the BBT ruler <strong>after</strong> the newest tempo so that the beats align with the audio again.
12420 </p>
12421
12422 <p>
12423   In a general sense, adding tempo markers in pairs allows you to 'pin' your previous work while you move further to the right.
12424 </p>
12425
12426 <h3>Another use case: matching accelerando</h3>
12427
12428 <p>
12429   Imagine you have some video and have located where your music cue begins. Move the first meter to that frame (you may snap to TC frames, but not music with an audio locked meter).
12430 </p>
12431
12432 <p>
12433   Find a starting tempo by listening to the click while you drag the meter's tempo vertically using the constraint modifier.
12434 </p>
12435
12436 <p>
12437   You have the playhead at point where the dude slams the phone down, and your idea was that 4|1|0 would be good for this, but you want an accelerando to that point.
12438 </p>
12439
12440 <p>
12441   Add a tempo at bar 4.
12442 </p>
12443
12444 <p>
12445   Holding down the constraint modifier, and with snap set to 'TC Frames', grab the BBT ruler just <strong>after</strong> 4|1|0. Drag the ruler so that 4|1|0 snaps to the 'phone' frame.
12446 </p>
12447
12448 <p class="note">
12449   Notice what happened: The second tempo was changed.<br />
12450   You had set a musical position for the second tempo marker. It was not aligned with the frame you wanted, so you dragged the BBT ruler, making the second tempo provide enough pulses over the ramp for 4|1|0 to align with the desired frame.
12451 </p>
12452
12453 <p>
12454   If the ramp doesn't feel right, you may add more points within it and keep adjusting beat positions in a similar manner.
12455 </p>
12456
12457 <h3>General</h3>
12458
12459 <p>
12460   Audio locked meters can be useful when composing, as they allow a continuous piece of music to be worked on in isolated segments, preventing the listening fatigue of a fixed form. Reassembly is left as an excercise for the reader.
12461 </p>
12462
12463
12464 ---
12465 title: Memory Locations
12466 part: chapter
12467 ---
12468
12469
12470 ---
12471 title: Arranging Regions
12472 part: chapter
12473 ---
12474
12475
12476 ---
12477 title: Region Loops and Groups
12478 part: chapter
12479 ---
12480
12481
12482 ---
12483 title: Mixing
12484 part: part
12485 ---
12486
12487
12488 ---
12489 title: Basic Mixing
12490 part: chapter
12491 ---
12492
12493
12494 ---
12495 title: Metering in Ardour
12496 part: subchapter
12497 ---
12498
12499 <h2>Introduction</h2>
12500
12501 <p>
12502   An engineer reading and using audio level meters compares to a musician 
12503   reading or writing sheet-music. Just like there are virtuoso musicians 
12504   who can't read a single note, there are great sound-engineers who just
12505   go by their ears and produce great mixes and masters without ever looking 
12506   at a single meter.
12507 </p>
12508
12509 <p>
12510   Yet, if you want to work in or with the broadcast industry, it is 
12511   usually unavoidable to use meters.
12512 </p>
12513
12514 <p>
12515   Audio level meters are very powerful tools that are useful in every 
12516   part of the entire production chain:
12517 </p>
12518
12519 <ul>
12520   <li>When tracking, meters are used to ensure that the input 
12521   signal does not <dfn>overload</dfn> and maintains reasonable 
12522   <dfn>headroom</dfn>.</li>
12523   <li>Meters offer a <dfn>quick visual indication</dfn> of a 
12524   activity when working with a large number of tracks.</li>
12525   <li>During mixing, meters provide an rough estimate of the 
12526   <dfn>loudness</dfn> of each track.</li>
12527   <li>At the mastering stage, meters are used to check 
12528   compliance with upstream <dfn>level</dfn> and <dfn>loudness 
12529   standards</dfn> and to optimize the <dfn>loudness range</dfn>
12530   for a given medium.</li>
12531 </ul>
12532
12533 <h2>Meter Types</h2>
12534
12535 <p>
12536   A general treatise on metering is beyond the scope of this 
12537   manual. It is a complex subject with a history...
12538   For background information and further reading we recommend:
12539 </p>
12540
12541 <ul>
12542   <li><a href="http://www.digido.com/how-to-make-better-recordings-part-2.html">How To Make Better Recordings in the 21st Century&mdash;An Integrated Approach to Metering, Monitoring, and Leveling Practices</a> by Bob Katz. Has a good historic overview of meters and motivates the K-meter</li>
12543   <li><a href="https://en.wikipedia.org/wiki/Peak_programme_meter#Table_of_characteristics">Wikipedia: Peak programme meter</a>&mdash;overview of meter types.</li>
12544   <li>"Audio Metering: Measurements, Standards and Practice: Measurements, Standards and Practics", by Eddy Brixen. ISBN: 0240814673</li>
12545   <li>"Art of Digital Audio", by John Watkinson. ISBN: 0240515870</li>
12546 </ul>
12547
12548 <p>
12549   There are different metering standards, most of which are available in Ardour. In short:
12550 </p>
12551
12552 <dl>
12553   <dt>Digital peak-meter</dt>
12554   <dd>A <dfn>Digital Peak Meter</dfn> displays the absolute maximum signal 
12555   of the raw audio PCM signal (for a given time). It is commonly used when 
12556   tracking to make sure the recorded audio never clips. To that end, DPMs 
12557   are always calibrated to 0&nbsp;<abbr title="DeciBel Full
12558   Scale">dBFS</abbr>, or the maximum level that can be represented digitally
12559   in a given system. This value has no musical reason whatsoever and depends 
12560   only on the properties of the signal chain or target medium. There are 
12561   conventions  for <dfn>fall-off-time</dfn> and <dfn>peak-hold</dfn>, but no 
12562   exact specifications.
12563   <p>
12564   Various conventions for DPM fall-off times and dBFS line-up level can be 
12565   chosen in <kbd class="menu">Edit &gt; Preferences &gt; GUI</kbd>.
12566   </p>
12567   </dd>
12568
12569   <dt>RMS meters</dt>
12570   <dd>An <dfn><abbr title="Root Mean Square">RMS</abbr>-type meter</dfn>
12571   is an averaging meter that looks at the energy in the signal. It 
12572   provides a general indication of loudness as perceived by humans. Ardour 
12573   features three RMS meters, all of which offer additonal peak indication.
12574   <ul>
12575     <li><dfn>K20</dfn>: A meter according to the K-system introduced by Bob
12576     Katz, scale aligned to -20&nbsp;dBFS, rise/fall times and color schema
12577     according to spec.</li>
12578     <li><dfn>K14</dfn>: Same as K20 with scale aligned to -14&nbsp;dBFS.</li>
12579     <li><dfn>K12</dfn>: Same as K20 with scale aligned to -12&nbsp;dBFS (since 3.5.143).</li>
12580     <li><dfn>Peak + RMS</dfn>: standard RMS, customizable via
12581     <kbd class="menu">Edit &gt; Preferences &gt; GUI &gt; Metering</kbd></li>
12582   </ul>
12583   </dd>
12584
12585   <dt>IEC PPMs</dt>
12586   <dd><dfn><abbr title="International Electrontechnical Commission">IEC</abbr>-type 
12587   <abbr title="Peak Programme Meters">PPM</abbr>s</dfn> are a mix between DPMs and 
12588   RMS meters, created mainly for the purpose of 
12589   interoperability. Many national and institutional varieties exist (<abbr
12590   title="European Broadcasting Union">EBU</abbr>, <abbr title="British Broadcasting
12591   Corporation">BBC</abbr>, <abbr title="Deutsche Industrie-Norm">DIN</abbr>). 
12592   <p>
12593   These loudness and metering standards provide a common point of 
12594   reference which is used by broadcasters in particular so that the 
12595   interchange of material is uniform across their sphere of influence,
12596   regardless of the equipment used to play it back.
12597   </p>
12598   <p>
12599   For home recording, there is no real need for this level of
12600   interoperability, and these meters are only strictly required when 
12601   working in or with the broadcast industry. However, IEC-type meters have 
12602   certain characteristics (rise-time, ballistics) that make them useful 
12603   outside the context of broadcast.
12604   </p>
12605   <p>
12606   Their specification is very exact, and consquently, there are no 
12607   customizable parameters.
12608   </p>
12609   </dd>
12610   
12611   <dt>VU meters</dt>
12612   <dd><dfn><abbr title="Volume Unit">VU</abbr> meters</dfn> are the dinosaurs (1939) 
12613   amongst the meters. They react very slowly, averaging out peaks.
12614   Their specification is very strict (300ms rise-time, 1&ndash;1.5% overshoot, 
12615   flat frequency response). Ardour's VU meter adheres to that spec, but for 
12616   visual consistency it is displayed as a bar-graph rather than needle-style
12617   (more below).
12618   </dd>
12619 </dl>
12620
12621 <h2>Ardour Specifics</h2>
12622
12623 <img class="right" src="/images/mixer-meter-context-menu.png" alt="mixer strip meter context menu" />
12624
12625 <p>
12626   Meters are available in various places in ardour:
12627 </p>
12628
12629 <ul>
12630   <li>The mixer window features fixed height meters for each <dfn>channel strip</dfn>.</li>
12631   <li>There are small (narrow) meters on each <dfn>track-header</dfn> in the editor window.</li>
12632   <li>There are variable height meters in the <dfn>meterbridge window</dfn>.</li>
12633   <li>Optionally, a fixed-size <dfn>master meter</dfn> can be displayed in the main toolbar.</li>
12634   <li>Various other locations (<dfn>file import</dfn>, <dfn>sends</dfn>) have level-meters.</li>
12635 </ul>
12636
12637 <p>
12638   They all share the same configuration and color-theme which is available in
12639   preferences and the theme-manager. Settings for the Peak and RMS+Peak meters 
12640   as well as VU meter standards are found in  
12641   <kbd class="menu">Edit &gt; Preferences &gt; GUI &gt; Metering</kbd>.
12642 </p>
12643
12644 <p>
12645   The type of meter and the <dfn>metering point</dfn> (the place in the signal chain
12646   where the meter taps the signal) are configurable in the context menu of each meter.
12647   Depending on the <kbd class="menu">Edit &gt; Preferences &gt; GUI &gt; Mixer
12648   Strip</kbd> settings, the metering point is also accessible via a button in
12649   each Mixer strip.
12650 </p>
12651
12652 <img class="right" src="/images/meter-preferences.png" alt="" />
12653
12654 <p>
12655   Regardless of meter type and standard the meter display will highlight red if 
12656   the signal on the given channel exceeds the configured peak threshold.
12657 </p>
12658
12659 <p>
12660   <kbd class="mouse">Left</kbd> on the peak-indicator button resets the
12661   <dfn>peak-hold indicator</dfn> of a single channel.<br />
12662   <kbd class="mod1 mouse">Left</kbd> resets a whole <dfn>group</dfn>, and<br/>
12663   <kbd class="mod13 mouse">Left</kbd> resets all meters.
12664 </p>
12665
12666 <h2>Overview of meter types</h2>
12667
12668 <p>
12669   The figure on the left below shows all available meter-types in Ardour 3.4 when fed with a -18&nbsp;dBFS 1&nbsp;kHz sine wave.
12670 </p>
12671
12672 <img class="right" style="max-width:45%;height:400px;" src="/images/needle-meters-18.png"
12673 alt="Needle-style meters as external LV2 plugins" />
12674 <img style="max-width:45%; height:400px" src="/images/meter-types-18.png"
12675 alt="Bar-graph meters in Ardour" />
12676 <br /><br />
12677
12678 <p>
12679   Due to layout concerns and consistent look &amp; feel, all meters available in 
12680   Ardour itself are bar-graph type meters. Corresponding needle-style meters&mdash;which take up more visual screen space&mdash;are available as 
12681   <a href="https://github.com/x42/meters.lv2/">LV2 plugins</a> (see image on the upper right).
12682 </p>
12683
12684 ---
12685 title: Signal Routing
12686 part: subchapter
12687 ---
12688
12689 <p>
12690   Ardour does most of its internal <dfn>signal routing</dfn> via JACK: 
12691   all track and bus inputs and outputs are JACK ports, as are sends and
12692   inserts&mdash;which means they can be tapped into by other JACK clients.
12693   Only the signal flow inside a track or bus (i.e. from <a
12694   href="/working-with-plugins/processor-box/">processor to processor</a>) is
12695   handled internally.
12696 </p>
12697
12698 <p>
12699   By default, Ardour will create the following connections:
12700 </p>
12701
12702 <ul>
12703   <li>
12704     <dfn>Track inputs</dfn> are optionally auto-connected to hardware inputs, in round robin order, depending on the setting you chose in the 
12705     <a href="/working-with-sessions/new-session-dialog"><kbd
12706     class="menu">Session &gt; New Session</kbd> dialog</a>.
12707   </li>
12708   <li>
12709     <dfn>Bus inputs</dfn> are left disconnected.
12710   </li>
12711   <li>
12712     The number of <dfn>track and bus outputs</dfn> are equal to the number
12713     of inputs of the master bus.
12714   </li>
12715   <li>
12716     Track and bus outputs are always auto-connected to the master bus inputs.
12717   </li>
12718   <li>
12719     Master bus outputs are connected to hardware outputs.
12720   </li>
12721 </ul>
12722
12723 <p>
12724   This configuration is normally sufficient to do basic tracking and playback of sessions without any adjustments. When changing these connections, be certain that there is good reason for doing so&mdash;it is generally not necessary and can often lead to problems.
12725 </p>
12726
12727 <p>
12728   However, for many workflows during mixing, more complicated signal routing is required. Fortunately, Ardour is very flexible in the ways it offers to connect things to each other.
12729 </p>
12730
12731 ---
12732 title: Busses and VCAs
12733 part: subchapter
12734 ---
12735
12736 <p>
12737   In order to use the process of mixing, Ardour offers two tools traditionally found on hardware mixing consoles: <dfn>Busses</dfn> and <dfn><abbr title="Voltage-Controlled Amplifier">VCA</abbr></dfn>s.
12738 </p>
12739
12740 <h2>Busses</h2>
12741
12742 <p>
12743   An Ardour bus can be considered a virtual track, as in a track that doesn't have a playlist (so, no regions).
12744 </p>
12745
12746 <p>
12747   Its use is to "group" some audio signals to be treated the same way. One simple use case is to group all the audio tracks containing the different drums of a drumkit. Routing all the drums tracks outputs to a bus allows, once the different levels amongst the drums have been set, to adjust the global level of the drumkit in the mix.
12748 </p>
12749
12750 <p>
12751   Bus usage goes way beyond this simple example though: busses, as tracks, can receive plugins for common audio treatment, and be routed themselves as needed. This makes for a very useful tool that is very commonly used both for musical purposes and computing ones: instead of using e.g. 10 discrete delay plugins on 10 different tracks, busses are often used as receivers of <a href="/signal-routing/aux-sends/">sends</a>, and only 1 delay plugin is used on this bus, reducing the processing power needed.
12752 </p>
12753
12754 <p class="note">Note that the Master strip, which by default receives the output from all tracks, <em>is</em> a bus itself.</p>
12755
12756 <h3>Audio Busses vs MIDI Busses</h3>
12757
12758 <p>
12759         Ardour supports 2 types of busses: Audio and MIDI. A MIDI bus differs from an audio bus just by its input (which is 1 midi input instead of <em>n</em> audio), the fact that you can put an instrument on it at creation time, whereas you can't easily add an instrument to an audio bus.
12760 </p>
12761
12762 <p>
12763   MIDI bus are provide a particularly efficient workflow for virtual drumkits where the arrangement uses different MIDI tracks. Moreover, busses with both Audio and MIDI inputs are well suited for vocoders and similar plugins.
12764 </p>
12765
12766 <p>
12767   Depending on the user's workflow and the way busses are used, 2 possibilities exists:
12768 </p>
12769
12770 <h3>Connecting a track to a bus via outputs</h3>
12771
12772 <img class="right" src="/images/connecting_bus_output.png" alt="Connecting a bus through a track's outputs">
12773
12774 <p>
12775         Connecting the output(s) of a track to the input(s) of the bus sends <em>all</em> the audio/MIDI to the bus. In the mixer strip, select (at the bottom) the OUTPUT button (often, by default, "Master"), and in the list, choose the input of a bus. Note that only the bus able to receive this output will show up, e.g. a mono bus wont be able to be connected to the output of a stereo track).
12776 </p>
12777
12778 <p>
12779         Obviously, doing so will (by default) disconnect the output from the Master's input, which means all the        audio/MIDI will be routed to the bus. For more complex routing, the OUTPUT button allows to show the <kbd class="menu">Routing Grid</kbd> that allows to plug the output of the track to multiple outputs at once, be it busses, tracks, Master... The button will then reflect these multiple connections by showing a <em>*number*</em>, number being the number of connections made in the routing grid.
12780 </p>
12781
12782 <h3>Connecting a track to a bus via Sends</h3>
12783
12784 <img class="left" src="/images/connecting_bus_send.png" alt="Connecting a bus through a send">
12785
12786 <p>
12787         This allows not to interrupt the natural flow of the signal, i.e. the track will still output to what its connected to (e.g. Master). The signal is "tapped" at the point of insertion of the send, to be sent to the bus. Right click where in the signal flow you want the send to happen, and select <kdb class="menu">New Aux Send... &gt; name_of_the_bus</kbd>.
12788 </p>
12789
12790 <p>
12791   By <kbd class="mouse">left-clicking</kbd> the send meter, it is possible to adjust the amount of signal sent to the bus. This is often the way tracks are connected to an effect bus, like a Delay bus.
12792 </p>
12793
12794 <p class="note">
12795   Busses can be plugged to other busses, through outputs or sends. Both example workflows discussed previously, i.e. busses for grouping tracks and busses for effects, can both coexist, as e.g. a "grouping" drum bus can have a send to a reverb bus, and be connected to a compressor bus.
12796 </p>
12797
12798 <h2>VCAs</h2>
12799
12800 <img class="left" src="/images/vcas.png" alt="VCAs strips">
12801
12802 <p>
12803    Although track/bus <a href="/working-with-tracks/track-and-bus-groups/">groups</a> offer a certain kind of grouped-control over gain, solo, mute and more, traditional mixing consoles have long had group master channels ("VCAs") which allows to combine both a single fader to control the group level while also allowing you to easily adjust the relative levels inside the group. For large projects, this can make mixing much easier to control.
12804 </p>
12805
12806 <p>
12807   It allows to use either or both of the conventions for combining multiple masters:
12808 </p>
12809
12810 <ul>
12811   <li>Nest VCAs (VCA 2 controls VCA 1 etc.)</li>
12812   <li>Chain VCAs (VCA 1 and VCA2 both control track or bus N)</li>
12813 </ul>
12814
12815 <h3>Using a VCA strip</h3>
12816
12817 <p>
12818   A VCA strip is made of (from top to bottom in the screenshot):
12819 </p>
12820
12821 <ul>
12822   <li><dfn>1</dfn>: number of the VCA</li>
12823   <li><dfn>X</dfn>: allows to hide the VCA strip. Left clicking this button toggles the exclusive visibility of the tracks connected to this VCA</li>
12824   <li><dfn>M</dfn>: mutes the VCA</li>
12825   <li><dfn>S</dfn>: solos the VCA</li>
12826   <li><dfn>A level meter</dfn>: allows to adjust the level of the VCA</li>
12827   <li><dfn>~vca~</dfn>: a VCA button to optionally connect to another VCA</li>
12828 </ul>
12829
12830 <p>
12831   Right-clicking the name button shows a context menus comprised of:
12832 </p>
12833
12834 <ul>
12835   <li><kbd class="menu">Rename</kbd>: Renames the VCA</li>
12836   <li><kbd class="menu">Color...</kbd>: Changes the color of the VCA button in the tracks connected to this one</li>
12837   <li><kbd class="menu">Drop All Slaves</kbd>: Deletes all connections to this VCA, i.e. no tracks are controlled by this VCA anymore</li>
12838   <li><kbd class="menu">Remove</kbd>: Deletes this VCA</li>
12839 </ul>
12840
12841 <h3>Connecting to a VCA strip</h3>
12842
12843 <img class="left" src="/images/connecting_to_vca.png" alt="Connecting to VCA">
12844
12845 <p>
12846   Connecting a track/bus/VCA to a VCA is as simple as clicking the VCA button on any mixer strip and choosing the VCA to connect to.
12847 </p>
12848
12849 <p class="note">
12850   The VCA button only shows up in mixer strips when at least 1 VCA exists, i.e., you have to first create a VCA before connecting it.
12851 </p>
12852
12853 ---
12854 title: Aux Sends
12855 part: subchapter
12856 ---
12857
12858 <p>
12859   <dfn>Auxilliary sends</dfn> are <a
12860   href="/working-with-plugins/processor-box/">processors</a> in a bus or
12861   track channel strip. They tap the signal at a specific point in the signal
12862   flow (pre-fader, post-fader, before or after EQs and other plugins, etc.)
12863   and send a copy of that signal somewhere else, without affecting the
12864   normal signal flow downwards to the channel fader.
12865 </p>
12866
12867 <p>
12868   Usually, aux sends from several tracks are collectively sent to a
12869   dedicated <dfn>Aux bus</dfn> in Ardour, to create a monitor mix for a 
12870   musician, or to feed an effect unit. The output of such a bus might
12871   be routed to separate hardware outputs (in the case of headphone or monitor 
12872   wedge mixes), or returned to the main mix (in the case of an effect).
12873 </p>
12874
12875 <p>
12876   Since sends are JACK ports, it is also possible to send the tapped signal
12877   somewhere else directly, which is not usually possible on hardware mixers
12878   (see <a href="/signal-routing/external-sends/">External Sends</a>).
12879 </p>
12880
12881 <p>
12882   It may be useful to 
12883   <a href="/signal-routing/comparing-aux-sends-and-subgroups">compare and contrast</a> 
12884   the use of aux sends with <a href="/signal-routing/subgrouping">subgrouping</a>.
12885 </p>
12886
12887 <h2>Adding a new aux bus</h2>
12888
12889 <p>
12890   Choose <kbd class="menu">Session &gt; Add New Track or Bus</kbd>. In the 
12891   <kbd class="menu">New Track &amp; Bus</kbd> dialog, select "Busses" in the Track/Bus 
12892   selector at the upper right.
12893 </p>
12894
12895 <h2>Adding a send to an aux bus</h2>
12896
12897 <p>
12898   Context-click on the processor box for the track you want to send to the bus, and 
12899   choose <kbd class="menu">New Aux Send</kbd>. From the submenu, choose the bus you 
12900   want to send to. A send will be added (and will be visible in the processor box). 
12901   Note that the submenu may be empty if you have not created a bus yet.
12902 </p>
12903
12904 <h3>Pre-fader and Post-fader Aux Sends</h3>
12905
12906 <p>
12907   Depending on whether you context-click above or below the fader in the processor box, 
12908   the new aux send can be placed before or after the fader in the channel strip. 
12909   <dfn>Post-fader</dfn> aux sends are typically used when using an aux for shared signal 
12910   processing (FX), so that the amount of effect is always proportional to
12911   the main mix fader. <dfn>Pre-fader</dfn> sends ensure that the level sent to the bus 
12912   is controlled <em>only</em> by the send, not the main fader&mdash;this is typical 
12913   when constructing headphone and monitor wedge mixes. 
12914 </p>
12915
12916 <h2>Adding a new aux bus and sending a Track Group to it</h2>
12917
12918 <p>
12919   You can add aux sends to all members of a group and connect them to a new aux bus 
12920   with a single click. After creating the track group (and adding tracks to it), 
12921   context-click on the group tab and choose either 
12922   <kbd class="menu">Add New Aux Bus (pre-fader)</kbd> or 
12923   <kbd class="menu">Add New Aux Bus (post-fader)</kbd>. A new aux bus will be created, 
12924   and a new aux send added to every member of the track group that connects to
12925   this  aux bus.
12926 </p>
12927
12928 <p class="fixme">Add images, fix factual inaccuracies</p>
12929 <h2>Altering Send Levels</h2>
12930
12931 <p>
12932   You can alter the amount of the signal received by a send that it delivers to the bus 
12933   it connects to. There are three approaches to this:
12934 </p>
12935
12936 <h3>Use the Send Fader</h3>
12937
12938 <p>
12939   Every send processor has a small horizontal fader that can be adjusted in the usual way. It is 
12940   not very big and so this can be a little unsatisfactory if you want very fine control 
12941   over the send level. 
12942 </p>
12943
12944 <h3>Mapping the Main Fader</h3>
12945
12946 <p>
12947   Double-clicking on the send in the processor box will allow you to use the 
12948   big fader of the mixer strip to control the send. The visual appearance of 
12949   the mixer strip will change to reflect this. Double-click the send again to 
12950   revert back to normal function for the strip.
12951 </p>
12952
12953 <h3>Map Aux Sends To Main Faders</h3>
12954
12955 <p>
12956   Pressing the button marked <kbd class="menu">Aux Sends</kbd> on a aux bus will 
12957   alter the channel strip for every track or bus that feeds the aux bus. Many 
12958   aspects of the strip will become insensitive and/or change their visual 
12959   appearance. More importantly, the main fader of the affected channel strips 
12960   will now control the send level and <strong>not</strong> the track gain. 
12961   This gives a larger, more configurable control to alter the level. Click the 
12962   <kbd class="menu">Aux Sends</kbd> button of the aux bus again to revert the 
12963   channel strips to their normal use.
12964 </p>
12965
12966 <h2>Disabling Sends</h2>
12967
12968 <p>
12969   Clicking on the small "LED" in the send display in the processor box of the 
12970   channel strip will enable/disable the send. When disabled, only silence will 
12971   be delivered to the aux bus by this track. When enabled, the signal arriving 
12972   at the send will be delivered to the aux bus.
12973 </p>
12974
12975 <h2>Send Panning</h2>
12976
12977 <p>
12978   Send panners can be configured to either be independent of the main
12979   panner, or to follow it. The latter could be useful for Reverb effects, or
12980   for in-ear monitor mixes delivered in stereo.
12981 </p>
12982
12983 ---
12984 title: Comparing Aux Sends and Subgroups
12985 menu_title: Auxes vs. Groups
12986 part: subchapter
12987 ---
12988
12989 <p>
12990   Auxes and Subgroups share a common concept&mdash;they both provide a way 
12991   for one or more tracks (or busses) to send their signal to a single bus so 
12992   that common signal processing can be applied to the mix of their signals. 
12993 </p>
12994
12995 <p>
12996   <dfn>Aux sends</dfn> leave the existing signal routing to the main mix in place, 
12997   and are typically used to create a separate mix to send to (for example) 
12998   monitors or headphones (for performer monitor mixes): 
12999 </p>
13000
13001 <img width="300px" src="/images/a3_aux_routing.png" alt="aux signal routing" />
13002
13003 <p>
13004   <dfn>Subgroups</dfn> usually remove the original signal routing to the main mix and replace it with a new one that delivers the output of the subgroup bus to the main mix instead.
13005 </p>
13006
13007 <img width="300px" src="/images/a3_subgroup_routes.png" alt="sub group signal routing" />
13008   
13009 ---
13010 title: External Sends
13011 part: subchapter
13012 ---
13013
13014 <p>
13015   Like a normal aux send, an <dfn>external send</dfn> taps the signal at a 
13016   specific within a channel strip, but delivers it to an external application 
13017   or piece of hardware rather than an Ardour bus. By itself, an external 
13018   send has no effect whatsoever on the audio signals within Ardour&mdash;it is a one-way signal routing that leaves all existing signal processing 
13019   just as it was.
13020 </p>
13021
13022 <p>
13023   Most people will not have much use for this, but it can be useful if you 
13024   want to experiment with external applications or hardware signal processing 
13025   applications.
13026 </p>
13027
13028 <h2>Adding an External Send</h2>
13029
13030 <p>
13031   Context-click on the 
13032   <a href="/working-with-plugins/processor-box">processor box</a> in a 
13033   channel strip (at the desired location, pre or post fader) and choose 
13034   <kbd class="menu">Add new External Send</kbd>. A dialog will appear 
13035   containing the standard Ardour 
13036   <a href="/signal-routing/the-patchbay"><dfn>patchbay</dfn></a> to allow 
13037   you to connect the send to the desired destination. 
13038 </p>
13039
13040 <p class="fixme">Broken links</p>
13041
13042 <h2>Removing an External Send</h2>
13043
13044 <p>You can remove an external send in several ways:</p>
13045
13046 <ul>
13047 <li><kbd class="mouse mod3">Right</kbd>-click the send in the processor box.</li>
13048 <li>Position the pointer over the send and press the <kbd>Del</kbd> key.</li>
13049 <li>Position the pointer over the send and press <kbd class="mod1">x</kbd>.</li>
13050 <li>Context-click the send and choose either <kbd class="menu">Cut</kbd> or 
13051   <kbd class="menu">Delete</kbd>.</li>
13052 </ul>
13053
13054 <h2>Altering Send Levels</h2>
13055
13056 <p>
13057   Just below the send in the processor box is a small fader that can be used 
13058   like all other faders in Ardour to control the gain applied to the signal 
13059   delivered by the send. Drag it to alter the level, Shift-click to restore 
13060   to unity (0dB) gain. 
13061 </p>
13062
13063 <h2>Disabling Sends</h2>
13064
13065 <p>
13066   Click the small "LED" in the send display within the processor box to turn 
13067   it on and off. When turned off, silence will be delivered to the send. When 
13068   turned on, the signal within the channel strip will be delivered.
13069 </p>
13070
13071 <h2>Editing Send Routing</h2>
13072
13073 <p>
13074   Double-clicking or Edit-clicking on the send in the processor box will 
13075   redisplay the patchbay dialog that allows you full control over the routing 
13076   of the send.
13077 </p>
13078   
13079 ---
13080 title: Inserts
13081 part: subchapter
13082 ---
13083
13084 <p>
13085   <dfn>Inserts</dfn> are signal tap points that can be placed anywhere
13086   inside a channel strip. Unlike Auxes, they will interrupt the signal flow,
13087   feeding the signal from before the insert point to its <dfn>Insert
13088   send(s)</dfn>, and connecting the remainder of the channel strip to the
13089   <dfn>Insert return(s)</dfn>, both of which are JACK ports which are
13090   visible to other JACK applications.
13091 </p>
13092
13093 <p>
13094   Inserts are the JACK equivalents of normalized switching jacks on an 
13095   analog console.
13096 </p>
13097
13098 <p>
13099   An insert allows you to either use a special external DSP JACK 
13100   application that is not available as a plugin, or to splice an external
13101   analog piece of gear into your channel strip, such as a vintage
13102   compressor, tube equalizer, etc. In the latter case, you would first
13103   connect your inserts to a pair of hardware ports, which are in turn
13104   connected to the outboard gear.
13105 </p>
13106
13107 <p>
13108   To disable (bypass) an insert, click on its LED in the processor box.
13109 </p>
13110
13111 <p class="note">
13112   When you create an insert, the signal will be interrupted until you make
13113   the relevant connections to the insert ports!
13114 </p>
13115
13116 <p class="note">
13117   Inserts will incur an additional JACK period of latency, which can be
13118   measured and compensated for during mixing, but not during tracking! 
13119 </p>    
13120
13121 ---
13122 title: Subgrouping
13123 part: subchapter
13124 ---
13125
13126 <p>
13127   <dfn>Subgrouping</dfn> (sometimes known as "Grouping" or "Audio Grouping")  
13128   is a way to collect related signals together to apply some common
13129   treatment, before sending them on to the main mix. One standard
13130   application is to group several tracks belonging to the same instrument or
13131   section (such as a drumkit or horn section), to be able to adjust their
13132   volume with a single fader, after their inner balance has been set using
13133   the track faders.
13134 </p>
13135
13136 <p>
13137   To create a subgroup from an existing Track/Bus group, context-click on 
13138   the relevant <a href="/working-with-tracks/track-and-bus-groups">group tab</a>, 
13139   and choose <kbd class="menu">Add new subgroup bus</kbd>. A new bus will be 
13140   created and every member of the track group will have its outputs disconnected 
13141   from other destinations and then connected to the new bus inputs. The bus 
13142   outputs will feed the master bus unless you have selected manual connections 
13143   for the session. The bus will be named after the track group name.
13144 </p>
13145
13146 <p>
13147   Alternatively, you can create a group manually, by first adding a new bus,
13148   then, for each track you want to feed the subgroup bus, disconnect its outputs
13149   from the master and connect it to the inputs of the subgroup bus instead.
13150   You can do this in the global audio patchbay or a track by track basis via the 
13151   output button of each track's channel strip.
13152 </p>
13153
13154 <p>
13155   To remove a subgroup (bus), context-click on the track group tab, and select 
13156   <kbd class="menu">Remove subgroup bus</kbd>. You can also simply delete the 
13157   bus itself. Note that this operation will <strong>not</strong> restore signal 
13158   routing to the way it was before the addition of the subgroup bus&mdash;tracks 
13159   that had been subgrouped will be left with their main outputs disconncted.
13160 </p>  
13161
13162 ---
13163 title: Patchbay
13164 part: subchapter
13165 ---
13166
13167 <p>
13168   The <dfn>patchbay</dfn> is the main way to make connections to, from and 
13169   within Ardour's mixer. 
13170 </p>
13171
13172 <p class="note">
13173   Notable exceptions are internal aux sends and connections to the monitor bus (if 
13174   you are using one): these cannot be controlled from a patchbay, and are 
13175   basically not under manual control at all.
13176 </p>
13177
13178 <img class="right" src="/images/connection-manager.png" alt="an example patchbay" />
13179
13180 <p>
13181   The patchbay presents two groups of ports; one set of <dfn>sources</dfn>  (which produce data), and one of <dfn>destinations</dfn> (which consume data). Depending on the relative number of each, the sources will be placed on the left or the top of the dialogue, and the destinations on the right or the bottom. Thus, in general, signal flow is from top or left to right or bottom.
13182 </p>
13183
13184 <p>
13185   Both sources and destinations are divided up into groups, with each group being given a tab:
13186 </p>
13187
13188 <dl class="narrower-table">
13189   <dt>Hardware</dt>
13190   <dd>
13191     These are ports which are connected to a physical piece of hardware (a sound card or MIDI interface).</dd>
13192   <dt>Ardour Busses</dt>
13193   <dd>All ports belonging to busses.</dd>
13194   <dt>Ardour Tracks</dt>
13195   <dd>All ports belonging to tracks.</dd>
13196   <dt>Ardour Misc</dt>
13197   <dd>
13198     These are other ports that do not fit into the previous two categories; for example, the ports on which the metronome click is output, and MIDI ports for things like control surfaces and timecode.
13199   </dd>
13200   <dt>Other</dt>
13201   <dd>
13202     If you have other JACK clients running, their ports will be found here. If there are no such ports, the tab will not exist (on one or both axes of the grid).</dd>
13203 </dl>
13204
13205 <p>
13206   The main part of the patchbay is a <dfn>matrix grid</dfn>. Within this grid, green dots represent connections, and you can click in any of the squares to make or break connections. You can also click and drag to draw a line of connections, which is sometimes useful for making many connections at once.
13207 </p>
13208
13209 <p>
13210   In the example patchbay shown above we can note various things. We are using the <kbd class="menu">Ardour Tracks</kbd> sources tab, so we see the output ports of the three tracks in our session: Fred, Jim and Foo. Our destinations are from the <kbd class="menu">Ardour Busses</kbd> tab, so we have the inputs of a session bus, Sheila, and the inputs of the master bus. Fred and Jim have stereo outputs, so have L and R connections. Foo is a MIDI track, so it only has one connection, and its squares in the grid are coloured light grey to indicate that no connection can be made between Foo (a MIDI output) and our busses (which are all audio-input).
13211 </p>
13212
13213 <p>
13214   The green dots in the example show that both Foo and Bar are connected to the master bus, left to left and right to right.
13215 </p>
13216
13217 <h2>Variants on the Patchbay</h2>
13218
13219 <p>
13220   Slightly different versions of the patchbay are available from different places in Ardour. For a global view of all JACK audio connections, use <kbd class="menu">Window &gt Audio Patchbay</kbd>, or press <kbd class="mod2">P</kbd>. A corresponding MIDI Connection Manager can be opened using <kbd class="mod23">P</kbd>.
13221 </p>
13222
13223 <p>
13224   There is also a patchbay available when connecting individual tracks; clicking on the input or output buttons of a mixer strip will open a connection manager which has the corresponding track input or output as the only destination or source, with all other ports available for connection to it.
13225 </p>
13226
13227 <h2>Other patchbay features</h2>
13228
13229 <p>
13230   Context-clicking on a port name in the connection manager opens a menu which provides a few handy options:
13231 </p>
13232
13233 <dl class="wide-table">
13234   <dt><kbd class="menu">Add audio port</kbd> and <kbd class="menu">Add MIDI port</kbd></dt>
13235   <dd>
13236     These options add audio or MIDI ports to the thing that you opened the menu over, if this is possible. In this way, for example, tracks and busses can be extended to have more inputs or outputs.
13237   </dd>
13238   <dt><kbd class="menu">Remove</dt>
13239   <dd>
13240     Removes the given port, if possible. <kbd class="mouse mod3">Right</kbd>-clicking a port will do the same.
13241   </dd>
13242   <dt><kbd class="menu">Disconnect all from…</kbd></dt>
13243   <dd>Disconnects everything from the given port.</dd>
13244   <dt><kbd class="menu">Rescan</kbd></dt>
13245   <dd>
13246     Ardour will try to keep abreast of any changes to the JACK ports on your system, and reflect them in any connection managers which are open. If for some reason this fails, use this to re-scan the list of ports and update the manager.
13247   </dd>
13248   <dt><kbd class="menu">Show individual ports</kbd></dt>
13249   <dd>
13250     If you have a session which has lots of multi-channel tracks or busses, it may be an unnecessary detail that you have to connect left to left and right to right every time you make a connection. This obviously gets worse with higher channel counts (such as for 5.1 or Ambisonics). To make life easier with such sessions, you can untick Show individual ports. After that, the channels of tracks and busses will be hidden, and any green dots you add in the connection manager will automatically connect each channel of the source to the corresponding channel of the destination (left to left, right to right and so on). In this mode, a half-circle in the connection grid indicates that some (but not all) of the source's ports are connected to the destination.
13251   </dd>
13252   <dt><kbd class="menu">Flip</kbd></dt>
13253   <dd>
13254     This will flip the visible ports on the vertical axis with those on the horizontal. If, for example, the top of the connection manager is showing <kbd class="menu">Ardour Busses</kbd> and the right is showing <kbd class="menu">Hardware</kbd>, flip will swap the view to the opposite. You can also flip by pressing <kbd>f</kbd>. Note that if there are no matching tabs on both axes, flipping will be impossible.
13255   </dd>
13256 </dl>
13257
13258 ---
13259 title: Track/Bus Signal Flow
13260 part: subchapter
13261 ---
13262
13263 <h2>Overview</h2>
13264
13265 <p>
13266 In each individual Track or Bus the signal flow is top to bottom. Consider the following diagram:
13267 </p>
13268
13269 <p class="center"><img width="360px" src="/images/track_signal_routing.png" alt="track signal routing" /></p>
13270
13271 <p>
13272   Trim, Fader and Panner are provided by Ardour. The Processor-Box can hold 3rd Party Plugins or host-provided redirects (insert, aux-send,..).
13273 </p>
13274
13275 <p class="fixme">Where is the processor box in that image?</p>
13276
13277 <p>
13278   An important aspect is that the signal flow is multi-channel and not fixed throughout the track. For example, a Track can have a mono input, a mono to stereo plugin (e.g. reverb) flowing into a surround panner with 6 outputs. The design of Ardour is that width of the signal flow is defined by the passage through plugins in the processor box, followed by panning.
13279   The number of inputs to the panner is defined by the number outputs of the last plugin in the chain. The number of panner outputs is equal to the track's outputs ports, which can be added and remove dynamically. This schema called <em>Flexible I/O</em>. It's very powerful and a distinct feature of Ardour.
13280 </p>
13281
13282 <p class="note">
13283   The golden rule of processor signal flow:<br/>The number of outputs of one link of the process chain defines the number inputs of the next, until the panner.
13284 </p>
13285
13286 <p>
13287   Due to this rule there is one very common case that is hard to achieve: Keep a mono track mono.  With <em>Flexible I/O</em>, if a stereo plugin is added on a mono track, the signal flow after that plugin becomes stereo.
13288 </p>
13289
13290 <h2>Strict I/O</h2>
13291
13292 <p>
13293   Strict I/O enforces a simple rule: Plugins have the same number of inputs as they have outputs. By induction the track will have as many output-ports as there are input ports.
13294 </p>
13295
13296 <ol>
13297         <li>Adding a Plugin will not modify the signal-flow. The number of plugin outputs is forced to the number of inputs present at the point of insertion.
13298                 If a plugin-pin is missing, it is ignored. If Plugin-pin is unconnected, it is fed with silence. Unconnected plugin outputs are ignored).</li>
13299         <li>Strict I/O enforces the number of output ports.  The number of inputs to the panner (outputs of last plugin) defines the number of track outputs (after panner).
13300                 Required ports are automatically added, excess ports are removed. The user cannot manually add/remove output ports.</li>
13301 </ol>
13302
13303 <p>
13304   Strict I/O is set when creating the track and can later be en/disabled dynamically in the context menu of every mixer strip.
13305 </p>
13306
13307 <p class="center"><img src="/images/strict_io_routing.png" alt="strict i/o routing" /></p>
13308
13309 <p>
13310   There are two exceptions to the above rule 1.
13311 </p>
13312
13313 <ul>
13314 <li>Midi Synths. When adding a synth at a point where there is a Midi port only, the synthesizer plugin will add audio-output ports,
13315   which trickle down the processor chain to all follow up plugins as inputs and in turn force their outputs to match.</li>
13316 <li>Side chain inputs are not affected by strict I/O</li>
13317 </ul>
13318
13319 <h2>Customizing the Signal Flow</h2>
13320
13321 <p>
13322   The signal flow though the mixer can be customized at every processor node via "Pin Configuration" in the context menu of every processor.
13323   User customization override all automatic (flexible/strict I/O mode) inferred output port settings for the given processor.
13324   Non-customized plugins downstream will follow suit depending on the selected route mode, e.g. adding an additional output to a plugin on a track set to strict I/O will trickle down the process chain until the output and result in the addition of an output port.  This is useful for example in case of a mono to stereo reverb.
13325 </p>
13326
13327 <p>
13328   One can also bypass plugin instances with a 'thru' connection. This connection is latency compensated. One example is separate Left/Right channel Equalization using two mono plugins on a stereo track:
13329 </p>
13330
13331 <p class="center"><img src="/images/left_right_eq.png" alt="separate left/right Eq" /></p>
13332
13333 ---
13334 title: Muting and Soloing
13335 part: subchapter
13336 ---
13337
13338 <p>
13339   Each track and bus has two buttons which have important implications 
13340   for signal flow: <dfn>mute</dfn> and <dfn>solo</dfn>. The behaviour 
13341   of these buttons is configurable in Ardour, to suit different studio 
13342   set-ups.
13343 </p>
13344
13345 <h2>Without a monitor bus</h2>
13346
13347 <p>
13348   If you are using Ardour without a monitor bus, there is only one way 
13349   in which mute and solo will work:
13350 </p>
13351
13352 <ul>
13353   <li>
13354     Mute on a track or bus will mute that track on the master bus,
13355      so that it will not be heard.
13356   </li>
13357   <li>
13358     Solo on a track or bus will solo that track or bus and mute all 
13359     others. Soloing a bus will also solo any tracks or 
13360     busses which feed that bus.
13361   </li>
13362 </ul>
13363
13364 <h2>With a monitor bus</h2>
13365
13366 <p>
13367   For setups with a monitor bus, you have more options, mostly 
13368   governed by the setting of the 
13369   <kbd class="option">Solo controls are Listen controls</kbd> option 
13370   in <kbd class="menu">Edit &gt; Preferences &gt; Solo / mute.
13371 </p>
13372
13373 <p>
13374   With <kbd class="optoff">Solo controls are Listen controls</kbd> 
13375   unticked, behaviour is almost exactly the same as the situation 
13376   without a monitor bus. Mute and solo behave the same, and the monitor 
13377   bus is fed from the master bus, so it sees the same thing.
13378 </p>
13379
13380 <p>
13381   With <kbc class="option">Solo controls are Listen controls</kbd> 
13382   ticked, the master and monitor busses behave differently. In this 
13383   mode, solo controls are more properly called <dfn>listen</dfn> 
13384   controls, and Ardour's solo buttons will change their legend from 
13385   <samp>S</samp> to either <samp>A</samp> or <samp>P</samp> to 
13386   reflect this.
13387 </p>
13388
13389 <p>
13390   Now, without any mute or listen, the monitor bus remains fed by 
13391   the master bus. Also:
13392 </p>
13393
13394 <ul>
13395   <li>
13396     Mute will mute the track or bus, so that it will not be heard 
13397     anywhere (neither on the master nor monitor busses), much as before.
13398   </li>
13399   <li>
13400     Listen will disconnect the monitor bus from the master bus, so 
13401     that the monitor bus now only receives things that are "listened to". 
13402     Listen will not perform any muting, and hence the master bus will 
13403     not be affected by a listened track or bus.
13404   </li>
13405 </ul>
13406
13407 <p>
13408   When solo controls are listen controls, the listening point can be set
13409   to either After-Fade Listen (AFL) or Pre-Fade Listen (PFL). The precise 
13410   point to get the signal from can further be configured using the 
13411   <kbd class="menu">PFL signals come from</kbd> and 
13412   <kbd class="menu">AFL signals come from</kbd> options.
13413 </p>
13414
13415 <p>
13416   The solo-mute arrangement with a monitor bus is shown below:
13417 </p>
13418
13419 <img src="/images/solo-mute.png" alt="mute/solo signal flow" />
13420
13421 <p> 
13422   Here we have a number of tracks or busses (in orange). Each one has an 
13423   output which feeds the master bus. In addition, each has PFL and AFL 
13424   outputs; we have a choice of which to use. PFL/AFL from each track or 
13425   bus are mixed. Then, whenever anything is set to AFL/PFL, the monitor out 
13426   becomes just those AFL/PFL feeds; the rest of the time, the monitor out is 
13427   fed from the master bus.
13428 </p>
13429
13430 <p>
13431   In this scheme Solo has no effect other than to mute other non-soloed tracks; 
13432   with solo (rather then listen), the monitor out is fed from the master bus.
13433 </p>
13434
13435 <h2>Other solo options</h2>
13436
13437 <p>
13438   <kbd class="menu">Edit &gt; Preferences &gt;  Solo / Mute</kbd> has some
13439   more solo options:
13440 </p>
13441
13442 <h3>Solo-in-place mute cut</h3>
13443
13444 <p>
13445   When using solo-in-place (SiP), in other words when soloed tracks are being 
13446   listened to on the master bus, this fader specifies the gain that will be 
13447   applied to other tracks in order to mute them. Setting this level to
13448   -∞&nbdp;dB will mean that other tracks will not be heard at all; setting to 
13449   some higher value less than 0dB means that other non-soloed tracks will be h
13450   eard, just reduced in volume compared to the soloed tracks. Using a value 
13451   larger than -∞dB is sometimes called "Solo-In-Front" by other DAWs, because 
13452   the listener has the sense that soloed material is "in front" of other 
13453   material. In Ardour, this is not a distinct mode, but instead the mute cut 
13454   control offers any level of "in-front-ness" that you might want to use.
13455 </p>
13456
13457 <h3>Exclusive solo</h3>
13458
13459 <p>
13460   If this is enabled, only one track or bus will ever be soloed at once; soloing 
13461   track B while track A is currently soloed will un-solo track A before soloing 
13462   track B.
13463 </p>
13464
13465 <h3>Show solo muting</h3>
13466
13467 <p>
13468   If this is enabled, the mute button of tracks and busses will be drawn 
13469   outlined to indicate that the track or bus is muted because something else 
13470   is soloed. This is enabled by default, and we recommend that you leave it 
13471   that way unless you are extremely comfortable with Ardour's mute/solo
13472   behaviour.
13473 </p>
13474
13475 <h3>Soloing overrides muting</h3>
13476
13477 <p>
13478   If this is enabled, a track or bus that is both soloed and muted will behave 
13479   as if it is soloed.
13480 </p>
13481
13482 <h3>Mute affects…</h3>
13483
13484 <p>
13485   These options dictate whether muting the track will affect various routes out 
13486   of the track; through the sends, through the control outputs (to the monitor 
13487   bus) and to the main outputs.
13488 </p>
13489   
13490 ---
13491 title: Panning
13492 part: subchapter
13493 ---
13494
13495 <p>
13496   <dfn>Panning</<dfn> is the process of distributing one or more signals
13497   across a series of outputs so that the listener will have the
13498   experience of them coming from a particular point or area of the
13499   overall listening field.
13500 </p>
13501
13502 <p>
13503   It is used to create a sense of space and/or a sense of motion in an
13504   audio mix. You can spread out different signals across the space, and
13505   make them move over time.
13506 </p>
13507
13508 <h2>Types of Panners</h2>
13509
13510 <p>
13511   The way a panner works depends a great deal on how many signals it
13512   is going to process and how many outputs it will send them to. The
13513   simplest case is distributing a single signal to 2 outputs, which is
13514   the common case when using a "mono" track and a stereo speaker
13515   setup.
13516 </p>
13517
13518 <p>
13519   But panning in Ardour could theoretically involve distributing any
13520   number of signals to any number of ouputs. In reality, Ardour does
13521   not have specific panners for each different situation. Currently,
13522   it has dedicated panners for the following situations:
13523 </p>
13524
13525 <ul>
13526   <li>1 signal distributed to 2 outputs (the mono panner)</li>
13527   <li>2 signals distributed to 2 outputs (the stereo panner)</li>
13528   <li>N signals distributed to M outputs (the VBAP panner)</li>
13529 </ul>
13530
13531 <p>  
13532   Even for each of these cases, there are many different ways to
13533   implement panning. Ardour currently offers just one solution to each
13534   of these situations, but in the future will offer more.
13535 </p>
13536
13537 <p>
13538   In addition to the panners, Ardour has a balance control for subtle
13539   corrections to existing stereo images.
13540 </p>
13541
13542 ---
13543 title: Mono Panner
13544 part: subchapter
13545 ---
13546
13547 <p>
13548   The default <dfn>mono panner</dfn> distributes 1 input to 2 outputs. Its
13549   behaviour is controlled by a single parameter, the <dfn>position</dfn>. By
13550   default, the panner is centered.
13551 </p>
13552
13553 <h2>Mono Panner User Interface</h2>
13554
13555 <img src="/images/mono-panner-annotated.png" alt="image of the mono panner"/>
13556
13557 <p class="note">
13558   The mono panner looks a quite similar to the
13559   <a href="/mixing/panning/stereo_panner">stereo panner</a>
13560   interface. The difference is that the L/R labels in the lower half
13561   of the mono panner do not move because there is no "width" to
13562   control.
13563 </p>
13564
13565 <h2>Using the mouse</h2>
13566
13567 <p>To change the position smoothly, press the right button and drag
13568   anywhere within the panner. <em>Note: you do not need
13569   to grab the position indicator in order to drag</em>
13570 </p>
13571
13572 <dl class="faq">
13573
13574 <dt>Reset to defaults</dt>
13575 <dd>Click <kbd class="mod3 mouse">right</kbd></dd>
13576
13577 <dt>Change to a "hard left"</dt>
13578 <dd>Double click <kbd class="mouse">right</kbd> in the left side
13579   of the panner</dd>
13580
13581 <dt>Change to a "hard right"</dt>
13582 <dd>Double click <kbd class="mouse">right</kbd> in the right side
13583   of the panner</dd>
13584
13585 <dt>Set the position to center</dt>
13586 <dd>Double Click <kbd class="mouse">right</kbd> in the middle of the panner</dd>
13587 </dl>
13588
13589 <h2>Keyboard bindings</h2>
13590
13591 <p>
13592   When the pointer is within a mono panner user interface, the following keybindings are available to operate on that panner:
13593 </p>
13594
13595 <dl>
13596   <dt><kbd>&larr;</kbd> / <kbd class="mod1">&larr;</kbd></dt>
13597   <dd>move position 1&deg; / 5&deg; to the left</dd>
13598   <dt><kbd>&rarr;</kbd> / <kbd class="mod1">&rarr;</kbd></dt>
13599   <dd>move position 1&deg; / 5&deg; to the right</dd>
13600   <dt><kbd>0</kbd></dt>
13601   <dd>reset position to center</dd>
13602 </dl>
13603
13604 <h2>Using the scroll wheel/touch scroll</h2>
13605
13606 <p>
13607   When the pointer is within a mono panner user interface, the scroll wheel may be used as follows:
13608 </p>
13609
13610 <dl>
13611   <dt><kbd class="mouse">&uArr;</kbd> or <kbd class="mouse">&lArr;</kbd></dt>
13612   <dd>move position to the left by 1&deg;</dd>
13613   <dt><kbd class="mod1 mouse">&uArr;</kbd> or <kbd class="mod1 mouse">&lArr;</kbd></dt>
13614   <dd>move position to the left by 5&deg;</dd>
13615   <dt><kbd class="mouse">&dArr;</kbd> or <kbd class="mouse">&rArr;</kbd></dt>
13616   <dd>move position to the right by 1&deg;</dd>
13617   <dt><kbd class="mod1 mouse">&dArr;</kbd> or <kbd class="mod1 mouse">&rArr;</kbd></dt>
13618   <dd>move position to the right by 5&deg;</dd>
13619 </dl>
13620
13621 ---
13622 title: Balance Control
13623 part: subchapter
13624 ---
13625
13626 <p>
13627   For stereo tracks, you can now switch between the default stereo panner and a traditional <dfn>balance control</dfn> by right-clicking on the panner widget.
13628 </p>
13629
13630 <img class="left" src="/images/stereo-balance.png" alt="Stereo Balance
13631 control"/>
13632
13633 <p>
13634   When the balance is centered, the incoming signals will be unaffected. Moving it to one side will linearly attenuate the signal of the opposite side.
13635 </p>
13636
13637 <p class="note">
13638   While the balance control is considerably less flexible than the stereo panner, it works with arbitrary content without danger of introducing comb filter artifacts.
13639 </p>
13640
13641 ---
13642 title: Stereo Panner
13643 part: subchapter
13644 ---
13645
13646 <p>
13647   The default <dfn>stereo panner</dfn> distributes two inputs to two outputs. Its
13648   behaviour is controlled by two parameters, <dfn>width</dfn> and
13649   <dfn>position</dfn>. By default, the panner is centered at full width.
13650 </p>
13651
13652 <p>
13653   The stereo panner assumes that the signals
13654   you wish to distribute are either uncorrelated (i.e. totally 
13655   independent), or that they contain a stereo image which is 
13656   <dfn>mono-compatible</dfn>, such as a co-incident microphone recording, or a 
13657   sound stage that has been created with pan pots.<sup><a href="#caveat">*</a></sup>
13658 </p>
13659
13660 <p class="note">
13661   With the default values it is not possible to alter the position,
13662   since the width is already spread entirely across both outputs. To
13663   alter the position, you must first reduce the width.
13664 </p>
13665
13666 <h2>Stereo Panner User Interface</h2>
13667
13668 <img src="/images/stereo-panner-annotated.png" alt=""/>
13669
13670 <p>
13671   The <dfn>panner user interface</dfn> consists of three elements, divided between
13672   the top and bottom half. Click and/or drag in the top half to
13673   control position; click and/or drag in the bottom half to control
13674   width (see below for details).
13675 </p>
13676
13677 <p>
13678   In the top half is the position indicator, which shows where the
13679   center of the stereo image is relative to the left and right
13680   edges. When this is the middle of the panner, the stereo image is
13681   centered between the left and right outputs. When it all the way to
13682   the left, the stereo image collapses to just the left speaker. 
13683 </p>
13684
13685 <p>
13686   In the bottom half are two signal indicators, one marked "L" and the
13687   other "R". The distance between these two shows the width of the
13688   stereo image. If the width is reduced to zero, there will only be a
13689   single signal indicator marked "M" (for mono), whose color will
13690   change to indicate the special state.
13691 </p>
13692
13693 <p>
13694   It is possible to invert the outputs (see below) so that whatever
13695   would have gone to the right channel goes to the left and vice
13696   versa. When this happens, the entire movable part of the panner
13697   changes color to indicate clearly that this is the case. 
13698 </p>
13699
13700 <h3>Position vs. L/R</h3>
13701
13702 <p>
13703   Although the implementation of the panner uses the "position"
13704   parameter, when the user interface displays it numerically, it shows 
13705   a pair of numbers that will be familiar to most audio engineers. 
13706 </p>
13707
13708 <table>
13709 <tr><th>Position</th><th>L/R</th><th>English</th></tr>
13710 <tr><td>0</td><td>L=50% R=50%</td><td>signal image is midway between
13711     left and right speakers</td></tr>
13712
13713 <tr><td>-1</td><td>L=100% R=0%</td><td>signal image is entirely
13714     at the left speaker</td></tr>
13715
13716 <tr><td>1</td><td>L=0% R=100%</td><td>signal image is entirely
13717     at the right speaker</td></tr>
13718 </table>
13719
13720 <p>
13721   One way to remember this sort of convention is that the middle of the
13722   USA is not Kansas, but "Los Angeles: 50% New York: 50%". 
13723 </p>
13724
13725 <h3>Examples In Use</h3>
13726
13727 <table>
13728 <tr><th>Appearance</th><th>Settings</th></tr>
13729 <tr><td><img src="/images/stereo-panner.png"></td><td>Width=100%,
13730     L=50 R=50</td></tr>
13731 <tr><td><img src="/images/stereo-panner-zero.png"></td><td>Width=0%,
13732     L=50 R=50</td></tr>
13733 <tr><td><img src="/images/stereo-panner-inverted.png"></td><td>Width=-100%, Position = 0 (center)</td></tr>
13734 <tr><td><img src="/images/stereo-panner-right.png"></td><td>Width=36%,
13735     L=44 R=56</td></tr>
13736 <tr><td><img src="/images/stereo-panner-hard-right.png"></td><td>Width=0%,
13737     L=0 R=100</td></tr>
13738 </table>
13739
13740 <h4>Using the mouse</h4>
13741
13742 <p>
13743   Mouse operations in the upper half of the panner adjust the position
13744   parameter, constrained by the current width setting. 
13745 </p>
13746 <p>
13747   Mouse operations in the lower half of the panner adjust the width
13748   parameter, constrained by the current position setting. 
13749 </p>
13750 <p>
13751   To change the position smoothly, press the right button and drag
13752   within the top half of the panner, then release. The position will
13753   be limited by the current width setting. <em>Note: you do not need
13754   to grab the position indicator in order to drag.</em>
13755 </p>
13756 <p>
13757   To change the width smoothly, press the right button and drag
13758   within the lower half of the panner, then release. The width will be
13759   limited by the current position setting. <em>Note: you do not need to
13760   grab the L/R indicators in order to drag.</em>
13761 </p>
13762
13763 <dl class="faq">
13764
13765 <dt>Reset to defaults</dt>
13766 <dd>Click <kbd class="mod3 mouse">right</kbd></dd>
13767
13768 <dt>Change to hard left</dt>
13769 <dd>Double click <kbd class="mod2 mouse">right</kbd> in the upper left half
13770   of the panner</dd>
13771
13772 <dt>Change to a hard right</dt>
13773 <dd>Double click <kbd class="mod2 mouse">right</kbd> in the upper right half
13774   of the panner</dd>
13775
13776 <dt>Move position as far left as possible, given width</dt>
13777 <dd>Double click <kbd class="mouse">right</kbd> in the upper left half of the
13778   panner</dd>
13779
13780 <dt>Move position as far right as possible, given width</dt>
13781 <dd>Double click <kbd class="mouse">right</kbd> in the upper right half of the
13782   panner</dd>
13783
13784 <dt>Set the position to center</dt>
13785 <dd>Click <kbd class="mouse">right</kbd> in the upper middle of the panner</dd>
13786
13787 <dt>Reset to maximum possible width</dt>
13788 <dd>Double click <kbd class="mouse">right</kbd> on the lower left side</dd>
13789
13790 <dt>Invert (flip channel assignments)</dt>
13791 <dd>Double click <kbd class="mouse">right</kbd> on the lower right side</dd>
13792
13793 <dt>Set width to 0&deg;</dt>
13794 <dd>Double click <kbd class="mouse">right</kbd> in the lower middle</dd>
13795 </dl>
13796
13797 <h4>Keyboard bindings</h4>
13798
13799 <p>
13800   When the pointer is within a stereo panner user interface, the following
13801   keybindings are available to operate on that panner:
13802 </p>
13803
13804 <dl>
13805   <dt><kbd>&uarr;</kbd> / <kbd class="mod1">&uarr;</kbd></dt>
13806   <dd>increase width by 1&deg; / 5&deg;</dd>
13807   <dt><kbd>&darr;</kbd> / <kbd class="mod1">&darr;</kbd></dt>
13808   <dd>decrease width by 1&deg; / 5&deg;</dd>
13809   <dt><kbd>&larr;</kbd> / <kbd class="mod1">&larr;</kbd></dt>
13810   <dd>move position 1&deg; / 5&deg; to the left</dd>
13811   <dt><kbd>&rarr;</kbd> / <kbd class="mod1">&rarr;</kbd></dt>
13812   <dd>move position 1&deg / 5&deg; to the right</dd>
13813   <dt><kbd>0</kbd></dt>
13814   <dd>reset position to center</dd>
13815   <dt><kbd class="mod2">&uarr;</kbd></dt>
13816   <dd>reset width to full (100%)</dd>
13817 </dl>
13818
13819 <h4>Using the scroll wheel/touch scroll</h4>
13820
13821 <p>
13822   When the pointer is within a stereo panner user interface, the scroll
13823   wheel may be used as follows:
13824 </p>
13825
13826 <dl>
13827   <dt><kbd class="mouse">&lArr;</kbd> / <kbd class="mod1 mouse">&lArr;</kbd></dt>
13828   <dd>increase width by 1&deg; / 5&deg;</dd>
13829   <dt><kbd class="mouse">&rArr;</kbd> / <kbd class="mod1 mouse">&rArr;</kbd></dt>
13830   <dd>decrease width by 1&deg; / 5&deg;</dd>
13831   <dt><kbd class="mouse">&uArr;</kbd> / <kbd class="mod1 mouse">&uArr;</kbd></dt>
13832   <dd>move position 1&deg; / 5&deg; to the left</dd>
13833   <dt><kbd class="mouse">&dArr;</kbd> / <kbd class="mod1 mouse">&dArr;</kbd></dt>
13834   <dd>move position 1&deg; / 5&deg;to the right</dd>
13835 </dl>
13836
13837 <h2><a name="caveat"></a>Stereo panning caveats</h2>
13838
13839 <p class="warning">
13840   The stereo panner will introduce unwanted side effects on
13841   material that includes a time difference between the channels, such
13842   as A/B, ORTF or NOS microphone recordings, or delay-panned mixes.<br />   
13843   When you reduce the width, you are effectively summing two highly
13844   correlated signals with a delay, which will cause <dfn>comb filtering</dfn>.
13845 </p>
13846
13847 <p>  
13848   Let's take a closer look at what happens when you record a source at 45° to the
13849   right side with an ORTF stereo microphone array and then manipulate the width.
13850 </p>
13851
13852 <p>
13853   For testing, we apply a <dfn>pink noise</dfn> signal to both inputs of an Ardour stereo
13854   bus with the stereo panner, and feed the bus output to a two-channel analyser. 
13855   Since pink noise contains equal energy per octave, the expected readout is a
13856   straight line, which would indicate that our signal chain does not color the
13857   sound:
13858 </p>
13859
13860 <img src="/images/stereo-panner-with-ORTF-fullwidth.png" />
13861
13862 <p>
13863   To simulate an ORTF, we use Robin Gareus' stereo balance
13864   control LV2 to set the level difference and time delay. Ignore the Trim/Gain&mdash;its purpose is just to align the test signal with the 0dB line of the
13865   analyser.
13866 </p>
13867
13868 <p>
13869   Recall that an <dfn>ORTF</dfn> microphone pair consists of two cardioids
13870   spaced 17&nbsp;cm apart, with an opening angle of 110°. For a far source at
13871   45° to the right, the time difference between the capsules is 350&nbsp;&mu;s
13872   or approximately 15 samples at 44.1&nbsp;kHz. The level difference due to the
13873   directivity of the microphones is about 7.5&nbsp;dB (indicated by the
13874   distance between the blue and red lines in the analyser).
13875 </p>
13876
13877 <p>
13878   Now for the interesting part: if we reduce the width of the signal to 50%,
13879   the time-delayed signals will be combined in the panner. Observe what
13880   happens to the frequency response of the left and right outputs:
13881 </p>
13882
13883 <img src="/images/stereo-panner-with-ORTF-halfwidth.png" />
13884
13885 <p>
13886   You may argue that all spaced microphone recordings will undergo comb 
13887   filtering later, when the two channels recombine in the air between the speakers.
13888   Perceptually however, there is a huge of difference: our hearing system is
13889   very good at eliminating comb filters in the real world, where their component
13890   signals are spatially separated. But once you combine them
13891   inside your signal chain, this spatial separation is lost and the brain will
13892   no longer be able to sort out the timbral mess. As usual, you
13893   get to keep the pieces.
13894 </p>
13895
13896 <p class="note">
13897   Depending on your material and on how much you need to manipulate the width,
13898   some degree of comb filtering may be acceptable. Then again, it may not. Listen
13899   carefully for artefacts if you manipulate unknown stereo signals&mdash;many
13900   orchestra sample libraries for example do contain time-delay components.
13901 </p>
13902
13903
13904 ---
13905 title: Plugin and Hardware Inserts
13906 part: chapter
13907 ---
13908
13909
13910 ---
13911 title: Working With Plugins
13912 part: subchapter
13913 ---
13914
13915 <p>
13916   <dfn>Plugins</dfn> are bits of software that get loaded by Ardour in order to create various audio or MIDI effects, or generate audio by functioning as "software instruments".
13917 </p>
13918
13919 <p>
13920   Ardour supports a variety of different plugin standards:
13921 </p>
13922
13923 <dl class="narrower-table">
13924   <dt><abbr title="Linux Audio Developers' Simple Plugin API">LADSPA</abbr></dt>
13925   <dd>An early, simple, lightweight plugin <abbr title="Application
13926   Programming Interface">API</abbr>, audio effects only,
13927   plugins have no editors/GUI of their own (Ardour provides one, however).</dd>
13928   <dt><abbr title="LADSPA Version 2">LV2</abbr></dt>
13929   <dd>An extensible, full-featured plugin API, audio and <abbr
13930   title="Musical Instrument Digital Interface">MIDI</abbr>, plugins can provide their
13931   own  <abbr title="Graphical User Interface">GUI</abbr>s; the successor to LADSPA</dd>
13932   <dt><abbr title="Audio Unit">AU</abbr></dt>
13933   <dd>OS X only, full featured, audio and MIDI, plugins can provide their own GUI</dd>
13934
13935   <dt><abbr title="Virtual Studio Technology">VST</abbr></dt>
13936   <dd>Plugins using Steinberg's VST plugin standard. Varies by platform:
13937     <dl>
13938     <dt>on Linux</dt><dd>(native) Linux VST plugins fully supported (VST2.4)</dd>
13939     <dt>on Windows</dt><dd>(native) Windows VST plugins fully supported (VST2.4)</dd>
13940     <dt>on OS X</dt><dd>Not supported, unless you use a VST-to-AU
13941     bridge plugin. Similar to Apple's Logic DAW.</dd>
13942   </dl>
13943   </dd>
13944
13945   <dt>Windows VST Plugins on Linux</dt>
13946   <dd>VST plugins for Windows, but being used on Linux. <strong>Normally not supported.</strong> See <a href="/working-with-plugins/windows-vst-support">Windows VST Plugins on Linux</a> for details.
13947   </dd>
13948 </dl>
13949
13950 ---
13951 title: Processor Box
13952 part: subchapter
13953 ---
13954
13955 <p><img class="right" src="/images/processor-box.png" alt="the Processor Box" /></p>
13956
13957 <p>
13958   In Ardour terminology, a <dfn>processor</dfn> is anything which treats the signal in some way and gets plugged into a mixer strip. Ardour provides several builtin processors such as the fader or panners. Processors can also be <dfn>plugins</dfn> used for effects or as instruments, as well as sends or inserts which affect <a href="/signal-routing">signal routing</a>.
13959 </p>
13960
13961 <p>
13962   The arrangement of processors is arbitrary, and there is no limit to how 
13963   many there can be. The Processor Box will automagically add a scrollbar to
13964   itself if there are more processors in it than can be shown in the given space.
13965 </p>
13966
13967 <p>
13968   The main box in the top half of a mixer strip shows the <dfn>processor
13969   box</dfn>. Processors are shown as colored rectangles, with a small "LED" beside 
13970   them that lights up when the processor is enabled. The color of the 
13971   processor depends on its location in the sequence; processors that are <dfn>pre-fader</dfn> are colored in red, and <dfn>post-fader</dfn> processors are colored green (in the default theme).
13972 </p>
13973
13974 <p>
13975   The <dfn>processor box</dfn> will always contain a blue <dfn>Fader</dfn> processor. This indicates where in the processor chain the main channel fader is located; this is the fader shown in the lower half of the strip. It can be enabled and disabled like any other processor.
13976 </p>
13977
13978 <h2>Adding Processors</h2>
13979 <p>
13980   Processors can be added to the chain by <kbd class="mouse">Right</kbd>-clicking in the processor list, This does three things:
13981 </p>
13982
13983 <ul>
13984   <li>A gap is opened up to indicate the location of the click. The gap shows where any new processors will be inserted.</li>
13985   <li>The processor under the click is selected.</li>
13986   <li>An options menu is presented.</li>
13987 </ul>
13988
13989 <p>
13990   From the menu, new processors can be inserted.
13991 </p>
13992
13993 <p>
13994   Processors can also be dragged and dropped from the <a href="/working-with-plugins/plugin-sidebar/"><dfn>Favorite Plugins</dfn> window</a> to an appropriate spot in the Processor Box.
13995 </p>
13996
13997 <p class="note">
13998   The <dfn>Favorite Plugins</dfn> window can be populated via the <a href="/working-with-plugins/plugin-manager/">Plugin Manager</a>, or by dragging and dropping an existing processor from the <dfn>processor box</dfn> to the <dfn>Favorite Plugins</dfn> window.
13999 </p>
14000
14001 <h2>To Reorder (Move) Processors</h2>
14002 <p>
14003   Processors can be re-ordered using drag &amp; drop. Dragging a processor 
14004   allows it to be moved around within the chain, or copied to another 
14005   processor list on another track or bus.
14006 </p>
14007
14008 <h2>To Enable/Disable a Processor</h2>
14009
14010 <p><img class="right" src="/images/processor.png" alt="a typical processor" /></p>
14011
14012 <p>
14013   To the left of the name of each processor is a small LED symbol; if this 
14014   is lit-up, the processor is active. Clicking on it will deactivate the
14015   processor and effectively bypass it.
14016 </p>
14017
14018 <p class="note">
14019   Some processors have their own bypass controls that are independent of the one that Ardour provides; this can make it appear that the plugin is non-responsive when its independent bypass control is active.
14020 </p>
14021
14022 <h2>Selecting Processors</h2>
14023 <p>
14024   A processor in the <dfn>processor box</dfn> can be selected with a <kbd class="mouse">Left</kbd>-click on it; it will be highlighed in red. Other processors can be selected at the same time by <kbd class="mouse">Left</kbd>-clicking on them while holding down the <kbd class="mod1">&zwnj;</kbd> key, and ranges can be selected by <kbd class="mouse">Left</kbd>-clicking on them while holding down the <kbd>Shift</kbd> key
14025 </p>
14026
14027 <h2>Removing Processors</h2>
14028 <p>
14029   Context-click on the processor to be removed, and select <kbd
14030   class="menu">Delete</kbd>; or <kbd class="mod3 mouse">Right</kbd>-click on it; or <kbd class="mouse">Left</kbd>-click on it and press the <kbd>Delete</kbd> key. If multiple processors are selected, they will all be deleted at the same time.
14031 </p>
14032
14033 ---
14034 title: Plugin Manager
14035 part: subchapter
14036 ---
14037
14038 <p class="fixme">This needs updating; it was written for v3 or v4, and it's out of date</p>
14039
14040 <p>
14041   The <dfn>Plugin Manager</dfn> serves two purposes. Primarily it is used to control the display status of plugins. It can also be used to find and insert plugins into the <a href="/working-with-plugins/processor-box/">Processor Box</a>. It is displayed either by a double-click in the <dfn>Processor Box</dfn> or by choosing <kbd class="menu">New Plugin &gt; Plugin Manager...</kbd> from the <dfn>Processor Box</dfn> context menu.
14042 </p>
14043
14044 <p class="center"><img src="/images/plugin-manager.png" alt="Plugin Manager window"/></p>
14045
14046 <p>
14047   Displayed for each plugin is the status (normal, favorite, hidden),
14048   name, type, category, creator (author), and the number of audio and MIDI
14049   connections. The plugins can be sorted by clicking on a column header.
14050 </p>
14051
14052 <h2>Plugin Display Status</h2>
14053
14054 <p>
14055   Click on a Fav(orite) or Hide radio button to change a plugin's display status. Clicking on an already selected radio button will cancel it, returning the plugin to the normal display status. Plugins marked as a favorite show up in the <dfn>Processor Box</dfn> context menu under <kbd class="menu">New Plugin &gt; Favorites</kbd> and in <dfn>Favorite Plugins</dfn> pane in the Mixer window. Setting the hide radio button on a plugin will keep the plugin from showing in the <dfn>Processor Box</dfn> context menus <kbd class="menu">New Plugin &gt; By Creator</kbd> or <kbd class="menu">New Plugin &gt; By Category</kbd>.
14056 </p>
14057
14058 <h2>Filtering Listed Plugins</h2>
14059
14060 <p>
14061   The middle of the <dfn>Plugin Manager</dfn> is used to filter the listed plugins. Typing into the text-box will filter the plugins based on the filter mode selected by drop-down box. Clicking <kbd class="button">Clear</kbd> empties the text-box.
14062 </p>
14063
14064 <h2>Inserting Plugins in the Processor Box</h2>
14065
14066 <p>
14067   The bottom half of the plugin manager shows plugins that have been selected
14068   for insertion into the <dfn>Processor Box</dfn>. A plugin can be added by
14069   either double clicking the plugin entry in the top half, or, if already
14070   selected in top half, by clicking <kbd class="button">Add</kbd>.
14071 <p>
14072
14073 <p>
14074   Plugins can be removed from the bottom half with a double click, or, if
14075   already selected, by clicking <kbd class="button">Remove</kbd>.
14076 </p>
14077
14078 ---
14079 title: Favorite Plugins Window
14080 part: subchapter
14081 ---
14082
14083 <p><img class="right" src="/images/favorite-plugins.png" alt="Favorite Plugins window"/></p>
14084
14085 <p>
14086   The <dfn>Favorite Plugins</dfn> window is on the top-left side of the <dfn>Mixer Window</dfn>. Like other elements in that window it has variable height and can be hidden by dragging it to zero-height. If it is not visible, the top-handle can be grabbed and dragged down to reveal it.
14087 </p>
14088
14089 <p>
14090   Plugin names that have a right facing triangle next to them have presets associated with them; clicking on the triangle will cause all presets associated with the plugin to show in the list.
14091 </p>
14092
14093 <h2 style="clear:both;">Features</h2>
14094
14095 <p>
14096   The Favorite Plugins window provides easy access to frequently used plugins:
14097 </p>
14098
14099 <ul>
14100   <li>Plugins can be dragged from the window to any track or bus <a href="/working-with-plugins/processor-box/"><dfn>processor box</dfn></a>, which will add the plugin to that track or bus at the given position.</li>
14101   <li>The list includes user-presets for the plugins. Dragging a preset to a given track or bus will load that preset after adding the plugin.</li>
14102   <li>Double-clicking on a plugin or preset adds the given plugin to all selected tracks/busses pre-fader. Other insert positions are available from the context menu (right click).</li>
14103   <li>
14104   <p><img class="right" src="/images/mixer-to-fav-dnd.png" alt="Dragging plugin to Favorites window"/></p>
14105   Dragging a plugin from a track into the window will add it to the list and optionally create a new preset from the current settings. The horizontal line in the list shows the spot where the plugin will land.
14106   </li>
14107   <li>The context-menu allows the deletion of presets or removal of the plugin from the list.</li>
14108   <li>Plugins in the list can be re-ordered using drag &amp; drop. The custom order is saved.</li>
14109 </ul>
14110
14111 <p style="clear:both;" class="note">
14112   When favorites are added with the <a href="/working-with-plugins/plugin-manager">Plugin Manager</a>, they are appended to the bottom of the list.
14113 </p>
14114
14115 ---
14116 title: Managing Plugin Presets
14117 part: subchapter
14118 ---
14119
14120 <p class="fixme">Add images</p>
14121
14122 <p>
14123   All plugin control widgets, whether they are created by Ardour or 
14124   by the plugin, have a common set of controls at the top of the window. 
14125   These include 4 controls for managing <dfn>plugin presets</dfn>.
14126 </p>
14127
14128 <h2>What Is a Plugin Preset?</h2>
14129
14130 <p>
14131   A <dfn>preset</dfn> for a plugin is simply a saved set of values for 
14132   all of a plugin's parameters. If you load a preset, you are restoring 
14133   all the parameters of that plugin to the values stored in the preset. 
14134   This is an easy, fast way to manage your preferred settings for 
14135   particular plugins.
14136 </p>
14137
14138 <h2>The Preset Selector</h2>
14139
14140 <p>
14141   The <dfn>preset selector</dfn> is a regular selector that can be 
14142   clicked to display a list of all known presets for this plugin. This 
14143   will include presets that you have created yourself, and for some 
14144   plugin formats, presets that come with the plugin itself. 
14145 </p>
14146
14147 <h2>Load a New Preset</h2>
14148
14149 <p>
14150   Click on the preset selector to pop up a menu showing the names of 
14151   all available presets. Click on the name of the preset you wish to load. 
14152   The preset will be loaded&mdash;you may see various controls in the 
14153   plugin editor change to reflect the new value of some or all parameters.
14154 </p>
14155
14156 <h2>Create a Preset</h2>
14157
14158 <p>
14159   To save the current plugin settings as a new preset, click on the 
14160   <kbd class="menu">Add</kbd> button at the top of the window. A dialog 
14161   will appear to ask for the name of the preset. 
14162 </p>
14163
14164 <h2>Save a Preset</h2>
14165
14166 <p>
14167   If you wish to modify the settings in an existing preset, first use 
14168   the preset selector to load the preset, then adjust the settings as 
14169   you wish. When done, click the <kbd class="menu">Save</kbd> button 
14170   and the new values will be stored, overwriting the previous version 
14171   of this preset.
14172 </p>
14173
14174 <h2>Delete a preset</h2>
14175
14176 <p>
14177   To delete an existing preset, use the preset selector to load the preset. 
14178   Click the <kbd class="menu">Delete</kbd> button, and the preset will be 
14179   removed. The preset selector turn blank, showing that no preset is 
14180   currently loaded (although the settings will stay as they were). 
14181 </p>
14182
14183 ---
14184 title: Working with Ardour-built Plugin Editors
14185 part: subchapter
14186 ---
14187
14188 <p class="fixme">This section needs expansion, and at least one image</p>
14189
14190 <p>
14191   To view a plugin editor, double-click on the plugin within the 
14192   <a href="/working-with-plugins/processor-box">processor box</a>. 
14193   A new window will appear showing the editor/GUI for the plugin.
14194 </p>  
14195
14196 <p>
14197   If a plugin does not have its own GUI, Ardour will construct a
14198   <dfn>generic plugin editor</dfn> from a small set of common control 
14199   elements. Ardour will do this even for plugins that have their 
14200   own, if <kbd class="menu">Edit &gt; Preferences &gt; 
14201   GUI &gt; Use Plugins' own interface instead of Ardour's</kbd> is disabled.
14202 </p>
14203
14204 <p>
14205   The generic UI can be temporarily switched to by context-clicking on 
14206   a processor and selecting <kbd
14207   class="menu">Edit with generic controls</kbd>. This will be necessary to
14208   access the <a href="/automation">plugin automation controls</a>.
14209 </p>
14210
14211 <p>
14212   In the generic UI, any controller can be reset to its default by
14213   <kbd class="mod3 mouse">Left</kbd>-clicking on it.
14214 </p>
14215
14216 ---
14217 title: Plugins Bundled With Ardour
14218 part: subchapter
14219 ---
14220
14221 <p>
14222   Ardour now comes with the following plugins as part of a standard installation:
14223 </p>
14224
14225 <dl class="narrower-table">
14226   <dt>a-Amplifier</dt>
14227   <dd>A versatile &plusmn;20dB multichannel amplifier</dd>
14228   <dt>a-Compressor</dt>
14229   <dd>A side-chain enabled compressor with the usual controls. Comes in stereo and mono versions</dd>
14230   <dt>a-Delay</dt>
14231   <dd>A basic single-tap delay line, with tempo sync</dd>
14232   <dt>a-EQ</dt>
14233   <dd>A nice sounding 4-band parametric EQ with shelves</dd>
14234   <dt>a-Fluid Synth</dt>
14235   <dd>Wraps the Fluidsynth SoundFont2 synthesis engine as a new sample player</dd>
14236   <dt>a-High/Low Pass Filter</dt>
14237   <dd>Independent high and low pass filters with steepness up to 48dB/octave</dd>
14238   <dt>a-Inline Scope</dt>
14239   <dd>A mixer strip inline waveform display</dd>
14240   <dt>a-Inline Spectrogram</dt>
14241   <dd>A mixer strip inline specturm display</dd>
14242   <dt>a-MIDI Monitor</dt>
14243   <dd>A mixer strip inline display to show recent <abbr title="Musical Instrument Digital Interface">MIDI</abbr> events</dd>
14244   <dt>a-Reverb</dt>
14245   <dd>A reverb that finds a balance between sounding good, using a lot of CPU and having too many controls</dd>
14246 </dl>
14247
14248 ---
14249 title: Getting More Plugins
14250 part: subchapter
14251 ---
14252
14253 <p>
14254   The following list shows <dfn>plugin packages</dfn>. In some cases, a package contains just one or two plugins; in other cases, dozens.
14255 </p>
14256
14257 <h2>Plugins by Standard</h2>
14258
14259 <h3 id="LADSPA">LADSPA</h3>
14260
14261 <ul>
14262   <li>AMB <a href="http://kokkinizita.linuxaudio.org/linuxaudio/">http://kokkinizita.linuxaudio.org/linuxaudio/</a></li>
14263   <li>Blepvco <a href="http://smbolton.com/linux.html">http://smbolton.com/linux.html</a></li>
14264   <li>Blop <a href="http://blop.sourceforge.net">http://blop.sourceforge.net</a></li>
14265   <li>CAPS <a href="http://quitte.de/dsp/caps.html">http://quitte.de/dsp/caps.html</a></li>
14266   <li>CMT <a href="http://www.ladspa.org/cmt/">http://www.ladspa.org/cmt/</a></li>
14267   <li>FIL <a href="http://kokkinizita.linuxaudio.org/linuxaudio/">http://kokkinizita.linuxaudio.org/linuxaudio/</a></li>
14268   <li>FOO <a href="http://code.google.com/p/foo-plugins/">http://code.google.com/p/foo-plugins/</a></li>
14269   <li>MCP <a href="http://kokkinizita.linuxaudio.org/linuxaudio/">http://kokkinizita.linuxaudio.org/linuxaudio/</a></li>
14270   <li>NJL <a href="https://github.com/tialaramex/njl-plugins">https://github.com/tialaramex/njl-plugins</a></li>
14271   <li>Omins <a href="http://www.nongnu.org/om-synth/omins.html">http://www.nongnu.org/om-synth/omins.html</a></li>
14272   <li>REV <a href="http://kokkinizita.linuxaudio.org/linuxaudio/">http://kokkinizita.linuxaudio.org/linuxaudio/</a></li>
14273   <li>SWH <a href="http://plugin.org.uk/">http://plugin.org.uk/</a></li>
14274   <li>TAP <a href="http://tap-plugins.sourceforge.net/">http://tap-plugins.sourceforge.net/</a></li>
14275   <li>VCF <a href="http://users.suse.com/~mana/ladspa.html">http://users.suse.com/~mana/ladspa.html</a></li>
14276   <li>VCO <a href="http://kokkinizita.linuxaudio.org/linuxaudio/">http://kokkinizita.linuxaudio.org/linuxaudio/</a></li>
14277   <li>VLevel <a href="http://vlevel.sourceforge.net/about/">http://vlevel.sourceforge.net/about/</a></li>
14278   <li>Vocoder <a href="http://www.sirlab.de/linux/download_vocoder.html">http://www.sirlab.de/linux/download_vocoder.html</a></li>
14279   <li>WASP <a href="http://linux01.gwdg.de/~nlissne/wasp/index.html">http://linux01.gwdg.de/~nlissne/wasp/index.html</a> (mar wanted!)</li>
14280   <li>Nova <a href="http://klingt.org/~tim/nova-filters/">http://klingt.org/~tim/nova-filters/</a></li>
14281   <li>Calf <a href="http://calf.sourceforge.net/">http://calf.sourceforge.net/</a></li>
14282   <li>Socal’s LEET Plugins <a href="http://code.google.com/p/leetplugins/">http://code.google.com/p/leetplugins/</a></li>
14283   <!--<li>Holap synthesizer and DSP effects <a href="http://holap.berlios.de/">http://holap.berlios.de/</a></li>-->
14284 </ul>
14285
14286 <h3 id="LV2">LV2</h3>
14287
14288 <ul>
14289   <li>SWH <a href="http://plugin.org.uk/lv2/">http://plugin.org.uk/lv2/</a></li>
14290   <li>ll-plugins <a href="http://ll-plugins.nongnu.org/">http://ll-plugins.nongnu.org/</a></li>
14291   <li>zynadd <a href="http://home.gna.org/zyn/">http://home.gna.org/zyn/</a></li>
14292   <li>Calf <a href="http://calf.sourceforge.net/">http://calf.sourceforge.net/</a></li>
14293   <li>LinuxDSP <a href="http://www.overtonedsp.co.uk/download/linuxdsp-archive/">http://www.overtonedsp.co.uk/download/linuxdsp-archive/</a></li>
14294   <li>Invada Studio <a href="https://launchpad.net/invada-studio/">https://launchpad.net/invada-studio/</a></li>
14295 </ul>
14296
14297 <h3 id="LinuxVST">Linux VST (LXVST)</h3>
14298
14299 <ul>
14300   <li>Loomer <a href="http://www.loomer.co.uk/">http://www.loomer.co.uk/</a></li>
14301   <li>Distrho <a href="http://distrho.sourceforge.net/ports.php">http://distrho.sourceforge.net/ports.php</a></li>
14302   <li>Argotlunar <a href="http://argotlunar.info/">http://argotlunar.info/</a></li>
14303 </ul>
14304
14305 <h2>How do I install plugins?</h2>
14306
14307 <h3>Linux</h3>
14308
14309 <p>
14310   <dfn>Installation</dfn> will vary a little depending on how you get plugins.  If your repository has a particular plugin package, just install it using the normal software package management tool for your system. Most Linux distributions that are good for audio work will have most of the LADSPA and LV2 plugins mentioned above available in ready-to-use forms. 
14311 </p>
14312
14313 <p>
14314   Finding them will typically require <em>searching</em> your distribution's repository to find the name of the package. The tools for doing this vary from distribution to distribution. A good place to start searching is with the name of the package (e.g. "caps" or "calf"). There are no fixed rules about what different Linux distributions call their packages for a given set of plugins.
14315 </p>
14316
14317 <p>
14318   If the package isn't available, then you can build the plugins from source (plugins are generally fairly easy to compile if you've ever done this sort of thing before).
14319 </p>
14320
14321 <p>
14322   LADSPA plugins are shared library files. They need to be installed in either /usr/lib/ladspa, /usr/local/lib/ladspa or in a directory mentioned in your LADSPA_PATH environment variable.
14323 </p>
14324
14325 <p>
14326   LV2 plugins are folders/directories. They need to installed in either /usr/lib/lv2, /usr/local/lib/lv2 or a directory mentioned in your LV2_PATH environment variable.
14327 </p>
14328
14329 <p>
14330   Linux VST (LXVST) plugins are distributed as shared library files. They are typically installed in /usr/lib/lxvst, /usr/local/lib/lxvst or a directory mentioned in your LXVST_PATH environment variable. 
14331 </p>
14332
14333 <h3>OS X</h3>
14334
14335 <p>
14336   Unless you're a particularly technical computer user, building and installing plugins in the LV2 (or LADSPA) format is probably not something worth planning on.
14337 </p>
14338
14339 <p>
14340   Most of the plugins you are likely to use on OS X will be in Apple's AudioUnit format. These have their own installation process that tends to just work.
14341 </p>
14342
14343 ---
14344 title: Using Windows VST Plugins on Linux
14345 part: subchapter
14346 ---
14347
14348 <p>
14349   Thanks to the combined work of Torben Hohn, Kjetil Mattheusen, Paul
14350   Davis and a few other developers, it is possible to use Windows 
14351   <dfn><abbr title="Virtual Studio Technology">VST</abbr>
14352   plugins</dfn> (that is, plugins in VST format built and distributed 
14353   for the Windows platforms) on Ardour running on Linux. (Note: there 
14354   is no VST support of any kind on OS X).
14355 </p>
14356
14357 <p>However, doing so has three <em>substantial</em> downsides:</p>
14358
14359 <ul>
14360   <li>It requires a special build of Ardour that is fundamentally 
14361   very different from normal builds</li>
14362   <li>Support depends on <a href="http://winehq.org/">Wine</a>,
14363   a Windows "emulator"</li>
14364   <li>As usual with plugins, a crashing plugin will take Ardour down 
14365   with it&mdash;and crashes in Windows VST plugins are more likely when 
14366   used in this way</li>
14367 </ul>
14368
14369 <p>
14370   The dependence on Wine makes it almost impossible for the Ardour
14371   project to support this feature. Wine's functionality generally
14372   improves over time, but any given release of Wine may behave worse
14373   with some or all Windows VST plugins. It may even just crash Ardour
14374   completely.
14375 </p>
14376
14377 <p>
14378   Step back and think about what "using Windows VSTs" really means:
14379   taking bits of software written with only one idea in mind&mdash;running
14380   on the Windows platform&mdash;and then trying to use them on an entirely
14381   different platform. It is a bit of a miracle (largely thanks to the
14382   incredible work done by the Wine project) that it works at all. But is
14383   this the basis of a stable, reliable DAW for a non-Windows platform?
14384   Getting Ardour on Linux to pretend that its really a Windows
14385   application running on Windows?
14386 </p>
14387
14388 <p>
14389   We understand that there are many outstanding plugins available as
14390   Windows VSTs and that in many cases, no equivalent is available for
14391   Ardour's Linux-based users. If your workflow is so dependent on those
14392   plugins, then remain on Windows (or potentially consider using an
14393   actual Windows VST host running inside of Wine). If you can make the
14394   effort, you will get a better environment by using a normal build of
14395   Ardour and exploring the world of plugins built to run on Linux
14396   natively. This covers LADSPA, LV2 and Linux VST formats, and even some
14397   outstanding proprietary plugins such as those
14398   from <a href="http://www.loomer.co.uk/">Loomer</a>.
14399 </p>
14400
14401 <h2>A Plea To Plugin Manufacturers</h2>
14402
14403 <p>
14404   Please consider porting your plugins so that users can enjoy them on
14405   Linux too. Several other commercial plugin developers have already
14406   done this. You can choose between using "Linux VST" (which is what
14407   Loomer and others have done)&mdash;you will find toolkits like JUCE that
14408   help to make this fairly easy&mdash;or using LV2 format which is
14409   ultimately more flexible but probably more work. We have users&mdash;thousands of users&mdash;on Linux who would like to use your plugins. 
14410 </p>
14411
14412
14413 ---
14414 title: Automation
14415 part: chapter
14416 ---
14417
14418
14419 ---
14420 title: Mixdown
14421 part: chapter
14422 ---
14423
14424
14425 ---
14426 title: Export Dialog
14427 part: subchapter
14428 ---
14429
14430 <p>
14431   When you have finished mixing your session, you probably want to export it to a sound file to burn to a CD, upload to the web, or whatever. <kbd class="menu">Session &gt; Export &gt; Export to Audio file(s)...</kbd> shows the Export Dialog to do this.
14432 </p>
14433
14434 <p>
14435   You can also export the outputs of multiple tracks &amp; busses all at once via 
14436   <kbd class="menu">Session &gt; Export &gt; Stem Export...</kbd>.
14437 </p>
14438
14439 <h2>File Format</h2>
14440
14441 <img src="/images/export-dialog-file-format.png" />
14442
14443 <p>
14444   This tab contains controls for the format of the exported audio file. You can enable more than one format here, in which case each will be exported in turn. Ardour is supplied with a list of export formats, including:
14445   <ul>
14446     <li>CD (Red Book)</li>
14447     <li>DVD-A</li>
14448     <li>FLAC 24 bit </li>
14449     <li>FLAC 24 bit (tagged)</li>
14450     <li>Ogg_Vorbis</li>
14451     <li>Ogg_Vorbis (tagged)</li>
14452     <li>Ring Tone</li>
14453   </ul>
14454   You can edit these formats, or create your own, with the <a href="/exporting/edit-export-format-profile/">"Edit Export Format Profile"</a> dialog, which appears when you click the "Edit" or "New" button to the right of the drop-down list of formats.
14455 </p>
14456
14457 <p>
14458   You can also create a 'Preset' consisting of one or more formats. Ardour provides some ready-made presets, too:
14459   <ul>
14460     <li>CD + DVD-A</li>
14461     <li>CD + FLAC</li>
14462     <li>CD + FLAC (tagged)</li>
14463     <li>CD + Ogg_Vorbis + FLAC (tagged)</li>
14464     <li>CD + Ogg_Vorbis</li>
14465     <li>CD + Ogg_Vorbis (tagged)</li>
14466     <li>CD only</li>
14467     <li>DVD-A only</li>
14468     <li>FLAC</li>
14469     <li>FLAC (tagged)</li>
14470     <li>Ogg_Vorbis + FLAC</li>
14471     <li>Ogg_Vorbis + FLAC (tagged)</li>
14472     <li>Ogg_Vorbis </li>
14473     <li>Ogg_Vorbis (tagged)</li>
14474   </ul>
14475 </p>
14476
14477 <h3>Soundcloud upload</h3>
14478
14479 <p>
14480   When 'Upload to Soundcloud' is ticked on in any format's tab, a pane containing fields to enter in Soundcloud account details (email and password), and what should happen to the uploaded files will become visible.
14481 </p>
14482
14483 <img src="/images/soundcloud-upload.png" />
14484
14485 <p>
14486 <dl>
14487 <dt>Make files public</dt><dd>Choose whether to make uploaded files available to anyone via the Soundcloud web site.</dd>
14488 <dt>Open uploaded files in browser</dt><dd>Open each file on soundcloud in your browser after upload. If you don't enable this, you can still see the URLs in the <a href="">Log window</a>.</dd>
14489 <dt>Make files downloadable</dt><dd>Choose whether to allow downloading of files uploaded to Soundcloud.</dd>
14490 </dl>
14491 </p>
14492
14493 <h2>Time Span</h2>
14494
14495 <img src="/images/export-dialog-timespan.png" />
14496
14497 <p>
14498   This tab allows you to select the range (or ranges) of the timeline to export. By default, "session" is enabled&mdash;this will export the whole session from the start marker to the end marker.
14499 </p>
14500
14501
14502 <h2>Channels</h2>
14503
14504 <img src="/images/export-dialog-channels.png" />
14505
14506 <p>
14507   Here you can choose which outputs (tracks or busses) should be sent to the exported file.
14508 </p>
14509
14510 <h2>Stem Export</h2>
14511
14512 <img src="/images/export-dialog-stem-export.png" />
14513
14514 <p>
14515   If you chose 'Stem Export', the 'Channels' tab appears slightly differently:
14516   in this case each chosen channel (track or bus) is exported to its own file,
14517   instead of all channels being mixed together into a single file. You can
14518   choose to export either the region contents or the track output here in this
14519   case.
14520 </p>
14521
14522 ---
14523 title: Export Format Profiles
14524 part: subchapter
14525 ---
14526
14527 <h2>Export Format Profiles</h2>
14528
14529 <p>
14530   An Export Format Profile specifies the file format in which Ardour will export
14531   audio files, and also other audio file export options.
14532 </p>
14533
14534 <p>
14535   Export Format Profiles are edited via the 'Edit Export Format Profile' dialog.
14536 </p>
14537
14538 <img src="/images/edit-export-format-profile.png" />
14539
14540 <h3>Normalize</h3>
14541
14542 <p>
14543   If enabled, peak levels of exported files will be normalized to the level chosen here.
14544 </p>
14545
14546 <h3>Trim/Add silence at start/end</h3>
14547
14548 <p>
14549 </p>
14550
14551 <h3>Compatibility/Quality/File format/Sample rate</h3>
14552
14553 <h4>Compatibility</h4>
14554
14555 <p>
14556   Selecting an item in the 'Compatibility' column will display options in the
14557   other columns that are incompatible with that item in red.
14558 </p>
14559
14560 <h4>Quality</h4>
14561
14562 <p>
14563   The appropriate item in the 'Quality' column will be highlighted when you
14564   choose a file format. Clicking on items in the 'Quality' column currently
14565   doesn't seem to do anything useful.
14566 </p>
14567
14568 <h4>File format</h4>
14569
14570 <p>
14571   This column contains a list of Ardour's supported export file types. Click on
14572   the format you want to use.
14573 </p>
14574
14575 <h4>Sample rate</h4>
14576
14577 <p>
14578   You can explicitly choose the sample rate of your exported files here, or
14579   choose 'Session rate' to export in the current session's sample rate, without
14580   sample rate conversion.
14581 </p>
14582
14583 <h4>Sample rate conversion quality</h4>
14584
14585 <p>
14586   If your chosen sample rate does not match the current session's sample rate,
14587   choose the sample rate conversion quality here. Better quality options are
14588   slower.
14589 </p>
14590
14591 <h3>Options</h3>
14592
14593 <p>
14594   Options relevant to the chosen file format will appear here.
14595   Categories of audio file format are:
14596   <ul>
14597     <li>Linear encoding</li>
14598     <li>Broadcast Wave</li>
14599     <li>Ogg Vorbis</li>
14600     <li>FLAC</li>
14601   </ul>
14602 </p>
14603
14604 <p>
14605   Available options include a selection of the following:
14606 </p>
14607
14608 <h4>Sample Format</h4>
14609
14610 <p>
14611   Choose the bit depth of exported files.
14612 </p>
14613
14614 <h4>Dithering</h4>
14615
14616 <p>
14617   If the exported files bit depth is less than Ardour's native bit depth,
14618   choose the dithering algorithm to use.
14619 </p>
14620
14621 <h4>Create CUE file/Create TOC file</h4>
14622
14623 <p>
14624   As well as exporting an audio file, create a file (in CUE or TOC format
14625   respectively) containg CD track information, as defined in the
14626   <a href="/working-with-markers/rangesmarks-list/">Ranges &amp; Marks List</a>.
14627 </p>
14628
14629 <h4>Tag with session's metadata</h4>
14630
14631 <p>
14632   If the exported file format supports metadata, use data entered in the
14633   <a href="/working-with-sessions/metadata/">Session Metadata</a>
14634   window to tag the exported files.
14635 </p>
14636
14637 <h3>Label</h3>
14638
14639 <p>
14640   The 'Label' field lets you choose the name which will be shown for this format
14641   in the drop-down list of export formats in the 'File Formats' tab of the 
14642   <a href="/exporting/export-dialog/">Export dialog</a>.
14643 </p>
14644
14645 <h3>Command to run post-export</h3>
14646
14647 <p>
14648   If this is not blank, it is considered as a command to be run after the export
14649   of each file. Either the command must exist in $PATH, or you can specify an
14650   absolute path to an executable file here.
14651 </p>
14652
14653 <p>
14654   Certain sequences are allowed here to stand for the exported file name and the
14655   like. Currently these are:
14656   <dl>
14657     <dt><code>%f</code></dt>
14658     <dd>Full path &amp; filename of the exported audio file</dd>
14659     <dt><code>%d</code></dt>
14660     <dd>Directory containing the exported audio file (including trailing directory separator)</dd>
14661     <dt><code>%b</code></dt>
14662     <dd>Basename of the exported audio file (without extension)</dd>
14663     <dt><code>%s</code></dt>
14664     <dd>Path to the current session file</dd>
14665     <dt><code>%n</code></dt>
14666     <dd>Name of the current session file</dd>
14667     <dt><code>%%</code></dt>
14668     <dd>A literal percent sign</dd>
14669   </dl>
14670 </p>
14671
14672 <p>
14673   Any part of the command-line enclosed in double-quotes (") will be used as-is.
14674 </p>
14675
14676
14677 ---
14678 title: Surround
14679 part: part
14680 ---
14681
14682
14683 ---
14684 title: Ardour Setup for Surround
14685 part: chapter
14686 ---
14687
14688
14689 ---
14690 title: Multichannel Tracks and Signal Routing
14691 part: chapter
14692 ---
14693
14694
14695 ---
14696 title: Surround Panning and Mixing
14697 part: chapter
14698 ---
14699
14700
14701 ---
14702 title: VBAP Panner
14703 part: subchapter
14704 ---
14705
14706 <p class="warning">
14707   Ardour's VBAP panner is currently in development, and its semantics may
14708   change in the near future, possibly affecting your mixes. Please do not
14709   rely on it for important production work while the dust settles.
14710 </p>
14711
14712 <p>
14713   <dfn><abbr title="Vector-base Amplitude Panning">VBAP</abbr></dfn> 
14714   is a versatile and straightforward method to pan a source around over an
14715   arbitrary number of speakers on a horizontal polygon or a 3D surface,
14716   even if the speaker layout is highly irregular.
14717 </p>
14718
14719 <h2>Basic concepts</h2>
14720
14721 <p>
14722   VBAP was developed by Ville Pulkki at Aalto University, Helsinki, in 2001.
14723   It works by distributing the signal to the speakers nearest to the desired
14724   direction with appropriate weightings, aiming to create a maximally sharp 
14725   phantom source by using as few speakers as possible:
14726 </p>
14727
14728 <ul>
14729   <li>one speaker, if the desired direction coincides with a speaker
14730   location,</li>
14731   <li>two speakers, if the desired direction is on the line between two
14732   speakers,</li>
14733   <li>and three speakers in the general 3D case.</li>
14734 </ul>
14735
14736 <p>
14737   Thus, if you move the panner onto a speaker, you can be sure that only
14738   this speaker will get any signal. This is handy when you need precise
14739   1:1 routing.
14740 </p>
14741
14742 <p>
14743   The drawback of VBAP is that a moving source will constantly change its 
14744   apparent sharpness, as it transitions between the three states mentioned 
14745   above.
14746 </p>
14747
14748 <p>
14749   A <dfn>horizontal</dfn> VBAP panner has one parameter, the <dfn>azimuth
14750   angle</dfn>. A <dfn>full-sphere</dfn> panner offers an additional 
14751   <dfn>elevation angle</dfn> control.
14752 </p>
14753
14754 <p class="note">
14755   More elaborate implementations of VBAP also include a
14756   <dfn>spread</dfn> parameter, which  will distribute the signal over a 
14757   greater number of speakers in order to maintain constant (but no longer 
14758   maximal) sharpness, regardless of position. Ardour's VBAP panner does not 
14759   currently include this feature.
14760 </p>
14761
14762 <h2>Speaker layout</h2>
14763
14764 <p>
14765   Each VBAP panner is specific to its <dfn>speaker layout</dfn>&mdash;the panner has to "know" about the precise location of all the speakers. A complete VBAP implementation must therefore include the possibility to define this layout.
14766 </p>
14767
14768 <img src="/images/VBAP-panner-5.png" class="small right" alt="The VBAP
14769 panner with 5 outputs"/>
14770
14771 <p>
14772   Ardour currently uses a simplified approach: if a track or bus has more
14773   than two output channels (which implies stereo), it assumes that you
14774   have N speakers distributed in a regular N-gon. That means that for
14775   irregular layouts such as 5.1 or 7.1, the direction you dial in will
14776   differ a bit from the actual auditory result, but you can still achieve
14777   any desired spatialisation.
14778 </p>
14779
14780 <h3>Experimental 3D VBAP</h3>
14781
14782 <img src="/images/VBAP-panner-10.png" class="small right" alt="The VBAP
14783 panner with 10 outputs, in experimental 3D mode"/>
14784
14785 <p>
14786   For tracks with 10 outputs, Ardour will currently assume a 3-dimensional
14787   speaker layout corresponding to Auro-3D 10.1, which is a horizontal 5.1
14788   system, four elevated speakers above L, R, Ls, and Rs, and an additional
14789   "voice-of-god" speaker at the zenith.
14790 </p>
14791
14792 <h2>N:M panning</h2>
14793
14794 <img src="/images/VBAP-panner-4in5.png" class="small right" alt="The VBAP
14795 panner in 4 in, 5 out mode"/>
14796
14797 <p>
14798   For tracks and busses with more than one input, Ardour will (for now) assume that
14799   you wish to distribute the inputs symmetrically along the latitude around
14800   the panner direction. The width parameter controls the opening angle of
14801   the distribution sector.
14802 </p>
14803
14804
14805 ---
14806 title: Sync & Video
14807 part: part
14808 ---
14809
14810
14811 ---
14812 title: Working with Synchronization
14813 part: chapter
14814 ---
14815
14816
14817 ---
14818 title: On Clock and Time
14819 part: subchapter
14820 ---
14821
14822 <p>
14823   <dfn>Synchronization</dfn> in multimedia involves two concepts which are 
14824   often confused: <dfn>clock</dfn> (or speed) and <dfn>time</dfn> (location 
14825   in time).
14826 </p>
14827
14828 <p>
14829   A <dfn>clock</dfn> determines the speet at which one or more systems 
14830   operate. In the audio world this is generally referred to as <a href="http://en.wikipedia.org/wiki/Word_clock" title="http://en.wikipedia.org/wiki/Word_clock">Word Clock</a>. It does not carry any absolute reference to a point in time: A clock is used to keep a system's sample rate regular and accurate. Word clock is usually at the frequency of the sample rate&mdash;at 48&nbsp;kHz, its period is about 20&nbsp;μs. Word Clock is the most common sample rate based clock but other clocks do exist such as Black and Burst, Tri-Level and DARS. Sample rates can be derived from these clocks as well.
14831 </p>
14832
14833 <p>
14834   Time or <dfn>timecode</dfn> specifies an absolute  position on a timeline, 
14835   such as <code>01:02:03:04</code> (expressed as Hours:Mins:Secs:Frames). It is 
14836   actual <em>data</em> and not a clock <em>signal</em> per se.
14837   The granularity of timecode is <dfn>Video Frames</dfn> and is an order of 
14838   magnitude lower than, say, Word Clock which is counted in 
14839   <dfn>samples</dfn>. A typical frame rate is 25&nbsp;<abbr title="frames
14840   per second">fps</abbr> with a period of
14841   40&nbsp;ms.
14842   In the case of 48&nbsp;kHz and 25&nbsp;fps, there are 1,920 audio samples 
14843   per video frame.
14844 </p>
14845
14846 <p>
14847   The concepts of clock and timecode are reflected in JACK and Ardour:
14848 </p>
14849
14850 <p>
14851   JACK provides clock synchronization and is not concerned with time code 
14852   (this is not entirely true, more on jack-transport later).
14853   On the software side, jackd provides sample-accurate synchronization 
14854   between all JACK applications.
14855   On the hardware side, JACK uses the clock of the audio-interface. 
14856   Synchronization of multiple interfaces requires hardware support to sync 
14857   the clocks.
14858   If two interfaces run at different clocks the only way to align the 
14859   signals is via re-sampling (SRC&mdash;Sample Rate Conversion), which is
14860   expensive in terms of CPU usage and may decreases fidelity if done
14861   incorrectly.
14862 </p>
14863
14864 <p>
14865   Timecode is used to align systems already synchronized by a clock to 
14866   a common point in time, this is application specific and various 
14867   standards and methods exist to do this.
14868 </p>
14869
14870 <p class="note">
14871   To make things confusing, there are possibilities to synchronize clocks 
14872   using timecode. e.g. using mechanism called <dfn>jam-sync</dfn> and a 
14873   <dfn>phase-locked loop</dfn>.
14874 </p>
14875
14876 <p>
14877   An interesting point to note is that LTC (Linear Time Code) is a 
14878   Manchester encoded, frequency modulated signal that carries both 
14879   clock and time. It is possible to extract absolute position data 
14880   and speed from it.
14881 </p>
14882
14883 ---
14884 title: Latency and Latency-Compensation
14885 menu_title: Latency
14886 part: subchapter
14887 ---
14888
14889 <p>
14890   <a
14891   href="http://en.wikipedia.org/wiki/Latency_%28audio%29"><dfn>Latency</dfn></a> 
14892   is a system's reaction time to a given stimulus. There are many factors that 
14893   contribute to the total latency of a system. In order to achieve exact time 
14894   synchronization all sources of latency need to be taken into account and 
14895   compensated for.
14896 </p>
14897
14898 <h2>Sources of Latency</h2>
14899
14900 <h3>Sound propagation through the air</h3>
14901
14902 <p>
14903   Since sound is a mechanical perturbation in a fluid, it travels at 
14904   comparatively slow <a href="http://en.wikipedia.org/wiki/Speed_of_sound">speed</a> 
14905   of about 340 m/s. As a consequence, your acoustic guitar or piano has a 
14906   latency of about 1&ndash;2 ms, due to the propagation time of the sound 
14907   between your instrument and your ear. 
14908 </p>
14909
14910 <h3>Digital-to-Analog and Analog-to-Digital conversion</h3>
14911
14912 <p>
14913   Electric signals travel quite fast (on the order of the speed of light), 
14914   so their propagation time is negligible in this context. But the conversions 
14915   between the analog and digital domain take a comparatively long time to perform, 
14916   so their contribution to the total latency may be considerable on
14917   otherwise very low-latency systems. Conversion delay is usually below 1&nbsp;ms.
14918 </p>
14919
14920 <h3>Digital Signal Processing</h3>
14921
14922 <p>
14923   Digital processors tend to process audio in chunks, and the size of that chunk 
14924   depends on the needs of the algorithm and performance/cost considerations. 
14925   This is usually the main cause of latency when you use a computer and one you 
14926   can try to predict and optimize.
14927 </p>
14928
14929 <h3>Computer I/O Architecture</h3>
14930
14931 <p>
14932   A computer is a general purpose processor, not a digital audio processor. 
14933   This means our audio data has to jump a lot of fences in its path from the 
14934   outside to the CPU and back, contending in the process with some other parts 
14935   of the system vying for the same resources (CPU time, bus bandwidth, etc.) 
14936 </p>
14937
14938 <h2>The Latency chain</h2>
14939
14940 <img src="/images/latency-chain.png"  title="Latency chain" alt="Latency chain" />
14941
14942 <p>
14943   <em>Figure: Latency chain.</em> 
14944   The numbers are an example for a typical PC. With professional gear and an 
14945   optimized system the total roundtrip latency is usually lower. The important 
14946   point is that latency is always additive and a sum of many independent factors.
14947 </p>
14948
14949 <p>
14950   Processing latency is usually divided into <dfn>capture latency</dfn> (the time 
14951   it takes for the digitized audio to be available for digital processing, usually 
14952   one audio period), and <dfn>playback latency</dfn> (the time it takes for
14953   In practice, the combination of both matters. It is called <dfn>roundtrip 
14954   latency</dfn>: the time necessary for a certain audio event to be captured, 
14955   processed and played back.
14956 </p>
14957
14958 <p class="note">
14959   It is important to note that processing latency in a jackd is a matter of
14960   choice. It can be lowered within the limits imposed by the hardware (audio 
14961   device, CPU and bus speed) and audio driver. Lower latencies increase the 
14962   load on the system because it needs to process the audio in smaller chunks 
14963   which arrive much more frequently. The lower the latency, the more likely 
14964   the system will fail to meet its processing deadline and the dreaded
14965   <dfn>xrun</dfn> (short for buffer over- or under-run) will make its 
14966   appearance more often, leaving its merry trail of clicks, pops and crackles.
14967 </p>
14968
14969 <p>
14970   The digital I/O latency is usually negligible for integrated or 
14971   <abbr title="Periphal Component Interface">PCI</abbr> audio devices, but 
14972   for USB or FireWire interfaces the bus clocking and buffering can add some 
14973   milliseconds.
14974 </p>
14975
14976
14977 <h2>Low Latency usecases</h2>
14978
14979 <p>
14980   Low latency is <strong>not</strong> always a feature you want to have. It 
14981   comes with a couple of drawbacks: the most prominent is increased power 
14982   consumption because the CPU needs to process many small chunks of audio data,
14983   it is constantly active and can not enter power-saving mode (think fan-noise). 
14984   Since each application that is part of the signal chain must run in every 
14985   audio cycle, low-latency systems will undergo<dfn>context switches</dfn> 
14986   between applications more often, which incur a significant overhead.  
14987   This results in a much higher system load and an increased chance of xruns. 
14988 </p>
14989
14990 <p>
14991   For a few applications, low latency is critical:
14992 </p>
14993
14994 <h3>Playing virtual instruments</h3>
14995
14996 <p>
14997   A large delay between the pressing of the keys and the sound the instrument 
14998   produces will throw-off the timing of most instrumentalists (save church 
14999   organists, whom we believe to be awesome latency-compensation organic systems.)
15000 </p>
15001
15002 <h3>Software audio monitoring</h3>
15003
15004 <p>
15005   If a singer is hearing her own voice through two different paths, her head 
15006   bones and headphones, even small latencies can be very disturbing and
15007   manifest as a tinny, irritating sound.
15008 </p>
15009
15010 <h3>Live effects</h3>
15011
15012 <p>
15013   Low latency is important when using the computer as an effect rack for
15014   inline effects such as compression or EQ. For reverbs, slightly higher
15015   latency might be tolerable, if the direct sound is not routed through the
15016   computer. 
15017 </p>
15018
15019 <h3>Live mixing</h3> 
15020
15021 <p>
15022   Some sound engineers use a computer for mixing live performances. 
15023   Basically that is a combination of the above: monitoring on stage, 
15024   effects processing and EQ. 
15025 </p>
15026
15027 <p>
15028   In many other cases, such as playback, recording, overdubbing, mixing, 
15029   mastering, etc. latency is not important, since it can easily be 
15030   compensated for.<br />
15031   To explain that statement: During mixing or mastering you don&#039;t care 
15032   if it takes 10ms or 100ms between the instant you press the play button
15033   and sound coming from the speaker. The same is true when recording with a count in.
15034 </p>
15035
15036 <h2>Latency compensation</h2>
15037
15038 <p>
15039   During tracking it is important that the sound that is currently being 
15040   played back is internally aligned with the sound that is being recorded.
15041 </p>
15042
15043 <p>
15044   This is where latency-compensation comes into play. There are two ways to 
15045   compensate for latency in a DAW, <dfn>read-ahead</dfn> and
15046   <dfn>write-behind</dfn>. The DAW starts playing a bit early (relative to 
15047   the playhead), so that when the sound arrives at the speakers a short time 
15048   later, it is exactly aligned with the material that is being recorded.
15049   Since we know that play-back has latency, the incoming audio can be delayed 
15050   by the same amount to line things up again.
15051 </p>
15052
15053 <p>
15054   As you may see, the second approach is prone to various implementation 
15055   issues regarding timecode and transport synchronization. Ardour uses read-ahead 
15056   to compensate for latency. The time displayed in the Ardour clock corresponds 
15057   to the audio-signal that you hear on the speakers (and is not where Ardour 
15058   reads files from disk).
15059 </p>
15060
15061 <p>
15062   As a side note, this is also one of the reasons why many projects start at 
15063   timecode <samp>01:00:00:00</samp>. When compensating for output latency the 
15064   DAW will need to read data from before the start of the session, so that the 
15065   audio arrives in time at the output when the timecode hits <samp>01:00:00:00</samp>. 
15066   Ardour3 does handle the case of <samp>00:00:00:00</samp> properly but not all 
15067   systems/software/hardware that you may inter-operate with may behave the same.
15068 </p>
15069
15070 <h2>Latency Compensation And Clock Sync</h2>
15071
15072 <p>
15073   To achieve sample accurate timecode synchronization, the latency introduced 
15074   by the audio setup needs to be known and compensated for.
15075 </p>
15076
15077 <p>
15078   In order to compensate for latency, JACK or JACK applications need to know 
15079   exactly how long a certain signal needs to be read-ahead or delayed:
15080 </p>
15081
15082 <img src="/images/jack-latency-excerpt.png"  title="Jack Latency Compensation" alt="Jack Latency Compensation" />
15083
15084 <p>
15085   <em>Figure: Jack Latency Compensation.</em>  
15086 </p>
15087
15088 <p>
15089   In the figure above, clients A and B need to be able to answer the following 
15090   two questions:
15091 </p>
15092
15093 <ul>
15094   <li>
15095     How long has it been since the data read from port Ai or Bi arrived at the
15096     edge of the JACK graph (capture)?
15097   </li>
15098   <li>
15099     How long will it be until the data writen to port Ao or Bo arrives at the
15100     edge of the JACK graph (playback)?
15101   </li>
15102 </ul>
15103
15104 <p>
15105   JACK features an <abbr title="Application Programming Interface">API</abbr> 
15106   that allows applications to determine the answers to above questions. 
15107   However JACK can not know about the additional latency that is introduced 
15108   by the computer architecture, operating system and soundcard. These values 
15109   can be specified by the JACK command line parameters <kbd class="input">-I</kbd> 
15110   and <kbd class="input">-O</kbd> and vary from system 
15111   to system but are constant on each. On a general purpose computer system 
15112   the only way to accurately learn about the total (additional) latency is to 
15113   measure it.
15114 </p>
15115
15116 <h2>Calibrating JACK Latency</h2>
15117
15118 <p>
15119   Linux DSP guru Fons Adriaensen wrote a tool called <dfn>jack_delay</dfn> 
15120   to accurately measure the roundtrip latency of a closed loop audio chain, 
15121   with sub-sample accuracy. JACK itself includes a variant of this tool 
15122   called <dfn>jack_iodelay</dfn>.
15123 </p>
15124
15125 <p>
15126   Jack_iodelay allows you to measure the total latency of the system, 
15127   subtracts the known latency of JACK itself and suggests values for 
15128   jackd's audio-backend parameters.
15129 </p>
15130
15131 <p>
15132   jack_[io]delay works by emitting some rather annoying tones, capturing 
15133   them again after a round trip through the whole chain, and measuring the 
15134   difference in phase so it can estimate with great accuracy the time taken. 
15135 </p>
15136
15137 <p>
15138   You can close the loop in a number of ways:
15139 </p>
15140
15141 <ul>
15142   <li>
15143     Putting a speaker close to a microphone. This is rarely done, as air 
15144     propagation latency is well known so there is no need to measure it.
15145   </li>
15146   <li>
15147     Connecting the output of your audio interface to its input using a 
15148     patch cable. This can be an analog or a digital loop, depending on 
15149     the nature of the input/output you use. A digital loop will not factor 
15150     in the <abbr title="Analog to Digital, Digital to Analog">AD/DA</abbr> 
15151     converter latency.
15152   </li>
15153 </ul>
15154
15155 <p>
15156   Once you have closed the loop you have to:
15157 </p>
15158
15159 <ol>
15160   <li>Launch jackd with the configuration you want to test.</li>
15161   <li>Launch <kbd class="input">jack_delay</kbd> on the commandline.</li>
15162   <li>Make the appropriate connections between your jack ports so the loop is closed.</li>
15163   <li>Adjust the playback and capture levels in your mixer.</li>
15164 </ol>
15165
15166 ---
15167 title: Timecode Generators and Slaves
15168 part: subchapter
15169 ---
15170
15171 <p>
15172   Ardour supports three common timecode formats:
15173   <abbr title="Linear/Longitudinal Time Code"><dfn>LTC</dfn></abbr>,
15174   <abbr title="MIDI Time Code"><dfn>MTC</dfn></abbr>, and
15175   <dfn>MIDI Clock</dfn>, as well as 
15176   <dfn>JACK-transport</dfn>, a JACK-specific timecode implementation.
15177 </p>
15178
15179 <p>
15180   Ardour can generate timecode and thus act as timecode <dfn>master</dfn>, 
15181   providing timecode information to other applications. Ardour can also be 
15182   <dfn>slaved</dfn> to some external source in which case the playhead 
15183   follows the incoming timecode.
15184 </p>
15185
15186 <p>
15187   Combining the timecode slave and generator modes, Ardour can also 
15188   <dfn>translate</dfn> timecode. e.g create LTC timecode from incoming MTC.
15189 </p>
15190
15191 <h2>Ardour Timecode Configuration</h2>
15192
15193 <p>
15194   Each Ardour session has a specific timecode frames-per-second setting which 
15195   is configured in <kbd class="menu">session &gt; properties &gt;
15196   timecode</kbd>. The selected timecode affects the timecoderuler in the main 
15197   window as well as the clock itself.
15198 </p>
15199
15200 <p>
15201   Note that some timecode formats do not support all of Ardour's available 
15202   fps settings. MTC is limited to 24, 25, 29.97 and 30 fps.
15203 </p>
15204
15205 <p>
15206   The video pull-up modes change the effective samplerate of Ardour to allow
15207   for changing a film soundtrack from one frame rate to another. The concept is 
15208   beyond the scope of this manual, but Wikipedia's entry on 
15209   <a href="http://en.wikipedia.org/wiki/Telecine">Telecine</a> 
15210   may get you started.
15211 </p>
15212
15213 <h2>Ardour Timecode Generator Configuration</h2>
15214
15215 <p>
15216   This is pretty straightforward: simply turn it on. The MTC and MIDI-Clock 
15217   generator do not have any options. The LTC generator has a configurable
15218   output level. JACK-transport cannot be <em>generated</em>. Jack itself is 
15219   always synced to its own cycle and cannot do varispeed&mdash;it will
15220   always be synced to a hardware clock or another JACK master.
15221 </p>
15222
15223 <p>
15224   The relevant settings for timecode generator can be found in 
15225   <kbd class="menu">Edit &gt; Preferences &gt; MIDI Preferences</kbd> (for MTC,
15226   MC) and
15227   <kbd class="menu">Edit &gt; Preferences &gt; Transport Preferences</kbd>
15228   (for LTC).
15229 </p>
15230
15231 <p>
15232   The timecode is sent to jack-ports <code>ardour:MTC out</code>, 
15233   <code>ardour:MIDI clock out</code> and <code>ardour:LTC-out</code>. Multiple 
15234   generators can be active simultaneously.
15235 </p>
15236
15237 <p class="note">
15238   Note that, as of Jan 2014, only the LTC generator supports latency 
15239   compensation. This is due to the fact the Ardour MIDI ports are not 
15240   yet latency compensated.
15241 </p>
15242
15243 <p>
15244   In <kbd class="menu">Session &gt; Properties</kbd>, it is possible to 
15245   define an offset between Ardour's internal time and the timecode sent. 
15246   Currently only the LTC generator honors this offset.
15247 </p>
15248
15249 <p>
15250   Both LTC and MTC are limited to 30&nbsp;fps. Using frame rates larger 
15251   than that will disable the generator. In both cases also only 24, 25, 
15252   29.97df (drop-frame) and 30&nbsp;fps are well defined by specifications (such as 
15253   SMPTE-12M, EU and the MIDI standard).
15254 </p>
15255
15256 <h3>MTC Generator</h3>
15257
15258 <p>
15259   The <dfn>MTC generator</dfn> has no options. Ardour sends full MTC 
15260   frames whenever the transport is relocated or changes state (start/stop). 
15261   MTC <dfn>quarter frames</dfn> are sent when the transport is rolling and 
15262   the transport speed is within 93% and 107%.
15263 </p>
15264
15265 <h3>LTC Generator</h3>
15266
15267 <p>
15268   The level of the <dfn>LTC generator</dfn> output signal can be configured 
15269   in in the <kbd class="menu">Preferences &gt; Transport</kbd> dialog. By 
15270   default it is set to -18&nbsp;dBFS, which corresponds to 0dBu in an EBU 
15271   calibrated system.
15272 </p>
15273
15274 <p>
15275   The LTC generator has an additional option to keep sending timecode even 
15276   when the transport is stopped. This mode is intended to drive analog tape 
15277   machines which unspool the tape if no LTC timecode is received.
15278 </p>
15279
15280 <p>
15281   LTC is send regardless of Ardour's transport speed. It is accurately 
15282   generated even for very slow speeds (&lt;5%) and only limited by the 
15283   soundcard's sampling-rate and filter (see 
15284   <a
15285   href="http://en.wikipedia.org/wiki/Gibbs_phenomenon#Signal_processing_explanation">Gibbs phenomenon</a>) 
15286   for high speeds.
15287 </p>
15288
15289 <h2>Ardour Slave Configuration</h2>
15290
15291 <p> 
15292   The timecode source can be switched with the button just right of 
15293   Ardour's main clock. By default it is set to <kbd
15294   class="menu">Internal</kbd> in which case Ardour will ignore any external 
15295   timecode. The button allows to toggle between Internal and the configured 
15296   timecode source which is chosen in <kbd class="menu">Edit &gt; Preferences 
15297   &gt; Transport</kbd>.
15298 </p>
15299
15300 <p>
15301   When Ardour is <dfn>chasing</dfn> (synchronizing to) an external timecode 
15302   source, the following cases need to be distinguished:
15303 </p>
15304
15305 <ol>
15306   <li>the timecode source shares the clock</li>
15307   <li>the timecode source is independent (no wordclock sync)</li>
15308 </ol>
15309
15310 <p>and</p>
15311
15312 <ol>
15313   <li>the timecode source uses the same FPS setting as Ardour</li>
15314   <li>the timecode source runs at different frames-per-second</li>
15315 </ol>
15316
15317 <p>
15318   In both cases the first option is preferred: clock sync + same FPS setting.
15319 </p>
15320
15321 <h3>Frames-per-second</h3>
15322
15323 <p>
15324   If the frames-per-second do not match, Ardour can either re-calculate 
15325   and map the frames, or the configured FPS (<kbd class="menu">Session &gt;
15326   Properties</kbd>) can be changed automatically while the slave is active. 
15327   The behavior is configured with the checkbox <kbd class="option">Edit 
15328   &gt; Preferences &gt; Transport &gt; Match session video frame rate to 
15329   external timecode</kbd>.
15330 </p>
15331
15332 <p>
15333   When enabled, the session video frame rate will be changed to match that 
15334   of the selected external timecode source. When disabled, the session video 
15335   frame rate will not be changed to match that of the selected external 
15336   timecode source. Instead the frame rate indication in the main clock will 
15337   flash red, and Ardour will convert between the external timecode standard 
15338   and the session standard.
15339 </p>
15340
15341 <p class="warning">
15342   29.97 drop-frame timecode is another corner case. While the SMPTE 12M-1999 
15343   specifies 29.97df as 30000/1001 frames per second, not all hardware devices 
15344   follow that standard. The checkbox 
15345   <kbd class="option">Lock to 29.9700 fps instead of 30000/1001</kbd> allows 
15346   to use a compatibility mode for those devices.
15347 </p>
15348
15349 <p>
15350   When enabled, the external timecode source is assumed to use 29.970000 fps 
15351   instead of 30000/1001. SMPTE 12M-1999 specifies 29.97df as 30000/1001. The 
15352   <abbr title="specification">spec</abbr> further mentions that drop-frame 
15353   timecode has an accumulated error of -86&nbsp;ms over a 24-hour period. 
15354   Drop-frame timecode would compensate exactly for a NTSC color frame rate 
15355   of 30 * 0.9990 (ie 29.970000). That is <em>not</em> the actual rate. However, 
15356   some vendors use that rate&mdash;despite it being against the specs&mdash;because the variant of using exactly 29.97 fps yields zero timecode 
15357   drift.
15358 </p>
15359
15360 <h3>Clock Sync Lock</h3>
15361
15362 <p>
15363   As described in the 
15364   <a href="http://manual.ardour.org/synchronization/on-clock-and-time/">On Clock and Time</a>
15365   chapter, timecode and clock are independent. If the external timecode 
15366   source is not in sample-sync with the audio hardware (and JACK), Ardour 
15367   needs to run at varispeed to adjust for the discrepancy.
15368 </p>
15369
15370 <p>
15371   The checkbox <kbd class="option">External timecode is sync locked</kbd> 
15372   allows to select the behavior according to your setup. When enabled, it 
15373   indicates that the selected external timecode source shares sync (Black 
15374   &amp; Burst, Wordclock, etc) with the audio interface.
15375 </p>
15376
15377 <p>
15378   In other words: if enabled, Ardour will only perform initial 
15379   synchronization and keep playing at speed 1.0 instead of vari-speed 
15380   adjusting to compensate for drift.
15381 </p>
15382
15383 <p class="note">
15384   Note that vari-speed is unavailable when recording in Ardour, and all 
15385   tracking happens at speed 1.0. So if you want to record in sync with 
15386   external timecode it must be sample-locked or it will drift over time.
15387 </p>
15388
15389 <h3>MIDI Clock</h3>
15390
15391 <p>
15392   <dfn>MIDI Clock</dfn> is not a timecode format but tempo-based time. The 
15393   absolute reference point is expressed as beats-per-minute and Bar, Beat 
15394   and Tick. There is no concept of sample-locking for MIDI clock signals. 
15395   Ardour will vari-speed if necessary to chase the incoming signal.
15396 </p>
15397
15398 <p>
15399   Note that the MIDI Clock source must be connected to the 
15400   <code>ardour:MIDI clock in</code> port.
15401 </p>
15402
15403 <h3>LTC&mdash;Linear Timecode</h3>
15404
15405 <p>
15406   The <dfn>LTC</dfn> slave decodes an incoming LTC signal on a JACK audio 
15407   port. It will auto-detect the frame rate and start locking to the signal
15408    once two consecutive LTC frames have been received.
15409 </p>
15410
15411 <p>
15412   The incoming timecode signal needs to arrive at the 
15413   <code>ardour:LTC-in</code> port. Port-connections are restored for each 
15414   session and the preference dialog offers an option to select it for all 
15415   sessions.
15416 </p>
15417
15418 <p>
15419   Ardour's transport is aligned to LTC-frame start/end positions according 
15420   to the SMPTE 12M-1999 specification, which means that the first bit of an 
15421   LTC-Frame is aligned to different Lines of a Video-Frame, depending on the 
15422   TV standard used. Only for Film (24fps) does the LTC-Frame directly match 
15423   the video Frame boundaries.
15424 </p>
15425
15426 <img src="/images/ltc-transport-alignment.png"  title="LTC frame alignment" alt="LTC frame alignment"/>
15427 <p><em>Figure: LTC frame alignment for the 525/60 TV standard</em></p>
15428
15429 <p>
15430   Ardour supports vari-speed and backwards playback but will only follow 
15431   speed changes if the <kbd class="optoff">sync locked</kbd> option is 
15432   disabled.
15433 </p>
15434
15435 <p>
15436   While Ardour is chasing LTC, the main transport clock will display the 
15437   received Timecode as well as the delta between the incoming signal and 
15438   Ardour's transport position.
15439 </p>
15440
15441 <p>
15442   A global offset between incoming timecode and Ardour's transport can be 
15443   configured in <kbd class="menu">Session &gt; Properties</kbd>.
15444 </p>
15445
15446 <p>
15447   The user-bits in the received LTC frame are ignored.
15448 </p>
15449
15450 <h3>MTC&mdash;MIDI Timecode</h3>
15451
15452 <p>
15453   Ardour's MTC slave parses <dfn>full timecode messages</dfn> as well as 
15454   MTC <dfn>quarter-frame messages</dfn> arriving on the 
15455   <code>ardour:MTC in</code> port. The transport will only start rolling 
15456   once a complete sequence of 8 quarter frames has been received.
15457 </p>
15458
15459 <p>
15460   Ardour supports vari-speed and backwards playback but will only follow 
15461   MTC speed changes if the <kbd class="optoff">sync locked</kbd> option 
15462   is disabled.
15463 </p>
15464
15465 <p>
15466   When Ardour is chasing MTC, the main transport clock will display the 
15467   received Timecode as well as the delta between the incoming signal and 
15468   Ardour's transport position.
15469 </p>
15470
15471 <h3>JACK Transport</h3>
15472
15473 <p>
15474   When slaved to jack, Ardour's transport will be identical to 
15475   JACK-transport. As opposed to other slaves, Ardour can be used to control 
15476   the JACK transport states (stopped/rolling). No port connections need to 
15477   be made for jack-transport to work.
15478 </p>
15479
15480 <p>
15481   JACK-transport does not support vari-speed, nor offsets. Ardour does not 
15482   chase the timecode but is always in perfect sample-sync with it.
15483 </p>
15484
15485 <p>
15486   JACK-transport also includes temp-based-time information in Bar:Beats:Ticks 
15487   and beats-per-minute. However, only one JACK application can provide this 
15488   information at a given time. The checkbox 
15489   <kbd class="option">Session &gt; Properties &gt; JACK Time Master</kbd>
15490   configures Ardour to act as translator from timecode to BBT information.
15491 </p>
15492
15493 ---
15494 title: Overview of all Timecode related settings
15495 menu_title: Overview of Timecode settings
15496 part: subchapter
15497 ---
15498
15499 <p>
15500   Timecode settings are accessed from the menu in three places:
15501 </p>
15502
15503 <ul>
15504   <li><kbd class="menu">Session &gt; Properties &gt; Timecode</kbd></li>
15505   <li><kbd class="menu">Edit &gt; Preferences &gt; Transport</kbd></li>
15506   <li><kbd class="menu">Edit &gt; Preferences &gt; MIDI</kbd></li>
15507 </ul>
15508
15509 <h2>Timecode Settings</h2>
15510 <dl>
15511   <dt><kbd class="menu">Timecode frames-per-second</kbd></dt>
15512   <dd>
15513     Configure timecode frames-per-second (23.976, 24, 24.975, 25, 29.97, 
15514     29.97 drop, 30, 30 drop, 59.94, 60). Note that all fractional 
15515     framerates are actually fps*(1000.0/1001.0).
15516   </dd>
15517   <dt><kbd class="menu">Pull up/down</kbd></dt>
15518   <dd>
15519     Video pull-up modes change the effective samplerate of Ardour to 
15520     allow for changing a film soundtrack from one frame rate to another. 
15521     See <a href="http://en.wikipedia.org/wiki/Telecine">Telecine</a>
15522   </dd>
15523   <dt><kbd class="menu">Slave Timecode offset</kbd></dt>
15524   <dd>
15525     The specified offset is added to the received timecode (MTC or
15526     LTC).
15527   </dd>
15528   <dt><kbd class="menu">Timecode Generator offset</kbd></dt>
15529   <dd>
15530     Specify an offset which is added to the generated timecode (so far only LTC).
15531   </dd>
15532   <dt><kbd class="option">JACK Time Master</kbd></dt>
15533   <dd>
15534     Provide Bar|Beat|Tick and other information to JACK.
15535   </dd>
15536 </dl>
15537 <p>These settings are session specific.</p>
15538
15539
15540 <h2>Transport Preferences</h2>
15541 <dl>
15542   <dt><kbd class="menu">External timecode source</kbd></dt>
15543   <dd>
15544     Select timecode source: JACK, LTC, MTC, MIDI Clock
15545   </dd>
15546   <dt><kbd class="option">Match session video frame rate to external timecode</kbd></dt>
15547   <dd>
15548     This option controls the value of the video frame rate <em>while 
15549     chasing</em> an external timecode source. When enabled, the 
15550     session video frame rate will be changed to match that of the selected 
15551     external timecode source. When disabled, the session video frame rate 
15552     will not be changed to match that of the selected external timecode 
15553     source. Instead the frame rate indication in the main clock will flash 
15554     red and Ardour will convert between the external timecode standard and 
15555     the session standard.
15556   </dd>
15557   <dt><kbd class="option">External timecode is sync locked</kbd></dt>
15558   <dd>
15559     Indicates that the selected external timecode source shares sync (Black 
15560     &amp; Burst, Wordclock, etc) with the audio interface.
15561   </dd>
15562   <dt><kbd class="option">Lock to 29.9700 fps instead of 30000/1001</kbd></dt>
15563   <dd>
15564     The external timecode source is assumed to use 29.97 fps instead of 
15565     30000/1001. SMPTE 12M-1999 specifies 29.97df as 30000/1001. The spec 
15566     further mentions that drop-frame timecode has an accumulated error of -86ms 
15567     over a 24-hour period. Drop-frame timecode would compensate exactly for a 
15568     NTSC color frame rate of 30 * 0.9990 (ie 29.970000). That is not the actual 
15569     rate. However, some vendors use that rate&mdash;despite it being against 
15570     the specs&mdash;because the variant of using exactly 29.97 fps has zero 
15571     timecode drift.
15572   </dd>
15573   <dt><kbd class="menu">LTC incoming port</kbd></dt>
15574   <dd>
15575     Offers a session agnostic way to retain the LTC port connection.
15576   </dd>
15577   <dt><kbd class="option">Enable LTC generator</kbd></dt>
15578   <dd>Does just what it says.</dd>
15579   <dt><kbd class="option">Send LTC while stopped</kbd></dt>
15580   <dd>
15581     Enable to continue to send LTC information even when the transport 
15582     (playhead) is not moving. This mode is intended to drive analog tape 
15583     machines which unspool the tape if no LTC timecode is received.
15584   </dd>
15585   <dt><kbd class="menu">LTC generator level</kbd></dt>
15586   <dd>
15587     Specify the Peak Volume of the generated LTC signal in dbFS. A good value 
15588     is 0&nbsp;dBu (which is -18&nbsp;dbFS in an EBU calibrated system).
15589   </dd>
15590 </dl>
15591 <p>These settings are common to all sessions.</p>
15592
15593
15594 <h2>MIDI Preferences</h2>
15595 <dl>
15596   <dt><kbd class="option">Send MIDI Timecode</kbd></dt><dd>Enable MTC generator</dd>
15597   <dt><kbd class="option">Send MIDI Clock</kbd></dt><dd>Enable MIDI Clock generator</dd>
15598 </dl>
15599 <p>These settings are also common to all sessions.</p>
15600
15601
15602 ---
15603 title: Working with Field Recorders in Ardour
15604 part: chapter
15605 ---
15606
15607
15608 ---
15609 title: Working with Video in Ardour
15610 part: chapter
15611 ---
15612
15613
15614 ---
15615 title: Video Timeline and Monitoring
15616 part: subchapter
15617 ---
15618
15619 <p>
15620   Ardour offers a <dfn>video timeline</dfn> and <dfn>video monitoring</dfn>
15621   for convenient audio mixing and editing to video, in order to produce
15622   film soundtracks and music videos, or perform TV postproduction tasks.
15623 </p>
15624   
15625 <p>
15626   The video capabilities are:
15627 </p>
15628
15629 <ul>
15630   <li>Import a single video and optionally extract the soundtrack from it.</li>
15631   <li>Provide a video monitor window, or full-screen display, of the 
15632   imported video in sync with any of the available Ardour timecode
15633   sources.</li>
15634   <li>Display a frame-by-frame (thumbnail) timeline of the video.</li>
15635   <li>Allow for a configurable timecode offset.</li>
15636   <li><em>Lock</em> audio regions to the video.</li> 
15637   <li>Move audio regions with the video at video-frame granularity.</li>
15638   <li>Export the video, trim start and end, add blank frames and/or
15639   multiplex it with the soundtrack of the current session.</li>
15640 </ul>
15641
15642 <p>
15643   The setup of the video subsystem is modular and can be configured 
15644   in different ways, including:
15645 </p>
15646
15647 <ul>
15648   <li>One machine for all video decoding, video monitoring and audio editing
15649   tasks</li>
15650   <li>Two machines, one for video monitoring, one for Ardour</li>
15651   <li>Three machines,  separate video server (for timeline decoding 
15652   and file archive), dedicated video monitor, and Ardour</li>
15653 </ul>
15654
15655 <p>
15656   Ardour does <em>not</em>:
15657 </p>
15658
15659 <ul>
15660   <li>allow for more than one video to be loaded at a time.</li>
15661   <li>provide video editing capabilities</li>
15662 </ul>
15663
15664 ---
15665 title: Video Timeline Setup
15666 part: subchapter
15667 ---
15668
15669 <p>
15670   No configuration is required if you intend to run everything on a single 
15671   machine, and if you acquired Ardour from 
15672   <a href="http://www.ardour.org"
15673   title="http://www.ardour.org">http://www.ardour.org</a>.
15674   Everything is pre-configured and included with the download/install.
15675 </p>
15676
15677 <h2>Single Machine</h2>
15678
15679 <p>
15680   If you compile Ardour from source, or have installed it from a 3rd party 
15681   repository, three additional tools will need to be installed manually,
15682   which are used by Ardour to provide video features:
15683 </p> 
15684
15685 <ul> 
15686   <li>xjadeo (the video monitor application): <a href="http://xjadeo.sf.net"
15687   title="http://xjadeo.sf.net" rel="nofollow">http://xjadeo.sf.net</a></li>
15688   <li>harvid (a video decoder used for the thumbnail timeline): <a
15689   href="http://x42.github.com/harvid/" title="http://x42.github.com/harvid/"
15690   rel="nofollow">http://x42.github.com/harvid/</a></li> 
15691   <li>ffmpeg, ffprobe (used to import/export video, extract soundtracks and 
15692   query video information): <a href="http://ffmpeg.org" title="http://ffmpeg.org"
15693   rel="nofollow">http://ffmpeg.org</a></li> 
15694 </ul>
15695
15696 <p>
15697   Ardour requires xjadeo &ge; version 0.6.4, harvid &ge; version 0.7.0 and ffmpeg (known to work versions: 1.2, 2.8.2)
15698 </p>
15699
15700 <p>
15701   The Ardour development team is in control of the first two applications. ffmpeg however can be a bit of a problem. To avoid conflicts with distribution packages, Ardour looks for <code>ffmpeg_harvid</code> and <code>ffprobe_harvid</code>.
15702 </p>
15703
15704 <p>
15705   All four applications need to be found in <code>$PATH</code> (e.g. 
15706   <code>$HOME/bin</code> or <code>/usr/local/bin</code>). For convenience the 
15707   binary releases of harvid include ffmpeg_harvid and ffprobe_harvid, but if 
15708   your distribution provides suitable ffmpeg commands you can also just create 
15709   symbolic links:
15710 </p>
15711
15712 <kbd class="cmd lin">sudo ln -s /usr/bin/ffmpeg /usr/bin/ffmpeg_harvid</kbd>
15713 <kbd class="cmd lin">sudo ln -s /usr/bin/ffprobe /usr/bin/ffprobe_harvid</kbd>   
15714
15715 <p>
15716   Binary releases are available from ardour.org as well as an installer script: 
15717   <a href="https://github.com/Ardour/ardour/blob/master/tools/videotimeline/install_video_tools.sh" 
15718   title="https://github.com/Ardour/ardour/blob/master/tools/videotimeline/install_video_tools.sh"  
15719   rel="nofollow">install_video_tools.sh</a>.
15720 </p>
15721
15722 <p>
15723   The easiest way to install the video-utilities is by running the following 
15724   line in a terminal:
15725 </p>
15726
15727 <kbd class="cmd lin">sh -c &quot;$(curl -s -L http://git.io/tVUCkw)&quot;</kbd>
15728
15729 <h2>Studio Setup</h2>
15730
15731 <p>
15732   Please read the info in the previous section to familiarize yourself with 
15733   the tools involved first. Setting up a proper A/V post-production studio 
15734   can be a complicated task. As much as we streamline and simplify the 
15735   <em>single machine</em> setup, the <dfn>studio setup</dfn> is focused on modularity.
15736 </p>
15737
15738 <ul class="fixme">
15739   <li>TODO:</li>
15740   <li>Synchronization ardour â†’ video-display-box should be accomplished by external 
15741  means jack-transport(netjack), MTC, LTC 
15742  (<abbr title="Open Sound Control&mdash;&quot;postmodern MIDI&quot;">OSC</abbr> and/or 
15743  ssh-pipe work but introduce additional latency + jitter)</li>
15744   <li>Ardour launches <code>XJREMOTE</code> (environment variable, default &#039;xjremote&#039; which comes with xjadeo).</li>
15745   <li>Either use a custom shell script that ssh&#039;es into the remote box and launches/controls xjadeo there, selects the sync-source and passes though communication between ardour â‡” xjadeo via ssh (xjadeo is launched stopped with the session).</li>
15746   <li>..or override xjremote&#039;s behavior â€“ instead of  IPC with a local running xjadeo-process, using <abbr title="Open Sound Control&mdash;&quot;postmodern MIDI&quot;">OSC</abbr> for example. xjadeo would run permanently and Ardour will just tell it to load files and set offsets via <acronym title="Open Sound Control&mdash;&quot;postmodern MIDI&quot;">OSC</acronym>. see <a href="http://xjadeo.git.sourceforge.net/git/gitweb.cgi?p=xjadeo/xjadeo;a=blob_plain;f=contrib/xjremote-osc" title="http://xjadeo.git.sourceforge.net/git/gitweb.cgi?p=xjadeo/xjadeo;a=blob_plain;f=contrib/xjremote-osc"  rel="nofollow">xjremote-osc</a> example script.</li>
15747   <li>If the video server runs remotely, Ardour needs to be configured in Ardour &gt; Preference &gt; Video (hostname of the video-server).</li>
15748   <li> Ideally the machines have a common shared folder (NFS or similar).  Ardour&#039;s import (audio-extract) and export (mux) functionality depends on having access to the video file.  Also Ardour's video-import transcodes the file into a suitable proxy-format that allows reliable seeking to any frame…</li>
15749 </ul>
15750
15751 ---
15752 title: Transcoding, Formats &amp; Codecs
15753 part: subchapter
15754 ---
15755
15756 <p>
15757   This chapter provides a short primer on video files, formats and 
15758   codecs â€“ because it is often cause for confusion:
15759 </p>
15760
15761 <p>
15762   A video file is a <dfn>container</dfn>. It usually contains one 
15763   <dfn>video track</dfn> and one or more <dfn>audio tracks</dfn>. 
15764   How these tracks are stored in the file is defined by the 
15765   <dfn>file format</dfn>. Common formats are 
15766   avi, mov, ogg, mkv, mpeg, mpeg-ts, mp4, flv, or vob.
15767 </p>
15768
15769 <p>
15770   Each of the tracks by itself is encoded using a <abbr
15771   title="Coder-Decoder"><dfn>Codec</dfn></abbr>. Common video codecs 
15772   are h264, mpeg2, mpeg4, theora, mjpeg, wmv3. Common audio codecs are
15773   mp2, mp3, dts, aac, wav/pcm.
15774 </p>
15775
15776 <p>
15777   Not all codecs can be packed into a given format. For example the 
15778   mpeg format is limited to mpeg2, mpeg4 and mp3 codecs (not entirely true). 
15779   DVDs do have stringent limitations as well. The opposite would be .avi; 
15780   pretty much every audio/video codec combination can be contained in an avi 
15781   file-format.
15782 </p>
15783
15784 <p>
15785   To make things worse, naming conventions for video codecs and formats are 
15786   often identical (especially MPEG ones) which leads to confusion.
15787   All in all it is a very wide and deep field. Suffice there are different 
15788   uses for different codecs and formats.
15789 </p>
15790
15791 <h2>Ardour specific issues</h2>
15792
15793 <p>
15794   Ardour supports a wide variety of video file formats codecs. More specifically, Ardour itself actually does not support any video at all but delegates handling of video files to <a href="http://ffmpeg.org">ffmpeg</a>, which supports over 350 different video codecs and more than 250 file formats.
15795 </p>
15796
15797 <p>
15798   When importing a video into Ardour, it will be <dfn>transcoded</dfn> (changed from one format and codec to another) to avi/mjpeg for internal use (this allows reliable seeking to frames at low CPU cost&mdash;the file size will increase, but hard disks are large and fast).
15799 </p>
15800
15801 <p>
15802   The export dialog includes presets for common format and codec combinations (such as DVD, web-video,..). If in doubt use one of the presets.
15803 </p>
15804
15805 <p>
15806   As last note: every time a video is transcoded, the quality can only get worse. Hence for the final mastering/<abbr title="Multiplexing Audio and Video">muxing</abbr> process, one should always to back and use the original source of the video.
15807 </p>
15808
15809 ---
15810 title: Workflow &amp; Operations
15811 part: subchapter
15812 ---
15813
15814 <h2>Overview of Operations</h2>
15815
15816 <dl class="wide-table">
15817   <dt><kbd class="menu">Session &gt; Open Video</kbd></dt>
15818   <dd>Add/replace a video to/on the timeline</dd>
15819   <dt><kbd class="menu">Window &gt; View Monitor</kbd></dt>
15820   <dd>Open/close external video monitor window</dd>
15821   <dt><kbd class="menu">View &gt; Video Monitor &gt; â€¦</kbd></dt>
15822   <dd>Various settings of the video monitor</dd>
15823   <dt><kbd class="menu">Session &gt; Export &gt; Video</kbd></dt>
15824   <dd>Export session and multiplex with video-file</dd>
15825   <dt><kbd class="mouse">Left</kbd>-drag the video in the timeline</dt>
15826   <dd>Re-align video and move 'locked' audio-regions along</dd>
15827   <dt>Context-menu on the video-timeline: <kbd class="menu"> &#039;lock&#039;</kbd></dt>
15828   <dd>Prevent accidental drags</dd>
15829   <dt>Audio region context menu: <kbd class="menu">Position &gt; Lock to video</kbd></dt>
15830   <dd>Mark audio region(s) to be moved along with the video.</dd>
15831 </dl>
15832
15833 <h2>Adding Video</h2>
15834
15835 <p>
15836   Adding video is a two-step process: select a video file, and choose 
15837   import mode and optionally select an audio track to extract.
15838 </p>
15839
15840 <p>
15841   The first step is rather straight-forward. The panel on the right side 
15842   allows to seek through the video and displays basic file information. 
15843   It is also useful to check if the video format/codec is supported:
15844 </p>
15845
15846 <img src="/images/a3_video_open.png" alt="video-open-dialog" width="300" />
15847
15848 <p>
15849   The second step analyzes the video file in more detail and offers import options:
15850 </p>
15851
15852 <dl>
15853   <dt><kbd class="menu">Import/Transcode to Session</kbd></dt>
15854   <dd>This is the default. The video will be imported in a suitable
15855   video format/codec for the timeline and video monitor and saved inside the
15856   session folder.  A location other than the session folder can also be
15857   chosen (external disk, or network storage of the video server on a different
15858   machine).</dd>
15859   <dt><kbd class="menu">Reference from Current Location</kbd></dt>
15860   <dd>Only useful for opening files that were previously encoded (are already 
15861   in a good format/codec). Use with care.</dd>
15862   <dt><kbd class="menu">Do not Import Video</kbd></dt>
15863   <dd>Useful for extracting audio only.</dd>
15864 </dl>
15865
15866 <img src="/images/a3_video_import.png" alt="Video Import Dialog" width="300" />
15867
15868 <p>
15869   By default the video is imported using the original width/height.
15870   If it is a large video (e.g. full-HD) it makes sense to scale it down
15871   to decrease the CPU load and disk I/O required to decode and play the
15872   file.<br />
15873   A small, low-quality representation of the image is usually sufficient 
15874   for editing soundtracks. The default bitrate in kbit/sec is set to use 
15875   0.7 bits per pixel. (Compare: the average DVD medium uses 5000&nbsp;kbit/s; 
15876   at PAL resolution this is about 0.5 bits per pixel. But the DVD is 
15877   using the <dfn>mpeg2</dfn>&mdash;a denser compression algorithm than the 
15878   <dfn>mjpeg</dfn> codec used by Ardour.)
15879 </p>
15880
15881 <h2>Working with A/V</h2>
15882
15883 <p>
15884   Well now...
15885 </p>
15886
15887 <img src="/images/a3_videotimeline.png" alt="Video Timeline" width="600" />
15888
15889 <h2 id="export">Exporting Video</h2>
15890
15891 <p>
15892   The video export will take audio from the current Ardour session and 
15893   multiplex it with a video file. The soundtrack of the video is taken from 
15894   an audio export of Ardour's master bus.
15895 </p>
15896
15897 <p>
15898   An arbitrary video file can be chosen. For high quality exports, the 
15899   original file (before it was imported into the timeline) should be used. 
15900   This is the default behaviour if that file can be found. If not, Ardour 
15901   will fall back to the imported proxy-video which is currently in use 
15902   on the timeline.  Any existing audio tracks on this video file are stripped.
15903 </p>
15904
15905 <p>
15906   The range selection allows to cut or extend the video. If the session is 
15907   longer than the video duration, black frames are prefixed or appended to 
15908   the video. (Note: this process may fail with non-standard pixel aspect 
15909   ratios). If Ardour's session range is shorter, the video will be cut accordingly.
15910 </p>
15911
15912 <p>
15913   Audio samplerate and normalization are options for Ardour's audio exporter. 
15914   The remaining settings are options that are directly passed on to ffmpeg.
15915 </p>
15916
15917 <p>
15918   The file format is determined by the extension that you choose for it
15919   (.avi, .mov, .flv, .ogv, .webm,...)
15920   Note: not all combinations of format, codec, and settings produce files 
15921   which are according to specifications. For example, flv files require 
15922   sample rates of 22.1&nbsp;kHz or 44.1&nbsp;kHz, mpeg containers can not 
15923   be used with ac3 audio-codec, etc. If in doubt, use one of the built-in 
15924   presets.
15925 </p>
15926
15927 <img src="/images/a3_video_export.png" alt="Video Export Dialog" width="300" />
15928
15929 <p>
15930   Ardour video export is not recommended for mastering! While ffmpeg (which is used by Ardour) can produce high-quality files, this export lacks the possibility to tweak many settings. We recommend to use winff, devede or dvdauthor to mux &amp; master. Nevertheless this video-export comes in handy to do quick snapshots, intermediates, dailies or online videos.
15931 </p>
15932
15933
15934 ---
15935 title: Scripting
15936 part: part
15937 ---
15938
15939
15940 ---
15941 title: Lua Scripting in Ardour
15942 part: chapter
15943 ---
15944
15945
15946 ---
15947 title: Lua Scripting
15948 part: subchapter
15949 ---
15950
15951 <p>
15952   Starting with version 4.7.213, Ardour supports Lua scripts.
15953 </p>
15954
15955 <p class="warning">
15956   Lua Integration is Work in Progress and far from complete.
15957 </p>
15958
15959 ---
15960 title: Scripting Documentation
15961 part: subchapter
15962 ---
15963
15964 <p class="warning">
15965  This Documentation is Work in Progress and far from complete. Also the documented API may be subject to change.
15966 </p>
15967
15968 <h2>Preface</h2>
15969
15970 <p>
15971   There are cases that a Ardour cannot reasonably cater for with core functionality by itself, either because they're session specific or user specific edge cases.
15972 </p>
15973
15974 <p>
15975   Examples for these include voice-activate (record-arm specific tracks and roll transport depending on signal levels), rename all regions after a specific timecode, launch an external application when a certain track is soloed, generate automation curves or simply provide a quick shortcut for a custom batch operation.
15976 </p>
15977
15978 <p>
15979   Cases like this call for means to extend the DAW without actually changing the DAW itself. This is where scripting comes in.
15980 </p>
15981
15982 <p>
15983   "Scripting" refers to tasks that could alternatively be executed step-by-step by a human operator.
15984 </p>
15985
15986 <p>
15987   Lua is a tiny and simple language which is easy to learn, yet allows for comprehensive solutions. Lua is also a glue language it allows to tie existing component in Ardour together in unprecedented ways, and most importantly Lua is one of the few scripting-languages which can be safely used in a real-time environment.
15988 </p>
15989
15990 <p>
15991   A good introduction to Lua is the book <a href="http://www.lua.org/pil/">Programming in Lua</a>. The first edition is available online, but if you have the means buy a copy of the book, it not only helps to support the Lua project, but provides for a much nicer reading and learning experience.
15992 </p>
15993
15994 <h2>Overview</h2>
15995
15996 <p>
15997   The core of ardour is a real-time audio engine that runs and processes audio. One interfaces with than engine by sending it commands. Scripting can be used to interact with or modify active Ardour session. Just like a user uses the Editor/Mixer GUI to modify the state or parameters of the session.
15998 </p>
15999
16000 <p>
16001   Doing this programmatically requires some knowledge about the objects used internally. Most Ardour C++ objects and their methods are directly exposed to Lua and one can call functions or modify variables:
16002 </p>
16003
16004 <div style="width:80%; margin:.5em auto;">
16005         <div style="width:45%; float:left;">
16006                 C++<br/>
16007                 <code class="cxx">
16008                         session-&gt;set_transport_speed (1.0);
16009                 </code>
16010         </div>
16011         <div style="width:45%; float:right;">
16012                 Lua<br/>
16013                 <code class="lua">
16014                         Session:set_transport_speed (1.0)
16015                 </code>
16016         </div>
16017 </div>
16018
16019 <div style="clear:both;"></div>
16020
16021 <p>
16022   You may notice that there is only a small syntactic difference, in this case. While C++ requires recompiling the application for every change, Lua script can be loaded, written or modified while the application is running. Lua also abstracts away many of the C++ complexities such as object lifetime, type conversion and null-pointer checks.
16023 </p>
16024
16025 <p>
16026   Close ties with the underlying C++ components is where the power of scripting comes from. A script can orchestrate interaction of lower-level components which take the bulk of the CPU time of the final program.
16027 </p>
16028
16029 <p>
16030   At the time of writing Ardour integrates Lua 5.3.2: <a href="http://www.lua.org/manual/5.3/manual.html">Lua 5.3 reference manual</a>.
16031 </p>
16032
16033 <h2>Integration</h2>
16034
16035 <p>
16036   Like Control surfaces and the GUI, Lua Scripts are confined to certain aspects of the program. Ardour provides the framework and runs Lua (not the other way around).
16037 </p>
16038
16039
16040 <p>
16041   In Ardour's case Lua is available:
16042 </p>
16043
16044 <dl>
16045         <dt>Editor Action Scripts</dt><dd>User initiated actions (menu, shortcuts) for batch processing</dd>
16046         <dt>Editor Hooks/Callbacks</dt><dd>Event triggered actions for the Editor/Mixer GUI</dd>
16047         <dt>Session Scripts</dt><dd>Scripts called at the start of every audio cycle (session, real-time)</dd>
16048         <dt>DSP Scripts</dt><dd>Audio/Midi processor&mdash;plugins with access to the Ardour session (per track/bus, real-time)</dd>
16049         <dt>Script Console</dt><dd>Action Script commandline</dd>
16050 </dl>
16051
16052 <p>
16053   There are is also a special mode:
16054 </p>
16055
16056 <dl>
16057         <dt>Commandline Tool</dt><dd>Replaces the complete Editor GUI, direct access to libardour (no GUI) from the commandline.<br/>
16058         <em>Be aware that the vast majority of complex functionality is provided by the Editor UI.</em></dd>
16059 </dl>
16060
16061 <h2>Managing Scripts</h2>
16062
16063 <p>
16064   Ardour searches for Lua scripts in the <code>scripts</code> folder in <code>$ARDOUR_DATA_PATH</code>, Apart from scripts included directly with Ardour, this includes
16065 </p>
16066
16067 <table>
16068         <tr><th>GNU/Linux</th><td><code>$HOME/.config/ardour5/scripts</code></td></tr>
16069         <tr><th>Mac OS X</th><td><code>$HOME/Library/Preferences/Ardour5/scripts</code></td></tr>
16070         <tr><th>Windows</th><td><code>%localappdata%\ardour5\scripts</code></td></tr>
16071 </table>
16072
16073 <p>Files must end with <code>.lua</code> file extension.</p>
16074
16075 <p>Scripts are managed via the GUI</p>
16076
16077 <dl>
16078         <dt>Editor Action Scripts</dt><dd>Menu &rarr; Edit &rarr; Scripted Actions &rarr; Manage</dd>
16079         <dt>Editor Hooks/Callbacks</dt><dd>Menu &rarr; Edit &rarr; Scripted Actions &rarr; Manage</dd>
16080         <dt>Session Scripts</dt><dd>Menu &rarr; Session &rarr; Scripting &rarr; Add/Remove Script</dd>
16081         <dt>DSP Scripts</dt><dd>Mixer-strip &rarr; context menu (right click) &rarr; New Lua Proc</dd>
16082         <dt>Script Console</dt><dd>Menu &rarr; Window &rarr; Scripting</dd>
16083 </dl>
16084
16085 <h2>Script Layout</h2>
16086
16087 <ul>
16088         <li>Every script must include an <code>ardour</code> descriptor table. Required fields are "Name" and "Type".</li>
16089         <li>A script must provide a <em>Factory method</em>: A function with optional instantiation parameters which returns the actual script.</li>
16090         <li>[optional]: list of parameters for the "factory".</li>
16091         <li>in case of DSP scripts, an optional list of automatable parameters and possible audio/midi port configurations, and a <code>dsp_run</code> function, more on that later.</li>
16092 </ul>
16093
16094 <p>A minimal example script looks like:</p>
16095
16096 <div>
16097 <pre><code class="lua">
16098         ardour {
16099           ["type"]    = "EditorAction",
16100           name        = "Rewind",
16101         }
16102
16103         function factory (unused_params)
16104           return function ()
16105            Session:goto_start()  -- rewind the transport
16106           end
16107         end
16108 </code></pre>
16109 </div>
16110
16111 <p>
16112   The common part for all scripts is the "Descriptor". It's a Lua function which returns a table (key/values) with the following keys (the keys are case-sensitive):
16113 </p>
16114
16115 <dl>
16116         <dt>type [required]</dt><dd>one of "<code>DSP</code>", "<code>Session</code>", "<code>EditorHook</code>", "<code>EditorAction</code>" (the type is not case-sensitive)</dd>
16117         <dt>name [required]</dt><dd>Name/Title of the script</dd>
16118         <dt>author</dt><dd>Your Name</dd>
16119         <dt>license</dt><dd>The license of the script (e.g. "GPL" or "MIT")</dd>
16120         <dt>description</dt><dd>A longer text explaining to the user what the script does</dd>
16121 </dl>
16122
16123 <p class="note">
16124   Scripts that come with Ardour (currently mostly examples) can be found in the <a href="https://github.com/Ardour/ardour/tree/master/scripts">Source Tree</a>.
16125 </p>
16126
16127 <h3>Action Scripts</h3>
16128
16129 <p>
16130   Action scripts are the simplest form. An anonymous Lua function is called whenever the action is triggered. A simple action script is shown above.
16131 </p>
16132 <p>
16133   There are 10 action script slots available, each of which is a standard GUI action available from the menu and hence can be bound to a keyboard shortcut.
16134 </p>
16135
16136 <h3>Session Scripts</h3>
16137
16138 <p>
16139   Session scripts similar to Actions Scripts, except the anonymous function is called periodically every process cycle. The function receives a single parameter&mdash;the number of audio samples which are processed in the given cycle
16140 </p>
16141
16142 <div>
16143 <pre><code class="lua">
16144 ardour {
16145   ["type"]    = "session",
16146   name        = "Example Session Script",
16147   description = [[
16148   An Example Ardour Session Script.
16149   This example stops the transport after rolling for a specific time.]]
16150 }
16151
16152 -- instantiation options, these are passed to the "factory" method below
16153 function sess_params ()
16154   return
16155   {
16156     ["print"]  = { title = "Debug Print (yes/no)", default = "no", optional = true },
16157     ["time"] = { title = "Timeout (sec)", default = "90", optional = false },
16158   }
16159 end
16160
16161 function factory (params)
16162   return function (n_samples)
16163     local p = params["print"] or "no"
16164     local timeout = params["time"] or 90
16165     a = a or 0
16166     if p ~= "no" then print (a, n_samples, Session:frame_rate (), Session:transport_rolling ()) end -- debug output (not rt safe)
16167     if (not Session:transport_rolling()) then
16168       a = 0
16169       return
16170     end
16171     a = a + n_samples
16172     if (a &gt; timeout * Session:frame_rate()) then
16173       Session:request_transport_speed(0.0, true)
16174     end
16175   end
16176 end
16177 </code></pre>
16178 </div>
16179
16180 <h3>Action Hooks</h3>
16181
16182 <p>
16183   Action hook scripts must define an additional function which returns a <em>Set</em> of Signal that which trigger the callback (documenting available slots and their parameters remains to be done).
16184 </p>
16185
16186 <div>
16187 <pre><code class="lua">
16188 ardour {
16189   ["type"]    = "EditorHook",
16190   name        = "Hook Example",
16191   description = "Rewind On Solo Change, Write a file when regions are moved.",
16192 }
16193
16194 function signals ()
16195   s = LuaSignal.Set()
16196   s:add (
16197     {
16198       [LuaSignal.SoloActive] = true,
16199       [LuaSignal.RegionPropertyChanged] = true
16200     }
16201   )
16202   return s
16203 end
16204
16205 function factory (params)
16206   return function (signal, ref, ...)
16207     -- print (signal, ref, ...)
16208
16209     if (signal == LuaSignal.SoloActive) then
16210       Session:goto_start()
16211     end
16212
16213     if (signal == LuaSignal.RegionPropertyChanged) then
16214       obj,pch = ...
16215       file = io.open ("/tmp/test" ,"a")
16216       io.output (file
16217       io.write (string.format ("Region: '%s' pos-changed: %s, length-changed: %s\n",
16218         obj:name (),
16219         tostring (pch:containsFramePos (ARDOUR.Properties.Start)),
16220         tostring (pch:containsFramePos (ARDOUR.Properties.Length))
16221         ))
16222       io.close (file)
16223     end
16224   end
16225 end
16226 </code></pre>
16227 </div>
16228
16229 <h3>DSP Scripts</h3>
16230
16231 <p>See the scripts folder for examples for now.</p>
16232
16233 <p>Some notes for further doc:</p>
16234
16235 <ul>
16236         <li>required function: <code>dsp_ioconfig ()</code>: return a list of possible audio I/O configurations&mdash;follows Audio Unit conventions.</li>
16237         <li>optional function: <code>dsp_dsp_midi_input ()</code>: return true if the plugin can receive midi input</li>
16238         <li>optional function: <code>dsp_params ()</code>: return a table of possible parameters (automatable)</li>
16239         <li>optional function: <code>dsp_init (samplerate)</code>: called when instantiation the plugin with given samplerate.</li>
16240         <li>optional function: <code>dsp_configure (in, out)</code>: called after instantiation with configured plugin i/o.</li>
16241         <li>required function: <code>dsp_run (ins, outs, n_samples)</code> OR <code>dsp_runmap (bufs, in_map, out_map, n_samples, offset)</code>: DSP process callback. The former is a convenient abstraction that passes mapped buffers (as table). The latter is a direct pass-through matching Ardour's internal <code>::connect_and_run()</code> API, which requires the caller to map and offset raw buffers.</li>
16242         <li>plugin parameters are handled via the global variable <code>CtrlPorts</code>.</li>
16243         <li>midi data is passed via the global variable <code>mididata</code> which is valid during <code>dsp_run</code> only. (dsp_runmap requires the script to pass raw data from the buffers according to in_map)</li>
16244         <li>The script has access to the current session via the global variable Session, but access to the session methods are limited to realtime safe functions</li>
16245 </ul>
16246
16247 <h2>Accessing Ardour Objects</h2>
16248
16249 <p>
16250   The top most object in Ardour is the <code>ARDOUR::Session</code>. Fundamentally, a Session is just a collection of other things: Routes (tracks, busses), Sources (Audio/Midi), Regions, Playlists, Locations, Tempo map, Undo/Redo history, Ports, Transport state &amp; controls, etc.
16251 </p>
16252
16253 <p>
16254   Every Lua interpreter can access it via the global variable <code>Session</code>.
16255 </p>
16256
16257 <p>
16258   GUI context interpreters also have an additional object in the global environment: The Ardour <code>Editor</code>. The Editor provides access to high level functionality which is otherwise triggered via GUI interaction such as undo/redo, open/close windows, select objects, drag/move regions. It also holds the current UI state: snap-mode, zoom-range, etc. The Editor also provides complex operations such as "import audio" which under the hood, creates a new Track, adds a new Source Objects (for every channel) with optional resampling, creates both playlist and regions and loads the region onto the Track all the while displaying a progress information to the user.
16259 </p>
16260
16261 <p class="note">
16262   Documenting the bound C++ methods and class hierarchy is somewhere on the ToDo list. Meanwhile <a href="https://github.com/Ardour/ardour/blob/master/libs/ardour/luabindings.cc">luabindings.cc</a> is the best we can offer.
16263 </p>
16264
16265 <h2>Concepts</h2>
16266
16267 <ul>
16268         <li>There are no bound constructors: Lua asks Ardour to create objects (e.g. add a new track), then receives a reference to the object to modify it.</li>
16269         <li>Scripts, once loaded, are saved with the Session (no reference to external files). This provides for portable Sessions.</li>
16270         <li>Lua Scripts are never executed directly. They provide a "factory" method which can have optional instantiation parameters, which returns a lua closure.</li>
16271         <li>No external lua modules/libraries can be used, scripts need to be self contained (portable across different systems (libs written in Lua can be used, and important c-libs/functions can be included with ardour if needed).</li>
16272 </ul>
16273
16274 <p>
16275   Ardour is a highly multithreaded application and interaction between the different threads, particularly real-time threads, needs to to be done with care. This part has been abstracted away by providing separate Lua interpreters in different contexts and restricting available interaction:
16276 </p>
16277
16278 <ul>
16279         <li>Editor Actions run in a single instance interpreter in the GUI thread.</li>
16280         <li>Editor Hooks connect to libardour signals. Every Callback uses a dedicated lua interpreter which is in the GUI thread context.</li>
16281         <li>All Session scripts run in a single instance in the main real-time thread (audio callback)</li>
16282         <li>DSP scripts have a separate instance per script and run in one of the DSP threads.</li>
16283 </ul>
16284
16285 <p>
16286   The available interfaces differ between contexts. e.g. it is not possible to create new tracks or import audio from real-time context; while it is not possible to modify audio buffers from the GUI thread.
16287 </p>
16288
16289 <h2>Current State</h2>
16290
16291 <p>Fully functional, yet still in a prototyping stage:</p>
16292
16293 <ul>
16294         <li>The GUI to add/configure scripts is rather minimalistic.</li>
16295         <li>The interfaces may change (particularly DSP, and Session script <code>run()</code>.</li>
16296         <li>Further planned work includes:
16297                 <ul>
16298                         <li>Built-in Script editor (customize/modify Scripts in-place)</li>
16299                         <li>convenience methods (wrap more complex Ardour actions into a library). e.g set plugin parameters, write automation lists from a lua table</li>
16300                         <li>Add some useful scripts and more examples</li>
16301                         <li>Documentation (Ardour API), also usable for tab-exansion, syntax highlighting</li>
16302                         <li>bindings for GUI Widgets (plugin UIs, message boxes, etc)</li>
16303                 </ul>
16304                 <li>
16305 </ul>
16306
16307 <h2>Examples</h2>
16308
16309 <p>
16310   Apart from the <a href="https://github.com/Ardour/ardour/tree/master/scripts">scripts included with the source-code</a> here are a few examples without further comments...
16311 </p>
16312
16313 <h3>Editor Console Examples</h3>
16314
16315 <div>
16316 <pre><code class="lua">
16317 print (Session:route_by_remote_id(1):name())
16318
16319 a = Session:route_by_remote_id(1);
16320 print (a:name());
16321
16322 print(Session:get_tracks():size())
16323
16324 for i, v in ipairs(Session:unknown_processors():table()) do print(v) end
16325 for i, v in ipairs(Session:get_tracks():table()) do print(v:name()) end
16326
16327 for t in Session:get_tracks():iter() do print(t:name()) end
16328 for r in Session:get_routes():iter() do print(r:name()) end
16329
16330
16331 Session:tempo_map():add_tempo(ARDOUR.Tempo(100,4), Timecode.BBT_TIME(4,1,0))
16332
16333
16334 Editor:set_zoom_focus(Editing.ZoomFocusRight)
16335 print(Editing.ZoomFocusRight);
16336 Editor:set_zoom_focus(1)
16337
16338
16339 files = C.StringVector();
16340 files:push_back("/home/rgareus/data/coding/ltc-tools/smpte.wav")
16341 pos = -1
16342 Editor:do_import(files, Editing.ImportDistinctFiles, Editing.ImportAsTrack, ARDOUR.SrcQuality.SrcBest, pos, ARDOUR.PluginInfo())
16343
16344 #or in one line:
16345 Editor:do_import(C.StringVector():add({"/path/to/file.wav"}), Editing.ImportDistinctFiles, Editing.ImportAsTrack, ARDOUR.SrcQuality.SrcBest, -1, ARDOUR.PluginInfo())
16346
16347 # called when a new session is loaded:
16348 function new_session (name) print("NEW SESSION:", name) end
16349
16350
16351 # read/set/describe a plugin parameter
16352 route = Session:route_by_remote_id(1)
16353 processor = route:nth_plugin(0)
16354 plugininsert = processor:to_insert()
16355
16356 plugin = plugininsert:plugin(0)
16357 print (plugin:label())
16358 print (plugin:parameter_count())
16359
16360 x = ARDOUR.ParameterDescriptor ()
16361 _, t = plugin:get_parameter_descriptor(2, x) -- port #2
16362 paramdesc = t[2]
16363 print (paramdesc.lower)
16364
16365 ctrl = Evoral.Parameter(ARDOUR.AutomationType.PluginAutomation, 0, 2)
16366 ac = plugininsert:automation_control(ctrl, false)
16367 print (ac:get_value ())
16368 ac:set_value(1.0, PBD.GroupControlDisposition.NoGroup)
16369
16370 # the same using a convenience wrapper:
16371 route = Session:route_by_remote_id(1)
16372 proc = t:nth_plugin (i)
16373 ARDOUR.LuaAPI.set_processor_param (proc, 2, 1.0)
16374
16375 </code></pre>
16376 </div>
16377
16378 <h3>Commandline Session</h3>
16379
16380 <p>
16381   The standalone tool <code>luasession</code> allows one to access an Ardour session directly from the commandline. Interaction is limited by the fact that most actions in Ardour are provided by the Editor GUI.
16382 </p>
16383
16384 <p>
16385   <code>luasession</code> provides only two special functions <code>load_session</code> and <code>close_session</code> and exposes the <code>AudioEngine</code> instance as global variable.
16386 </p>
16387
16388 <div>
16389 <pre><code class="lua">
16390 for i,_ in AudioEngine:available_backends():iter() do print (i.name) end
16391
16392 backend = AudioEngine:set_backend("ALSA", "", "")
16393 print (AudioEngine:current_backend_name())
16394
16395 for i,_ in backend:enumerate_devices():iter() do print (i.name) end
16396
16397 backend:set_input_device_name("HDA Intel PCH")
16398 backend:set_output_device_name("HDA Intel PCH")
16399
16400 print (backend:buffer_size())
16401 print (AudioEngine:get_last_backend_error())
16402
16403 s = load_session ("/home/rgareus/Documents/ArdourSessions/lua2/", "lua2")
16404 s:request_transport_speed (1.0)
16405 print (s:transport_rolling())
16406 s:goto_start()
16407 close_session()
16408
16409 </code></pre>
16410 </div>
16411
16412 ---
16413 style: luadoc
16414 title: Class Reference
16415 part: subchapter
16416 include: class_reference.html
16417 ---
16418