dd36a8933a032238a7be5dabc5837404329452fc
[goodguy/cin-manual-latex.git] / parts / Introduction.tex
1 \chapter*{Introduction}%
2 \label{cha:introduction}
3 \addcontentsline{toc}{chapter}{Introduction}
4
5 \CGG{} is a software program NLE, Non-Linear Editor, that provides a
6 way to edit, record, and play audio or video media.  It can also be
7 used to transcode media from one format to another or to correct and
8 retouch photos. \CGG{} currently runs on many Linux operating system
9 distributions.
10
11 This manual covers the \CGG{} \INF{} version.  Information
12 contained in this manual is a description of the \CGG{} program
13 usage and was obtained from various sources to include different
14 communication channels, emails, common knowledge, and write-ups as
15 new features were added.  The origin of this manual has always been present in the \CGG{} source code in the doc subdirectory as cinelerral.html and can be found at: \href{https://git.cinelerra-gg.org/git/?p=goodguy/cinelerra.git;a=blob;f=cinelerra-5.1/doc/cinelerra.html;h=f7742b50255d5412af5c4941c5be52bb556d99cd;hb=7fd85fb66168f6b518c5f2d73e04036e87faa0e1}{Secrets of Cinelerra} by the original author Adam Williams.
16 Over time his manual was enhanced by Alex Ferrer with Adam's and Alex's work becoming the
17 baseline for the CV manual and subsequently that combined work was mostly incorporated into this manual.
18 Interestingly, starting from Secrets of Cinelerra which is about 122 full pages, to the CV manual
19 of about 212 pages at the time it was incorporated here, this manual has now grown to over 780 pages.
20 More information about the manual and source code contributions can be found here: \nameref{cha:contributors}.
21
22 The author of the original
23 \textsc{Cinelerra} program, Adam Williams, as well as many different
24 people have modified the \textsc{Cinelerra} source code over the
25 years.  William Morrow used Adam's source code as the  baseline and merged all of the known changes at the time, whenever
26 possible, into this \CGG{} version and had been adding numerous
27 features, updates, and fixes.
28
29 {\small \textbf{NOTE1:} This manual is a Work in Progress: monthly parts are added to cover the new features introduced in \CGG{}. The texts are continuously revised to make them clearer and more complete. In order to have a better and better product we rely on the suggestions and criticisms of our readers. Do not hesitate to let us know your opinions. For this continuous variability, we recommend that you download the manual at least once a month, during the release of \CGG{}, so that its content is always up to date.
30
31 \textbf{NOTE2}: this manual, in the HTML version present on the website, is the base of the \textit{Context Help} that can be called inside the program. For each window, button and plugins we can open the relative web page of the manual with \texttt{ALT/h} keys. More details in \nameref{sec:help_context_help}.}
32
33 The \CGG{} software is under
34 \href{https://www.gnu.org/licenses/old-licenses/gpl-2.0-standalone.html}{GPLv2+}
35 license. A notice of this is included in the software and shown here.
36
37 \begin{lstlisting}[basicstyle=\footnotesize]
38 *
39 * CINELERRA
40 * Copyright (C) 1997-2012 Adam Williams <broadcast at earthling dot net>
41 *
42 * This program is free software; you can redistribute it and/or modify
43 * it under the terms of the GNU General Public License as published by
44 * the Free Software Foundation; either version 2 of the License, or
45 * (at your option) any later version.
46 *
47 * This program is distributed in the hope that it will be useful,
48 * but WITHOUT ANY WARRANTY; without even the implied warranty of
49 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
50 * GNU General Public License for more details.
51 *
52 * You should have received a copy of the GNU General Public License
53 * along with this program; if not, write to the Free Software
54 * Foundation, Inc., 59 Temple Place, Suite 330, Boston
55 \end{lstlisting}
56
57 \section*{\CGG{} Overview}%
58 \label{sec:cinelerra_overview}
59
60 Presented briefly here is an overview of \CGGI{} and information
61 provided in this manual. The \GG{} version of \textsc{Cinelerra} has
62 been improved for \emph{stability}, \emph{modernized} to accommodate
63 the \emph{current state} of Linux software, enhanced with additional
64 \emph{basic features}, and enriched with \emph{new features}
65 imagined by dedicated users and then implemented by professional
66 programmers.
67
68 \begin{description}
69     \item[Website] \href{https://www.cinelerra-gg.org}{https://www.cinelerra-gg.org}\\
70         The website for the cinelerra-gg software is a good place to start for information, help, and documentation.
71         It is professionally maintained and continuously updated with more language
72         translations ongoing.
73     \item[Stability]~\\
74         Software programs that \textit{just work} are a \#1 priority in order to be of use for producing quality videos.
75         A large amount of time has been invested in debugging problems and resolving crashes.
76         And in a continuous process to do so, a chapter on Troubleshooting is included in order to easily provide sufficient information for users to capture issues and crashes so that they can be analyzed and quickly fixed to avoid repeat problems.
77     \item[Modernization]~\\
78         Artistic creativity has been applied to modernize the \CGG{} plugin icons for video and audio to even include the ffmpeg plugins.
79         The Cinfinity set of plugin icons come in square or roundish versions --- your choice.
80         In keeping up with the current expectation of users for a certain \textit{look and feel}, 2 very modern recent theme additions, Cakewalk and Neophyte, provide alternatives to the already existing 9 themes.
81         These 11 themes give the user the choice to get the look they like best for their own eyes.
82     \item[Current and up-to-date]~\\
83         For today’s software, included thirdparty libraries are kept up to date in a timely manner and effort is made to always use a relatively recent version of FFmpeg, if not the latest.
84         This is a big deal because there is a whole set of separate programmers working on these libraries continuously and diligently to cover all of the old and newly created formats.
85         Thus \CGG{} programmers can be dedicated to working solely on \CGG{} rather than just trying to keep up with many formats.
86     \item[FFmpeg usage integration]~\\
87         By using FFmpeg with \CGG{}, there is the advantage that users can directly convert videos via pre- and post-processing, without the need for command lines to be executed manually before or afterwards.
88     \item[Import and Export formats]~\\
89         Listed here are only a few of the supported Import and Export formats:
90         \begin{itemize}
91             \item  several standard native formats, such as mpeg, ac3, flac, exr and jpeg/png/ppm/tiff sequences
92             \item FFmpeg’s over 400 decoders and 150 encoders accessible from within \CGG{} to include:
93                 mp4, mkv, mpeg, mov, m2ts, mp3, dvd, ogg, theora, prores, tiff, webm, flac, opus, vorbis,
94                 quicktime (div, dnxhd, jpeg, mjpeg, mp4, rle, v308, v410), h264 \& h265 usage, avc, hevc,
95                 and recently released AV1 and WebP
96             \item raw image format for over 700 supported cameras, courtesy Dave Coffin's DCraw
97         \end{itemize}
98
99         \item[Standard Features]~\\
100             \begin{itemize}
101                 \item Program window for video and audio tracks, navigation, popups, playing and seeking functions.
102                 \item Editing via track manipulation with either drag and drop editing or cut and paste editing.
103                 \item  Patchbay tools: fader, gang, arm, enable output, expanders, mixers, and blending operations.
104                 \item Undo and Redo capability for many editing functions.
105                 \item Drag handle functionality for Ripple, Roll, Slip, Slide, Edge, and No Effect.
106                 \item Dynamic Keyframe support with curve, toggle, automatic, compositor, and editing capabilities.
107                 \item Proxy editing support to speed up editing for large formatted files on slower computers.
108                 \item Compositor window with masking, zooming, cropping, projector and camera capabilities.
109                 \item Viewing window for quickly viewing/playing audio, video, clips, or proxies.
110                 \item Resources window with Media, Proxy, Clips, Video and Audio Effects/Transitions.
111                 \item User defined bins/folders for a project.
112                 \item Expandable Video/Audio effects for grouping selections such as Color Correction or Motion plugins.
113                 \item Included are over 400 Plugins – audio and video native, FFmpeg, plus expandable to include others.
114                 \item LV2 and Ladspa plugins audio support.
115                 \item Mouse over Media or Proxy folders to get a 5 second real time preview of the media.
116                 \item Single or multiple files rendering; background rendering, batch rendering, command line rendering, and use of a Render Farm to take advantage of multiple computer CPUs.
117                 \item Numerous pre-defined output formats automatically available and allowance for user-defined formats.
118                 \item Capture and Recording capability to include Broadcast TV recording, editing, and viewing.
119                 \item Hundreds of Shortcuts are defined which are easily viewed using the shell commands pulldown.
120                 \item Context Help in the program for numerous window, menu, GUI elements, buttons, and other items via the user's configured web browser.
121                 \item PorterDuff operations are available in the patchbay of the main timeline window for alpha blending.
122                 \item Color correction + 8-bit and 10-bit color space.
123                 \item Up to 8K video supported.
124                 \item ShuttlePro and ShuttleXpress functionality.
125                 \item International language support.
126                 \item Multi-screen, Multi-viewers, Multi-session, Multi-pane capability.
127                 \item Menu bar shell commands with reference to some manuals and user-definable additions.
128                 \item Video stabilization, Motion tracking, Motion Graphics.
129                 \item Blade Cut/Hard Edges, Snap/Cut editing and Snap Dragging.
130                 \item OpenGL support as well as Direct X11 speedup.
131                 \item Advanced Trim Features and Grouping.
132                 \item Asset and Title colors selection including Alpha slider adjustment.
133                 \item Scaling preference for any monitor size and HiDPI to support 4K monitors.
134             \end{itemize}
135             \item[Innovative New Features]~\\
136                 \begin{itemize}
137                     \item Inter-View mode as invented through a collaborative effort by a user and the developer.
138                     \item Proxy settings for large formatted media with the coveted Scalar option and proxy quick switch.  Includes a 1:1 proxy setting used to save CPU time with a reduced bitrate.
139                     \item Multiple cameras / Mixer Viewer with the number of cameras only limited by the resources on the user’s computer (on a large system, 50 are known to work).
140                     \item Audio/Video sync via waveforms, or timecodes to include syncing with externally recorded audio.
141                     \item DVD/bluray creation, editing, and copying for non-commercial media greatly enhanced for usability.
142                     \item Title plugin virtually unlimited script size with many changeable attributes such as size, blink, color.
143                     \item Motion Graphics using the Sketcher plugin to create elements such as ellipses, rectangles and shapes for simpler motion graphics.
144                     \item Open EDL for editing clips, nested clips, and xml files while working on a Project.
145                     \item File by Reference; To be able to modify the original source during editing (which in this case, becomes destructive).
146                     \item The Vectorscope option in the Videoscope plugin allows for the use of any number of user-supplied grid patterns as an Overlay.
147                     \item Hardware acceleration with vaapi and vdpau for computers with graphics hardware meeting certain criteria.
148                     \item Bump Autos is a new type of keyframe automation that allows you to easily create and manage keyframes intervals in Speed, Fade and Camera/Projector-XYZ curves.
149                     \item One of the only Linux NLEs that handles and renders RGB, 444, 422 and 420 at 8, 10 and more-bit footage as opposed to working in only 8-bit (which introduces some artifacts like banding); both in Full Range Color and limited Broadcast Range Color.
150                 \end{itemize}
151 \end{description}
152
153 \paragraph{NOTE:}  In \CGG{} the editing workflow is different from the workflow used by other NLEs. It is less intuitive and requires us to think first about what we want to achieve. In fact, it is a workflow based on the tracks in their entirety and not on individual clips. See \href{https://cinelerra-gg.org/download/Workflow.pdf}{workflow is different!} for a comparison with the Adobe Premiere Pro workflow.
154
155 \section*{Chapters Overview}%
156 \label{sec:chapters_overview}
157
158 Below is listed a brief overview of each chapter to help you to decide which chapters you should pay the most attention to and read more thoroughly.
159 And which chapters are important for beginning to learn to use \CGG{}. At the end of the descriptions is a list of the sections to read for beginners.
160
161 \begin{description}
162     \item[Chapter~\ref{cha:Installation} ] \nameref{cha:Installation}.
163
164         If you just want to get started using the program, you can safely skip this chapter and instead go to:
165         {\small \url{https://www.cinelerra-gg.org}}
166         and simply download a pre-built linux version for your Operating System. If you would like to do your own builds so that you always have the latest, refer to this chapter to learn how.
167         But if you are already familiar with doing your own builds, you can just refer to this chapter when you encounter issues.
168     \item[Chapter~\ref{cha:the_4_windows} ] \nameref{cha:the_4_windows}.
169
170         It is important to understand the window setup in \CGG{} and what each of them is used for.
171         In addition this chapter covers some basic navigation functions that you will need to know.
172         However, if you have used an NLE before and don’t mind experimenting to learn how to execute certain functions, probably there is no need to peruse this chapter.
173     \item[Chapter~\ref{cha:project_and_media_attributes}] \nameref{cha:project_and_media_attributes}.
174
175         This chapter is helpful for basic understanding of setting up your session but it can easily be skipped.
176
177     \item[Chapter~\ref{cha:load_save_and_the_EDL}] \nameref{cha:load_save_and_the_EDL}.
178
179                 The EDL is the list of changes that \CGG{} would make to the original media in order to produce the desired output
180         Since this is important to not losing your work, you should read this chapter for some basic usage concepts and for some lesser used functions that may come in handy.
181         Besides how to Load and Save files, there is also information on using raw camera formats.
182         Helpful hints on working with image sequences, such as a bunch of pictures from your camera all loaded at once, is a time saver. Understanding that the EDL is the list of changes that would be made to the original media in order to produce the desired output is key to ensuring that that media remains intact.
183         
184     \item[Chapter~\ref{cha:editing}] \nameref{cha:editing}.
185
186         New and occasional users will find it necessary to read this chapter. However, you can decide which editing mode you prefer and concentrate on reading that section.
187         Even seasoned users will want to read this chapter in order to take advantage of features that have been newly implemented or may be less familiar due to infrequent usage.
188         Anyone who wants the editing capabilities that comes with use of the Shuttle Jog Wheel, will initially need to read that section to become familiar with its usage.
189         
190      \item[Chapter~\ref{cha:advanced_editing}] \nameref{cha:advanced_editing}.
191      
192         Many tools for the advanced editing: Proxy, Nesting; Trimming; Multi-Cam; Audio/Video sync and Transcoding. \CGG{} offers many possibilities and sophisticated alternatives for editing, but they are complex tools. Here we deepen their knowledge and use.
193
194     \item[Chapter~\ref{cha:rendering}] \nameref{cha:rendering}.
195
196         Minimally most users will need to read the section on single file rendering to get started; since after all the whole purpose of using an NLE is to create your own media.
197         The end of this chapter includes some helpful specific rendering scenarios which could prove quite useful.
198         You might also want to consider using batch rendering and background rendering for performance reasons.
199         And, of course, render farm usage to take advantage of multiple computers can be a real boost.
200
201     \item[Chapter~\ref{cha:keyframes}] \nameref{cha:keyframes}.
202
203         This is a more advanced topic but extremely useful to know.
204         Keyframes are data values that have been associated to media on the timeline that affect the media presentation.
205         You can go for years without knowing all of the nuances but you will most likely have a need to use and understand them sooner or later.
206
207     \item[Chapter~\ref{cha:ffmpeg_interactions}] \nameref{cha:ffmpeg_interactions}.
208
209         Skip this chapter if you are just getting started. Skip this chapter if you just want to use common
210         formats that are already set up for you. Experts may want to refer to this chapter in order to set up their
211         own option files.
212
213     \item[Chapter~\ref{cha:plugins}]\nameref{cha:plugins}.
214
215         Use this chapter as a reference to add an audio or video plugin in order to correct color or add some fancy effect.
216         You will not want to read about each and every plugin, most of which you will never use.
217         On the other hand, going over the section on “some specific details concerning plugins” might come in handy.
218
219     \item[Chapter~\ref{cha:transition_plugin}] \nameref{cha:transition_plugin}.
220
221         Everyone who does not know about using transitions should read this chapter because you will want to use transitions between cuts in your video for smoothly changing scenes.
222         It is short and easy reading.
223
224     \item[Chapter~\ref{cha:overlays}] \nameref{cha:overlays} Modes, Alpha Blending, and Porter Duff.
225
226         Experts can really use the information in this chapter to spiff up their editing work through some blending type techniques.
227         A lot of information and possibilities are described here.
228
229     \item[Chapter~\ref{cha:capturing_recording_media}] \nameref{cha:capturing_recording_media}.
230
231         This chapter is helpful in learning how to capture and record media from various sources.  A section on using \CGG{} with broadcast TV (NTSC) is especially useful.
232
233     \item[Chapter~\ref{cha:dvd_bluray_creation}] \nameref{cha:dvd_bluray_creation}.
234
235         If this is what you want to do, then read this chapter.
236         In the case of DVD media creation it includes many examples and lots of tips for checking your methods.
237
238     \item[Chapter~\ref{cha:shortcuts}] \nameref{cha:shortcuts}.
239
240         Everyone will want to use this chapter to speed up their editing sessions.
241         Once you find yourself doing the same thing over and over again, you will want to know if there is a shortcut. Then look here!
242
243     \item[Chapter~\ref{cha:configuration_settings_preferences}] \nameref{cha:configuration_settings_preferences}.
244
245         Refer to this chapter when you want to change some setting or preference.
246         Otherwise if a new user, you should make sure to read the first page which includes some important basic information.
247
248     \item[Chapter~\ref{cha:how_stuff_works}] \nameref{cha:how_stuff_works}.
249
250         Only read this chapter if you are confused about a specific covered topic and how it works.
251
252     \item[Chapter~\ref{cha:troubleshooting_help}] \nameref{cha:troubleshooting_help}.
253
254         Use this chapter for diagnosing a problem and find out what to report to get the best resolution or help.  Context Help, using Alt/h, is explained here.
255
256     \item[Chapter~\ref{cha:performance_tips}]  \nameref{cha:performance_tips}.
257
258         There are a few performance tips in this chapter that may eventually prove useful.
259
260     \item[Chapter~\ref{cha:translations}] \nameref{cha:translations}.
261
262         If you want to help by providing translations for a specific language, there is a complete description of how to do this and what to do.
263
264     \item[Chapter~\ref{cha:licenses}] \nameref{cha:licenses}.
265
266     \item[Appendix~\ref{cha:Quickstart}] \nameref{cha:Quickstart}.
267
268         Here you go! If you hate to read, just go over the quick start guide or the youtube video creation and simply be on your way.
269
270     \item[Appendix~\ref{cha:developer's_section}] \nameref{cha:developer's_section}.
271
272         Some extra information that developers may or may not find useful.
273
274     \item[Appendix~\ref{cha:auxiliary_programs}] \nameref{cha:auxiliary_programs}.
275
276         This is a catch-all for any useful programs that may need to be included, mostly for analysis.
277         
278      \item[Appendix~\ref{cha:editing_real_world_usage}] \nameref{cha:editing_real_world_usage}.
279     
280         Our users illustrate in-depth examples of their workflows by showing their editing in real use cases.
281
282 \end{description}
283
284 In summary, \textit{must} reads for a new user would be these chapters or sections:
285
286 \begin{itemize}
287     \item Chapter~\ref{cha:the_4_windows} --- \nameref{cha:the_4_windows}.
288     \item Chapter~\ref{cha:load_save_and_the_EDL} --- \nameref{cha:load_save_and_the_EDL}.
289     \item Chapter~\ref{cha:editing} --- \nameref{cha:editing}; read all sections except emphasize only either \nameref{sec:cut_paste_editing} or \nameref{sec:drag_drop_editing} to suit your purpose and then skim the editing mode that is not your preference as some operations work in either mode.
290         Skip the \nameref{sec:shuttle_jog_wheels_editing} section unless you have this jog wheel in hand.
291     \item Chapter~\ref{cha:rendering} --- \nameref{cha:rendering}; minimally read the \nameref{sec:single_file_rendering} section.
292     \item Chapter~\ref{cha:plugins} --- \nameref{cha:plugins}; read the section on \nameref{sec:how_use_plugins}.
293     \item Chapter~\ref{cha:transition_plugin} --- \nameref{cha:transition_plugin}.
294     \item Chapter~\ref{cha:configuration_settings_preferences} --- \nameref{cha:configuration_settings_preferences}; read at least the first couple of paragraphs.
295 \end{itemize}
296
297 %%% Local Variables:
298 %%% mode: latex
299 %%% TeX-master: "../CinelerraGG_Manual"
300 %%% End: