932e7ee163f8dbcf21732b313d5e88df83736658
[goodguy/cin-manual-latex.git] / parts / Editing.tex
1 \chapter{Editing}%
2 \label{cha:editing}
3
4 Editing comprises both time and track space.  The timeline consists
5 of the time certain media appear on the track going left to right
6 and a set of tracks from the top to the bottom.  There are 2 methods
7 of timeline editing -- drag and drop editing, also called
8 \textit{arrow mode}, and cut and paste editing or \textit{I-beam
9   mode}.  Cut and Paste is the default editing mode.  An additional,
10 but not often considered editing method is called \textit{two-screen
11   editing} where the Viewer is used to view media and then the
12 desired clip from the media is transferred to the timeline.
13
14 The timeline is where all editing decisions are made
15 (figure~\ref{fig:timeline}).  This is a stack of tracks in the
16 center of the main window.  It can be scrolled up, down, left and
17 right with the scrollbars on the right and bottom.  It can also be
18 scrolled up and down with a mouse wheel, or left and right while
19 holding down the Ctrl key and using the mouse wheel.
20
21 \begin{figure}[htpb]
22   \centering
23   \includegraphics[width=1.0\linewidth]{timeline.png}
24   \caption{Timeline editing session}
25   \label{fig:timeline}
26 \end{figure}
27
28 The active region is the range of time which is affected by editing
29 commands on the timeline.  The active region is determined first by
30 the presence of in/out points on the timeline.
31 %
32 If those do not exist the highlighted region is used. To reiterate,
33 \emph{highlighting} is done in \emph{cut and paste mode} by moving
34 the insertion point with the mouse in the timeline to where you want
35 to start. Then hold down the LMB\@, drag the mouse to where you want
36 the end point to be and release the LMB\@. In \emph{drag and drop
37   mode}, the method to create a highlighted selection is to hold
38 down the Ctrl key and double click with the LMB with the mouse over
39 that column.
40
41 If no highlighted region exists, the insertion point is used as the
42 start of the active region.  Some commands treat all the space to
43 the right of the insertion point as active while others treat the
44 active length as 0 (zero) if no end point for the active region is
45 defined.
46
47 Most importantly, editing decisions never affect source material
48 meaning that it is non-destructive editing.  So not only does your
49 original media stay completely untouched, it is much faster than if
50 you had to copy all the media affected by an edit.  Editing only
51 affects pointers to source material, so if you want to have a new
52 modified media file at the end of your editing session which
53 represents the editing decisions, you need to render it.  Saving and
54 loading your edit decisions is explained in the Load, Save and the
55 EDL section and rendering is explained in the section on Rendering.
56
57 In the following editing sections, references to common operations
58 are scattered within any of the modes where they seem pertinent.
59 However, many of the editing operations work in different modes.
60
61
62 \section{The Patchbay}%
63 \label{sec:patchbay}
64
65 On the left of the timeline is a region known as the patchbay.  The
66 patchbay enables features specific to each track as described next.
67
68
69 \begin{description}
70 \item[Textbox] for naming the track.  The default names will usually
71   be Video \#, Audio \#, or Mixer \# if using the multi-camera/mixer
72   operations.  A \# will be designated for subsequent tracks as in 1,
73   2, 3 and so on.
74 \item[Expander] which is a down arrow on the right side, is for
75   viewing more options on the patchbay and for viewing the effects
76   represented on the track.  You can just click on the expander to
77   expand or collapse the patchbay and the track.  If it is pointing
78   sideways, the track is collapsed.  If it is pointing down, the track
79   is expanded.  Existing effects appear below the media for the track.
80 \end{description}
81
82 Below the textbox name are several toggles referred to as
83 \textit{attributes} for different features (currently there are 7 as
84 shown in figure~\ref{fig:patchbay01}).  If the toggle button is
85 shadowed by a color, the feature is enabled. If the toggle is the
86 background color of most of the window, it is disabled. Click on the
87 toggle to enable/disable the feature.
88
89 \begin{wrapfigure}[13]{O}{0.3\linewidth}
90   %\vspace{-2ex}
91   \centering
92   \includegraphics[width=0.79\linewidth]{patchbay01.png}
93   \caption{Patchbay}
94   \label{fig:patchbay01}
95 \end{wrapfigure}
96
97 Several mouse operations speed up the configuration of several
98 tracks at a time. Click on an attribute and drag the cursor across
99 adjacent tracks to copy the same attribute to those tracks.  Hold
100 down Shift while clicking a track's attribute to enable the
101 attribute in the current track and toggle the attribute in all the
102 other tracks. Or you can:
103
104 \begin{enumerate}
105 \item hold down Shift while clicking an attribute,
106 \item click until all the tracks except the selected one are
107   disabled,
108 \item then drag the cursor over the adjacent track to enable the
109   attribute in the adjacent track.
110 \end{enumerate}
111
112 The 7 \textit{attributes} are described here next followed by the other available feature icons and their description.
113
114 \begin{description}
115 \item[Play Track] determines whether the track is rendered or
116   not. If it is off, the track is not rendered.  For example if you
117   turn it off in all the video tracks, the rendered media file will
118   have only audio tracks.  If the track is chained to any other tracks
119   by a shared track effect, the other tracks perform all the effects
120   in this shared track, regardless of play status of the shared track
121   that in this particular case affects the media output but not fade
122   and effects.
123 \item[Arm Track] determines whether the track is armed or not.
124   Only the armed tracks are affected by editing operations. Make sure
125   you have enough armed destination tracks when you paste or splice
126   material or some tracks in the material will get left out.  In
127   addition to restricting editing operations, the armed tracks in
128   combination with the active region determine where material is
129   inserted when loading files.  If the files are loaded with one of
130   the insertion strategies which do not delete the existing project,
131   the armed tracks will be used as destination tracks.
132 \end{description}
133
134 \begin{description}
135 \item[Draw Media] determines if picons or waveforms are drawn on
136   the asset in the track.  You may want to disable this if you know
137   that the media/format takes a long time to draw on the timeline.  By
138   default it is set to on in order to see picons on the timeline.
139 \item[Don’t send to output] -- more commonly called
140   \textit{mute} -- causes the output to be thrown away once the track is
141   completely rendered. This happens whether or not \textit{Play track}
142   is on.  For example if you mute all the video tracks, the rendered
143   media file will have a blank video track.  Mute track is represented
144   on the timeline with a line that has the default color of a
145   pinkish-orange.  Use the pulldown \texttt{View $\rightarrow$ Mute} to
146   have the line displayed.  It is a keyframable attribute, but Mute
147   track keyframing is a toggle and it has only the two values of on or
148   off. If a track is part of a shared track effect, the output of the
149   track with the shared track effect is overlaid on the final output
150   even though it is routed back to another track (the shared track).
151   Mute track is used to keep the track with the shared track effect
152   from overlapping the output of the source track (the shared track)
153   where the shared track effect is not present.
154 \item[Gang Fader] cause the fader to track the movement of
155   whatever other fader you are adjusting by dragging either the fader
156   or the curve on the track.  It doesn't affect the editing made with
157   menu controls.  A fader is only ganged if the arm track is also on.
158   This is often used to adjust audio levels on all the tracks
159   simultaneously.  Gang also causes Nudge parameters to synchronize
160   across all the ganged tracks.
161 \item[Master Track] Mark a track as \textit{master} serves when using \textit{Gang Channels} or \textit{Gang Media} mode. See \ref{sub:displaying_tracks_ganged}
162 \item[Track Data Height] this up/down toggle symbol to the immediate right
163 of the 5 attributes, is used to individually resize each track.  This makes
164 it very easy to temporarily expand or contract the size of that track either
165 by clickin with the left mouse button or using the middle wheel up/down.
166 \item[Fader slider] fade values are represented on the timeline
167   with a pink (default color) curve that is keyframable.  All tracks have a fader, but
168   the units of each fader depend on whether it is audio or video.
169   Audio fade values are in dB. They represent relative levels, where 0
170   is the unaltered original sound level, -40 is silence, -80 the
171   minimum value set by default.  You can move fader and keyframes down
172   to -80 but the parameter's curve won't go below -40.  For your
173   convenience you can set a different fade range with the curve zoom.
174   Audio fader’s main purpose is to \textit{fade out} sound or to lower
175   the sound level smoothly to silence, or \textit{fade in} to make
176   sounds appear gradually instead of suddenly.  Video fade values are
177   the percentage of opacity of the image in normal overlay mode, the
178   percentage of the layer that is mixed into the render pipeline in
179   the other overlay modes.  Click and drag the fader to fade the track
180   in and out.  If it is ganged to other tracks of the same media type,
181   with the arm option enabled, the other faders should follow.  Hold
182   down the Shift key and drag a fader to center it on the original
183   source value (0 for audio, 100 for video).
184 \item[Mixer] in the expanded patchbay for that track designates
185   the multi-camera mixer mode.
186 \item[Overlay mode] in the expanded patchbay is used for
187   porter-duff operations and is full explained in
188   \nameref{cha:overlays} chapter.
189 \item[Nudge] is in the expanded patchbay.  The nudge value is
190   the amount the track is shifted left or right during playback. The
191   track is not displayed shifted on the timeline, but it is shifted
192   when it is played back. This is useful for synchronizing audio with
193   video, creating fake stereo, or compensating for an effect which
194   shifts time, all without altering any edits
195   (figure~\ref{fig:overlay}).
196
197   \begin{figure}[htpb] \centering
198     \includegraphics[width=0.65\linewidth]{overlay.png}
199     \caption{Video Overlay, audio Pan and Nudge.}
200     \label{fig:overlay}
201   \end{figure}
202
203   Enter the amount of time to shift to instantly shift the
204   track. Negative numbers make the track play later. Positive numbers
205   make the track play sooner. The nudge units are either seconds or
206   the native units for the track (frames or samples). Select the units
207   by right clicking on the nudge textbox and using the context
208   sensitive menu. Nudge settings are ganged with the Gang faders
209   toggle and the Arm track toggle. Use the mouse wheel over the nudge
210   textbox to increment and decrement the value.
211 \item[Pan] is available in the expanded patchbay for audio
212   tracks via a panning box. Position the pointer in the panning box
213   and click/drag to reposition the audio output among the speaker
214   arrangement. The loudness of each speaker is printed on the relative
215   icon during the dragging operation. The panning box uses a special
216   algorithm to try to allow audio to be focused through one speaker or
217   branched between the nearest speakers when more than 2 speakers are
218   used.
219 \end{description}
220
221 Press the Tab key while the cursor is anywhere over a track to
222 toggle the track arming status. Press Shift-Tab while the cursor is
223 over a track to toggle the arming status of every other track.
224
225 \paragraph{Automatic audio mappings} Several convenience functions
226 are provided for automatically setting the panning to several common
227 standards. They are listed in the Audio menu. These functions only
228 affect armed audio tracks. They are:
229
230 \begin{description}
231 \item[Audio~$\rightarrow$~Map 1:1] This maps every track to
232   its own channel and wraps around when all the channels are
233   allocated. It is most useful for making 2 tracks with 2 channels map
234   to stereo and for making 6 tracks with 6 channels map to a 6 channel
235   sound card.
236 \item[Audio~$\rightarrow$~Map 5.1:2] This maps 6 tracks to 2
237   channels. The project should have 2 channels when using this
238   function. Go to \texttt{Settings $\rightarrow$ Format} to set the
239   output channels to 2. This is most useful for down-mixing 5.1 audio
240   to stereo (for more information refer to Configuration, Settings and
241   Preferences section~\ref{sub:audio_out_section}).
242 \end{description}
243
244 \paragraph{Standard audio mappings} Although \CGG{} lets you map any
245 audio track to any speaker, there are standard mappings you should
246 use to ensure the media can be played back elsewhere. Also, most
247 audio encoders require the audio tracks to be mapped to standard
248 speaker numbers or they will not work.
249
250 In the channel position widget, the channels are numbered to
251 correspond to the output tracks they are rendered to. For stereo,
252 the source of channel 1 needs to be the left track and the source of
253 channel 2 needs to be the right track.  For 5.1 surround sound, the
254 sources of the 6 channels need to be in the order of center, front
255 left, front right, back left, back right, low frequency effects. If
256 the right tracks are not mapped to the right speakers, most audio
257 encoders will not encode the right information if they encode
258 anything at all. The low frequency effects track specifically can
259 not store high frequencies in most cases.
260
261
262 \section{Manipulating Tracks}%
263 \label{sec:manipulating_tracks}
264
265 Tracks in \CGG{} either contain audio or video.  There is no special
266 designation for tracks other than the type of media they contain.
267 When you create a new project, it contains three default tracks: one
268 video track and two audio tracks.  You can still add and delete
269 tracks from the menus.  The Tracks menu contains a number of options
270 for dealing with multiple tracks simultaneously.  Each track itself
271 has a popup menu which affects one track.
272
273 Operations in the \textbf{Tracks pulldown} affect only tracks which
274 are armed.
275
276 \begin{description}
277 \item[Move tracks up | Move tracks down] shift all the armed
278   tracks up or down the stack.
279 \item[Delete tracks] deletes the armed tracks.
280 \item[Delete last track] deletes the last track, whether it is
281   armed or not.
282 \item[Concatenate tracks] operation copies all the assets of
283   every disarmed but playable track and concatenates it by pasting
284   those assets at the end of the first set of armed tracks. They are
285   pasted one after the other, keeping the same order they have on the
286   stack. If there are two armed tracks followed by two disarmed
287   tracks, the concatenate operation copies the assets of the two
288   disarmed tracks and pastes them after the assets of the two armed
289   tracks. If there are three disarmed tracks instead, the assets of
290   two tracks are pasted after the assets of the armed tracks and the
291   assets of the third track are pasted at the end of the first armed
292   track. The destination track wraps around until all the disarmed
293   tracks are concatenated. Disarmed tracks that are not playable are
294   not concatenated.
295 \item[Append to project] allows for creating new tracks after
296   any existing tracks.
297 \item[Add subttl] will add a track for subtitles at the top of
298   the other tracks.
299 \end{description}
300
301 The \textbf{Audio} and \textbf{Video pulldowns} each contain an
302 option to add a track of their specific type. In the case of audio,
303 the new track is put on the bottom of the timeline and the output
304 channel of the audio track is incremented by one. In the case of
305 video, the new track is put on the top of the timeline. This way,
306 video has a natural compositing order. New video tracks are overlaid
307 on top of old tracks.
308
309 \subsection{Displaying tracks: Ganged mode}%
310 \label{sub:displaying_tracks_ganged}
311
312 Often users working on media where Audio is the main focus, want all of a media's audio channels, whether stereo or 5:1 channels, to be treated as a single unit. They are more familiar with working with a DAW (Digital Audio Workstation software) and find that it takes extra work and a lot more care to have to individually manage audio tracks rather than have them automatically edited as a ganged group.
313
314 To get this capability, there is a \textit{Gang Tracks} toggle button on the main timeline controls to switch between 3 modes of working with multiple channels so that the tracks are automatically edited as a single unit. Operations affected include edits such as cuts, moving sections, and adding plugins. Group masters are marked by the \textit{Master Track} toggle in the patchbays. A track gang group begins on a master track, and extends to, but not including, the next master track. The 3 \textit{Gang Tracks} modes are:
315
316 \begin{enumerate}
317         \item \textbf{Gang None:} this is the default mode and is the traditional way Cinelerra operates. If you never toggle the "Gang Tracks" button, everything operates normally as it always has. In this mode, the button icon looks like 3 tracks with $\dots$ on the end and all tracks are visible on the timeline. See figure~\ref{fig:gang-track-01}
318 \end{enumerate}
319
320 \begin{figure}[htpb]
321         \centering
322         \includegraphics[width=0.99\linewidth]{gang-track-01.png}
323         \caption{Gang None: only the video track is master. We see all tracks both master and non-master (default)}
324         \label{fig:gang-track-01}
325 \end{figure}
326
327 \begin{enumerate}[start=2]
328         \item \textbf{Gang Channels:} in this mode, only the \textit{Master Tracks} and the first track of video, audio, or subtitles not master will are shown. Stereo tracks, or 5:1 channels/any number of audio tracks, are drawn as 1 audio track for the purpose of making changes on that single track which are propagated to all of its other channel tracks automatically. This is the DAW-like mode. The \textit{Gang Tracks} button icon looks like 2 tracks and only the first video and first audio tracks will be shown. See figure~\ref{fig:gang-track-02}
329 \end{enumerate}
330
331 \begin{figure}[htpb]
332         \centering
333         \includegraphics[width=0.99\linewidth]{gang-track-02.png}
334         \caption{Gang Channels: only the video track is master. Let's see the master tracks and the first of the non master tracks}
335         \label{fig:gang-track-02}
336 \end{figure}
337
338 \begin{enumerate}[start=3]
339         \item \textbf{Gang Media:} this mode only shows the \textit{Master Tracks} of the media but changes are propagated to the appropriate other related tracks (even if they are not visible). The \textit{Gang Tracks} button icon looks like a single track. See figure~\ref{fig:gang-track-03}
340 \end{enumerate}
341
342 \begin{figure}[htpb]
343         \centering
344         \includegraphics[width=0.99\linewidth]{gang-track-03.png}
345         \caption{Gang Media: only the video track is master. We only see the master tracks}
346         \label{fig:gang-track-03}
347 \end{figure}
348
349 The current \textit{Gang Tracks} mode is saved across sessions and will be saved in your project. Although most likely users will work in the \textit{Gang None} mode, users more familiar with DAW software will tend to use the \textit{Gang Channel}s mode.
350
351 More details ares described next about master tracks. Each patchbay has a \textit{Master Track} button on the extreme right of the patchbay. These mark which tracks of the media are master tracks. The span of tracks between the gang group masters are the gang track group. The master track toggles can be disabled/enabled as the user wishes to create the desired track groups. Normal file loads will mark the first stream of each file loaded as a master, if the media is loaded with insertion strategy of\textit{ Replace current project}, \textit{Replace current project and concatenate tracks} or \textit{Append in new tracks}. Frequently, editing is done on video, audio, or audio/video groups to maintain timeline synchronization. By grouping related tracks, this procedure is much more automatic.
352
353 Previously existing projects created before the addition of ganged tracks, will have ALL tracks marked as master tracks and changing the \textit{Gang Tracks} button mode will have no effect. The user will have to properly designate which track is the master track and disabling the others in order to make use of the toggle modes.
354
355 There are no restrictions on how you use this feature and there may be variations for users not concerned about DAW-like workings that are very useful. Several methodologies are possible, but you have to know what you are doing.
356
357 NOTES:
358 \begin{itemize}
359         \item When in \textit{Gang Channels} or \textit{Gang Media} mode, if the first audio track is not disarmed, but         any of its connected channel tracks are, the disarm of those channels are ignored and all channels are treated as being armed. This is to be consistent with the purpose of using this mode; the purpose being that any edits to the first master track are automatically propagated to all other channels.
360         \item It may be better when using the \textit{Gang Channels} or \textit{Gang Media} mode to make any changes
361         to the first audio channel to be automatically duplicated before reverting to the \textit{Gang None} mode to make other changes. Once you start changing individual channels (that is, audio tracks) so that they are no longer coordinated in their edits/plugins, it may be more difficult to switch back to \textit{Gang Channels} mode and get the desired results since the channels may no longer be lined up.
362 \end{itemize}
363
364 \section{Two Screen Editing}%
365 \label{sec:two_screen_editing}
366
367 This is a fast way to construct a program out of movie files (in
368 other programs is called \textit{three points editing}). The idea
369 consists of viewing a movie file in one window and viewing the
370 program in another window. Subsections of the movie file are defined
371 in the viewer window and transferred to the end of the program in
372 the program window.  Two screen editing can be done simply by using
373 keyboard shortcuts.  To get familiar with which keys to use, move
374 the mouse pointer over the transport panel and a tooltip appears,
375 showing what key is bound to that button.
376
377 To begin a two screen editing session, load your media resources by
378 using the main menu \textbf{File pulldown} and choose \textit{Load
379   files}; make sure the insertion mode is set to \textit{Create new
380   resources only}.  This insertion strategy is to ensure that the
381 timeline stays unchanged while new resources are brought in. Go to
382 the Resources window and select the Media folder. The newly loaded
383 resources will appear. Double click on a resource or drag it from
384 the media side of the window over to the Viewer window.
385
386 Check to make sure there are enough armed tracks on the timeline to
387 put the subsections of source material that you want.  Usually this
388 would be one video track and two audio tracks, but if there are not
389 enough, just create new tracks or arm more tracks.
390
391 Now to start your 2 screen editing, in the viewer window, define a
392 clip from the media file:
393
394 \begin{enumerate}
395 \item Set the starting point with the In pointer button.  You
396   will see a left hand bracket on the timebar.
397 \item Move your cursor to the ending point of the clip you want
398   to use.
399 \item Set the ending point with the Out pointer right hand
400   bracket.
401 \item You will see a colored bar inside the brackets for easier
402   viewing.
403 \item Drag the In/Out point with the mouse to conveniently
404   change their position.
405 \end{enumerate}
406
407 These In/Out points define a clip.  You can now use this in a couple
408 of different ways.
409
410 \paragraph{Splice} The splice icon, or shortcut letter “\texttt{v}”,
411 inserts the selected area in the timeline after the insertion point.
412 After the splice has taken effect, the insertion point moves to the
413 end of the edit ready to be used as the next splice location. This
414 way you can continuously build up the program by splicing.  If an In
415 point or an Out point exists on the timeline the clip is inserted
416 after the In point or after the Out point. If both In and Out points
417 are set on the timeline, the clip is inserted after the In point. If
418 there are edits after your chosen splice location on the timeline,
419 they will be moved to the right.
420
421 \paragraph{Overwrite} The overwrite icon, or shortcut letter
422 “\texttt{b}”, overwrites the region of the timeline after the
423 insertion point with the clip. If an In point or an Out point exists
424 on the timeline the clip is overwritten after the In point or after
425 the Out point. If both In and Out points are set on the timeline,
426 the clip is inserted after the In point. If a region is highlighted
427 or both In and Out points exist they limit the region of the
428 overwriting and the clip may therefore be shortened. Here is a
429 detailed explanation to take advantage of this method.
430
431 To overwrite exactly on a precise region of the timeline:
432
433 \begin{enumerate} [noitemsep]
434 \item Arm only tracks to change.
435 \item Define the destination region on the timeline with [ and
436   ], the In and Out points.
437 \item You can achieve maximum precision by setting the active
438   region in the zoom panel.
439 \item Define the clip you want to use in the viewer with [ and
440   ], the In and Out points.
441 \item Overwrite from Viewer to the timeline.
442 \end{enumerate}
443
444 If the destination region is shorter than the clip defined in the
445 viewer, the portion of the clip longer than the destination region
446 won't be inserted and on the timeline the following edits won't
447 move.  If the destination region is longer than the clip defined in
448 the viewer, the destination region will shrink and on the timeline
449 the following edits will move to the left.
450
451 \paragraph{Clip} The clip icon, or shortcut letter “\texttt{i}”,
452 generates a new clip for the resource window containing the affected
453 region but does not change the timeline.  Every clip has an
454 optional/default title and description.
455
456 \paragraph{Copy} The copy icon, or shortcut letter “\texttt{c}”,
457 copies the selection into the copy buffer.
458
459 \subsection{Use Case – Working with Sequences}
460 \label{sub:use_case_working_sequences}
461
462 \textit{From the Viewer to the Timeline with the sequences imported
463   in a Master Project.}
464
465 A convenient methodology for working on a Master project along with
466 1 or more previously saved Sub projects or \textit{sequences} use
467 case is described here.  A sequence is an edited assembly of audio
468 and video clips generally consisting of a series of videos that
469 relate to the same activity. This use case explains how to work this
470 way and some things you need to be aware of.
471
472 \begin{enumerate}
473 \item First load your Master project, which you worked on and
474   saved earlier as an \texttt{.xml} file, using an Insertion strategy
475   of \textit{Replace current project}.  Generally this Master project
476   consists of media with any of the attributes of clips, autos,
477   possibly keyframes, and effects.  You will see your project on the
478   main timeline and the Media files that are part of this Master
479   project will be displayed in the Resources window in the Media
480   folder.
481 \item Previously you may have also saved a Sub project, which
482   will now be referred to as a Sequence, as an \texttt{.xml} file that
483   may contain any of the same such things: media, clips, autos,
484   keyframes, effects.  Second you will want to load the Sequence using
485   an Insertion strategy of \textit{Create new resources only}.  When
486   you do the load, this Sequence will show as a file in the Resources
487   window in the Clips folder.  The actual media will show in the Media
488   folder.
489 \item Now Drag and Drop the Sub project from the Clips folder to
490   the Viewer.
491 \item Set In and Out Pointers in the Viewer to the region of
492   interest in the Sub project and in the Timeline of the Main window
493   of your Master project, move the cursor position to where you would
494   like to insert this In/Out section.
495 \item Click on the \textit{Splice (v)} button in the Viewer to
496   insert this section into the Master project timeline.  All of the
497   attributes of the selected Sub project section will now be inserted
498   in the main timeline to include the autos, keyframes, effects, and
499   labels.
500 \item Alternatively, if you click on the \textit{Overwrite (b)}
501   button in the Viewer, you can see the Sub project In/Out section in
502   the timeline, but without its autos, effects, keyframes, etc.  If in
503   the timeline there were some autos, effects, and keyframes in that
504   Master project, they will be in effect for the new section.
505 \end{enumerate}
506
507 You can see the advantages of using Splice versus Overwrite to
508 either insert (splice) with all of the attributes of a specific
509 section of your Sequence or to overwrite without the attributes to
510 allow for the smooth operation on the timeline by retaining the
511 timeline’s attributes at that point.
512
513 NOTE: for correct operation of this use case, you should have the
514 same (or more) number of tracks in the Master project as you do in
515 the Sequence.  To avoid having to know how many tracks you need, you
516 can use the Nest feature as described in the Nesting section
517 (\ref{sub:nesting}).
518
519
520 \section{Cut and Paste Editing}%
521 \label{sec:cut_paste_editing}
522
523 This is the more traditional method of editing in \CGG{} and
524 therefore is the default.  To enable the cut and paste editing mode
525 on the timeline, select the I-beam toggle on the control bar at the
526 top of the main program window. You can copy edits in the same
527 track, copy from different tracks in the same instance, start a
528 second instance of \CGG{} and copy from one instance to the other or
529 load a media file into the Viewer and copy from there.
530
531 To start editing, load some files onto the timeline.  Select a
532 region of the timeline by click dragging on it and select the cut
533 button to cut it. Move the insertion point to another point in the
534 timeline and select the paste button.  Assuming no In/Out points are
535 defined on the timeline this performs a cut and paste operation.
536
537 Most editing operations are listed in the Edit pulldown. Some of
538 them have a button on the program control toolbar as well as a
539 keyboard shortcut.  The keyboard shortcut is in parenthesis here.
540
541 \begin{description}
542 \item [Split | Cut] (x) Delete the selected area and put it in
543   the cut buffer for future pasting.
544 \item[Copy] (c) Copy the selected area and put it in the cut
545   buffer for future pasting.
546 \item[Paste] (v) Paste the material that is in the cut buffer.
547 \item[Clear] (Del) Clear the selected area. If the insertion
548   point is over an edit boundary and the edits on each side of the
549   edit boundary are the same resource, the edits are combined into one
550   edit comprised by the resource. The start of this one edit is the
551   start of the first edit and the end of this one edit is the end of
552   the second edit. This either results in the edit expanding or
553   shrinking.
554 \item[Paste silence] (Shift+Space) Paste blank audio/video for
555   the length of the selected area. Following edits will be pushed to
556   the right.
557 \item[Mute Region] (m) Overwrite blank audio/video on the
558   selected area. Following edits don't move.
559 \item[Trim Selection] Delete everything but the selected region.
560 \item[Select All] (a) Select the whole timeline.
561 \end{description}
562
563 In Cut and Paste editing mode you can \textit{edit labels} as
564 well. By enabling Edit labels in the \textbf{Settings pulldown}, or
565 by disabling the Lock labels from moving button on the Program
566 Control Tool Bar, labels will be cut, copied or pasted along with
567 the selected regions of the armed tracks.
568
569 Using labels and In/Out points are useful in editing audio.  You can
570 set In/Out points for the source region of the source waveform and
571 set labels for the destination region of the destination
572 waveform. Perform a cut, clear the In/Out points, select the region
573 between the labels, and perform a paste.
574
575 \paragraph{In / Out Points} The In and Out bracket placement is
576 explained here to illustrate their usage.  Because of the shape of
577 the markers [ and ] you may assume that they are inclusive -- that
578 everything placed in between would be included in the clip, such as
579 in the case of being transferred to the timeline from the Viewer.
580 In reality, one of the two markers will not include the frame that
581 was visible at the time the marker was affixed. Depending on whether
582 the \textit{Always show next frame} option is used or not, it is the
583 In or Out marker that will not be inclusive.
584
585 To obtain a clip on the timeline exactly as you saw in the Viewer,
586 you must necessarily move the In mark back from the beginning before
587 the first desired frame or move the Out mark forward after the last
588 desired frame, depending on the \textit{Always show next frame}
589 setting.
590
591 Some of the confusion can be attributed to the fact that the Viewer
592 shows frames, while the markers determine spaces, i.e.\ times, that
593 are not visible between frames. You have to think of each frame as
594 being delimited by two spaces -- one preceding and one following.
595 The In mark is always placed before the displayed frame and the Out
596 mark is always placed after the displayed frame, while taking into
597 account in its calculations whether the \textit{Always show next
598   frame }option is used or not. If you just remember that the
599 reference of the markers is in the middle of the icon, you will
600 avoid confusion.
601
602 \paragraph{Overwrite} To perform overwriting within the timeline
603 paste on a selected region (highlighted or between In/Out
604 points). The selected region will be overwritten. If the clip pasted
605 from the clipboard is shorter than the selected region, the selected
606 region will be shrunk. Following edits will move. If the clip pasted
607 from the clipboard is longer than the selected region, the selected
608 region will be overwritten with the first part of the clip and the
609 remaining part of the clip will be written after the
610 overwriting. Following edits will move.
611
612 \paragraph{Tracks $\rightarrow$ Concatenate tracks} This operation
613 copies all the assets of every disarmed but playable track and
614 concatenates it by pasting those assets at the end of the first set
615 of armed tracks. They are pasted one after the other, keeping the
616 same order they have on the stack.
617
618 \paragraph{Split -- blade cut and hard edges:} You can cut the
619 tracks into 2 pieces on the timeline by putting the hairline cursor
620 on the place you want to do a cut and then using the character “x”
621 or the scissors tool (figure~\ref{fig:cut}).
622
623 \begin{wrapfigure}[16]{O}{0.3\linewidth}
624   \vspace{-2ex}
625   \centering
626   \includegraphics[width=0.9\linewidth]{cut.png}
627   \caption{Blade cut}
628   \label{fig:cut}
629 \end{wrapfigure}
630
631 A \textit{cut} uses a non-empty selection region, where the
632 \textit{blade cut} or \textit{split} has no duration in the
633 selection, just a hairline.  As usual the use of cut when a
634 selection is set, deletes/cuts the highlighted area.  In the case
635 where an In point or an Out point exists on the timeline, the clip
636 is split at the location of the In/Out point since it has priority
637 over the cursor location.  A blade cut simply splits the edit into
638 two edits.  In order to have the video and audio aligned, it works
639 best to have \texttt{Settings $\rightarrow$ Align cursor on
640   frames}.  When a blade cut occurs, the edges are created as
641 \textit{hard edges}.  These are edges that cannot be deleted by
642 track optimizations.
643 %
644 \CGG{} has built-in optimization on the timeline.  So that whenever
645 two parts on the timeline are sequential frames, it automatically
646 optimizes by making them into 1 item.  So if you are cutting,
647 dragging, editing, or whatever and somehow frame \# 40 ends up
648 right next to frame \# 41, it optimizes them together.  This
649 optimization affects many areas throughout the program code.  When
650 you do a blade cut/split, all armed tracks will be included in the
651 cut and green-colored triangles will show on the bottom of the
652 track on both the left and the right side of the cut.  This is a
653 \textit{hard edge} marker toggle, as opposed to the soft edge
654 designation for an ordinary edit.  The \textit{hard edge} marker
655 can be toggled off/on if so desired.  In order to not interfere
656 with the usual drag handles, only a few pixels are used for the
657 toggle so you have to be sure you have the cursor right over the
658 hard edge triangle -- when in position, it will be obvious because
659 you can see an arrow pointing to the corner.  Use Shift-left mouse
660 button 1 to toggle off/on the hard edge marker on all tracks
661 simultaneously.
662
663
664 \section{Drag and Drop Editing}%
665 \label{sec:drag_drop_editing}
666
667 To enable the drag and drop editing mode on the timeline, select the
668 arrow toggle on the control bar at the top of the main program
669 window.  Drag and drop editing is a quick and simple way of working
670 in \CGG{}, using mostly only the mouse. The basic idea is to create
671 a bunch of clips, then drag them in order into the timeline, thus
672 building prototype media that you can watch in the compositor. If
673 after watching it, you wish to re-arrange your clips, set effects,
674 add transitions or insert/delete material, just drag and drop them
675 on the timeline.
676
677 To simply get started, perform the following operations which are
678 useful for working in a drag and drop editing session.  First load
679 your media by using the main menu File pulldown and choose
680 \textit{Load files}; make sure the insertion mode is set to
681 \textit{Create new resources only}.  This loads the files into the
682 Resources window.
683
684 \begin{enumerate}
685 \item Create some video and audio tracks on the timeline using
686   the Video and Audio pulldowns.
687 \item Open the Media folder in the Resources window.  Make sure
688   the necessary tracks are armed and drag a media file from the
689   Resources window to the timeline. If the media has video, drag it
690   onto a video track or if just audio, drag it onto an audio
691   track. For a still image, drag it onto a video track.
692 \end{enumerate}
693
694 You can also drag multiple files from the Resources window. When
695 dropped in the timeline they are concatenated. If you have
696 \textit{Display Icons} selected in the Resources window, drawing a
697 box around the files selects contiguous files. If you have
698 \textit{Display Text} selected, Ctrl-clicking on media files selects
699 additional files one at a time; Shift-clicking on media files
700 extends the number of highlighted selections.  In addition to
701 dragging media files, if you create clips and open the clip folder
702 you can drag clips onto the timeline.
703
704 \CGG{} fills out the audio and video tracks below the dragging
705 cursor with data from the file. This affects what tracks you should
706 create initially and which track to drag the media onto. To drag and
707 drop a file on the Program window, you need to create on the
708 timeline the same set of tracks as your media file.
709
710 When you drag your chosen media from the media folder to the
711 timeline, your mouse pointer will drag a thumbnail and, once over
712 the timeline, the outline of a white rectangle, as big as the edit
713 you are going to have appears.  Drag the media to the desired
714 position of an empty track of the timeline and drop it.  If there
715 are other edits on that track, when you move the white outline over
716 an edit, you will see a bow tie symbol $\bowtie$ appearing at edit
717 boundaries. If you drop the media there, the new edit will start
718 from the edit boundary indicated by the center of the bow tie
719 $\bowtie$.
720
721 Since the mouse pointer is in the middle of the white outline, when
722 this rectangle is bigger than the visible part of the timeline, it
723 is quite cumbersome to precisely insert it for long
724 media. Lengthening the duration visible in the timeline by changing
725 the sample zoom in the zoom panel will reduce the size of the white
726 rectangle, making a precise insertion possible.
727
728 When you drag and drop edits within the timeline:
729
730 \begin{itemize}
731 \item If you drop an edit when bow ties $\bowtie$ are shown,
732   that edit will be cut and pasted starting at the edit boundary
733   indicated by the center of the bow tie $\bowtie$.  Following edits
734   on the same track will move.
735 \item If you drop an edit when there are no bow ties $\bowtie$
736   shown, the original edit will be muted and pasted where you dropped
737   it. No edits will move. A silence will appear in place of the
738   original edit.
739 \item If you have more armed tracks on the timeline than in the
740   asset you are dragging, only the following edits of the tracks
741   affected by the drag and drop operation will move to the right. This
742   will cause loss of synchronization. To restore it, disarm the tracks
743   affected by the drag and drop operation, highlight the just dropped
744   edit and paste silence over it using the Edit pulldown,
745   \textit{Paste Silence}.
746 \end{itemize}
747
748 Labels sometimes work differently in Drag and Drop editing mode in
749 that you can't drag and drop them. They might be locked to the
750 timebar, even with the Edit labels option enabled.  Although with
751 the Edit labels option enabled, if a selected area of a resource is
752 spliced from the Viewer to the timeline in a position before labels,
753 these labels will be pushed to the right for the length of the
754 selected area.
755
756 In/Out points can be used to perform Cut and Paste operations in
757 Drag and Drop mode as well as in Cut and Paste mode.  Use the Edit
758 pulldown to view the list and their keyboard shortcuts.
759
760
761 \subsection{Copy/Paste Behavior}%
762 \label{sub:copy_paste_behavior}
763
764 There are many options for moving, copying, pasting, inserting, and
765 deleting selected \textit{edits}, more commonly referred to by the
766 user as \textit{clips}, when in the Drag and Drop (arrow) editing
767 mode.  This makes it easier to avoid constantly having to disarm/arm
768 tracks.  To create a selection move the cursor over the clip and
769 just click the left mouse button; remove a selection by left mouse
770 button click again.  This will mark your selection with a colored
771 border which contains some red.  The easiest way to initially use
772 the various modes is to click on the middle mouse button when your
773 cursor is over a track and a popup displays the modes and shortcuts.
774 However, for those users who prefer the addition of the Ctrl key to
775 add multiple selections as is commonly done for listbox operations,
776 there is a preference in \texttt{Settings $\rightarrow$ Preferences
777   $\rightarrow$ Appearance} tab, called \textit{Clears before
778   toggle} that changes the behavior.
779
780 When an edit is marked as selected, it can be cut/copied into the
781 paste clip buffer.  The constructed clip buffer will begin with the
782 leftmost edit and end with the rightmost edit.  The edits may
783 contain media, or be silence, or skipped if they are not selected.
784 The clip tracks are copied from the first track with an active edit
785 selection to the last track with an active edit selection.  A clip
786 track can be completely empty if no selection was made on the track.
787 The word \textit{packed} means that the silent edits and empty
788 tracks are not included in the copy to the clip buffer, and all of
789 the elements are packed together, no gaps.  Packing a clip buffer
790 makes it easier to move \textit{blobs} of data around.  Once the
791 edits have moved and have a relative relationship applied, an
792 unpacked clip buffer allows the media to be copied with the relative
793 positions of the edits preserved.
794
795 The \textit{edits} popup is activated on a track and a red and
796 yellow colored reticle appears to temporarily mark the location when
797 you click on the middle mouse button.  An expanded explanation is
798 provided below.
799
800 \renewcommand{\arraystretch}{1.15}
801 \begin{center}
802   \begin{longtable}{p{0.3\textwidth-2\tabcolsep} p{0.7\textwidth-2\tabcolsep}}
803     \toprule
804     \textbf{Key} & \textbf{Operations}\\
805     \midrule
806     Drag & Hold down the Ctrl key while dragging to move a single
807            edit elsewhere.\\
808     Left mouse button & Selects and highlights the edit under the
809                         cursor with a red selection box. Left mouse
810                         button also will toggle that clip selection
811                         off if it is on.\\
812     \bottomrule
813   \end{longtable}
814 \end{center}
815
816 \begin{center}
817   \begin{longtable}{p{0.2\textwidth-2\tabcolsep}
818     p{0.2\textwidth-2\tabcolsep} p{0.6\textwidth-2\tabcolsep}
819     }
820     \toprule
821     \textbf{Popup Label} & \textbf{Key} & \textbf{Operation}\\ \midrule
822     \endhead
823     Clear Select & Ctrl-Shift-A & Deselect all selected edits --
824                                   ones that have the red lines
825                                   around them.\\
826
827     Copy & Ctrl-c & Copy the selected edits into the copy buffer.\\
828
829     Cut & Ctrl-x & Delete the selected edits after copying them into
830                    the buffer. The edits\\
831
832     Mute & Ctrl-m & Delete the selected edits after copying them
833                     into the buffer. The space previously occupied
834                     by the edits will be replaced with silence.\\
835
836     Copy Pack & Ctrl-Shift-C & Copy the selected edits into the
837                                buffer and remove any silent
838                                sections.\\
839
840     Cut Pack & Ctrl-z & Delete the selected edits after copying them
841                         into the buffer. The edits after the
842                         election will move left to occupy the
843                         vacated space.  The edits in the copy buffer
844                         will be packed together within each track.\\
845
846     Mute Pack & Ctrl-Shift-M & Delete the selected edits after
847                                copying them into the buffer.  The
848                                deleted edits will be replaced with
849                                silence.  The edits in the copy
850                                buffer will be packed together within
851                                each track.\\
852
853     Paste  & Ctrl-v & Paste contents of the copy buffer at the
854                       insertion point marked by the red \& yellow
855                       reticle of the popup menu or the position of
856                       the hairline cursor. This is a splice
857                       operation which creates space for the edits.\\
858
859     Overwrite & Ctrl-b & Paste contents of the copy buffer at the
860                          insertion point marked by the red \& yellow
861                          reticle of the popup menu or the position
862                          of the hairline cursor. This destroys the
863                          current edits in that space.\\
864
865     Overwrite & Ctrl-Shift-P & Pastes plugins that are in the Copy
866                                buffer to current location but no
867                                clip. Plugins.\\
868     \bottomrule
869   \end{longtable}
870 \end{center}
871 \renewcommand{\arraystretch}{1}
872
873 The copy/paste behavior respects the armed/disarmed tracks
874 state.  A paste of audio on a video track will fail and vice versa.
875 In addition if you attempt to paste edits consisting of more tracks
876 than what is available at that location it will not allowed.
877
878 Attaching transitions to multiple selected edits via the Video or
879 Audio pulldowns is also available.  The new transitions are attached
880 at the start of the edits, and will replace any existing attached
881 transitions.  As a side note, when in drag and drop mode the end
882 transition does not drag.
883
884 \subsection{Grouping edits}%
885 \label{sub:grouping_edits}
886
887 \CGG{} recognizes as a group, the edits of different armed tracks
888 that have aligned beginnings, regardless of whether they have the
889 same source or aligned ends.  You can drag these edits around on the
890 timeline to construct your movie by rearranging scenes. If more than
891 one track is armed, \CGG{} will drag any edits which start on the
892 same positions the edit the mouse pointer is currently over. Another
893 method of Grouping of edits is performed as follows:
894
895 \begin{enumerate}
896 \item Select each of the clips you would like to be part of a
897   group.
898 \item Use the desired Copy mode as described above to get into
899   the buffer.
900 \item Go to the Resources window Clip folder and right click on
901   an empty spot.
902 \item Choose the Paste Clip option.  Now you have a named clip
903   of the current selection.
904 \end{enumerate} A more traditional Grouping of edits which make a
905 Permanent Group works as described next.  A temporary group is just
906 a set of selected clips and works the same as a single selection.
907 \begin{enumerate}
908 \item Create a group:
909   \begin{itemize}[noitemsep]
910   \item Select multiple clips/edits with left mouse button
911     over the clip;
912   \item Hold down shift and left mouse click over any of the
913     selected clips to create a group;
914   \item A Group Id and color are assigned to this group making
915     it easy to distinguish.
916   \end{itemize}
917 \item Move a group:
918   \begin{itemize}[noitemsep]
919   \item Move your cursor over any of the clips within the
920     group; click to select the clip group.
921   \item Click and Hold down the left mouse button to drag.
922   \end{itemize}
923 \item Dissolve a permanent group:\\
924   To ungroup select any of the group edits/clips and shift left
925   mouse click to ungroup (same as creating).  The edits will be
926   ungrouped, and the current selection will be replaced with the
927   ungrouped clips.
928 \end{enumerate}
929
930 The color of the created groups are not muted and are assigned by
931 Group Id going sequentially through the number of 1 to 64.
932 Therefore if you dissolve a group and make it again, it will have a
933 different Group Id and a different color.
934
935 \subsection{Dragging Groups}%
936 \label{sub:dragging_groups}
937
938 Dragging while in \textit{Drop and Drag editing mode} (arrow mode)
939 is really easy.  Just select the clip or clips you want to drag
940 using the left mouse button, then put your cursor over one of them
941 and drag while holding down the left mouse button.  Keyframes,
942 autos, labels, and plugins will also be dragged.  Dragging honors
943 armed/disarmed tracks.  When you drag there will be some possible
944 colors as defined; depends on how the edges of edits and groups
945 interact:
946
947 \begin{itemize}
948 \item Green color means OK to drop in that position as it will
949   fit.
950 \item Yellow color means you can drop here and when you do it
951   will be exactly next to that existing edit.
952 \item Blue color means it overlaps something and this includes
953   overlapping itself.
954 \item Red color means can not drop here because it will not fit
955   in the space.
956 \item Orange color means the track types do not match so it can
957   not be dropped here.
958 \end{itemize}
959
960 Remember: With the \texttt{Shift} key on, it will always
961 \textit{overwrite}. Without the \texttt{Shift} key enabled, it
962 always \textit{inserts} only.
963
964 The original (older) method of dragging while in Arrow mode, lets
965 you just left mouse click on a single clip or aligned clips and just
966 drag.  This older method of dragging does not move any of its
967 effects with it at this time.  There will only be a white outline
968 while dragging and it will let you drop only if it fits.  You can
969 also perform some dragging and grouping while in the \textit{Cut and
970   Paste editing mode} (ibeam mode) by taking advantage of the Ctrl
971 button in conjunction with the left mouse button.
972
973 \begin{itemize}
974 \item Double click selects a column so you can move, for
975   example, the audio and video together by holding down the Ctrl key
976   and dragging.
977 \item A single clip can be dragged without any of its aligned
978   clips, by holding down and Ctrl key and drag.
979 \end{itemize}
980
981 This last section on Dragging, outlines the difference
982 between \textit{column selection} and \textit{marking selection}.
983 Column selection is available to make it easy to still be able to do
984 some dragging in I-beam mode whereas Marking selection makes it easy
985 to drag clips together that are not columnated.
986
987
988 \subsection{Selection Methods}%
989 \label{sub:selection_method}
990
991 Concerning \textit{Selection} methods, the following information is
992 partially pertinent to all editing, but is most important to keep in
993 mind when using Drag and Drop Editing.
994
995 Originally, there was the column oriented timeline drag selection
996 which can be seen in 1 of 3 ways:
997
998 \begin{enumerate}
999 \item a highlighted vertical column
1000 \item the colored line region between the [~in and out~] marker
1001   labels
1002 \item a single flashing line
1003 \end{enumerate}
1004
1005 The selection priority works like this. When the highlighted
1006 vertical drag column is in use (1), it has the highest precedence
1007 and is used as the selection.  When the column is a single line (2),
1008 then the fall back selection is the [~in/out~] marker region, if
1009 they are set.  When they are not set, and the cursor is flashing,
1010 then the selection start=end and the selection is empty, but it does
1011 have a position on the timeline which can be used for editing.  This
1012 is input for the vertical style cut/paste drag/drop editing.
1013
1014 More recently, in addition to the column oriented timeline drag
1015 selection, there is now \textit{group} capabilities which have
1016 various \textit{edit} selections.  These are created in the Drag and
1017 Drop editing mode by clicking edits to toggle
1018 select/deselection.  These groups are input to a different (more
1019 modern) set of cut, paste and overwrite drag/drop editing.  You
1020 can see this set of operations when you click on an edit with the
1021 middle mouse button, and are also available using the shortcuts
1022 shown. They are more like text editor commands to include
1023 \texttt{ctrl+x=cut}, \texttt{ctrl+c=copy}, \texttt{ctrl+v=paste},
1024 and so on \dots The keyboard Delete key is not hooked to these
1025 operations, and is hooked to the original editing methods.
1026
1027 In this \textit{group} mode, if there are In/Out markers set, they
1028 enter the selection priority queue between the column selection and
1029 the cursor only. You can see the In/Out markers selected region
1030 colored line across the timebar (slightly underneath where the time,
1031 samples or frames show ) on the main timeline extending between the
1032 [ and ].  This means that when the highlighted cursor selection is
1033 empty, the In/Out selection will be used.
1034
1035
1036 \section{Inter-View Mode\;/\;Identifying Source Targets Editing}%
1037 \label{sec:inter-view_identifying_source_target_editing}
1038
1039 Inter-View mode provides a mapping of a particular media file to its
1040 timeline usages. It is somewhat similar to Two Screen Editing in
1041 that you make use of the Viewer. It makes it possible to precisely
1042 trace and indicate in the media the origin of a particular segment
1043 of the timeline and visually indicate the use and distribution that
1044 the timeline makes of a particular media.  A good example usage
1045 would be in the case of a 30 minute interview where you use a few
1046 short pieces to make a shorter 10 minute section, find out that you
1047 have made the timeline 12 minutes instead and need to cut out
1048 another 2 minutes. This feature provides the following capabilities:
1049
1050 \begin{itemize}
1051 \item You can see on the timeline all of the places where a
1052   particular piece of media was used.
1053 \item You can see which parts of that particular media are
1054   already used so you do not reuse that same piece again.
1055 \end{itemize} Figure~\ref{fig:inter-view01} shows an example of the
1056 Inter-View mode mapping preview mini-window.
1057 \begin{figure}[ht]
1058   \includegraphics[width=0.8\linewidth]{inter-view01.png}
1059   \caption{Inter-View mode: white bar$\rightarrow$source; red
1060     bar$\rightarrow$timeline}
1061   \label{fig:inter-view01}
1062 \end{figure}
1063
1064 Explanation of how to use Inter-View mode will be described here
1065 next.
1066
1067 \begin{itemize}
1068 \item Do your editing as usual on the timeline until you are
1069   ready to see what is used or unused.
1070 \item Make sure you are in any of the Preview modes in the
1071   Resources window; you enable the mode using the pulldown to the left
1072   of the word Search.  The option looks like this \quad
1073   \includegraphics[height=\baselineskip]{fullplay.png}.
1074 \item Middle mouse click on a thumbnail in the Resources window and
1075   a popup occurs of that media with a white colored bar at the top
1076   and a red colored bar at the bottom with black sections.
1077 \end{itemize}
1078
1079 The red/white bars represent the presence and the black sections
1080 represent the absence of where that media is used on the timeline.
1081 To get to a bigger representation, use the “\texttt{f}” key for a
1082 full screen.  Now you can operate the following buttons to display
1083 what you need to see and to move around.  It is important to note
1084 that \textit{locked tracks} will not be represented.  This makes it
1085 easy to ignore the audio track segments if you want so there is less
1086 confusion in the display.
1087
1088 \begin{itemize}
1089 \item Clicking on the top white or black spaces in the top time
1090   bar loads the Viewer with the source media, and sets the In/Out [
1091   and ] pointers to be the selection of that edit.
1092 \item Click on a location in the bottom red or black bar, and
1093   the main cursor and composer will re-position to the corresponding
1094   location on the session timeline.
1095 \item Dragging on the red/black bar will correspondingly update
1096   the position in the timeline and composer.
1097 \item Ctrl-click on the bottom bar and the timeline and composer
1098   are re-positioned to the beginning of that edit.
1099 \item Shift-click on the bottom bar and a \textit{selection} is
1100   made of that section in the timeline and the composer is updated
1101   with that start position.
1102 \end{itemize}
1103
1104 %\pagebreak
1105 Figure~\ref{fig:inter-view02} displays Inter-View window and its
1106 relation to the timeline, viewer, and compositor.
1107 \begin{figure}[ht]
1108   \centering
1109   \includegraphics[width=1.0\linewidth]{inter-view02.png}
1110   \caption{Inter-View mode and the timeline}
1111   \label{fig:inter-view02}
1112 \end{figure}
1113
1114 The Inter-View mode works for Media, Proxy, and User Bins.  When the
1115 preview window has only black bars on the top and bottom, it means
1116 that this particular media is not loaded in the timeline.  So when
1117 you are in Proxy, meaning that the Proxy files are loaded on the
1118 timeline, there will be only black bars for the corresponding Media
1119 file UNLESS there is an audio track associated with the video.
1120 Because audio tracks are not proxied, they will show for Media but
1121 not for Proxy.
1122
1123
1124 \section{Some Specific Editing Tools}%
1125 \label{sec:specific_editing_tools}
1126
1127 This section covers some more detailed editing tools and scenarios
1128 for edit management.
1129
1130 \subsection{Editing EDLs within a Project}%
1131 \label{sub:edit-edls}
1132
1133 To edit EDL that is included with your project as Clips, Nested
1134 Clips, Referenced File, or Xml you can use the option \textit{Open
1135   EDL} in the Resources window for the highlighted media.  Then with
1136 a simple button click you can return to your main timeline project.
1137 For example, if you have a nested clip that originally had several
1138 plugins added to it before it was nested, you can edit those plugin
1139 parameter values. Previously to make any changes to these types of
1140 EDL you had to remake the whole clip from scratch.
1141
1142 Here is how this works. In the Clip or Media folder or on a timeline
1143 EDL edit, the option \textit{Open EDL} for the highlighted clip or
1144 nested clip is available so that when you choose this option, that
1145 EDL will be brought up on the timeline superseding the current EDL
1146 that exists on the timeline.  Now, once the clip is open on the
1147 timeline, you can edit it however you want. The previous timeline
1148 EDL is \textit{pushed onto a stack} so it can be recalled by
1149 \textit{popping the stack} with a click of the left mouse button in
1150 the upper right hand corner of the timeline to the left of the
1151 \textit{shell cmds} icon.  Initially this button displays a 0 to
1152 indicate your initial timeline/project.  Then this button will read
1153 1 if you choose \textit{Open EDL} and then back to 0 and your
1154 original timeline with the left mouse click.  You can go several
1155 levels deep so instead of 1, it could be 2, 3, $\dots$ but this
1156 requires some thought to avoid potential confusion.
1157
1158 An example of a typical set of steps to follow is:
1159 \begin{enumerate}
1160 \item Load your media using insertion strategy of \textit{Replace
1161     current project}.  There will be \# 0 in the upper right hand corner
1162   of the main menu with the tooltip of \textit{Close EDL}.
1163 \item Highlight a selection on the timeline and press the
1164   \textit{To clip} icon and click the green checkmark OK.
1165 \item In the Resources window, open the Clip folder and you will
1166   see that Clip 1 is present.
1167 \item Highlight Clip1 and right mouse the item to bring up
1168   available options and select \textit{Open EDL}.
1169 \item Now you will see the timeline change from the original
1170   media to just the clip content and the \# in the upper right hand
1171   corner will change from 0 to 1.
1172 \item Add a visible effect, like AgingTV to the timeline.
1173 \item Click on the \# 1 in the main menu bar to see he timeline
1174   restored to the original media.
1175 \item Drag the clip from the Resources Clip folder to the
1176   timeline and you will see the AgingTV effect.
1177 \end{enumerate}
1178
1179 You can follow the same steps as above by first using the option
1180 \textit{Nest to media} in the Clip folder which nests the clip and
1181 moves it out of the Clip folder to the Media folder.  Then use
1182 \textit{Open EDL} on the Nested EDL in the media folder.  When you
1183 Open EDL and edit the changes, those changes will take affect on any
1184 and all occurrences of that nested clip on the current and/or
1185 original timeline. The option to unnest that clip and put that back
1186 into the Clip folder is the option \textit{EDL to clip}.  The nested
1187 clip is still in the Media folder.  It will now have a name of the
1188 next available Clip \# but the comment contains the previous name so
1189 you can tell where it came from.
1190
1191 Instead of using the \# number on the main menu to close the current
1192 EDL, both the Media and Clip folders have \textit{Close EDL} options
1193 with the left mouse button. Clicking on the \# number is quick and
1194 easy but for infrequent usage it is not obvious, whereas if you use
1195 \textit{Open EDL} you see \textit{Close EDL} right below that and so
1196 it is very obvious.  In addition in the case of where you have
1197 opened a EDL, and you no longer see that clip in the folder, the
1198 right mouse button where no media is highlighted will also display
1199 the Close EDL option.
1200
1201 %\pagebreak
1202 \begin{figure}[h]
1203   \centering
1204   \includegraphics[width=1\linewidth]{editing-img001.png}
1205   \caption{Once you have an Open EDL, the easiest way to close it.}
1206   \label{fig:open_edl}
1207 \end{figure}
1208 \relax
1209
1210 In addition to the \textit{Open EDL} option in the Resources menu,
1211 this option is available on the timeline when the cursor is on an
1212 EDL-type edit. To get to this option, click on the middle mouse
1213 button on that edit.  If it is not EDL, the option will not be
1214 shown.  In summary:
1215
1216 \begin{center}
1217   \begin{tabular}{ll}
1218     \toprule
1219     Media folder of Resources window & Open EDL for Nested or Referenced EDLs\\
1220     Clip folder of Resources window & Open EDL for clips\\
1221     Track timeline & Open EDL for Nested or Referenced EDLs\\
1222     \bottomrule
1223   \end{tabular}
1224 \end{center}
1225
1226 An aside -- when nesting and unnesting clips to take advantage of
1227 this feature, names of the media can lead to some confusion.  For
1228 example, if you nest a clip, the new name in the Media folder is the
1229 word \textit{Nested} followed by an underscore with the date and
1230 timestamp, another underscore, and then the clip name.  Then when
1231 you unnest this Media folder clip via the \textit{EDL to clip}
1232 option, the name will be changed in the Clip folder to the next
1233 available Clip \#.  However the comment field will reflect the
1234 nested clip name from which it was derived.  To avoid confusion you
1235 can easily change the name for these clips in either the Clip or
1236 Media folder because they are not real files at this point. To do
1237 so, highlight the clip name in Resources, click on Info and type in
1238 a new name.
1239
1240 For additional safety, the \textit{Open EDL} feature includes
1241 additional backup capabilities. Automatically \CGG{} saves a backup
1242 when certain changes are made or you can always use the shortcut `b'
1243 to do one yourself, although keep in mind it will be overwritten
1244 whenever \CGG{} wants to do another backup.  Now there is a shortcut
1245 for the backup shortcut `b' so you can keep your hand on the mouse
1246 instead of the keyboard.  Just click on the \# in the upper right
1247 hand corner of the main window.  If \# is at 0, it backs up to
1248 backup.xml, if at 1, it backs up to \texttt{backup1.xml} and so on
1249 \dots up to \texttt{backup9.xml}.
1250
1251 When \textit{Open EDL} is invoked, the current EDL and current undo
1252 stack are both \textit{pushed}, and the active session EDL is
1253 replaced with the target clip/nested edl.  A new undo stack is
1254 created, and the active \texttt{backup.xml} file name is decorated
1255 with the stack level.  So, \texttt{backup.xml} is
1256 \texttt{backup1.xml} when your edits are at stack level 1,
1257 \texttt{back\-up2\-.xml} at stack level 2, and so on.  This means
1258 that if you \textit{load backup} at stack level 1, the session will
1259 reload from history at stack level 1, not the main session.
1260
1261 See a real-world workflow at appendix \nameref{sec:workflow_openedl_nested_clips}
1262
1263 \subsection{Editing with File by Reference}%
1264 \label{sub:file-reference}
1265
1266 It is sometimes handy to have EDL assets not as a copy, but as a
1267 reference that is automatically updated into your project.  Suppose
1268 you have several short videos that at the end have the same credits
1269 which include the current year such as 2019.  But now it is 2020 and
1270 all of the videos would have to be individually updated with the new
1271 date.  By including a \textit{Referenced File} as the EDL file type
1272 when you create each of the videos, you can just change the one
1273 credits xml file and the next time you load one of the videos and
1274 render it, it will now automatically have the updated information.
1275
1276 The purpose of this feature is to be able to rework a smaller
1277 section of a global master project at any time, which can be done by
1278 an "assistant" (i.e. external software like GIMP or Inkscape, $\dots$) and then this work is automatically reflected in the
1279 global master project.  It is for \textbf{advanced usage only}.
1280
1281 Up until the addition of this feature, \CGG{} has always used copies
1282 and no direct reference in order to ensure original data is never
1283 compromised.  In the usual case, subprojects as xmls are copied into
1284 a master project where subprojects had been inserted, so that if you
1285 change something in a subproject or delete a subproject, it would
1286 have no affect on the master project.  But now with \textit{File by
1287   Reference}, any project that uses a referenced file will
1288 automatically include any changes made to the referenced file when
1289 loaded.  At the same time, if you use the EDL file NOT as a
1290 referenced file in a project since it is then just a copy, it will
1291 not be updated.  Because of this difference, the user needs to be
1292 very aware of what using this feature could do.
1293
1294 \textbf{Use with extreme caution}.  However, there are several
1295 built-in safety features and a warning that should never be turned
1296 off even though it gives you the option to do so.  These include:
1297
1298 \begin{enumerate}
1299 \item When the \texttt{File, Load files} menu is opened, the EDL
1300   strategy will always be set to just EDL as default.  Although, if
1301   you use Apply and leave the Load Menu open, it will stay changed to
1302   what you selected until it is re-opened.
1303 \item When an EDL is opened as \textit{Reference}, the color of
1304   that file name in the Resources Media folder is different in order
1305   to serve as a reminder that it is special.
1306 \item A warning message is displayed in a popup window when you
1307   load a \textit{File by Reference} that reads “Other projects can
1308   change this project and this can become a broken link”.  Although
1309   you can check the warning box to never see this warning again, you
1310   would be well advised to not do so.  It is a great reminder of
1311   consequences and you will not want to be cavalier about the warning.
1312   Instead just use the X to dismiss the warning.
1313 \end{enumerate}
1314
1315 Here is a step by step example of how you can use \textit{File by
1316   Reference}:
1317 \begin{enumerate}
1318 \item Start up \CGG{} and use the Title plugin to create a new
1319   credits file.  Save as credits.xml.
1320 \item Start a New project and then load an existing master
1321   project to the timeline.
1322 \item Load the credits file you created in step 1 with a Load
1323   Strategy of Create Resources Only and with EDL Strategy as
1324   \textit{Reference}.
1325 \item Note the color change in the credits.xml filename and the
1326   reference comment in the Resources Media folder.
1327 \item Drag the credits file to an empty spot on the timeline.
1328   Save this new master project and quit.
1329 \item Start \CGG{} up again.  Load credits.xml and make a change
1330   to the Title and save again.
1331 \item Exit \CGG{}; restart \CGG{}; load your master project and
1332   now you will automatically see on the timeline the changes you just
1333   made in the previous step.
1334 \end{enumerate}
1335
1336
1337 \subsection{Edit Length}%
1338 \label{sub:edit-lenght}
1339
1340 To set the length of an edit in the timeline, select the region
1341 which contains the edit to be modified. Now select the menu bar
1342 \texttt{Edit $\rightarrow$ Edit Length}\dots menu item to activate
1343 the \textit{edit length} popup (figure~\ref{fig:lenght}).  The
1344 duration of the edit can be reset by entering the desired edit
1345 length in seconds.  Pressing OK will change all of the selected
1346 edits (in armed tracks) to the specified length.
1347
1348 \begin{figure}[htpb]
1349     \centering
1350     \includegraphics[width=0.5\linewidth]{lenght.png}
1351     \caption{Edit Length window}
1352     \label{fig:lenght}
1353 \end{figure}
1354
1355 \subsection{Align Edits}%
1356 \label{sub:align_edits}
1357
1358 When loading media, a common problem is that the various audio/video
1359 tracks do not always have exactly the same lengths. For example, you
1360 might load audio/video recordings from your camera and be dismayed
1361 to see that the audio for each segment is a half second longer than
1362 the video. If you load a large set of media clips by concatenation,
1363 the audio and video will be more skewed as more media is
1364 loaded. Align Edits makes it possible to adjust the edits so the
1365 audio and/or video align by adjusting
1366 the edits so that the track lengths are consistent. To use this
1367 feature, load all of the desired media and select a region which
1368 contains all of the edits to be aligned in the timeline. Now select
1369 the menu bar \texttt{Edit $\rightarrow$ Align Edits} menu item to
1370 operate the change. The topmost armed track is used as a template
1371 reference, and the rest of the tracks are either cut or padded to
1372 align the edit boundaries.  Besides aligning audio with the video,
1373 you can also align video with the audio if the first armed track is
1374 audio. The code performs the following algorithm:
1375
1376 \begin{itemize}
1377 \item Use the first armed track as the master track (it must
1378   contain data).
1379 \item Collect the \textit{edit project start times} on the
1380   selected master track. Only edits that are 100\% inside the selected
1381   area will be used.
1382 \item Set all other tracks to match the \textit{edit times} of
1383   the template track, either by putting in silence or cutting the
1384   region to align the edits on the \textit{edit times} of the master
1385   track.
1386 \end{itemize}
1387
1388 The start time sequence of media and silence edits
1389 along the master track are collected as the target alignment
1390 boundaries. All armed tracks after the master track are modified so
1391 that if the next edit edge is too soon, it adds silence; if it is
1392 too late, edits are shortened or deleted past the point of the next
1393 target alignment boundary time.  Align Edits works best if there are
1394 an equal number of Video and Audio sections.  Also, it is better to
1395 use cuts instead of adding silence -- if there are silence edits
1396 together, the algorithm will combine the silence edits into a single
1397 edit and results may not be as desired.
1398
1399 The first two screenshots in figure~\ref{fig:align} show the Before,
1400 the Highlighted Edits to be manipulated, and the After results for
1401 the Align Edits. The third screenshot \textit{adds silence} in the
1402 second section as noted in red letters.
1403
1404 \begin{figure}[htpb] \centering
1405   \includegraphics[width=1.0\linewidth]{align.png}
1406   \caption{Align edits}
1407   \label{fig:align}
1408 \end{figure}
1409
1410
1411 \subsection{Reverse Edits}%
1412 \label{sub:reverse_edits}
1413
1414 The Reverse Edits can be useful to change the order of 2 edits in
1415 the case where you would like to put a \textit{teaser} section that
1416 occurred in the middle of a movie at the beginning instead, that is,
1417 reversed positions.  To operate, highlight completely the edit areas
1418 you would like reversed and then use the pulldown \texttt{Edit
1419   $\rightarrow$ Reverse Edits}.
1420
1421 Figure~\ref{fig:reverse01} shows the selected / highlighted area to
1422 which Edits will be applied.  Note the first edit is 0002, followed
1423 by 0003, 0004, and 0005 in that order.
1424
1425 \begin{figure}[htpb]
1426   \centering
1427   \includegraphics[width=0.9\linewidth]{reverse01.png}
1428   \caption{Selected area for Reverse Edits}
1429   \label{fig:reverse01}
1430 \end{figure}
1431
1432 Figure~\ref{fig:reverse02} shows the results of executing
1433 \textit{Reverse Edits}.  Now you will see the reversed order of
1434 0005, 0004, 0003, and last 0002.
1435
1436 \begin{figure}[htpb]
1437   \centering
1438   \includegraphics[width=0.9\linewidth]{reverse02.png}
1439   \caption{Results of the Reverse Edits}
1440   \label{fig:reverse02}
1441 \end{figure}
1442
1443
1444 \subsection{Shuffle Edits}%
1445 \label{sub:shuffle_edits}
1446
1447 The file pulldown \texttt{Edit $\rightarrow$ Shuffle Edits} will
1448 randomly exchange the location of the edits.  This feature can be
1449 used to change the order of the music like you would do from your
1450 MP4 player where you have a playlist of your favorite music.  Or
1451 perhaps you are creating an advertisement background, you can
1452 randomly change it, thus the viewer sees a different order of scenes
1453 each time shown.
1454
1455 Figure~\ref{fig:shuffle} illustrating Shuffle Edits of the
1456 highlighted area of the first screenshot on the page.  Note the
1457 permutation of the fragments resulting in 0002 now being first, then
1458 0004, 0003, and 0005 last.
1459
1460 \begin{figure}[htpb]
1461   \centering
1462   \includegraphics[width=0.9\linewidth]{shuffle.png}
1463   \caption{Shuffle edits: the edits are permutated}
1464   \label{fig:shuffle}
1465 \end{figure}
1466
1467
1468 \subsection{Drag Handle Management / Trimming}%
1469 \label{sub:drag_handle_management_trimming}
1470
1471 With some edits on the timeline it is possible to do trimming. By
1472 trimming you shrink or grow the edit boundaries by dragging them. In
1473 drag and drop mode or cut and paste mode, move the cursor over an
1474 edit boundary until it changes shape. The drag handle shows as a
1475 left or right facing fat arrow when you cursor near the clip start
1476 or end.  If the cursor faces left, the dragging operation affects
1477 the beginning of the edit. If the cursor faces right, the dragging
1478 operation affects the end of the edit.
1479
1480 The effect of each drag operation not only depends on the behavior
1481 button but whether the beginning or end of the edit is being
1482 dragged. When you release the mouse button, the trimming operation
1483 is performed.
1484
1485 For all file formats, other than still images, the extent of the
1486 trimming operation is limited to the source file length. Attempting
1487 to drag the start of the edit beyond the start of the source, limits
1488 it to the source start. In all trimming operations, all edits which
1489 start on the same position as the cursor when the drag operation
1490 begins are affected. You have to disarm tracks in order to prevent
1491 edits from being affected.
1492
1493 You have 6 different choices of which mouse button to use for
1494 specific types of editing while using the drag handle.  You change
1495 the drag handle mouse effects by using the \texttt{Settings
1496   $\rightarrow$ Preferences  $\rightarrow$ Interface} tab and
1497 modifying the Editing section as shown in the next
1498 figure~\ref{fig:trim}. The drag handle affects not only the clip you
1499 are working on but also frequently the entire duration of all clips
1500 on the timeline.
1501
1502 \begin{figure}[htpb]
1503   \centering
1504   \includegraphics[width=0.6\linewidth]{trim.png}
1505   \caption{Default choices for mouse: Ripple for button 1; Roll
1506     for button 2; Slip for button 3}
1507   \label{fig:trim}
1508 \end{figure}
1509
1510 A description of the fundamental/common terminology for choices
1511 follows.
1512
1513 \begin{description}
1514 \item[All Edits (ripple)] shorten or lengthen the start or end
1515   of a single piece of media while moving all media to the right of
1516   that clip up or down on the timeline correspondingly.  Timeline
1517   duration is modified.  In a drag \textit{All Edits} operation, the
1518   beginning of the edit either cuts data from the edit if you move it
1519   forward or pastes new data from before the edit if you move it
1520   backward. The end of the edit pastes data into the edit if you move
1521   it forward or cuts data from the end of the edit if you move it
1522   backward. All the following edits shift. If you drag the end of the
1523   edit past the start of the edit, the edit is deleted.
1524 \item[One Edit (roll)] move the in and out point of a single
1525   clip without changing the timeline duration. In a drag \textit{One
1526     Edit} operation, nothing is cut or pasted. If you move the beginning
1527   or end of the edit forward, the source reference in the edit shifts
1528   forward. If you move the beginning or end of the edit backward, the
1529   source reference shifts backward. The edit remains in the same spot
1530   in the timeline but the source shifts.
1531 \item[Src Only (slip)] move the in and out point of a single
1532   clip without changing the timeline duration. In a drag \textit{Src
1533     Only} operation, nothing is cut or pasted. If you move the beginning
1534   or end of the edit forward, the source reference in the edit shifts
1535   forward. If you move the beginning or end of the edit backward, the
1536   source reference shifts backward. The edit remains in the same spot
1537   in the timeline but the source shifts.
1538 \item[Slide] a single clip is moved but retains its current in
1539   and out point; however the out point of the clip to the left changes
1540   and the in point of the clip to the right also changes.  Timeline
1541   duration remains the same.
1542 \item[Edge Left/Right] moves the edge of the clips.
1543 \item[No effect] no changes are made.  You might want to use
1544   this choice to prevent accidental movements.
1545 \end{description}
1546
1547 The next table displays the options and results
1548 with the Key Table here first.
1549
1550 \begin{lstlisting}[style=sh]
1551     s = src media start
1552     p = proj position
1553     l = length
1554     c = cut distance
1555     rest == p+=c: for rest of clips
1556     01 = flags edits_moved, rest_moved
1557 \end{lstlisting}
1558
1559 \renewcommand{\arraystretch}{1.15}
1560 \begin{table}[ht]
1561   %\caption{}
1562   %\label{tab:}
1563   % Tell table to adjust font to fix on the page using \resize
1564   \resizebox{\textwidth}{!}{%
1565     \begin{tabular}{lllll}
1566       \toprule
1567       &  & \textbf{Drag Left} & \textbf{Drag Right} &\\
1568       \midrule
1569       \multicolumn{2}{l}{\textit{curr s += c, l -= c; + rest}} & $\leftarrow$ & $\rightarrow$ & \textit{rest}\\
1570       abc12345xyz & \textbf{Ripple} left edge 11 $\rightarrow$ & abc012345xyz & abc2345xyz &\\
1571       \midrule
1572       \multicolumn{2}{l}{\textit{curr l += c; + rest}} & $\leftarrow$ & $\rightarrow$ & \textit{rest}\\
1573       abc12345xyz & \textbf{Ripple} right edge 01 $\rightarrow$ & abc1234xyz & abc123456xyz &\\
1574       \midrule
1575       \multicolumn{2}{l}{\textit{prev l += c; curr ps+= c, l -= c}} & $\leftarrow$ & $\rightarrow$ &\\
1576       abc12345xyz & \textbf{Roll} left edge 00 $\rightarrow$ & ab012345xyz & abcd2345xyz &\\
1577       \midrule
1578       \multicolumn{2}{l}{\textit{curr l += c; next ps+= c, l -= c}} & $\leftarrow$ & $\rightarrow$ &\\
1579       abc12345xyz & \textbf{Roll} right edge 00 $\rightarrow$ & abc1234wxyz & abc123456yz &\\
1580       \midrule
1581       \multicolumn{2}{l}{\textit{s -= c}} & $\leftarrow$ & $\rightarrow$ &\\
1582       abc12345xyz & \textbf{Slip} left edge 10 $\rightarrow$ & abc23456xyz & abc01234xyz &\\
1583       \midrule
1584       \multicolumn{2}{l}{\textit{s -= c}} & $\leftarrow$ & $\rightarrow$ &\\
1585       abc12345xyz & \textbf{Slip} right edge 10 $\rightarrow$ & abc23456xyz & abc01234xyz &\\
1586       \midrule
1587       \multicolumn{2}{l}{\textit{prev l += c; curr p+= c; next ps += c, l -= c}} & $\leftarrow$ & $\rightarrow$ &\\
1588       abc12345xyz & \textbf{Slide} left edge 10 $\rightarrow$ & ab012345wxyz & abcd12345yz &\\
1589       \midrule
1590       \multicolumn{2}{l}{\textit{prev l += c; curr p+= c; next ps += c, l -= c}} & $\leftarrow$ & $\rightarrow$ &\\
1591       abc12345xyz & \textbf{Slide} right edge 10 $\rightarrow$ & ab12345wxyz & abcd12345yz &\\
1592       \midrule
1593       \multicolumn{2}{l}{\textit{curr s -+= c, l += c; + rest}} & $\leftarrow$ & $\rightarrow$ & \textit{rest}\\
1594       abc12345xyz & \textbf{Edge} left edge 11 $\rightarrow$ & abc2345xyz & abc0123456xyz &\\
1595       \midrule
1596       \multicolumn{2}{l}{\textit{curr l -+= c; + rest}} & $\leftarrow$ & $\rightarrow$ & \textit{rest}\\
1597       abc12345xyz & \textbf{Edge} right edge 01 $\rightarrow$ & abc1234xyz & abc123456xyz &\\
1598       \bottomrule
1599     \end{tabular}
1600   }
1601 \end{table}
1602 \renewcommand{\arraystretch}{1}
1603
1604 Next, a more immediate and colorful view shows these trimming
1605 options (figure~\ref{fig:trim-color}).
1606
1607 \begin{figure}[htpb]
1608     \centering
1609     \includegraphics[width=0.8\linewidth]{trim-color.png}
1610     \caption{The 5 types of Trim: note the different lengths of the results.}
1611     \label{fig:trim-color}
1612 \end{figure}
1613
1614 \paragraph{How to do a J-cut or L-cut} A J-cut is a split edit film
1615 editing technique in which the audio from a following scene overlaps
1616 the picture from the preceding scene, so that the audio portion of
1617 the later scene starts playing before its picture as a lead-in to
1618 the visual cut.  An L-cut is a different split edit film editing
1619 technique in which the audio from preceding scene overlaps the
1620 picture from the following scene, so that the audio cuts after the
1621 picture, and continues playing over the beginning of the next scene
1622 (figure~\ref{fig:j-cut}). To do either a J-cut or an L-cut, you
1623 first shorten the first or second video a little.  Then you block
1624 the audio tracks from changing by disarming the appropriate tracks.
1625 Finally use \textit{One Edit (roll)} the cutting edge off the
1626 videos.  Moving to the right creates a J-cut and moving to the left
1627 creates an L-cut.
1628
1629 \begin{figure}[htpb]
1630     \centering
1631     \includegraphics[width=0.8\linewidth]{j-cut.png}
1632     \caption{J-cut to left and L-cut to right}
1633     \label{fig:j-cut}
1634 \end{figure}
1635
1636
1637 \subsection{Split View in Compositor Using the Drag Handle with Trim}%
1638 \label{sub:split_view_compositor_using_drag_trim}
1639
1640 The Trim Feature using the drag handle provides some good ways to
1641 view your video while editing.  The playback position in the
1642 compositor is updated live and the view in the compositor can be
1643 split so that in the left half of the compositor you can see the
1644 last frame of the left clip and in the right half the first frame of
1645 the right clip.  Dragging edits can not be extended past the
1646 beginning or the end.
1647
1648 First familiarize yourself with button operation; check your setup
1649 by executing the following step.  In the \texttt{Settings
1650   $\rightarrow$ Preferences $\rightarrow$ Interface} tab, Editing
1651 section, clicking on the edit boundaries can be set for Button 1, 2,
1652 3 as one of the following:
1653
1654 \textit{Ripple}; \textit{Roll}; \textit{Slip}; \textit{Slide};
1655 \textit{Edge} or \textit{No effect}
1656
1657 Now to use this feature, create a track with edits that have trims
1658 on the left and/or the right. The edit boundary can be modified
1659 using \textit{drag handles} at the boundary between the edits
1660 (figure~\ref{fig:trim-display}).
1661
1662 \begin{figure}[htpb]
1663   \centering
1664   \includegraphics[width=1\linewidth]{trim-display.png}
1665   \caption{Split compositor screen showing the result of the Trim feature}
1666   \label{fig:trim-display}
1667 \end{figure}
1668
1669 \begin{description}
1670 \item[Left Mouse Button (LMB) usage:] If you grab the edit
1671   handle from the right side, you will see a left arrow and dragging
1672   the boundary will modify the right edit playback starting time. If
1673   you grab the edit handle from the left side, you will see a right
1674   arrow and dragging the boundary will modify the left edit playback
1675   ending time. In both cases, the composer will show the edit endpoint
1676   of the changed edit.
1677 \item[Shift LMB usage:] The effect on the edits is the same as
1678   described above, but the composer will show a split screen of the
1679   left and right edits as they appear at the drag handle
1680   boundary. Dragging will only change one of the two images, since
1681   only one edit is being changed.
1682 \item[Middle Mouse Button (MMB) usage:] Both the left and the
1683   right edit ending/starting times are updated.  The image shown in
1684   the compositor will be drawn from the side of the drag grab, that is
1685   the left if it is grabbed from the left, and the right if it is
1686   grabbed from the right.
1687 \item[Shift MMB usage:] The effect on the edits is the same as
1688   described above, but the composer will show a split screen of the
1689   left and right edits as they appear at the drag handle boundary.
1690   Dragging will change both of the two images, since both edits are
1691   being changed.
1692 \item[Right Mouse Button (RMB) usage:] The start/end point of
1693   the current edit is moved, but the edit length is unchanged only one
1694   image changes since only one edit endpoint is view is updated.
1695 \item[Shift RMB usage:] The effect on the edits is the same as
1696   described above, but the composer will show a split screen of the
1697   left and right edits as they appear at the drag handle boundary.
1698   Dragging will only change one of the two images, since only one edit
1699   is being changed.
1700 \end{description}
1701
1702
1703 \subsection{Snapping while Cutting and Dragging}%
1704 \label{sub:snapping_cutting_dragging}
1705
1706 \paragraph{Cutting/Snapping edits} cuts from an edit handle to the
1707 insert point.  There are Edit Panel buttons which normally are used
1708 to move to the previous or next edit handle/label.
1709
1710 \begin{wrapfigure}[3]{r}{0.2\linewidth}
1711   \vspace{-2ex}
1712   \centering
1713   \includegraphics[width=0.7\linewidth]{snap.png}
1714 \end{wrapfigure}
1715
1716 They look like tags and the letter E on the menu bar and are
1717 oriented forward/backward.  These same buttons can be used to
1718 \textit{cut} from the insert pointer to the previous or next
1719 edit/label when the ctrl+alt keys are both pressed when the buttons
1720 are used.  They \textit{snap} off the media instead of doing the
1721 standard re-positioning.  This is useful to minimize the number of
1722 operations necessary to cut between edits/labels.
1723
1724 Instead of using the edit panel buttons, you can more easily use the
1725 following keyboard shortcuts to perform the same functions:
1726
1727 \begin{center}
1728   \begin{tabular}{lll}
1729     \toprule
1730     snap\_right\_edit & ctrl+alt+ '.' &\\
1731         snap\_left\_edit & ctrl+alt+ ',' &\\
1732     snap\_right\_label & ctrl+alt +shift '.' & shift+period is the > sign on US keyboards\\
1733     snap\_left\_label &  ctrl+alt +shift',' & shift+comma is the < sign on US keyboards\\
1734     \bottomrule
1735   \end{tabular}
1736 \end{center}
1737
1738 \paragraph{Drag Snapping} if you hold down the Ctrl + Alt keys while
1739 dragging using the mouse, once the clip gets near to an edit, a
1740 label, an in/out pointer or the start/end of the timeline, the
1741 dragged clip will snap next to that marker.  The 2 will now be
1742 exactly aligned with no gap and no overlap.  As you drag the clip
1743 close to one of the markers, when they are within a short distance
1744 they start to stick and stay that way until you move further away
1745 from that distance.  Also, the line will turn color from green to
1746 yellow while in the sticky phase.  In addition, this works for a
1747 plugin while dragging so that it will be the same length as the edit.
1748
1749
1750 \subsection{Nesting}%
1751 \label{sub:nesting}
1752
1753 \paragraph{Nested Assets} A nested asset is an EDL session that
1754 embeds an existing EDL session, all tracks, all plugins, editing,
1755 and effects into a media object that appears as one audio/video
1756 media object, no plugins, editing, or effects.  It is as if the
1757 existing EDL was rendered, and loaded in its place.  This has
1758 several interesting side effects.  First, you don’t have to render
1759 the entire media file to see any portion.  Second, it requires no
1760 rendering compute time or storage.  Third, it changes the precedence
1761 of the composer so that you get more control over the projection and
1762 automation, so that the results can be sent into another rendering
1763 step, not simply part of the current stack.  It groups the plugin
1764 stack in much the same way that an arithmetic expression is grouped
1765 by parenthesis.
1766
1767 The EDL session and the rendered output are visually equivalent.
1768 Nested assets allow for complex grouping and stacking of effects,
1769 and makes media access much more flexible.  This feature can be used
1770 recursively, that is, any number of sessions may be stacked and
1771 referenced as an asset, as long as all of the rendering resources
1772 are available.  Nested assets are added to the timeline by using the
1773 pulldown \texttt{File $\rightarrow$ Load files}\dots on the main
1774 menu and selecting the \textit{Insertion strategy} of \textit{Nest
1775   asset}. The file will be pasted into the timeline over the current
1776 selection or at the insertion point.
1777
1778 It is somewhat important to note that nested assets and nested clips
1779 will have index files automatically created.  These index files can
1780 start to clutter up your \texttt{\$HOME/.bcast5} directory with
1781 files named \texttt{Nested\_\#\#\#.idx} and you may want to
1782 periodically delete any index files which are no longer in use.
1783
1784 \paragraph{Nested Clips} It is also possible to create
1785 \textit{clips} and convert them to \textit{nested edl}.  This is
1786 done by first creating a clip using the standard cut, clipboard,
1787 paste, and/or edit panel buttons.  Now, using the resources
1788 \textit{clip} folder, select a clip to be nested, and use the right
1789 mouse button to select a clip.  This activates the clip popup menu.
1790 Select the \textit{Nest to media} menu item, and the clip will be
1791 converted to a \textit{Nested: Clip} and put in Media
1792 folder. Conversely, you can select a \textit{Nested: Clip}, use the
1793 \textit{EDL to clip} menu item, and the clip will be reverted to a
1794 \textit{Clip}.  This works similarly to the group / un-group editing
1795 features of many graphic design editing programs, but in this case
1796 the groups are rendered compositions (figure~\ref{fig:nesting}).
1797
1798 Nested clips can be proxied and when they are, the resulting files
1799 are placed in the user's \$HOME/Videos directory by default.  This
1800 can be modified by changing
1801
1802 \texttt{Settings $\rightarrow$ Preferences $\rightarrow$ Interface}
1803 tab, Nested Proxy Path.
1804
1805 \begin{figure}[htpb]
1806   \centering
1807   \includegraphics[width=1.0\linewidth]{nesting.png}
1808   \caption{Nested clips in Timeline and Resources window}
1809   \label{fig:nesting}
1810 \end{figure}
1811
1812 \paragraph{Usage Examples of Nested Clips}
1813
1814 \begin{description}
1815 \item[Example 1:] You want to make a flashback/rewind at the end
1816   of your video that represents a quick summary of the entire video in
1817   black and white. On he timeline, you have 60 seconds of edits with
1818   clips, cuts, zoom in, zoom out and any other edits. Now you want to
1819   get this 60 seconds \textit{compressed} to 10 seconds, play in
1820   reverse, and in black and white at the end of your video.  You would
1821   copy the 60 seconds in a clip, nest the clip in the Clip folder of
1822   the Resources window and drag it to the timeline. You will see only
1823   a clean clip without all of the edits that were used to create it
1824   because nesting display a clip without having to actually use the
1825   Render menu.  Now you can add a Reverse effect, Color3way plugin for
1826   black and white, and use the Speed auto to get the 60 seconds down
1827   to only 10 seconds.
1828 \item[Example 2:] You are working on a complex project with a
1829   team in a separate location. You create some sub projects, i.e.\
1830   sequences, that you or the team will use in the Master project to
1831   merge the sequences in the right order and to make the final color
1832   correction steps.
1833 \end{description}
1834
1835 In each of the examples you can see the benefit of nesting to create
1836 clean looking timelines because of the automatic rendering
1837 capability of nesting.
1838
1839
1840 \subsection{Copy/Paste clips/medias across Multiple Instances}%
1841 \label{sub:copy_paste_multiple_instances}
1842
1843 It is easy to copy/paste clips/media within a single instance of
1844 \CGG{} or across multiple instances.  The reason this works is
1845 because there are hidden X cut buffers and these are used to
1846 transmit EDL from 1 instance to another.
1847
1848 Steps to copy from a source timeline and paste to a target timeline:
1849
1850 \begin{enumerate}
1851 \item highlight a selection on the timeline in 1 instance of \CGG{}
1852 \item use the Copy icon (shortcut c) on the main menu bar to copy
1853   into a buffer
1854 \item move the pointer to another instance of \CGG{} and set an
1855   insertion point in its timeline
1856 \item use the Paste icon (shortcut v) to paste the clip to that
1857   other instance selection target
1858 \end{enumerate}
1859
1860
1861 \section[ShuttlePROv2 and ShuttleXpress Jog Wheels for Editing]{ShuttlePROv2 and ShuttleXpress Jog Wheels for Editing\protect\footnote{programmatic specifications from Eric Messick}}%
1862 \label{sec:shuttle_jog_wheels_editing}
1863
1864 The ShuttlePROv2 and ShuttleXpress are affordable jog wheels which
1865 can be useful for working with Cin, especially if you do a lot of
1866 playing forward/backward, fast/slow/normal, and single frames
1867 (figure~\ref{fig:shuttle}).
1868 %
1869 Directions for using the ShuttlePROv2 and the ShuttleXpress with
1870 \CGG{} are described next. These devices work by sending keystrokes
1871 used in Cin, corresponding to the shuttle action, to the keyboard
1872 buffer. The shuttle has been fully integrated into the \CGG{} code
1873 so that after the one initial setup, no further intervention is
1874 required.  The multi-speed outer wheel works the same and has the
1875 same number of S positions on both shuttles but the shuttle Xpress
1876 has only 5 keys.  Since the majority of user operations will most
1877 likely be with the use of the 2 wheels, the slightly smaller Xpress
1878 could be a better choice with its 5 easy to reach keys.  The Pro is
1879 approximately $4\times7$\,inches whereas the Xpress is about
1880 $4\times4$\,inches.
1881
1882 \begin{figure}[htpb]
1883   \centering
1884   \includegraphics[width=0.9\linewidth]{shuttle.png}
1885   \caption{ShuttlePROv2 and ShuttleXpress}
1886   \label{fig:shuttle}
1887 \end{figure}
1888
1889 The vendor supplied \textit{string} device names for the shuttles
1890 are currently:
1891
1892 \texttt{/dev/input/by-id/usb-Contour\_Design\_ShuttlePRO\_v2-event-if00}\\
1893 \texttt{/dev/input/by-id/usb-Contour\_Design\_ShuttleXpress-event-if00}\\
1894 \texttt{/dev/input/by-id/usb-Contour\_Design\_ShuttlePro-event-if00}
1895
1896 Only 1 necessary initial setup is required due to permission
1897 settings for non-root usage. As root, just copy a file that provides
1898 the necessary permissions to use the shuttle, then reboot, Example
1899 copy:
1900
1901 \begin{lstlisting}[style=sh]
1902 sudo cp {cindat_path}/doc/99-ShuttlePRO.rules /etc/udev/rules.d/
1903 \end{lstlisting}
1904
1905 then the next time after you reboot, the permissions should be
1906 correct. This file only needs to contain one of the following lines
1907 depending on which shuttle version you have/use, but all will be in
1908 the file.
1909
1910 \begin{lstlisting}[style=sh]
1911 # for  newer PRO model
1912 ATTRS{name}=="Contour Design ShuttlePro" MODE="0644"
1913 # for older PRO model
1914 ATTRS{name}=="Contour Design ShuttlePRO v2" MODE="0644"
1915 # for the Xpress model
1916 ATTRS{name}=="Contour Design ShuttleXpress" MODE="0644"
1917 SUBSYSTEMS=="usb", ATTRS{idVendor}=="0b33", ATTRS{idProduct}=="0020", MODE="0666"
1918 SUBSYSTEMS=="usb", ATTRS{idVendor}=="0b33", ATTRS{idProduct}=="0030", MODE="0666"
1919 \end{lstlisting}
1920
1921 If you swap your shuttle, for example upgrade from an Xpress to a
1922 PROv2, just stop Cin, unplug the original shuttle, plug in the
1923 replacement shuttle, and restart Cin.  If you start the \CGG{}
1924 program and the shuttle does not function as before, stop \CGG{} and
1925 then simply unplug it and plug it in again.  There are a couple of
1926 reasons why it may stop functioning.  One is because \CGG{} was not
1927 stopped with the usual Quit command and the shuttle was improperly
1928 shut down when there was a crash.  The other possibility is that a
1929 static discharge occurred in the area.
1930
1931 A default shuttlerc file is automatically used when a shuttle device
1932 is plugged in when Cin is started. This file sets up the key
1933 bindings for \CGG{} to use. You can override any default settings by
1934 having a local file in your \texttt{\$HOME} directory, named
1935 \texttt{.shuttlerc} to reflect your personal preferences.
1936
1937
1938 \subsection{How to Modify the Default Key Settings}%
1939 \label{sub:modify_default_key_settings}
1940
1941 Detailed information on how to modify your local \texttt{.shuttlerc}
1942 file is described next, but if you need help you can request more
1943 information in the forum at {\small
1944   \url{https://cinelerra-gg.org}}. In the \texttt{shuttlerc} file, a
1945 \# always represents a comment and blank lines are ignored.  The
1946 first thing you must do is copy the system supplied
1947 \texttt{shuttlerc} file to your \texttt{\$HOME} directory and rename
1948 it as \texttt{.shuttlerc} (with a period).
1949
1950 The \texttt{shuttlerc} file has sections that in the case of \CGG{},
1951 represent different windows allowing you to set the keys, K1-K15 for
1952 the Pro and K5-K9 for the Xpress, the shuttle wheel positions of
1953 S0/S1/S-1 for stop, S2 through S7 for wheeling to the right, and S-7
1954 through S-2 for wheeling to the left for reverse.  Then there is JR
1955 to jog right (clockwise) and JL to jog left (counter-clockwise) for
1956 the inner smaller wheel for single frame movement.  See the key
1957 arrangement on a later page for location of the keys for each of the
1958 two different shuttles.
1959
1960 The sections are surrounded by brackets for windows such as \CGG{}
1961 (the main window), Viewer, Composer, Resources, Load, and Default.
1962 If you want the keys to be defined the same in every window, you can
1963 bracket each window on lines one right after the other and then just
1964 define one set of keys.  The other lines will have the key
1965 name/shuttle position followed by its assigned value.  The values
1966 you use for the keys are usually shortcuts and have to be
1967 operationally defined within \CGG{}. For example, the shortcut “f”
1968 to go fullscreen is defined so can be used; however the shortcut “h”
1969 is not defined so will not do anything.  You can check the file,
1970 shortcuts.html, for some options to use.
1971
1972 Next are a few actual examples from the default
1973 \texttt{{cindat\_path}/shuttlerc} file.
1974
1975 The next brackets represent sections. Default, Resources, Load
1976 windows all use the same key values.
1977
1978 \begin{lstlisting}[style=sh]
1979 [Default]
1980 [Resources]
1981 [Load]
1982 K5 XK_Home
1983 K6 XK_Button_1 # same as mouse button 1
1984 K7 XK_Button_2 # same operation as mouse button 2
1985 K8 XK_Button_3
1986 K9 XK_End
1987 # for example, in the Load menu, use scroll up to get to the next file name
1988 JL XK_Scroll_Up
1989 JR XK_Scroll_Down
1990 \end{lstlisting}
1991
1992 Cinelerra with brackets around it next, is the section with some key
1993 definitions for the main window.
1994
1995 \begin{lstlisting}[style=sh]
1996 [Cinelerra]
1997
1998 # Most useful functions have to be on K5-K9
1999 # because Xpress only has 5 keys
2000 K5 XK_Home      # Beginning
2001 K6 XK_KP_6      # Reverse, or if playing Stop
2002 K7 XK_KP_0      # Stop
2003 K8 XK_KP_3      # Play, or if playing Stop
2004 K9 XK_End       # End
2005 ...
2006 S-7 REV_16      # Next 6 are reverse keys
2007 S-6 REV_8       #  the number on the end represents speed
2008 S-5 REV_4       #  number can be decimal up to 64
2009 S-4 REV_2       #  2 means 2x or double speed
2010 S-3 REV_1
2011 S-2 REV_0.5     #  0.5 represents 1/2 speed
2012 S-1 XK_KP_0     # Because the Shuttle does not generate S0,
2013                 #   have to use S-1
2014 S0  XK_KP_0     # Hardware does not generate S0
2015 S1  XK_KP_0     # Because the Shuttle does not generate S0,
2016                 #   have to use S1
2017 S2  FWD_0.5
2018 S3  FWD_1
2019 ...
2020 \end{lstlisting}
2021
2022 An explanation for the above REV and FWD key symbol values is
2023 necessary to facilitate user preferences.  Obviously REV stands for
2024 reverse and FWD for forward.  You can set any speed up to and
2025 including 64x (that is, 64 times the normal speed) on any of the S
2026 keys.  First in the line is the key name such as S-3 and then the
2027 key direction of FWD or REV followed by the symbol for underscore
2028 (\_) and then the numerical value to use.  For example, if you want
2029 the $5^{th}$ forward position, S5, to play 10$\frac{1}{2}$ times
2030 faster, you would use the statement \texttt{S5 FWD\_10.5}.  Integer
2031 or decimal numbers are legal.
2032
2033 For the Viewer, you may want keys defined to do a Splice or an
2034 Overwrite so define differently.  Note that assignments that contain
2035 single character letters must be enclosed in quotes.
2036
2037 \begin{lstlisting}[style=sh]
2038 [Viewer]
2039 # Splice - Viewer only; may be defined
2040 # differently than Composer or Cinelerra
2041 K2 "v"
2042 K4 "b"          # Overwrite
2043 \end{lstlisting}
2044
2045 To change any key value to an alternative value, just edit the file
2046 and make the changes.  Besides just keys and alphabetic letters of
2047 numbers, you can also use any \CGG{} value that contains the
2048 combination with Shift, Alt, and Ctrl.  For keys that are not
2049 printable characters, you can look up the symbol name to use for a
2050 specific operation in the file called:
2051 \texttt{/usr/include/X11/keysymdef.h}. Some examples:
2052
2053 \begin{lstlisting}[style=sh]
2054 K10 Alt-XK_Left   # Go to previous edit \\
2055 K13 Ctrl-XK_Right # Go to next label
2056 \end{lstlisting}
2057
2058 For sequences of one or more \textit{printable} characters, you can
2059 just enclose them in double quotes.  For example in the
2060 \texttt{[Composer]} section, to go into or out of fullscreen mode,
2061 automatically start playing and put a label there, you could define
2062 a key like this:  K7 “f~l” - that is printable character f, a space,
2063 and printable character l.
2064
2065 After modifying \texttt{.shuttlerc}, the next time you use the
2066 shuttle, your changes will automatically take affect without even
2067 having to stop and restart Cin.  However, the first thing to try if
2068 problems is to stop \CGG{}, unplug the shuttle, wait a few seconds,
2069 plug it in again, and then restart cin.  If for some reason, the
2070 shuttle keys still do not work after that, you may have an incorrect
2071 setup and you will have to correct that first.  For example, if you
2072 define S5 twice within the \CGG{} setup, it will fail.  It is
2073 suggested that if you make changes, you should initially uncomment
2074 DEBUG in the \texttt{.shuttlerc} file and start up \CGG{} from a
2075 terminal window so that you can make sure it is working and has no
2076 output errors.  An error might look like:
2077
2078 \begin{lstlisting}[style=sh]
2079 dupl key name: [Cinelerra]K1
2080 shuttle config err file: /root/.shuttlerc, line:37
2081 \end{lstlisting}
2082
2083 Keep in mind when changing the values, that the ShuttleXpress has
2084 fewer buttons so if you define K1 it will only work for the
2085 ShuttlePro.
2086
2087 Any time you are having trouble with your shuttle, you can copy the
2088 default \texttt{shuttlerc} file from
2089 \texttt{{cindat\_path}/shuttlerc} to your local \texttt{.shuttlerc}
2090 file, and edit that to\ switch to DEBUG mode by removing the \#
2091 comment from the DEBUG line.  But you will have to have started Cin
2092 from a terminal window to see the key values. The first time you use
2093 the shuttle or after you change the file, the current assignments
2094 will show in the terminal window so will look something like:
2095
2096 \begin{lstlisting}[style=sh]
2097 [Cinelerra] # 1
2098 K5[D]: XK_KP_0/U
2099 K5[U]: XK_KP_0/U
2100 \end{lstlisting}
2101
2102 When you are in DEBUG mode and are just working away, what you will
2103 see is something like this:
2104
2105 \begin{lstlisting}[style=sh]
2106 key: 0058 1
2107 key: 0055 0
2108 \end{lstlisting}
2109
2110 or:
2111
2112 \begin{lstlisting}[style=sh]
2113 shuttle:  00 00 00 00 00
2114 key: XK_Home 0
2115 \end{lstlisting}
2116
2117 When you change the focus from one window to another, you will see
2118 something like this:
2119
2120 \begin{lstlisting}[style=sh]
2121 new focus: 04c00137
2122 new translation: Viewer
2123 key: 0059 1
2124 \end{lstlisting}
2125
2126 You can also set an environment variable to temporarily use an
2127 alternative shuttle configuration file for testing as in:
2128
2129 \begin{lstlisting}[style=sh]
2130 export SHUTTLE_CONFIG_FILE=/tmp/shuttlerc_test
2131 \end{lstlisting}
2132
2133 The shuttle wheel occasionally will not \textit{stop} after you have
2134 wheeled it to play forward.  This is a documented known problem from
2135 the original code so you just have to joggle it a little in the
2136 other direction and then it will stop.  S0 does not always generate
2137 a signal to do a stop and that is why S1 and S-1 have to be used to
2138 relay the stop instead.  Also, if you have a fullscreen Composer or
2139 Viewer up and the regular one also, the fullscreen takes precedence.
2140
2141
2142 \subsection{Troubleshooting auxilliary information}%
2143 \label{sub:troubleshooting_auxilliary_information}
2144
2145 In order to see if you hardware was recognized by the operating
2146 system, key in:
2147
2148 \begin{lstlisting}[style=sh]
2149 lsusb -v -d 0b33:0030  # for the Shuttle Pro or PROv2\\
2150 lsusb -v -d 0b33:0020  # for the Shuttle Xpress
2151 \end{lstlisting}
2152
2153 \paragraph{Note 1} Currently, the keys K14 and K15 do not function
2154 on the \textit{Contour Design ShuttlePro} but do on the
2155 \textit{Contour Design ShuttlePRO v2} due to a Report Descriptor
2156 error.  You can workaround this by uncommenting \texttt{USB\_DIRECT}
2157 in your local \texttt{.shuttlerc} file.  This directly uses libusb
2158 rather than the generic Linux hid driver.  \texttt{USB\_DIRECT}
2159 works for any of the currently tested shuttles.
2160
2161 \paragraph{Note 2} If you are not sure if your shuttle is fully
2162 functional, you can verify that the hardware device has been seen by
2163 your operating system with this procedure.
2164 \begin{enumerate}
2165 \item From a terminal window as an ordinary user key in: lsusb (the
2166   first character is a lower case L for list).  You will see
2167   something like the following depending on which usb device you
2168   have the ShuttlePro plugged into:
2169 \begin{lstlisting}[style=sh]
2170 Bus 003 Device 002: ID 0b33:0030 Contour Design, Inc. ShuttlePro v2
2171 \end{lstlisting}
2172 \item To make sure you have usbmon installed key in:
2173 \begin{lstlisting}[style=sh]
2174 sudo modprobe usbmon
2175 \end{lstlisting}
2176 \item Next key in the following:
2177 \begin{lstlisting}[style=sh]
2178 sudo od -tx1 /dev/usbmon3
2179 \end{lstlisting}
2180   where the last 3 is the same \# as the Bus in above.  If it lists
2181   \texttt{Bus 002}, then use \texttt{/dev/usbmon2} instead.
2182 \item Now with focus in that same terminal window, press any shuttle
2183   key just to see what happens and should see about 12 lines similar
2184   to these below -- a new set every time you press a single key or
2185   the wheel.  The lines are usually not important, just the fact
2186   that you get a response is.  However if you have multiple devices
2187   on the same bus, you will get responses from any and all of them.
2188   Attempt to isolate your shuttle by temporarily unplugging
2189   unnecessary devices on the same bus or plug the shuttle into a
2190   different usb port that has fewer devices.
2191     \begin{lstlisting}[style=sh]
2192 0000000 80 70 99 75 53 8c ff ff 43 01 81 02 03 00 2d 00
2193 0000020 4e 61 5c 5c 00 00 00 00 8d 2c 06 00 00 00 00 00
2194 0000040 05 00 00 00 05 00 00 00 00 00 00 00 00 00 00 00
2195 0000060 01 ff 00 00 00 80 70 99 75 53 8c ff ff 53 01 81
2196 0000100 02 03 00 2d 3c 4e 61 5c 5c 00 00 00 00 b1 2c 06
2197 0000120 00 8d ff ff ff 05 00 00 00 00 00 00 00 00 00 00
2198 0000140 00 00 00 00 00 80 70 99 75 53 8c ff ff 43 01 81
2199 0000160 02 03 00 2d 00 4e 61 5c 5c 00 00 00 00 3d d7 09
2200 0000200 00 00 00 00 00 05 00 00 00 05 00 00 00 00 00 00
2201 0000220 00 00 00 00 00 00 ff 00 00 00 80 70 99 75 53 8c
2202 0000240 ff ff 53 01 81 02 03 00 2d 3c 4e 61 5c 5c 00 00
2203 0000260 00 00 64 d7 09 00 8d ff ff ff 05 00 00 00 00 00
2204 \end{lstlisting}
2205 \item Next press the key that you want to verify is functioning --
2206   if no new lines show up, then the key is non-functional so there
2207   is a hardware problem.  If you get output, then perhaps there is a
2208   problem with your software setup.
2209 \item Use Ctrl-C on the terminal window when done to get back to the
2210   prompt.
2211 \end{enumerate}
2212
2213 \paragraph{Note 3} Another method for testing to make sure your
2214 model of the Shuttle does not have different key definitions than
2215 the one that \CGG{} was coded for is to do the following.
2216
2217 \begin{enumerate}
2218 \item Locate the shudmp.C program in your \CGG{} directory.
2219 \item Compile that with the command:  \texttt{c++ shdmp.C -o shudmp}
2220 \item Make the file executable with the command:  \texttt{chmod +x shudmp}
2221 \item Execute:
2222 \begin{lstlisting}[style=sh]
2223 sudo ./shdmp /dev/input/by-id/usb-Contour\_Design\_ShuttlePro-event-if00 # substitute your shuttle
2224 \end{lstlisting}
2225 \end{enumerate}
2226
2227 Then press your shuttle key that is having problems and check the
2228 results.  They should look like:
2229
2230 \begin{lstlisting}[style=sh,caption={Example for K7}]
2231 event: (4, 4, 0x90007)  #The last number, 7, is the expected Key number.
2232 event: (1, 262, 0x1)
2233 event: (0, 0, 0x0)
2234 event: (4, 4, 0x90007)
2235 event: (1, 262, 0x0)
2236 event: (0, 0, 0x0)
2237 \end{lstlisting}
2238
2239 \begin{lstlisting}[style=sh,caption={Example for K15}]
2240 Example for K15:
2241 event: (4, 4, 0x9000f)  #The last number f is 15 in hexadecimal and is the expected Key.
2242 event: (1, 270, 0x1)
2243 event: (0, 0, 0x0)
2244 event: (4, 4, 0x9000f)
2245 event: (1, 270, 0x0)
2246 event: (0, 0, 0x0)
2247 \end{lstlisting}
2248
2249 When done, you will have to Ctrl-C to get out of the program.
2250
2251 \paragraph{Note 4} For developers, if you have a pre-UEFI Secure
2252 Boot kernel it is also possible to do the following for further in
2253 depth testing:
2254
2255 \begin{lstlisting}[style=sh]
2256 ls /sys/kernel/debug/hid   \# to locate numerical value of the shuttle, e.g. 0003:0B33.0030.0006
2257 cat "/sys/kernel/debug/hid/0003:0B33.0030.0006/rdesc"  # substitute your own numerical value
2258 cat "/sys/kernel/debug/hid/0003:0B33.0030.0006/events"  # press keys to see the results
2259 \end{lstlisting}
2260 %\begin{enumerate}
2261     %\item \texttt{ls /sys/kernel/debug/hid   \# to locate numerical value of the shuttle, e.g. 0003:0B33.0030.0006}
2262     %\item \texttt{cat “/sys/kernel/debug/hid/0003:0B33.0030.0006/rdesc”    \# substitute your own numerical value}
2263     %\item \texttt{cat “/sys/kernel/debug/hid/0003:0B33.0030.0006/events”  \# press keys to see the results}
2264 %\end{enumerate}
2265
2266 \subsection{Shuttle key default arrangement for \CGG{} / Composer / Viewer:}%
2267 \label{sub:shuttle_key_default_cinelerra}
2268
2269 The following is the default setting for the ShuttlePROv2 and
2270 ShuttleXpress (table~\ref{tab:shuttleprov2} and
2271 table~\ref{tab:xpress}):
2272
2273 \renewcommand{\arraystretch}{1.15}
2274 \begin{table}[ht]
2275   \caption{ShuttlePROv2 key default arrangement for \CGG{} /
2276     Composer / Viewer}
2277   \label{tab:shuttleprov2}
2278   % Tell table to adjust font to fix on the page using \resize
2279   \resizebox{\textwidth}{!}{%
2280     \begin{tabular}{c c c c c c c}
2281       \toprule
2282       K1 & K2 & & K3 & K4 & &\\
2283       Label & Future use & & Future use & Clip & &\\
2284          & Splice (viewer) & & Copy  & Overwrite (viewer) & &\\
2285       \midrule
2286       K5 & K6 & K7 & K8 & K9 & &\\
2287       Home & Reverse & Stop & Play & End & &\\
2288          & & Fullscreen & & & &\\
2289          & & (viewer / compositor) & & & &\\
2290       \midrule
2291       Home(Defaults) & MouseBtn1(D) & MouseBtn2(D) & MouseBtn3(D) & End(Defaults) & &\\
2292       \midrule
2293       \multicolumn{7}{c}{Shuttle Outer Wheel}\\
2294       \multicolumn{7}{c}{Play forward (first row) or Play reverse (second row)}\\
2295       S1=Stop  & S2=1/2 & S3=Normal  & S4=2x & S5=4x & S6=8x & S7=16x\\
2296       S-1=Stop &  S-2=1/2 & S-3=Normal & S-4=2x & S-5=4x & S-6=8x & S-7=16x\\
2297       \midrule
2298       K14 & & Jog Left & (Inner Wheel) & Jog Right & & K15\\
2299       Toggle In & & Frame reverse & & Frame forward & & Toggle Out\\
2300          & & Scroll up(Defaults) & & Scroll down(Defaults) & &\\
2301       \midrule
2302          & & K10  & &  K11 & &\\
2303          & & Previous Edit & & Next Edit & &\\
2304          & & Future Use(Viewer) & & Future Use(Viewer) & &\\
2305       \midrule
2306          & & K12  & &  K13 & &\\
2307          & & Previous Edit & & Next Edit & &\\
2308          & & Previous Label & & Next label & &\\
2309       \bottomrule
2310     \end{tabular}}
2311 \end{table}
2312
2313 \begin{table}[ht]
2314   \caption{ShuttleXpress key default arrangement for \CGG{} / Composer / Viewer}
2315   \label{tab:xpress}
2316   % Tell table to adjust font to fix on the page using \resize
2317   \resizebox{\textwidth}{!}{%
2318     \begin{tabular}{c c c c c c c}
2319       \toprule
2320       K5 & K6 & K7 & K8 & K9 & &\\
2321       Home & Reverse & Stop & Play & End & &\\
2322          &         & Fullscreen & & & &\\
2323          &         & (viewer / compositor) & & & &\\
2324       \midrule
2325       Home(Defaults) & MouseBtn1(D) & MouseBtn2(D) & MouseBtn3(D) & End(Defaults) & &\\
2326       \midrule
2327       \multicolumn{7}{c}{Shuttle Outer Wheel}\\
2328       \multicolumn{7}{c}{Play forward (first row) or Play reverse (second row)}\\
2329       S1=Stop &   S2=1/2 &   S3=Normal  &  S4=2x  &  S5=4x  &  S6=8x &   S7=16x\\
2330       S-1=Stop &  S-2=1/2 &  S-3=Normal &  S-4=2x &  S-5=4x &  S-6=8x  & S-7=16x\\
2331       \midrule
2332          & & Jog Left & (Inner Wheel) & Jog Right & &\\
2333          & & Frame reverse & & Frame forward & &\\
2334          & & Scroll up(Defaults) & & Scroll down(Defaults) & &\\
2335       \bottomrule
2336     \end{tabular}}
2337 \end{table}
2338
2339
2340 %%% Local Variables:
2341 %%% mode: latex
2342 %%% TeX-master: "../CinelerraGG_Manual"
2343 %%% End: