b898283c703ddcb1bdb4035445c40d09f1ce69d1
[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
1262 \subsection{Editing with File by Reference}%
1263 \label{sub:file-reference}
1264
1265 It is sometimes handy to have EDL assets not as a copy, but as a
1266 reference that is automatically updated into your project.  Suppose
1267 you have several short videos that at the end have the same credits
1268 which include the current year such as 2019.  But now it is 2020 and
1269 all of the videos would have to be individually updated with the new
1270 date.  By including a \textit{Referenced File} as the EDL file type
1271 when you create each of the videos, you can just change the one
1272 credits xml file and the next time you load one of the videos and
1273 render it, it will now automatically have the updated information.
1274
1275 The purpose of this feature is to be able to rework a smaller
1276 section of a global master project at any time, which can be done by
1277 an "assistant" (i.e. external software like GIMP or Inkscape, $\dots$) and then this work is automatically reflected in the
1278 global master project.  It is for \textbf{advanced usage only}.
1279
1280 Up until the addition of this feature, \CGG{} has always used copies
1281 and no direct reference in order to ensure original data is never
1282 compromised.  In the usual case, subprojects as xmls are copied into
1283 a master project where subprojects had been inserted, so that if you
1284 change something in a subproject or delete a subproject, it would
1285 have no affect on the master project.  But now with \textit{File by
1286   Reference}, any project that uses a referenced file will
1287 automatically include any changes made to the referenced file when
1288 loaded.  At the same time, if you use the EDL file NOT as a
1289 referenced file in a project since it is then just a copy, it will
1290 not be updated.  Because of this difference, the user needs to be
1291 very aware of what using this feature could do.
1292
1293 \textbf{Use with extreme caution}.  However, there are several
1294 built-in safety features and a warning that should never be turned
1295 off even though it gives you the option to do so.  These include:
1296
1297 \begin{enumerate}
1298 \item When the \texttt{File, Load files} menu is opened, the EDL
1299   strategy will always be set to just EDL as default.  Although, if
1300   you use Apply and leave the Load Menu open, it will stay changed to
1301   what you selected until it is re-opened.
1302 \item When an EDL is opened as \textit{Reference}, the color of
1303   that file name in the Resources Media folder is different in order
1304   to serve as a reminder that it is special.
1305 \item A warning message is displayed in a popup window when you
1306   load a \textit{File by Reference} that reads “Other projects can
1307   change this project and this can become a broken link”.  Although
1308   you can check the warning box to never see this warning again, you
1309   would be well advised to not do so.  It is a great reminder of
1310   consequences and you will not want to be cavalier about the warning.
1311   Instead just use the X to dismiss the warning.
1312 \end{enumerate}
1313
1314 Here is a step by step example of how you can use \textit{File by
1315   Reference}:
1316 \begin{enumerate}
1317 \item Start up \CGG{} and use the Title plugin to create a new
1318   credits file.  Save as credits.xml.
1319 \item Start a New project and then load an existing master
1320   project to the timeline.
1321 \item Load the credits file you created in step 1 with a Load
1322   Strategy of Create Resources Only and with EDL Strategy as
1323   \textit{Reference}.
1324 \item Note the color change in the credits.xml filename and the
1325   reference comment in the Resources Media folder.
1326 \item Drag the credits file to an empty spot on the timeline.
1327   Save this new master project and quit.
1328 \item Start \CGG{} up again.  Load credits.xml and make a change
1329   to the Title and save again.
1330 \item Exit \CGG{}; restart \CGG{}; load your master project and
1331   now you will automatically see on the timeline the changes you just
1332   made in the previous step.
1333 \end{enumerate}
1334
1335
1336 \subsection{Edit Length}%
1337 \label{sub:edit-lenght}
1338
1339 To set the length of an edit in the timeline, select the region
1340 which contains the edit to be modified. Now select the menu bar
1341 \texttt{Edit $\rightarrow$ Edit Length}\dots menu item to activate
1342 the \textit{edit length} popup (figure~\ref{fig:lenght}).  The
1343 duration of the edit can be reset by entering the desired edit
1344 length in seconds.  Pressing OK will change all of the selected
1345 edits (in armed tracks) to the specified length.
1346
1347 \begin{figure}[htpb]
1348     \centering
1349     \includegraphics[width=0.5\linewidth]{lenght.png}
1350     \caption{Edit Length window}
1351     \label{fig:lenght}
1352 \end{figure}
1353
1354 \subsection{Align Edits}%
1355 \label{sub:align_edits}
1356
1357 When loading media, a common problem is that the various audio/video
1358 tracks do not always have exactly the same lengths. For example, you
1359 might load audio/video recordings from your camera and be dismayed
1360 to see that the audio for each segment is a half second longer than
1361 the video. If you load a large set of media clips by concatenation,
1362 the audio and video will be more skewed as more media is
1363 loaded. Align Edits makes it possible to adjust the edits so the
1364 audio and/or video align by adjusting
1365 the edits so that the track lengths are consistent. To use this
1366 feature, load all of the desired media and select a region which
1367 contains all of the edits to be aligned in the timeline. Now select
1368 the menu bar \texttt{Edit $\rightarrow$ Align Edits} menu item to
1369 operate the change. The topmost armed track is used as a template
1370 reference, and the rest of the tracks are either cut or padded to
1371 align the edit boundaries.  Besides aligning audio with the video,
1372 you can also align video with the audio if the first armed track is
1373 audio. The code performs the following algorithm:
1374
1375 \begin{itemize}
1376 \item Use the first armed track as the master track (it must
1377   contain data).
1378 \item Collect the \textit{edit project start times} on the
1379   selected master track. Only edits that are 100\% inside the selected
1380   area will be used.
1381 \item Set all other tracks to match the \textit{edit times} of
1382   the template track, either by putting in silence or cutting the
1383   region to align the edits on the \textit{edit times} of the master
1384   track.
1385 \end{itemize}
1386
1387 The start time sequence of media and silence edits
1388 along the master track are collected as the target alignment
1389 boundaries. All armed tracks after the master track are modified so
1390 that if the next edit edge is too soon, it adds silence; if it is
1391 too late, edits are shortened or deleted past the point of the next
1392 target alignment boundary time.  Align Edits works best if there are
1393 an equal number of Video and Audio sections.  Also, it is better to
1394 use cuts instead of adding silence -- if there are silence edits
1395 together, the algorithm will combine the silence edits into a single
1396 edit and results may not be as desired.
1397
1398 The first two screenshots in figure~\ref{fig:align} show the Before,
1399 the Highlighted Edits to be manipulated, and the After results for
1400 the Align Edits. The third screenshot \textit{adds silence} in the
1401 second section as noted in red letters.
1402
1403 \begin{figure}[htpb] \centering
1404   \includegraphics[width=1.0\linewidth]{align.png}
1405   \caption{Align edits}
1406   \label{fig:align}
1407 \end{figure}
1408
1409
1410 \subsection{Reverse Edits}%
1411 \label{sub:reverse_edits}
1412
1413 The Reverse Edits can be useful to change the order of 2 edits in
1414 the case where you would like to put a \textit{teaser} section that
1415 occurred in the middle of a movie at the beginning instead, that is,
1416 reversed positions.  To operate, highlight completely the edit areas
1417 you would like reversed and then use the pulldown \texttt{Edit
1418   $\rightarrow$ Reverse Edits}.
1419
1420 Figure~\ref{fig:reverse01} shows the selected / highlighted area to
1421 which Edits will be applied.  Note the first edit is 0002, followed
1422 by 0003, 0004, and 0005 in that order.
1423
1424 \begin{figure}[htpb]
1425   \centering
1426   \includegraphics[width=0.9\linewidth]{reverse01.png}
1427   \caption{Selected area for Reverse Edits}
1428   \label{fig:reverse01}
1429 \end{figure}
1430
1431 Figure~\ref{fig:reverse02} shows the results of executing
1432 \textit{Reverse Edits}.  Now you will see the reversed order of
1433 0005, 0004, 0003, and last 0002.
1434
1435 \begin{figure}[htpb]
1436   \centering
1437   \includegraphics[width=0.9\linewidth]{reverse02.png}
1438   \caption{Results of the Reverse Edits}
1439   \label{fig:reverse02}
1440 \end{figure}
1441
1442
1443 \subsection{Shuffle Edits}%
1444 \label{sub:shuffle_edits}
1445
1446 The file pulldown \texttt{Edit $\rightarrow$ Shuffle Edits} will
1447 randomly exchange the location of the edits.  This feature can be
1448 used to change the order of the music like you would do from your
1449 MP4 player where you have a playlist of your favorite music.  Or
1450 perhaps you are creating an advertisement background, you can
1451 randomly change it, thus the viewer sees a different order of scenes
1452 each time shown.
1453
1454 Figure~\ref{fig:shuffle} illustrating Shuffle Edits of the
1455 highlighted area of the first screenshot on the page.  Note the
1456 permutation of the fragments resulting in 0002 now being first, then
1457 0004, 0003, and 0005 last.
1458
1459 \begin{figure}[htpb]
1460   \centering
1461   \includegraphics[width=0.9\linewidth]{shuffle.png}
1462   \caption{Shuffle edits: the edits are permutated}
1463   \label{fig:shuffle}
1464 \end{figure}
1465
1466
1467 \subsection{Drag Handle Management / Trimming}%
1468 \label{sub:drag_handle_management_trimming}
1469
1470 With some edits on the timeline it is possible to do trimming. By
1471 trimming you shrink or grow the edit boundaries by dragging them. In
1472 drag and drop mode or cut and paste mode, move the cursor over an
1473 edit boundary until it changes shape. The drag handle shows as a
1474 left or right facing fat arrow when you cursor near the clip start
1475 or end.  If the cursor faces left, the dragging operation affects
1476 the beginning of the edit. If the cursor faces right, the dragging
1477 operation affects the end of the edit.
1478
1479 The effect of each drag operation not only depends on the behavior
1480 button but whether the beginning or end of the edit is being
1481 dragged. When you release the mouse button, the trimming operation
1482 is performed.
1483
1484 For all file formats, other than still images, the extent of the
1485 trimming operation is limited to the source file length. Attempting
1486 to drag the start of the edit beyond the start of the source, limits
1487 it to the source start. In all trimming operations, all edits which
1488 start on the same position as the cursor when the drag operation
1489 begins are affected. You have to disarm tracks in order to prevent
1490 edits from being affected.
1491
1492 You have 6 different choices of which mouse button to use for
1493 specific types of editing while using the drag handle.  You change
1494 the drag handle mouse effects by using the \texttt{Settings
1495   $\rightarrow$ Preferences  $\rightarrow$ Interface} tab and
1496 modifying the Editing section as shown in the next
1497 figure~\ref{fig:trim}. The drag handle affects not only the clip you
1498 are working on but also frequently the entire duration of all clips
1499 on the timeline.
1500
1501 \begin{figure}[htpb]
1502   \centering
1503   \includegraphics[width=0.6\linewidth]{trim.png}
1504   \caption{Default choices for mouse: Ripple for button 1; Roll
1505     for button 2; Slip for button 3}
1506   \label{fig:trim}
1507 \end{figure}
1508
1509 A description of the fundamental/common terminology for choices
1510 follows.
1511
1512 \begin{description}
1513 \item[All Edits (ripple)] shorten or lengthen the start or end
1514   of a single piece of media while moving all media to the right of
1515   that clip up or down on the timeline correspondingly.  Timeline
1516   duration is modified.  In a drag \textit{All Edits} operation, the
1517   beginning of the edit either cuts data from the edit if you move it
1518   forward or pastes new data from before the edit if you move it
1519   backward. The end of the edit pastes data into the edit if you move
1520   it forward or cuts data from the end of the edit if you move it
1521   backward. All the following edits shift. If you drag the end of the
1522   edit past the start of the edit, the edit is deleted.
1523 \item[One Edit (roll)] move the in and out point of a single
1524   clip without changing the timeline duration. In a drag \textit{One
1525     Edit} operation, nothing is cut or pasted. If you move the beginning
1526   or end of the edit forward, the source reference in the edit shifts
1527   forward. If you move the beginning or end of the edit backward, the
1528   source reference shifts backward. The edit remains in the same spot
1529   in the timeline but the source shifts.
1530 \item[Src Only (slip)] move the in and out point of a single
1531   clip without changing the timeline duration. In a drag \textit{Src
1532     Only} operation, nothing is cut or pasted. If you move the beginning
1533   or end of the edit forward, the source reference in the edit shifts
1534   forward. If you move the beginning or end of the edit backward, the
1535   source reference shifts backward. The edit remains in the same spot
1536   in the timeline but the source shifts.
1537 \item[Slide] a single clip is moved but retains its current in
1538   and out point; however the out point of the clip to the left changes
1539   and the in point of the clip to the right also changes.  Timeline
1540   duration remains the same.
1541 \item[Edge Left/Right] moves the edge of the clips.
1542 \item[No effect] no changes are made.  You might want to use
1543   this choice to prevent accidental movements.
1544 \end{description}
1545
1546 The next table displays the options and results
1547 with the Key Table here first.
1548
1549 \begin{lstlisting}[style=sh]
1550     s = src media start
1551     p = proj position
1552     l = length
1553     c = cut distance
1554     rest == p+=c: for rest of clips
1555     01 = flags edits_moved, rest_moved
1556 \end{lstlisting}
1557
1558 \renewcommand{\arraystretch}{1.15}
1559 \begin{table}[ht]
1560   %\caption{}
1561   %\label{tab:}
1562   % Tell table to adjust font to fix on the page using \resize
1563   \resizebox{\textwidth}{!}{%
1564     \begin{tabular}{lllll}
1565       \toprule
1566       &  & \textbf{Drag Left} & \textbf{Drag Right} &\\
1567       \midrule
1568       \multicolumn{2}{l}{\textit{curr s += c, l -= c; + rest}} & $\leftarrow$ & $\rightarrow$ & \textit{rest}\\
1569       abc12345xyz & \textbf{Ripple} left edge 11 $\rightarrow$ & abc012345xyz & abc2345xyz &\\
1570       \midrule
1571       \multicolumn{2}{l}{\textit{curr l += c; + rest}} & $\leftarrow$ & $\rightarrow$ & \textit{rest}\\
1572       abc12345xyz & \textbf{Ripple} right edge 01 $\rightarrow$ & abc1234xyz & abc123456xyz &\\
1573       \midrule
1574       \multicolumn{2}{l}{\textit{prev l += c; curr ps+= c, l -= c}} & $\leftarrow$ & $\rightarrow$ &\\
1575       abc12345xyz & \textbf{Roll} left edge 00 $\rightarrow$ & ab012345xyz & abcd2345xyz &\\
1576       \midrule
1577       \multicolumn{2}{l}{\textit{curr l += c; next ps+= c, l -= c}} & $\leftarrow$ & $\rightarrow$ &\\
1578       abc12345xyz & \textbf{Roll} right edge 00 $\rightarrow$ & abc1234wxyz & abc123456yz &\\
1579       \midrule
1580       \multicolumn{2}{l}{\textit{s -= c}} & $\leftarrow$ & $\rightarrow$ &\\
1581       abc12345xyz & \textbf{Slip} left edge 10 $\rightarrow$ & abc23456xyz & abc01234xyz &\\
1582       \midrule
1583       \multicolumn{2}{l}{\textit{s -= c}} & $\leftarrow$ & $\rightarrow$ &\\
1584       abc12345xyz & \textbf{Slip} right edge 10 $\rightarrow$ & abc23456xyz & abc01234xyz &\\
1585       \midrule
1586       \multicolumn{2}{l}{\textit{prev l += c; curr p+= c; next ps += c, l -= c}} & $\leftarrow$ & $\rightarrow$ &\\
1587       abc12345xyz & \textbf{Slide} left edge 10 $\rightarrow$ & ab012345wxyz & abcd12345yz &\\
1588       \midrule
1589       \multicolumn{2}{l}{\textit{prev l += c; curr p+= c; next ps += c, l -= c}} & $\leftarrow$ & $\rightarrow$ &\\
1590       abc12345xyz & \textbf{Slide} right edge 10 $\rightarrow$ & ab12345wxyz & abcd12345yz &\\
1591       \midrule
1592       \multicolumn{2}{l}{\textit{curr s -+= c, l += c; + rest}} & $\leftarrow$ & $\rightarrow$ & \textit{rest}\\
1593       abc12345xyz & \textbf{Edge} left edge 11 $\rightarrow$ & abc2345xyz & abc0123456xyz &\\
1594       \midrule
1595       \multicolumn{2}{l}{\textit{curr l -+= c; + rest}} & $\leftarrow$ & $\rightarrow$ & \textit{rest}\\
1596       abc12345xyz & \textbf{Edge} right edge 01 $\rightarrow$ & abc1234xyz & abc123456xyz &\\
1597       \bottomrule
1598     \end{tabular}
1599   }
1600 \end{table}
1601 \renewcommand{\arraystretch}{1}
1602
1603 Next, a more immediate and colorful view shows these trimming
1604 options (figure~\ref{fig:trim-color}).
1605
1606 \begin{figure}[htpb]
1607     \centering
1608     \includegraphics[width=0.8\linewidth]{trim-color.png}
1609     \caption{The 5 types of Trim: note the different lengths of the results.}
1610     \label{fig:trim-color}
1611 \end{figure}
1612
1613 \paragraph{How to do a J-cut or L-cut} A J-cut is a split edit film
1614 editing technique in which the audio from a following scene overlaps
1615 the picture from the preceding scene, so that the audio portion of
1616 the later scene starts playing before its picture as a lead-in to
1617 the visual cut.  An L-cut is a different split edit film editing
1618 technique in which the audio from preceding scene overlaps the
1619 picture from the following scene, so that the audio cuts after the
1620 picture, and continues playing over the beginning of the next scene
1621 (figure~\ref{fig:j-cut}). To do either a J-cut or an L-cut, you
1622 first shorten the first or second video a little.  Then you block
1623 the audio tracks from changing by disarming the appropriate tracks.
1624 Finally use \textit{One Edit (roll)} the cutting edge off the
1625 videos.  Moving to the right creates a J-cut and moving to the left
1626 creates an L-cut.
1627
1628 \begin{figure}[htpb]
1629     \centering
1630     \includegraphics[width=0.8\linewidth]{j-cut.png}
1631     \caption{J-cut to left and L-cut to right}
1632     \label{fig:j-cut}
1633 \end{figure}
1634
1635
1636 \subsection{Split View in Compositor Using the Drag Handle with Trim}%
1637 \label{sub:split_view_compositor_using_drag_trim}
1638
1639 The Trim Feature using the drag handle provides some good ways to
1640 view your video while editing.  The playback position in the
1641 compositor is updated live and the view in the compositor can be
1642 split so that in the left half of the compositor you can see the
1643 last frame of the left clip and in the right half the first frame of
1644 the right clip.  Dragging edits can not be extended past the
1645 beginning or the end.
1646
1647 First familiarize yourself with button operation; check your setup
1648 by executing the following step.  In the \texttt{Settings
1649   $\rightarrow$ Preferences $\rightarrow$ Interface} tab, Editing
1650 section, clicking on the edit boundaries can be set for Button 1, 2,
1651 3 as one of the following:
1652
1653 \textit{Ripple}; \textit{Roll}; \textit{Slip}; \textit{Slide};
1654 \textit{Edge} or \textit{No effect}
1655
1656 Now to use this feature, create a track with edits that have trims
1657 on the left and/or the right. The edit boundary can be modified
1658 using \textit{drag handles} at the boundary between the edits
1659 (figure~\ref{fig:trim-display}).
1660
1661 \begin{figure}[htpb]
1662   \centering
1663   \includegraphics[width=1\linewidth]{trim-display.png}
1664   \caption{Split compositor screen showing the result of the Trim feature}
1665   \label{fig:trim-display}
1666 \end{figure}
1667
1668 \begin{description}
1669 \item[Left Mouse Button (LMB) usage:] If you grab the edit
1670   handle from the right side, you will see a left arrow and dragging
1671   the boundary will modify the right edit playback starting time. If
1672   you grab the edit handle from the left side, you will see a right
1673   arrow and dragging the boundary will modify the left edit playback
1674   ending time. In both cases, the composer will show the edit endpoint
1675   of the changed edit.
1676 \item[Shift LMB usage:] The effect on the edits is the same as
1677   described above, but the composer will show a split screen of the
1678   left and right edits as they appear at the drag handle
1679   boundary. Dragging will only change one of the two images, since
1680   only one edit is being changed.
1681 \item[Middle Mouse Button (MMB) usage:] Both the left and the
1682   right edit ending/starting times are updated.  The image shown in
1683   the compositor will be drawn from the side of the drag grab, that is
1684   the left if it is grabbed from the left, and the right if it is
1685   grabbed from the right.
1686 \item[Shift MMB usage:] The effect on the edits is the same as
1687   described above, but the composer will show a split screen of the
1688   left and right edits as they appear at the drag handle boundary.
1689   Dragging will change both of the two images, since both edits are
1690   being changed.
1691 \item[Right Mouse Button (RMB) usage:] The start/end point of
1692   the current edit is moved, but the edit length is unchanged only one
1693   image changes since only one edit endpoint is view is updated.
1694 \item[Shift RMB usage:] The effect on the edits is the same as
1695   described above, but the composer will show a split screen of the
1696   left and right edits as they appear at the drag handle boundary.
1697   Dragging will only change one of the two images, since only one edit
1698   is being changed.
1699 \end{description}
1700
1701
1702 \subsection{Snapping while Cutting and Dragging}%
1703 \label{sub:snapping_cutting_dragging}
1704
1705 \paragraph{Cutting/Snapping edits} cuts from an edit handle to the
1706 insert point.  There are Edit Panel buttons which normally are used
1707 to move to the previous or next edit handle/label.
1708
1709 \begin{wrapfigure}[3]{r}{0.2\linewidth}
1710   \vspace{-2ex}
1711   \centering
1712   \includegraphics[width=0.7\linewidth]{snap.png}
1713 \end{wrapfigure}
1714
1715 They look like tags and the letter E on the menu bar and are
1716 oriented forward/backward.  These same buttons can be used to
1717 \textit{cut} from the insert pointer to the previous or next
1718 edit/label when the ctrl+alt keys are both pressed when the buttons
1719 are used.  They \textit{snap} off the media instead of doing the
1720 standard re-positioning.  This is useful to minimize the number of
1721 operations necessary to cut between edits/labels.
1722
1723 Instead of using the edit panel buttons, you can more easily use the
1724 following keyboard shortcuts to perform the same functions:
1725
1726 \begin{center}
1727   \begin{tabular}{lll}
1728     \toprule
1729     snap\_right\_edit & ctrl+alt+ '.' &\\
1730         snap\_left\_edit & ctrl+alt+ ',' &\\
1731     snap\_right\_label & ctrl+alt +shift '.' & shift+period is the > sign on US keyboards\\
1732     snap\_left\_label &  ctrl+alt +shift',' & shift+comma is the < sign on US keyboards\\
1733     \bottomrule
1734   \end{tabular}
1735 \end{center}
1736
1737 \paragraph{Drag Snapping} if you hold down the Ctrl + Alt keys while
1738 dragging using the mouse, once the clip gets near to an edit, a
1739 label, an in/out pointer or the start/end of the timeline, the
1740 dragged clip will snap next to that marker.  The 2 will now be
1741 exactly aligned with no gap and no overlap.  As you drag the clip
1742 close to one of the markers, when they are within a short distance
1743 they start to stick and stay that way until you move further away
1744 from that distance.  Also, the line will turn color from green to
1745 yellow while in the sticky phase.  In addition, this works for a
1746 plugin while dragging so that it will be the same length as the edit.
1747
1748
1749 \subsection{Nesting}%
1750 \label{sub:nesting}
1751
1752 \paragraph{Nested Assets} A nested asset is an EDL session that
1753 embeds an existing EDL session, all tracks, all plugins, editing,
1754 and effects into a media object that appears as one audio/video
1755 media object, no plugins, editing, or effects.  It is as if the
1756 existing EDL was rendered, and loaded in its place.  This has
1757 several interesting side effects.  First, you don’t have to render
1758 the entire media file to see any portion.  Second, it requires no
1759 rendering compute time or storage.  Third, it changes the precedence
1760 of the composer so that you get more control over the projection and
1761 automation, so that the results can be sent into another rendering
1762 step, not simply part of the current stack.  It groups the plugin
1763 stack in much the same way that an arithmetic expression is grouped
1764 by parenthesis.
1765
1766 The EDL session and the rendered output are visually equivalent.
1767 Nested assets allow for complex grouping and stacking of effects,
1768 and makes media access much more flexible.  This feature can be used
1769 recursively, that is, any number of sessions may be stacked and
1770 referenced as an asset, as long as all of the rendering resources
1771 are available.  Nested assets are added to the timeline by using the
1772 pulldown \texttt{File $\rightarrow$ Load files}\dots on the main
1773 menu and selecting the \textit{Insertion strategy} of \textit{Nest
1774   asset}. The file will be pasted into the timeline over the current
1775 selection or at the insertion point.
1776
1777 It is somewhat important to note that nested assets and nested clips
1778 will have index files automatically created.  These index files can
1779 start to clutter up your \texttt{\$HOME/.bcast5} directory with
1780 files named \texttt{Nested\_\#\#\#.idx} and you may want to
1781 periodically delete any index files which are no longer in use.
1782
1783 \paragraph{Nested Clips} It is also possible to create
1784 \textit{clips} and convert them to \textit{nested edl}.  This is
1785 done by first creating a clip using the standard cut, clipboard,
1786 paste, and/or edit panel buttons.  Now, using the resources
1787 \textit{clip} folder, select a clip to be nested, and use the right
1788 mouse button to select a clip.  This activates the clip popup menu.
1789 Select the \textit{Nest to media} menu item, and the clip will be
1790 converted to a \textit{Nested: Clip} and put in Media
1791 folder. Conversely, you can select a \textit{Nested: Clip}, use the
1792 \textit{EDL to clip} menu item, and the clip will be reverted to a
1793 \textit{Clip}.  This works similarly to the group / un-group editing
1794 features of many graphic design editing programs, but in this case
1795 the groups are rendered compositions (figure~\ref{fig:nesting}).
1796
1797 Nested clips can be proxied and when they are, the resulting files
1798 are placed in the user's \$HOME/Videos directory by default.  This
1799 can be modified by changing
1800
1801 \texttt{Settings $\rightarrow$ Preferences $\rightarrow$ Interface}
1802 tab, Nested Proxy Path.
1803
1804 \begin{figure}[htpb]
1805   \centering
1806   \includegraphics[width=1.0\linewidth]{nesting.png}
1807   \caption{Nested clips in Timeline and Resources window}
1808   \label{fig:nesting}
1809 \end{figure}
1810
1811 \paragraph{Usage Examples of Nested Clips}
1812
1813 \begin{description}
1814 \item[Example 1:] You want to make a flashback/rewind at the end
1815   of your video that represents a quick summary of the entire video in
1816   black and white. On he timeline, you have 60 seconds of edits with
1817   clips, cuts, zoom in, zoom out and any other edits. Now you want to
1818   get this 60 seconds \textit{compressed} to 10 seconds, play in
1819   reverse, and in black and white at the end of your video.  You would
1820   copy the 60 seconds in a clip, nest the clip in the Clip folder of
1821   the Resources window and drag it to the timeline. You will see only
1822   a clean clip without all of the edits that were used to create it
1823   because nesting display a clip without having to actually use the
1824   Render menu.  Now you can add a Reverse effect, Color3way plugin for
1825   black and white, and use the Speed auto to get the 60 seconds down
1826   to only 10 seconds.
1827 \item[Example 2:] You are working on a complex project with a
1828   team in a separate location. You create some sub projects, i.e.\
1829   sequences, that you or the team will use in the Master project to
1830   merge the sequences in the right order and to make the final color
1831   correction steps.
1832 \end{description}
1833
1834 In each of the examples you can see the benefit of nesting to create
1835 clean looking timelines because of the automatic rendering
1836 capability of nesting.
1837
1838
1839 \subsection{Copy/Paste clips/medias across Multiple Instances}%
1840 \label{sub:copy_paste_multiple_instances}
1841
1842 It is easy to copy/paste clips/media within a single instance of
1843 \CGG{} or across multiple instances.  The reason this works is
1844 because there are hidden X cut buffers and these are used to
1845 transmit EDL from 1 instance to another.
1846
1847 Steps to copy from a source timeline and paste to a target timeline:
1848
1849 \begin{enumerate}
1850 \item highlight a selection on the timeline in 1 instance of \CGG{}
1851 \item use the Copy icon (shortcut c) on the main menu bar to copy
1852   into a buffer
1853 \item move the pointer to another instance of \CGG{} and set an
1854   insertion point in its timeline
1855 \item use the Paste icon (shortcut v) to paste the clip to that
1856   other instance selection target
1857 \end{enumerate}
1858
1859
1860 \section[ShuttlePROv2 and ShuttleXpress Jog Wheels for Editing]{ShuttlePROv2 and ShuttleXpress Jog Wheels for Editing\protect\footnote{programmatic specifications from Eric Messick}}%
1861 \label{sec:shuttle_jog_wheels_editing}
1862
1863 The ShuttlePROv2 and ShuttleXpress are affordable jog wheels which
1864 can be useful for working with Cin, especially if you do a lot of
1865 playing forward/backward, fast/slow/normal, and single frames
1866 (figure~\ref{fig:shuttle}).
1867 %
1868 Directions for using the ShuttlePROv2 and the ShuttleXpress with
1869 \CGG{} are described next. These devices work by sending keystrokes
1870 used in Cin, corresponding to the shuttle action, to the keyboard
1871 buffer. The shuttle has been fully integrated into the \CGG{} code
1872 so that after the one initial setup, no further intervention is
1873 required.  The multi-speed outer wheel works the same and has the
1874 same number of S positions on both shuttles but the shuttle Xpress
1875 has only 5 keys.  Since the majority of user operations will most
1876 likely be with the use of the 2 wheels, the slightly smaller Xpress
1877 could be a better choice with its 5 easy to reach keys.  The Pro is
1878 approximately $4\times7$\,inches whereas the Xpress is about
1879 $4\times4$\,inches.
1880
1881 \begin{figure}[htpb]
1882   \centering
1883   \includegraphics[width=0.9\linewidth]{shuttle.png}
1884   \caption{ShuttlePROv2 and ShuttleXpress}
1885   \label{fig:shuttle}
1886 \end{figure}
1887
1888 The vendor supplied \textit{string} device names for the shuttles
1889 are currently:
1890
1891 \texttt{/dev/input/by-id/usb-Contour\_Design\_ShuttlePRO\_v2-event-if00}\\
1892 \texttt{/dev/input/by-id/usb-Contour\_Design\_ShuttleXpress-event-if00}\\
1893 \texttt{/dev/input/by-id/usb-Contour\_Design\_ShuttlePro-event-if00}
1894
1895 Only 1 necessary initial setup is required due to permission
1896 settings for non-root usage. As root, just copy a file that provides
1897 the necessary permissions to use the shuttle, then reboot, Example
1898 copy:
1899
1900 \begin{lstlisting}[style=sh]
1901 sudo cp {cindat_path}/doc/99-ShuttlePRO.rules /etc/udev/rules.d/
1902 \end{lstlisting}
1903
1904 then the next time after you reboot, the permissions should be
1905 correct. This file only needs to contain one of the following lines
1906 depending on which shuttle version you have/use, but all will be in
1907 the file.
1908
1909 \begin{lstlisting}[style=sh]
1910 # for  newer PRO model
1911 ATTRS{name}=="Contour Design ShuttlePro" MODE="0644"
1912 # for older PRO model
1913 ATTRS{name}=="Contour Design ShuttlePRO v2" MODE="0644"
1914 # for the Xpress model
1915 ATTRS{name}=="Contour Design ShuttleXpress" MODE="0644"
1916 SUBSYSTEMS=="usb", ATTRS{idVendor}=="0b33", ATTRS{idProduct}=="0020", MODE="0666"
1917 SUBSYSTEMS=="usb", ATTRS{idVendor}=="0b33", ATTRS{idProduct}=="0030", MODE="0666"
1918 \end{lstlisting}
1919
1920 If you swap your shuttle, for example upgrade from an Xpress to a
1921 PROv2, just stop Cin, unplug the original shuttle, plug in the
1922 replacement shuttle, and restart Cin.  If you start the \CGG{}
1923 program and the shuttle does not function as before, stop \CGG{} and
1924 then simply unplug it and plug it in again.  There are a couple of
1925 reasons why it may stop functioning.  One is because \CGG{} was not
1926 stopped with the usual Quit command and the shuttle was improperly
1927 shut down when there was a crash.  The other possibility is that a
1928 static discharge occurred in the area.
1929
1930 A default shuttlerc file is automatically used when a shuttle device
1931 is plugged in when Cin is started. This file sets up the key
1932 bindings for \CGG{} to use. You can override any default settings by
1933 having a local file in your \texttt{\$HOME} directory, named
1934 \texttt{.shuttlerc} to reflect your personal preferences.
1935
1936
1937 \subsection{How to Modify the Default Key Settings}%
1938 \label{sub:modify_default_key_settings}
1939
1940 Detailed information on how to modify your local \texttt{.shuttlerc}
1941 file is described next, but if you need help you can request more
1942 information in the forum at {\small
1943   \url{https://cinelerra-gg.org}}. In the \texttt{shuttlerc} file, a
1944 \# always represents a comment and blank lines are ignored.  The
1945 first thing you must do is copy the system supplied
1946 \texttt{shuttlerc} file to your \texttt{\$HOME} directory and rename
1947 it as \texttt{.shuttlerc} (with a period).
1948
1949 The \texttt{shuttlerc} file has sections that in the case of \CGG{},
1950 represent different windows allowing you to set the keys, K1-K15 for
1951 the Pro and K5-K9 for the Xpress, the shuttle wheel positions of
1952 S0/S1/S-1 for stop, S2 through S7 for wheeling to the right, and S-7
1953 through S-2 for wheeling to the left for reverse.  Then there is JR
1954 to jog right (clockwise) and JL to jog left (counter-clockwise) for
1955 the inner smaller wheel for single frame movement.  See the key
1956 arrangement on a later page for location of the keys for each of the
1957 two different shuttles.
1958
1959 The sections are surrounded by brackets for windows such as \CGG{}
1960 (the main window), Viewer, Composer, Resources, Load, and Default.
1961 If you want the keys to be defined the same in every window, you can
1962 bracket each window on lines one right after the other and then just
1963 define one set of keys.  The other lines will have the key
1964 name/shuttle position followed by its assigned value.  The values
1965 you use for the keys are usually shortcuts and have to be
1966 operationally defined within \CGG{}. For example, the shortcut “f”
1967 to go fullscreen is defined so can be used; however the shortcut “h”
1968 is not defined so will not do anything.  You can check the file,
1969 shortcuts.html, for some options to use.
1970
1971 Next are a few actual examples from the default
1972 \texttt{{cindat\_path}/shuttlerc} file.
1973
1974 The next brackets represent sections. Default, Resources, Load
1975 windows all use the same key values.
1976
1977 \begin{lstlisting}[style=sh]
1978 [Default]
1979 [Resources]
1980 [Load]
1981 K5 XK_Home
1982 K6 XK_Button_1 # same as mouse button 1
1983 K7 XK_Button_2 # same operation as mouse button 2
1984 K8 XK_Button_3
1985 K9 XK_End
1986 # for example, in the Load menu, use scroll up to get to the next file name
1987 JL XK_Scroll_Up
1988 JR XK_Scroll_Down
1989 \end{lstlisting}
1990
1991 Cinelerra with brackets around it next, is the section with some key
1992 definitions for the main window.
1993
1994 \begin{lstlisting}[style=sh]
1995 [Cinelerra]
1996
1997 # Most useful functions have to be on K5-K9
1998 # because Xpress only has 5 keys
1999 K5 XK_Home      # Beginning
2000 K6 XK_KP_6      # Reverse, or if playing Stop
2001 K7 XK_KP_0      # Stop
2002 K8 XK_KP_3      # Play, or if playing Stop
2003 K9 XK_End       # End
2004 ...
2005 S-7 REV_16      # Next 6 are reverse keys
2006 S-6 REV_8       #  the number on the end represents speed
2007 S-5 REV_4       #  number can be decimal up to 64
2008 S-4 REV_2       #  2 means 2x or double speed
2009 S-3 REV_1
2010 S-2 REV_0.5     #  0.5 represents 1/2 speed
2011 S-1 XK_KP_0     # Because the Shuttle does not generate S0,
2012                 #   have to use S-1
2013 S0  XK_KP_0     # Hardware does not generate S0
2014 S1  XK_KP_0     # Because the Shuttle does not generate S0,
2015                 #   have to use S1
2016 S2  FWD_0.5
2017 S3  FWD_1
2018 ...
2019 \end{lstlisting}
2020
2021 An explanation for the above REV and FWD key symbol values is
2022 necessary to facilitate user preferences.  Obviously REV stands for
2023 reverse and FWD for forward.  You can set any speed up to and
2024 including 64x (that is, 64 times the normal speed) on any of the S
2025 keys.  First in the line is the key name such as S-3 and then the
2026 key direction of FWD or REV followed by the symbol for underscore
2027 (\_) and then the numerical value to use.  For example, if you want
2028 the $5^{th}$ forward position, S5, to play 10$\frac{1}{2}$ times
2029 faster, you would use the statement \texttt{S5 FWD\_10.5}.  Integer
2030 or decimal numbers are legal.
2031
2032 For the Viewer, you may want keys defined to do a Splice or an
2033 Overwrite so define differently.  Note that assignments that contain
2034 single character letters must be enclosed in quotes.
2035
2036 \begin{lstlisting}[style=sh]
2037 [Viewer]
2038 # Splice - Viewer only; may be defined
2039 # differently than Composer or Cinelerra
2040 K2 "v"
2041 K4 "b"          # Overwrite
2042 \end{lstlisting}
2043
2044 To change any key value to an alternative value, just edit the file
2045 and make the changes.  Besides just keys and alphabetic letters of
2046 numbers, you can also use any \CGG{} value that contains the
2047 combination with Shift, Alt, and Ctrl.  For keys that are not
2048 printable characters, you can look up the symbol name to use for a
2049 specific operation in the file called:
2050 \texttt{/usr/include/X11/keysymdef.h}. Some examples:
2051
2052 \begin{lstlisting}[style=sh]
2053 K10 Alt-XK_Left   # Go to previous edit \\
2054 K13 Ctrl-XK_Right # Go to next label
2055 \end{lstlisting}
2056
2057 For sequences of one or more \textit{printable} characters, you can
2058 just enclose them in double quotes.  For example in the
2059 \texttt{[Composer]} section, to go into or out of fullscreen mode,
2060 automatically start playing and put a label there, you could define
2061 a key like this:  K7 “f~l” - that is printable character f, a space,
2062 and printable character l.
2063
2064 After modifying \texttt{.shuttlerc}, the next time you use the
2065 shuttle, your changes will automatically take affect without even
2066 having to stop and restart Cin.  However, the first thing to try if
2067 problems is to stop \CGG{}, unplug the shuttle, wait a few seconds,
2068 plug it in again, and then restart cin.  If for some reason, the
2069 shuttle keys still do not work after that, you may have an incorrect
2070 setup and you will have to correct that first.  For example, if you
2071 define S5 twice within the \CGG{} setup, it will fail.  It is
2072 suggested that if you make changes, you should initially uncomment
2073 DEBUG in the \texttt{.shuttlerc} file and start up \CGG{} from a
2074 terminal window so that you can make sure it is working and has no
2075 output errors.  An error might look like:
2076
2077 \begin{lstlisting}[style=sh]
2078 dupl key name: [Cinelerra]K1
2079 shuttle config err file: /root/.shuttlerc, line:37
2080 \end{lstlisting}
2081
2082 Keep in mind when changing the values, that the ShuttleXpress has
2083 fewer buttons so if you define K1 it will only work for the
2084 ShuttlePro.
2085
2086 Any time you are having trouble with your shuttle, you can copy the
2087 default \texttt{shuttlerc} file from
2088 \texttt{{cindat\_path}/shuttlerc} to your local \texttt{.shuttlerc}
2089 file, and edit that to\ switch to DEBUG mode by removing the \#
2090 comment from the DEBUG line.  But you will have to have started Cin
2091 from a terminal window to see the key values. The first time you use
2092 the shuttle or after you change the file, the current assignments
2093 will show in the terminal window so will look something like:
2094
2095 \begin{lstlisting}[style=sh]
2096 [Cinelerra] # 1
2097 K5[D]: XK_KP_0/U
2098 K5[U]: XK_KP_0/U
2099 \end{lstlisting}
2100
2101 When you are in DEBUG mode and are just working away, what you will
2102 see is something like this:
2103
2104 \begin{lstlisting}[style=sh]
2105 key: 0058 1
2106 key: 0055 0
2107 \end{lstlisting}
2108
2109 or:
2110
2111 \begin{lstlisting}[style=sh]
2112 shuttle:  00 00 00 00 00
2113 key: XK_Home 0
2114 \end{lstlisting}
2115
2116 When you change the focus from one window to another, you will see
2117 something like this:
2118
2119 \begin{lstlisting}[style=sh]
2120 new focus: 04c00137
2121 new translation: Viewer
2122 key: 0059 1
2123 \end{lstlisting}
2124
2125 You can also set an environment variable to temporarily use an
2126 alternative shuttle configuration file for testing as in:
2127
2128 \begin{lstlisting}[style=sh]
2129 export SHUTTLE_CONFIG_FILE=/tmp/shuttlerc_test
2130 \end{lstlisting}
2131
2132 The shuttle wheel occasionally will not \textit{stop} after you have
2133 wheeled it to play forward.  This is a documented known problem from
2134 the original code so you just have to joggle it a little in the
2135 other direction and then it will stop.  S0 does not always generate
2136 a signal to do a stop and that is why S1 and S-1 have to be used to
2137 relay the stop instead.  Also, if you have a fullscreen Composer or
2138 Viewer up and the regular one also, the fullscreen takes precedence.
2139
2140
2141 \subsection{Troubleshooting auxilliary information}%
2142 \label{sub:troubleshooting_auxilliary_information}
2143
2144 In order to see if you hardware was recognized by the operating
2145 system, key in:
2146
2147 \begin{lstlisting}[style=sh]
2148 lsusb -v -d 0b33:0030  # for the Shuttle Pro or PROv2\\
2149 lsusb -v -d 0b33:0020  # for the Shuttle Xpress
2150 \end{lstlisting}
2151
2152 \paragraph{Note 1} Currently, the keys K14 and K15 do not function
2153 on the \textit{Contour Design ShuttlePro} but do on the
2154 \textit{Contour Design ShuttlePRO v2} due to a Report Descriptor
2155 error.  You can workaround this by uncommenting \texttt{USB\_DIRECT}
2156 in your local \texttt{.shuttlerc} file.  This directly uses libusb
2157 rather than the generic Linux hid driver.  \texttt{USB\_DIRECT}
2158 works for any of the currently tested shuttles.
2159
2160 \paragraph{Note 2} If you are not sure if your shuttle is fully
2161 functional, you can verify that the hardware device has been seen by
2162 your operating system with this procedure.
2163 \begin{enumerate}
2164 \item From a terminal window as an ordinary user key in: lsusb (the
2165   first character is a lower case L for list).  You will see
2166   something like the following depending on which usb device you
2167   have the ShuttlePro plugged into:
2168 \begin{lstlisting}[style=sh]
2169 Bus 003 Device 002: ID 0b33:0030 Contour Design, Inc. ShuttlePro v2
2170 \end{lstlisting}
2171 \item To make sure you have usbmon installed key in:
2172 \begin{lstlisting}[style=sh]
2173 sudo modprobe usbmon
2174 \end{lstlisting}
2175 \item Next key in the following:
2176 \begin{lstlisting}[style=sh]
2177 sudo od -tx1 /dev/usbmon3
2178 \end{lstlisting}
2179   where the last 3 is the same \# as the Bus in above.  If it lists
2180   \texttt{Bus 002}, then use \texttt{/dev/usbmon2} instead.
2181 \item Now with focus in that same terminal window, press any shuttle
2182   key just to see what happens and should see about 12 lines similar
2183   to these below -- a new set every time you press a single key or
2184   the wheel.  The lines are usually not important, just the fact
2185   that you get a response is.  However if you have multiple devices
2186   on the same bus, you will get responses from any and all of them.
2187   Attempt to isolate your shuttle by temporarily unplugging
2188   unnecessary devices on the same bus or plug the shuttle into a
2189   different usb port that has fewer devices.
2190     \begin{lstlisting}[style=sh]
2191 0000000 80 70 99 75 53 8c ff ff 43 01 81 02 03 00 2d 00
2192 0000020 4e 61 5c 5c 00 00 00 00 8d 2c 06 00 00 00 00 00
2193 0000040 05 00 00 00 05 00 00 00 00 00 00 00 00 00 00 00
2194 0000060 01 ff 00 00 00 80 70 99 75 53 8c ff ff 53 01 81
2195 0000100 02 03 00 2d 3c 4e 61 5c 5c 00 00 00 00 b1 2c 06
2196 0000120 00 8d ff ff ff 05 00 00 00 00 00 00 00 00 00 00
2197 0000140 00 00 00 00 00 80 70 99 75 53 8c ff ff 43 01 81
2198 0000160 02 03 00 2d 00 4e 61 5c 5c 00 00 00 00 3d d7 09
2199 0000200 00 00 00 00 00 05 00 00 00 05 00 00 00 00 00 00
2200 0000220 00 00 00 00 00 00 ff 00 00 00 80 70 99 75 53 8c
2201 0000240 ff ff 53 01 81 02 03 00 2d 3c 4e 61 5c 5c 00 00
2202 0000260 00 00 64 d7 09 00 8d ff ff ff 05 00 00 00 00 00
2203 \end{lstlisting}
2204 \item Next press the key that you want to verify is functioning --
2205   if no new lines show up, then the key is non-functional so there
2206   is a hardware problem.  If you get output, then perhaps there is a
2207   problem with your software setup.
2208 \item Use Ctrl-C on the terminal window when done to get back to the
2209   prompt.
2210 \end{enumerate}
2211
2212 \paragraph{Note 3} Another method for testing to make sure your
2213 model of the Shuttle does not have different key definitions than
2214 the one that \CGG{} was coded for is to do the following.
2215
2216 \begin{enumerate}
2217 \item Locate the shudmp.C program in your \CGG{} directory.
2218 \item Compile that with the command:  \texttt{c++ shdmp.C -o shudmp}
2219 \item Make the file executable with the command:  \texttt{chmod +x shudmp}
2220 \item Execute:
2221 \begin{lstlisting}[style=sh]
2222 sudo ./shdmp /dev/input/by-id/usb-Contour\_Design\_ShuttlePro-event-if00 # substitute your shuttle
2223 \end{lstlisting}
2224 \end{enumerate}
2225
2226 Then press your shuttle key that is having problems and check the
2227 results.  They should look like:
2228
2229 \begin{lstlisting}[style=sh,caption={Example for K7}]
2230 event: (4, 4, 0x90007)  #The last number, 7, is the expected Key number.
2231 event: (1, 262, 0x1)
2232 event: (0, 0, 0x0)
2233 event: (4, 4, 0x90007)
2234 event: (1, 262, 0x0)
2235 event: (0, 0, 0x0)
2236 \end{lstlisting}
2237
2238 \begin{lstlisting}[style=sh,caption={Example for K15}]
2239 Example for K15:
2240 event: (4, 4, 0x9000f)  #The last number f is 15 in hexadecimal and is the expected Key.
2241 event: (1, 270, 0x1)
2242 event: (0, 0, 0x0)
2243 event: (4, 4, 0x9000f)
2244 event: (1, 270, 0x0)
2245 event: (0, 0, 0x0)
2246 \end{lstlisting}
2247
2248 When done, you will have to Ctrl-C to get out of the program.
2249
2250 \paragraph{Note 4} For developers, if you have a pre-UEFI Secure
2251 Boot kernel it is also possible to do the following for further in
2252 depth testing:
2253
2254 \begin{lstlisting}[style=sh]
2255 ls /sys/kernel/debug/hid   \# to locate numerical value of the shuttle, e.g. 0003:0B33.0030.0006
2256 cat "/sys/kernel/debug/hid/0003:0B33.0030.0006/rdesc"  # substitute your own numerical value
2257 cat "/sys/kernel/debug/hid/0003:0B33.0030.0006/events"  # press keys to see the results
2258 \end{lstlisting}
2259 %\begin{enumerate}
2260     %\item \texttt{ls /sys/kernel/debug/hid   \# to locate numerical value of the shuttle, e.g. 0003:0B33.0030.0006}
2261     %\item \texttt{cat “/sys/kernel/debug/hid/0003:0B33.0030.0006/rdesc”    \# substitute your own numerical value}
2262     %\item \texttt{cat “/sys/kernel/debug/hid/0003:0B33.0030.0006/events”  \# press keys to see the results}
2263 %\end{enumerate}
2264
2265 \subsection{Shuttle key default arrangement for \CGG{} / Composer / Viewer:}%
2266 \label{sub:shuttle_key_default_cinelerra}
2267
2268 The following is the default setting for the ShuttlePROv2 and
2269 ShuttleXpress (table~\ref{tab:shuttleprov2} and
2270 table~\ref{tab:xpress}):
2271
2272 \renewcommand{\arraystretch}{1.15}
2273 \begin{table}[ht]
2274   \caption{ShuttlePROv2 key default arrangement for \CGG{} /
2275     Composer / Viewer}
2276   \label{tab:shuttleprov2}
2277   % Tell table to adjust font to fix on the page using \resize
2278   \resizebox{\textwidth}{!}{%
2279     \begin{tabular}{c c c c c c c}
2280       \toprule
2281       K1 & K2 & & K3 & K4 & &\\
2282       Label & Future use & & Future use & Clip & &\\
2283          & Splice (viewer) & & Copy  & Overwrite (viewer) & &\\
2284       \midrule
2285       K5 & K6 & K7 & K8 & K9 & &\\
2286       Home & Reverse & Stop & Play & End & &\\
2287          & & Fullscreen & & & &\\
2288          & & (viewer / compositor) & & & &\\
2289       \midrule
2290       Home(Defaults) & MouseBtn1(D) & MouseBtn2(D) & MouseBtn3(D) & End(Defaults) & &\\
2291       \midrule
2292       \multicolumn{7}{c}{Shuttle Outer Wheel}\\
2293       \multicolumn{7}{c}{Play forward (first row) or Play reverse (second row)}\\
2294       S1=Stop  & S2=1/2 & S3=Normal  & S4=2x & S5=4x & S6=8x & S7=16x\\
2295       S-1=Stop &  S-2=1/2 & S-3=Normal & S-4=2x & S-5=4x & S-6=8x & S-7=16x\\
2296       \midrule
2297       K14 & & Jog Left & (Inner Wheel) & Jog Right & & K15\\
2298       Toggle In & & Frame reverse & & Frame forward & & Toggle Out\\
2299          & & Scroll up(Defaults) & & Scroll down(Defaults) & &\\
2300       \midrule
2301          & & K10  & &  K11 & &\\
2302          & & Previous Edit & & Next Edit & &\\
2303          & & Future Use(Viewer) & & Future Use(Viewer) & &\\
2304       \midrule
2305          & & K12  & &  K13 & &\\
2306          & & Previous Edit & & Next Edit & &\\
2307          & & Previous Label & & Next label & &\\
2308       \bottomrule
2309     \end{tabular}}
2310 \end{table}
2311
2312 \begin{table}[ht]
2313   \caption{ShuttleXpress key default arrangement for \CGG{} / Composer / Viewer}
2314   \label{tab:xpress}
2315   % Tell table to adjust font to fix on the page using \resize
2316   \resizebox{\textwidth}{!}{%
2317     \begin{tabular}{c c c c c c c}
2318       \toprule
2319       K5 & K6 & K7 & K8 & K9 & &\\
2320       Home & Reverse & Stop & Play & End & &\\
2321          &         & Fullscreen & & & &\\
2322          &         & (viewer / compositor) & & & &\\
2323       \midrule
2324       Home(Defaults) & MouseBtn1(D) & MouseBtn2(D) & MouseBtn3(D) & End(Defaults) & &\\
2325       \midrule
2326       \multicolumn{7}{c}{Shuttle Outer Wheel}\\
2327       \multicolumn{7}{c}{Play forward (first row) or Play reverse (second row)}\\
2328       S1=Stop &   S2=1/2 &   S3=Normal  &  S4=2x  &  S5=4x  &  S6=8x &   S7=16x\\
2329       S-1=Stop &  S-2=1/2 &  S-3=Normal &  S-4=2x &  S-5=4x &  S-6=8x  & S-7=16x\\
2330       \midrule
2331          & & Jog Left & (Inner Wheel) & Jog Right & &\\
2332          & & Frame reverse & & Frame forward & &\\
2333          & & Scroll up(Defaults) & & Scroll down(Defaults) & &\\
2334       \bottomrule
2335     \end{tabular}}
2336 \end{table}
2337
2338
2339 %%% Local Variables:
2340 %%% mode: latex
2341 %%% TeX-master: "../CinelerraGG_Manual"
2342 %%% End: