Another minor fixes
[goodguy/cin-manual-latex.git] / parts / Plugins.tex
index 9f880e84e52692836397e73cf617d4cc9c175a45..98da7be3211ff70289f93508c67b9b5be7c39596 100644 (file)
@@ -1,7 +1,7 @@
 \chapter{Plugins}%
 \label{cha:plugins}
 
-There are realtime effects --- these are the most useful and probably all you will ever need - and rendered effects. The rendered effects are discussed separately in the Rendered Effects \todo{internal link 1}% 
+There are realtime effects --- these are the most useful and probably all you will ever need --- and rendered effects. The rendered effects are discussed separately in the Rendered Effects \todo{internal link 1}% 
 section. Effect plugins modify the track when played, according to how they are set, with no permanent storage of the output except when the project is rendered. There are many Plugins in Cinelerra-GG Infinity which are actually quite easy to use just by experimenting with them. The plugins are shown and selected from the \textit{Resources window} (figure~\ref{fig:video-plugins}). They are described in more detail later.
 
 \begin{figure}[htpb]
@@ -129,18 +129,18 @@ In order to prevent the shared track from mixing the same data as the original t
 Note that using this is directly changing a keyframe object so you will only want to modify parameters you are familiar with. Most of the data is obvious and safe to change.
 
 A Presets button on the plugin bar to the left of the Controls and On/Off button allows for quick access to this feature. The symbol resembles a gear (figure~\ref{fig:preset02}).
-    \todo{I can't to remedy}%
+    %\todo{I can't to remedy}%
 
 \begin{figure}[htpb]
     \centering    
     \begin{tikzpicture}[scale=1, transform shape]
     \node (img1) [yshift=0cm, xshift=0cm, rotate=0] {\includegraphics[width=0.6\linewidth]{images/preset02.png}};
     \node [yshift=-20mm, xshift=-1cm,anchor=east] at (img1.north west) (Green) {A user preset Green};
-    \node [yshift=-101mm, xshift=-1cm,anchor=east] at (img1.north west) (Textbox) {Textbox to type in the title for the chosen preset or name for a new preset.};
-    \node [yshift=-110mm, xshift=-1cm,anchor=east] at (img1.north west) (Save) {Use the Delete, Save or Apply button for operation.};    
+    \node [yshift=-101mm, xshift=-1cm,anchor=south east,text width=10em, inner ysep=-3mm] at (img1.north west) (Textbox) {Textbox to type in the title for the chosen preset or name for a new preset.};
+    \node [yshift=-110mm, xshift=-1cm,anchor=north east,text width=10em,inner ysep=-3mm] at (img1.north west) (Save) {Use the Delete, Save or Apply button for operation.};    
     \draw [->, line width=1mm] (Green) edge  ([yshift=-20mm] img1.north west);
-    \draw [->, line width=1mm] (Textbox) edge  ([yshift=-101mm] img1.north west);
-    \draw [->, line width=1mm] (Save) edge    ([yshift=-110mm] img1.north west);   
+    \draw [->, line width=1mm] (Textbox.south east) --  ([yshift=-101mm] img1.north west);
+    \draw [->, line width=1mm] (Save.north east) --    ([yshift=-110mm] img1.north west);   
     \end{tikzpicture}    
     \caption{Screencast shows 4 Factory presets as preceded by an *.}
     \label{fig:preset02}
@@ -571,7 +571,7 @@ Ladspa effects are supported in realtime and rendered mode for audio. These audi
 export LADSPA_PATH=/usr/lib/ladspa
 \end{lstlisting}
 
-\section{Audio LV2 / Calf Plugins\protect\footnote{Optional Feature - OS dependent}}%
+\section[Audio LV2 / Calf Plugins]{Audio LV2 / Calf Plugins\protect\footnote{Optional Feature - OS dependent}}%
 \label{sec:audio_lv2_calf_plugins}
 
 LV2 is an open standard for audio plugins using a simple interface with extensions which add functionality to support audio software. These plugins were written by external developers and provide additional audio effects to Cinelerra audio without having to change Cinelerra every time. Because the LV2 plugins are separate from Cinelerra-GG Infinity, if one fails or does not perform as expected, cinelerra should stay running and you will have to contact the programmers responsible for that plugin for a fix.
@@ -647,7 +647,7 @@ For example:
     \label{fig:calf02}
 \end{figure}
 
-\section{Video Effects - Native\protect\footnote{credit to Andrea Paz for reviewing and numerous plugin descriptions and figures}}%
+\section[Video Effects --- Native]{Video Effects --- Native\protect\footnote{credit to Andrea Paz for reviewing and numerous plugin descriptions and figures}}%
 \label{sec:video_effects_native}
 
 \subsection{1080 to 480}%
@@ -900,7 +900,7 @@ Use the effect along with keyframing to brighten a long shot that is dark at the
 
 Makes your video burn where there are small light colored patches of video. This came from \url{https://effectv.com}.
 
-\subsection{C41\protect\footnote{credit Florent Delannoy, original program code author, and Edouard Chalaron}}%
+\subsection[C41]{C41\protect\footnote{credit Florent Delannoy, original program code author, and Edouard Chalaron}}%
 \label{sub:c41}
 
 The C41 plugin takes a $16\,bit C41$ digital intermediate negative film as input and outputs a positive image. It became necessary because $C-41$ negatives can fade or color-shift over time which was a problem early on. It is still important today because there is a large amount of documentaries, video clips, and other media out there that was shot on super $16$ film. This works for RGB-float, RGB, and also YUV variations.
@@ -980,7 +980,7 @@ If the lightness or hue is within a certain \texttt{threshold} it is erased. Inc
 
 Normally threshold is very low when using a high slope. The two parameters tend to be exclusive because slope fills in extra threshold. The slope tries to soften the edges of the chroma key but it does not work well for compressed sources. A popular softening technique is to use a maximum slope and chain a blur effect below the chroma key effect to blur just the alpha.
 
-\subsection{Chroma Key (HSV)\protect\footnote{Credit for Plugin by Jerome Cornet http://jcornet.free.fr/linux/chromakey.html}}%
+\subsection[Chroma Key (HSV)]{Chroma Key (HSV)\protect\footnote{Credit for Plugin by Jerome Cornet http://jcornet.free.fr/linux/chromakey.html}}%
 \label{sub:chroma_key_hsv}
 
 Chroma Key (HSV) (figure~\ref{fig:chroma-key-hsv}) replaces a color with another color or transparency using HSV variables; it is frequently used to remove a color from a video to composite with another image. This process is generally referred to as green screen or blue screen process (because of the color that is keyed out). More information: \url{http://en.wikipedia.org/wiki/Chromakey}
@@ -1190,7 +1190,7 @@ Figure~\ref{fig:descratch} shows a before and after DeScratch scenario. With \te
 
 This is used to decrease the frame rate of a video. Changing the frame rate means eliminating a frame for any given number of frames ($1 in N$); but if frames that are important for visual continuity are deleted, temporal artifacts arise: flickering, slowdowns, accelerations, etc. The Decimate filter maintains a higher quality because it first eliminates duplicate frames or frames that are most similar, thus limiting the appearance of artifacts. It is often used after the \texttt{Invert Telecine} plugin to make the video more smooth.
 
-One use of the decimate effect can be applied to a DVD to convert the $29.97\,fps$ video to the $23.97\,fps$ film rate, but the effect can take any input rate and convert it to any lower output rate. The output rate of decimate is the project frame rate. The input rate is set in the decimate user interface. To convert $29.97\,fps$ progressive video to $23.97\,fps$ film, apply a decimate effect to the track. Set the decimate input rate to $29.97$ and the project rate to $23.97$.
+One use of the decimate effect can be applied to a DVD to convert the 29.97\,\emph{fps} video to the 23.97\,\emph{fps} film rate, but the effect can take any input rate and convert it to any lower output rate. The output rate of decimate is the project frame rate. The input rate is set in the decimate user interface. To convert 29.97\,\emph{fps} progressive video to 23.97\,\emph{fps} film, apply a decimate effect to the track. Set the decimate input rate to 29.97 and the project rate to 23.97.
 
 Keep in mind that every effect layered before decimate, processes video at the decimate input rate and every effect layered after decimate, processes video at the project frame rate. Computationally intensive effects should come below decimate.
 
@@ -1467,14 +1467,34 @@ Curves are used by introducing \textit{control points} simply with the left mous
 
 Curves are generally adjusted by introducing several control points, some to be kept fixed (as anchors) to prevent curve modification beyond them, and others to be dragged to make the desired correction. The power of the curves lies in being able to circumscribe a small interval at will and intervene only on this without involving the remaining parts of the frame. The precision with which you can work is such that you can almost arrive at a secondary color correction.
 
+\begin{figure}[htpb]
+    \centering
+    \includegraphics[width=0.75\linewidth]{images/ex-bezier.png}
+    \caption{Gain Up/Down; clamp; S-Shaped curve and Luma Key}
+    \label{fig:ex-bezier}
+\end{figure}
+
+
 The most used type of modification is to create a \textit{S curve}. There can be a lot of shapes that use the S curve; the simplest is to create a control point in the shadows, one in the midtones (anchors) and one in the highlights. Moving the highlight point upwards and the shadow point downwards increases the contrast, making the image sharper and improving the color rendering. With the type of \textit{linear} curve you can make hard adjustments, similar to the result of the use of \texttt{Color 3 Way}, even if this acts on the color wheel (Hue) while the curves act on individual RGB channels.
 
 The \textit{Polynomial} and \textit{Bézier} types introduce \textit{control handles} that allow for more sophisticated and smoother adjustments. The quality of the result is much better, but they require more experience for their optimal use. Extending the handles away from the control point increases the \textit{radius} of the curve at that point. By varying the angle of the handles we change the \textit{tangent} and thus the curvature of the curve below. The difference between Polynomial and Bézier lies in the underlying mathematics, but for practical purposes the use is similar.
 
+Some examples of the use of curves to demonstrate the variety of possible interventions (figure~\ref{fig:ex-bezier}):
+
+\begin{itemize}
+    \item Scale the image values by increasing the white point or decreasing the white point (gain up and gain down). 
+        You can decide the scaling value with the formula: $(Input \div Output) = Scale Factor$
+    \item Limit a value beyond a certain point of brightness (clamp to the value $0.587$ in the figure).
+    \item S-shaped curve to increase contrast without changing the black and white point (i.e. without \textit{clipping}).
+    \item Make a real \textit{Luma Key} by bringing a certain value of gray to $100\%$ (white) and lowering everything else to $0\%$ (black). The slope of the two sides indicates how much we want to fade the edges of the matte obtained.
+\end{itemize}
+
 \subsection{HolographicTV}%
 \label{sub:holographictv}
 
-Incoming objects are projected like holovision seen in the movie Stars Wars as in R2-D2's video message projector of the Princess Leia. You need a movie or background image and above it a track containing the figure on which to apply the effect. This must have a transparent background. There are no configuration parameters; it only has to be applied to the upper track (figure~\ref{fig:holographictv}). This effect originated from \url{https://effectv.com}.
+Incoming objects are projected like holovision seen in the movie Stars Wars as in R2-D2's video message projector of the Princess Leia. You need a movie or background image and above it a track containing the figure on which to apply the effect. This must have a transparent background. There are no configuration parameters; it only has to be applied to the upper track (figure~\ref{fig:holographictv}). 
+
+This effect originated from \url{https://effectv.com}.
 
 \begin{figure}[htpb]
     \centering
@@ -1509,9 +1529,15 @@ The practical use of \texttt{Interpolate Video} is a little different than the t
 \subsection{Inverse Telecine}%
 \label{sub:inverse_telecine}
 
-This is the most effective deinterlacing tool when the footage is a video transfer of a film. This can be used to solve the problem, i.e., undo the damage caused by making film into a TV broadcast. That process came about because film is at $24\,fps$ while TV is at $29.97\,fps$ and fields are at $60$. So the film was converted from 24 fps to $60\,fps$. Roughly speaking, converting every $4$ frames into $5$ frames plus a slight slow down in speed. Then the $60\,fps$ was down-sampled to $30\,fps$ by extracting odd and even lines and interlacing the lines. This process is referred to as \textit{three-two pull down} ($3:2$ pull down) in filmmaking and television production for the post production process of transferring film to video.
+This is the most effective deinterlacing tool when the footage is a video transfer of a film. This can be used to solve the problem, i.e., undo the damage caused by making film into a TV broadcast. 
+That process came about because film is at 24\,\emph{fps} while TV is at 29.97\,\emph{fps} and fields are at 60. 
+So the film was converted from 24\,\emph{fps} to 60\,\emph{fps}. 
+Roughly speaking, converting every 4 frames into 5 frames plus a slight slow down in speed. 
+Then the 60\,\emph{fps} was down-sampled to 30\,\emph{fps} by extracting odd and even lines and interlacing the lines. 
+This process is referred to as \textit{three-two pull down} ($3:2$ pull down) in filmmaking and television production for the post production process of transferring film to video.
 The three-two pull down is where the telecine adds a third video field (a half frame) to every second video frame, but the untrained eye cannot see the addition of this extra video field.
-The \texttt{IVTC} effect is primarily a way to convert \textit{interlaced} video to \textit{progressive} video. It reverses the effect of three patterns of interlacing. In the next lines \texttt{A}, \texttt{B}, and \texttt{C} represent fields.
+The \texttt{IVTC} effect is primarily a way to convert \textit{interlaced} video to \textit{progressive} video. 
+It reverses the effect of three patterns of interlacing. In the next lines \texttt{A}, \texttt{B}, and \texttt{C} represent fields.
 
 \texttt{A AB BC CD D}
  
@@ -2207,8 +2233,8 @@ Inside the time average effect is an accumulation buffer and a divisor. A number
 \label{sub:timefront}
 
 Space-temporal warping enables time to flow differently at different locations in the video (figure~\ref{fig:timefront}).
-\begin{wrapfigure}[12]{O}{0.3\linewidth} 
-    \vspace{-4ex}
+\begin{wrapfigure}[13]{O}{0.3\linewidth} 
+    \vspace{-2ex}
     \includegraphics[width=0.8\linewidth]{images/timefront.png}
     \caption{Temporal bands for Timefront}
     \label{fig:timefront}
@@ -2684,7 +2710,7 @@ cin/plugins/opencv/stylizeobj.plugin
     for example for arch:
 \end{enumerate}    
     \url{https://cinelerra-gg.org/download/tars/cinelerra-5.1-arch-{date}-x86_64-static.txz}
-    \todo{How make a new line into the link?}
+    %\todo{How make a new line into the link?}
 \begin{enumerate}[resume]
     \item create a temporary directory on your computer;
     \item \texttt{cd} that-directory;
@@ -2870,7 +2896,7 @@ Figure~\ref{fig:stylize} show the images after adding the 6 various styles.
     \label{fig:stylize}
 \end{figure}
 
-\section{FFmpeg Audio and Video Plugins\protect\footnote{credit to WPfilmmaker for the Ffmpeg info description lines taken from his contributed pdf}}%
+\section[FFmpeg Audio and Video Plugins]{FFmpeg Audio and Video Plugins\protect\footnote{credit to WPfilmmaker for the Ffmpeg info description lines taken from his contributed pdf}}%
 \label{sec:ffmpeg_audio_video_plugins}
 
 Cinelerra GG Infinity currently comes with more than $140$ of the video plugins and $55$ of the audio plugins developed by the FFmpeg project \url{www.ffmpeg.org}. These plugins do not have a GUI with buttons like the rest of plugins, therefore to change settings it is necessary to change the variables by hand by highlighting the \textit{option}, typing a value in the \textit{Range} box, and then hitting the \textit{Apply} button. Many of these plugins provide tooltips at the bottom right corner of the window when the option is highlighted. A \textit{slider} bar and a \textit{dial} for numerical values can be used to easily vary the values which take effect immediately.
@@ -3120,7 +3146,7 @@ frequency which most ikely correspond to edges.\\
 \textbf{F\_yuvtestsrc:} Generate YUV test pattern.\\
 \textbf{F\_zoompan:} Applies Zoom \& Pan effect.
 
-\section{Rendered Effects\protect\footnote{This capability is going to be deleted in the future unless receive notification of need to keep}}%
+\section[Rendered Effects]{Rendered Effects\protect\footnote{This capability is going to be deleted in the future unless receive notification of need to keep}}%
 \label{sec:rendered_effects}
 
 Besides the Realtime effects, as has been described in the previous sections, another type of effect is performed on a section of the track and the result stored somewhere before it is played back. The result is usually pasted into the track to replace the original data. The rendered effects are not listed in the resources window but instead are accessed through the \texttt{Audio$\rightarrow$ Render effect and Video$\rightarrow$ Render effect} menu options. Each of these menu options brings up a dialog for the rendered effect. In the Select an effect dialog is a list of all the realtime and all the rendered effects. The difference here is that the realtime effects are rendered to disk and not applied under the track. Rendered effects apply to only one type of track, either audio or video. If no tracks of the type exist, an error pops up.