add warning about Delay Audio plugin temporarily
[goodguy/cin-manual-latex.git] / parts / Plugins.tex
index 6878965eb2b62afd73e7cd378188dad194136823..4865455fd537332438ea263445980b8f5030641b 100644 (file)
@@ -4,6 +4,9 @@
 
 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 \nameref{sec:rendered_effects}  section.
+Effects that begin with the characters F\_ are effects that are part of the FFmpeg software
+as opposed to those coded within the \CGG{} program.  These are discussed separately in
+\nameref{sec:ffmpeg_audio_video_plugins}.
 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 \CGG{} 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]
@@ -44,11 +47,13 @@ Note that when you change the plugin icons, your session will automatically save
 \section{How to Use Plugins}%
 \label{sec:how_use_plugins}
 
-\textit{Realtime} effect plugins are listed in the Resources window as \textit{Audio} Effects and \textit{Video} Effects. Effect plugins are used by dragging them from the Resources window onto an audio track if it is an audio effect or video track if it is a video effect. You will see a colored bar \index{plugins!toolbar} appear beneath the track with the plugin name on it. If there is data on the destination track, the effect is applied to the entire track, unless a edit or a region of the track is selected in which case the effect is pasted into that region only. If there is no data on the track the effect is not added.
+\textit{Realtime} effect plugins are listed in the Resources window as \textit{Audio} Effects and \textit{Video} Effects. Effect plugins are used by dragging them from the Resources window onto an audio track if it is an audio effect or video track if it is a video effect. You will see a colored bar \index{plugins!toolbar} appear beneath the track with the plugin name on it. If there is data on the destination track, the effect is applied to the entire track, unless a edit or a region of the track is selected (wipe selection or In/Out points) in which case the effect is pasted into that region only. If there is no data on the track or no selected region set, the effect is not added.
 
-Plugins are layered under the track they apply to. When dragging more than one effect onto a track, you will see the effects layering from \textit{top to bottom}, on the bottom of that track. When the track is played back, effects are processed from \textit{top to bottom}. The output of the top effect becomes the input of the bottom effect and so on.
+Plugins are layered under the track they apply to. When dragging more than one effect onto an armed track, you will see the effects layering from \textit{top to bottom}, on the bottom of that track. When the track is played back, effects are processed from \textit{top to bottom}. The output of the top effect becomes the input of the bottom effect and so on. "The pipeline in Cinelerra's\protect\footnote{credit to Original Creator} plugin design is the \textit{pull} method. The rendering pipeline starts at the final output and the final steps in the rendering pipeline are reading the data from disk. Every step in the rendering chain involves requesting data from the previous step. When the rendering pipeline eventually requests data from a plugin chain, each plugin requests data from the plugin before it. This is less intuitive than the push method but is much more powerful. Realtime plugins written using the pull method can change the rate data is presented to the viewer and the direction of playback. The pull method allows plugins to take in data at a higher rate than they send it out."  Side note: if you want to avoid the automatic \textit{top to bottom} application of plugins, you can take advantage of \textit{nested assets} to manipulate the order the plugins are applied (see  \ref{sec:nesting_clips_and_assets}).
 
-Instead of dragging from the Resources window, effects may be applied to a track via a popup menu. Right click on a track and select \textit{Attach effect} \index{plugins!attch effect} from the popup. The attach effect dialog gives you more capability than just dragging and dropping. For example, the attach effect dialog lets you attach two more types of effects: \textit{shared effects} and \textit{shared tracks} which are explained in a later section. Select a plugin from the Plugins column and hit the green colored checkmark under the plugins column to attach it. The result is the same as if the effect was dragged from the Resources window.
+Instead of dragging from the Resources window, effects may be applied to a single armed track or a region via a popup menu. On the entire track or on a region determined by a selection wipe or by the In/Out points, right click and select \textit{Attach effect} \index{plugins!attch effect} from the popup. The attach effect dialog gives you more capability than just dragging and dropping. For example, the attach effect dialog lets you attach two more types of effects: \textit{shared effects} and \textit{shared tracks} which are explained in a later section. Select a plugin from the Plugins column and hit the green colored checkmark under the plugins column to attach it. The result is the same as if the effect was dragged from the Resources window.
+One more method to apply an effect on all armed tracks of the same type (video or audio) is to use the \textit{Video} or \textit{Audio} pulldown \textit{Attach Effect} option. This brings up a menu which has a useful checkbox to \textit{Attach single standalone and share others} (see \ref{sec:shared_effect_tracks}). The default setting is checked on.
 
 After attaching an effect to a track, it often needs to be configured. There are two ways to get to the configuration controls. Click on the magnifying glass \index{plugins!show controls} symbol on the right side of the effect bar -- this is the middle symbol on the bar as you can see in the picture below. Alternatively, you can right click on the effect bar to bring up the effect popup which has a \textit{Show} option. Either method causes the GUI for the effect to appear in a separate window. There will not be a popup if the plugin has no GUI.
 
@@ -192,10 +197,22 @@ To get a short one or a few lines description of a plugin, mouse over that plugi
     \label{fig:info-effect}
 \end{figure}
 
+\textit{Context Help} provides more detailed information about the plugin in 4 possible
+ways using the Alt/h hotkey combination. 
+\begin{enumerate}
+        \item Pressing \texttt{Alt/h} with the mouse in the dialog window of that plugin's settings menu.
+        \item Pressing \texttt{Alt/h} while pointing with the mouse on the plugin bar in a track, transition bar, or transition icon.
+        \item Pressing \texttt{Alt/h} while pointing on the plugin name (icon) in the Resources window. If plugin tooltips are on, help for the highlighted plugin under the mouse is shown. If plugin tooltips are off, help for the selected plugin is shown.
+        \item Pressing \texttt{Alt/h} while pointing on the plugin name in the \textit{Attach Effect} dialog menu.
+\end{enumerate}
+
 \subsection{Delete Plugins to save Resources Space or make them Unavailable}%
 \label{sub:delete_plugin_resouces_unavaible}
 
-Maybe you just don't ever use certain plugins or would prefer to only find the ones that are useful to you. To save space in the Resources Window so you don't have to scroll to find the plugins you want as much, a feature to delete others is available. If you have a System install, you will have to be root for this function to be usable. The plugins will be permanently deleted, but only until you rebuild or download a new set of \CGG{} binaries. To delete a plugin, highlight the plugin you no longer want in the Resources window then press Ctrl-Shift-delete. A small window will come up allowing you to change your mind and red-X out or check-OK to remove plugin. This feature may come in handy if you have personnel working on media for you and you only want them to exercise certain functions. Or maybe you can't remember which is the good \textit{deinterlace} plugin out of the available five or so and want to delete the extras so as not to be confused. The ffmpeg, \textit{ladspa}, and \textit{lv2} plugins can not be deleted in this manner but, of course, you can always turn them off from view by clicking on \textit{Visibility} and unchecking them (figure~\ref{fig:remove-effect}).
+Maybe you just don't ever use certain plugins or would prefer to only find the ones that are useful to you. To save space in the Resources Window so you don't have to scroll to find the plugins you want as much, a feature to delete others is available. If you have a System install, you will have to be root for this function to be usable. The plugins will be permanently deleted, but only until you rebuild or download a new set of \CGG{} binaries. To delete a plugin, highlight the plugin you no longer want in the Resources window then press Ctrl-Shift-delete. A small window will come up allowing you to change your mind and red-X out or check-OK to remove plugin. 
+AppImage does not provide this capability unless you use the workaround as described in the Appendix \nameref{cha:faq_problems_workarounds}.
+
+This feature may come in handy if you have personnel working on media for you and you only want them to exercise certain functions. Or maybe you can't remember which is the good \textit{deinterlace} plugin out of the available five or so and want to delete the extras so as not to be confused. The ffmpeg, \textit{ladspa}, and \textit{lv2} plugins can not be deleted in this manner but, of course, you can always turn them off from view by clicking on \textit{Visibility} and unchecking them (figure~\ref{fig:remove-effect}).
 
 \begin{figure}[htpb]
     \centering
@@ -237,6 +254,8 @@ For some System installs, the files might be located at:
 
 (or cinfinity2, original or smoother -- Leap distro)
 
+AppImage does not provide this capability unless you use the workaround as described in the Appendix \nameref{cha:faq_problems_workarounds}.
+
 \subsection{Details on where to put your own Plugin Icons}%
 \label{sub:details_put_plugin_icons}
 
@@ -281,6 +300,7 @@ Keep in mind these points for newly created plugin icons:
 \label{sub:example_plugin_icon_testing}
 
 For a simple test just copy an existing \texttt{<plugin\_name>.png} file into the cinfinity directory with the name \texttt{bluebanana.png} to write over the existing file. This icon will now show up in \CGG{} and still execute the Blue Banana function.
+AppImage does not provide this capability unless you use the workaround as described in the Appendix \nameref{cha:faq_problems_workarounds}.
 
 For an ffmpeg plugin, create \texttt{ff\_loop.png} and copy it to: \\
 \texttt{<cinlib\_path>/plugins/picon/original}. This icon will show up in \CGG{} if original is selected and execute the \textit{F\_loop} function.
@@ -494,6 +514,8 @@ Use this to remove \textit{DC Offset}, which is usually an undesirable character
 \label{sub:delay_audio}
 \index{delay audio}
 
+WARNING: under most circumstances, this is currently crashing due to a bug.  Please use
+F\_adelay ffmpeg plugin instead until this is fixed.
 In the Delay Audio effect you can specify the number of seconds you want to delay the video track.
 
 \subsection{DeNoise}%
@@ -598,7 +620,7 @@ EchoCancel is the process of removing echos from audio in order to improve the q
     \item[Damp:] echo envelope decay factor used to smooth the cepstrum/correlation data.
     \item[Peaks:] number of maximal envelope values used in the echo gain calculation.
     \item[Cutoff Hz:] low frequency cutoff value to prevent beat frequency (\textit{heterodyne}) echo canceling.
-    \item[Mode:] \textit{MAN}, \textit{Off}, or \textit{On}. When Off is selected, the plugin is not active. When MAN is used, the only one peak is used for the echo gain envelope. It is set by pressing mouse button $1$ in the ceptstrum graphical output. The Gain and Offset are updated as the pointer drag operation resets the indicated gain and offset values. When On is selected, the echo gain envelope is automatically calculated by cepstrum and auto-correlation of the input audio in the last window size audio samples.
+    \item[Mode:] \textit{MAN}, \textit{Off}, or \textit{On}. When Off is selected, the plugin is not active. When MAN is used, the only one peak is used for the echo gain envelope. It is set by pressing mouse button $1$ (LMB) in the ceptstrum graphical output. The Gain and Offset are updated as the pointer drag operation resets the indicated gain and offset values. When On is selected, the echo gain envelope is automatically calculated by cepstrum and auto-correlation of the input audio in the last window size audio samples.
     \item[Windows size:] parameter can be set to \textit{Default}, $1024$, $2048$, \dots \textit{doubled values\dots} up to $262144$.
     \item[Amplitude:] the cepstrum value at the drag point during manual envelope selection.
     \item[Gain:] echo gain setting determined by manual selection.
@@ -910,7 +932,7 @@ This effect is the one to use if you want to achieve an old movie or TV show loo
 \label{sub:alpha}
 \index{Alpha}
 
-Allows you to apply an alpha value (transparency) to one or more tracks or one or more edits. Being also keyframable, it allows an excellent variety and possibility of use in the most disparate occasions.
+Allows you to apply an alpha value (transparency) to one or more tracks or one or more edits. You can use the slider or have maximum precision by entering numbers in the input box. You can use the \textit{Clear} button to reset to the default value. Being also keyframable, it allows an excellent variety and possibility of use in the most disparate ways.
 
 \subsection{Auto Scale}%
 \label{sub:auto_scale}
@@ -1167,7 +1189,7 @@ is a clear button on the right to set the value to 1.
 
 To brighten a dark shot, or add light, use this plugin. Do not overuse the effect or you risk degrading your video quality.
 The \textit{Brightness} slider moves up or down the values of the entire channel and corresponds to the \textit{Master Offset} of the various grading programs.
-The \textit{Contrast} slider expands or narrows the brightness values of the entire channel; corresponds to the use of the \textit{cursors} (small triangles) in the \textit{Histogram} plugin. Clear icons are present to reset its slider to default without affecting others.
+The \textit{Contrast} slider expands or narrows the brightness values of the entire channel; corresponds to the use of the \textit{cursors} (small triangles) in the \textit{Histogram} plugin. For maximum precision you can use the input box. \textit{Clear} icons are present to reset its slider to default without affecting others.
 Use the effect along with keyframing to brighten a long shot that is dark at the beginning but bright at the end. Generally you will want to change the brightness and contrast about the same amount (for example -- brightness $28$, contrast $26$) so that your original colors are kept intact. This effect is also keyframable (figure~\ref{fig:brightness}).
 
 \subsection{BurningTV}%
@@ -1930,7 +1952,7 @@ Curves are generally adjusted by introducing several control points, some to be
 
 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 \textit{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.
+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. By varying the angle of the handles we change the \textit{tangent} and thus the slope of the curve below. Unlike true Bezier curves, there is no effect in extending the handles: there is no change in the radius of the curve. The difference between Polynomial and Bézier lies in the underlying mathematics, but for practical purposes the use is similar. By default Bézier starts with a slight S-curve, as opposed to Polynomial.
 
 Some examples of the use of curves to demonstrate the variety of possible interventions (figure~\ref{fig:ex-bezier}):
 
@@ -1968,7 +1990,7 @@ This effect originated from {\small \url{https://effectv.com}}.
 \label{sub:hue_saturation}
 \index{hue saturation}
 
-With this effect you can change hue, saturation and value. The parameters are modified using 3 simple sliders. The \textit{hue} control shifts the colors circularly in the color plane, normally resulting in false colors. The \textit{saturation} control can be used to reduce color footage to black and white. The \textit{value} control makes any given colors more bright or more subdued. Clear buttons are present to reset its slider to default without affecting others.
+With this effect you can change hue, saturation and value. The parameters are modified using 3 simple sliders. For maximum precision you can use the input box. The \textit{hue} control shifts the colors circularly in the color plane, normally resulting in false colors. The \textit{saturation} control can be used to reduce color footage to black and white. The \textit{value} control makes any given colors more bright or more subdued. \textit{Clear} buttons are present to reset its slider to default without affecting others.
 
 \subsection{Interpolate Bayer}%
 \label{sub:interpolate_bayer}
@@ -2054,6 +2076,7 @@ This effect acts only in one direction which can vary up to an angle of $180\deg
     \item[Clear] With the Clear buttons we can bring the slider to default values without affecting the other parameters.
 \end{description}
 
+For maximum precision you can use the input box.
 Figure~\ref{fig:linear} shown here has the parameters: $Length=19$, $Angle=25$, and $Steps=2$.
 
 \subsection{Live Video}%
@@ -2082,6 +2105,8 @@ Every time a keyframe is set in a loop effect, the keyframe becomes the beginnin
 \label{sub:motion51}
 \index{Motion51}
 
+Note: Motion and Motion51 plugins are complex and slow to use for video stabilization. If you are stabilizing an entire video, you may want to preprocess by using ffmpeg's \textit{vidstabdetect} and \textit{vidstabtransform} plugins before importing the video into \CGG{}.
+
 This plugin compensates for unwanted motion and stabilizes the picture. The \textit{Motion51} Plugin simplifies motion stabilization so that without a lot of tweaking you can easily achieve reasonable results, either by using the defaults or varying a single parameter. Since the motion in every clip is specific, there are some additional parameters useful to adjust the settings accordingly. 
 The Motion51 plugin uses different methods for tracking than the other motion plugins. Motion Stabilization is very useful if you have jittery video, for example when taken from a car window, or while walking.
 
@@ -2130,6 +2155,8 @@ The Samples box at the top is most often the only parameter that you may want to
 \label{sub:motion}
 \index{Motion}
 
+Note: Motion and Motion51 plugins are complex and slow to use for video stabilization. If you are stabilizing an entire video, you may want to preprocess by using ffmpeg's \textit{vidstabdetect} and \textit{vidstabtransform} plugins before importing the video into \CGG{}.
+
 The \textit{motion tracker} is almost a complete application in itself. The motion tracker tracks two types of motion: \textit{translation} and \textit{rotation}. It can track both simultaneously or one only. It can do $\frac{1}{4}$ pixel tracking or single pixel tracking. It can stabilize motion or cause one track to follow the motion of another track. Although the motion tracker is applied as a realtime effect, it usually must be rendered to see useful results. The effect takes a long time to precisely detect motion so it is very slow.
 
 Motion tracker works by using one region of the frame as the region to track (Match Box). It compares this region between $2$ frames to calculate the motion. This region can be defined anywhere on the screen. Once the motion between $2$ frames has been calculated, a number of things can be done with that \textit{motion vector}. It can be scaled by a user value and clamped to a maximum range. It can be thrown away or accumulated with all the motion vectors leading up to the current position.
@@ -2143,7 +2170,7 @@ To save time the motion result can be saved in a file for later reuse, recalled
        \label{fig:motion}
 \end{figure}
 
-Motion tracking parameters:
+Motion tracking parameters\protect\footnote{credit Georgy (sge)}:
 
 \begin{description}
     \item[Track translation] Enables translation operations. The motion tracker tracks $X$ and $Y$ motion in the \textit{master} layer and adjusts $X$ and $Y$ motion in the \textit{target} layer.
@@ -2459,7 +2486,14 @@ C - has only object2 visible
 \label{ssub:tips}
 
 \begin{enumerate}
+    \item Motion plugin\protect\footnote{Thanks to Georgy} algorithm in \CGG{} is rather difficult to understand (the most efficient way to understand it is to look inside its C++ code:). Moreover, it has some tricks that, although can be derived knowing the details of the algorithm, are absolutely non-intuitive by themselves. Moreover, it is rather slow, and the results cannot be visible immediately while altering the settings.
+    \item The Motion plugin \textit{cache} (or\textit{ motion vector} or \textit{tracking file}) sometimes allows to play with very sophisticated techniques. For example, by editing the cache, perhaps with some custom script, you can induce some kind of motion which would be difficult to make in other way. But in the same time the existence of the cache file can trigger user's mistakes. So you must always pay attention, which cache file may be used in the moment. //
+    Motion's cache data are absolute-frame-number based. If you insert some small piece of video before that where the plugin was attached, the frame numbers get displaced relative to the cached numbers, and the result may become incorrectly stabilized.
     \item The motion vector is a text file located in \texttt{/tmp}. We can open it with a plain editor and modify the wrong $X\,Y$ coordinates, i.e.\ those that deviate from the linearity, to correct the errors that always happen when we perform a motion tracking (jumps). It can be a long and tedious job, but it leads to good results.
+    \item It is not possible to switch Motion cache off. While working, \textit{Motion} always looks in its cache. If it contains some data assigned to the current frame numbers, that cached data will be used unconditionally. If not, that data will be calculated, stored in the cache, and later reused, also unconditionally.
+    \item In the Motion plugin dialog there is a button \texttt{Clear tracking file contents}. When in doubt, you can press this button, the cached data will be erased and fresh recalculated on the next pass.
+    \item It is quite usual to wish independent caches for different parts of video. It is possible to set such distinct cache file names (either manually, or let software generate them with \texttt{Generate tracking file name}). When you generate new names, the plugin automatically switches Calculation off, just for security. You switch it on again when needed.
+    \item If \texttt{play track} is switched off for the track where the Motion plugin was attached, the plugin will calculate nothing. Also, if \texttt{Play every frame} was not active in \texttt{Preferences}, some video frames can get skipped from processing.
     \item You can try tracking using reverse playback of the track. Sometimes it may lead to a better calculation.
 \end{enumerate}
 
@@ -2490,7 +2524,8 @@ This effect makes video tracks appears as a painting. It can be controlled by \t
 \label{sub:overlay}
 \index{overlay video}
 
-This effect can combine several tracks by using the so called Overlayer. This is a basic internal device normally used by \CGGI{} to create the dissolve transitions and for compositing the final output of every track onto the output bitmap. The Overlayer has the ability to combine one or several image layers on top of a bottom layer. It can do this combining of images in several different (and switchable) output modes such as \textit{Normal}, \textit{Additive}, \textit{Subtractive}, \textit{Multiply} (Filter), \textit{Divide}, \textit{Max} and \textit{Replace}. For a detailed list refer to the on \hyperref[cha:overlays]{Overlays} chapter  -- PorterDuff.
+This effect can combine several tracks by using the Overlayer. This is a basic internal device normally used by \CGGI{} to create the dissolve transitions and for compositing the final output of every track onto the output bitmap. The Overlayer has the ability to combine one or several image layers on top of a "bottom layer". It can do this combining of images in several different (and switchable) output modes such as \textit{Normal}, \textit{Addition}, \textit{Subtract}, \textit{Multiply} (Filter), \textit{Divide}, \textit{Max} and \textit{Replace}. For a detailed list and some differences in output expectations, refer to the \hyperref[cha:overlays]{Overlays} chapter  -- PorterDuff.
+
 
 The \textit{overlay} plugin enables the use of this Overlayer device in the middle of any plugin stack, opening endless filtering and processing possibilities. It is only useful as a \textit{shared plugin} (i.e.\ a multitrack plugin). To use the overlay plugin:
 
@@ -2501,6 +2536,16 @@ The \textit{overlay} plugin enables the use of this Overlayer device in the midd
     \item Manipulate the plugin parameters in Track A.
 \end{enumerate}
 
+In the Overlay plugin's parameter window you can choose the overlay "Layer order"
+to select which track plays the role of the "bottom layer" and which plays the
+role of the "top layer". For some overlay modes this can make quite a
+difference, for example the bottom layer is subtracted from the top layer for
+"Subtract" mode. Also in the parameter window, you can choose on which of the tracks
+to overlay the combined output by changing the "Output layer" and it too can make
+quite a difference.
+(Hint: in most cases, you will want to mute the other track so you only see the
+combined output).
+
 \subsection{Perspective}%
 \label{sub:perspective}
 \index{perspective}
@@ -2563,7 +2608,7 @@ position a little so that the answers are not exactly zero.
 \label{sub:polar}
 \index{polar}
 
-The \textit{Polar} effect bends and warps your video in weird ways. Mathematically, it converts your video from either \textit{polar} coordinates to \textit{rectangular} coordinates, or the reverse. With the Clear buttons we can bring the slider to default values without affecting the other parameters.
+The \textit{Polar} effect bends and warps your video in weird ways. Mathematically, it converts your video from either \textit{polar} coordinates to \textit{rectangular} coordinates, or the reverse. For maximum precision you can use the input box. With the \textit{Clear} buttons we can bring the slider to default values without affecting the other parameters.
 
 \subsection{Posterize}%
 \label{sub:posterize}
@@ -2583,15 +2628,18 @@ To render to MPEG, add the \textit{RGB-601} effect to all video tracks where mat
 \label{sub:rgb-shift}
 \index{rgb shift}
 
-Most cameras take the light coming into the lens, and convert that into $3$ sets of numbers, one for Red (R), one for Green (G), and one for Blue (B). Some of the older cameras were composed of $3$ sensors and originally the RGB sensors were on $3$ separate planes and had to be aligned. If they were misaligned in the video, you can use \textit{RGBShift} to get them realigned. To move a specific color up/down, modify the \textit{dy} value using the slider bar in the RGBShift window. To move a color left/right, modify the corresponding \textit{dx} value. Clear buttons are present to reset its slider to default without affecting others. Note that the current values of the RGBShift are maintained in the \texttt{.bcast5} defaults file and will be retained across sessions. If using the YUV color space, you will want to use \textit{YUVShift} instead. Figure~\ref{fig:rgbshift} showing RGB shift before and after.
+Most cameras take the light coming into the lens, and convert that into $3$ sets of numbers, one for Red (R), one for Green (G), and one for Blue (B). Figure~\ref{fig:rgbshift} showing RGB shift before and after.
 
 \begin{figure}[hbtp]
-    \centering
-    \includegraphics[width=0.8\linewidth]{rgbshift.png}
-    \caption{Bad Misaligned color and after color aligned}
-    \label{fig:rgbshift}
+       \centering
+       \includegraphics[width=0.8\linewidth]{rgbshift.png}
+       \caption{Bad Misaligned color and after color aligned}
+       \label{fig:rgbshift}
 \end{figure}
 
+Some of the older cameras were composed of $3$ sensors and originally the RGB sensors were on $3$ separate planes and had to be aligned. If they were misaligned in the video, you can use \textit{RGBShift} to get them realigned. To move a specific color up/down, modify the \textit{dy} value using the slider bar in the RGBShift window. To move a color left/right, modify the corresponding \textit{dx} value. For maximum precision you can use the input box. \textit{Clear} buttons are present to reset its slider to default without affecting others. Note that the current values of the RGBShift are maintained in the \texttt{.bcast5} defaults file and will be retained across sessions. If using the YUV color space, you will want to use \textit{YUVShift} instead.
+
+
 \subsection{Radial Blur}%
 \label{sub:radial_blur}
 \index{radial blur}
@@ -2612,6 +2660,7 @@ Radial blur is a \textit{Bokeh} effect that creates a whirlpool which simulates
     \item[Clear] to reset its slider to default without affecting others.
 \end{description}
 
+For maximum precision you can use the input box.
 Figure~\ref{fig:radial} has the parameters: $Angle=-35$ and $Steps=2$.
 
 
@@ -2631,7 +2680,7 @@ the sequence, and therefore its length, but not the framerate. The
 varying the framerate.  It is important to understand that the
 plugin works by varying the frames, the possible change of
 \textit{fps} is only a side effect of the creation of new frames due
-to interpolation.
+to interpolation. The interpolation algorithm is simply the slope of a linear curve. This plugin is keyframable and the \textit{Interpolate} option works between keyframes. A simpler and more handy version is the \textit{Speed PerCent} plugin.
 
 \subsubsection*{Stretch}%
 \label{ssub:stretch}
@@ -2656,7 +2705,7 @@ in stretch mode with a value less than $1$.
 
 \textit{Example:} you have a clip that you want to put in slow motion. The clip starts at $33.792\, seconds$ and ends at $39.765$. The clip is $5.973\, seconds$ long. You want to play it at $\frac{4}{10}^{ths}$ normal speed. You divide the clip length by the playback speed ($5.973\div0.4$) to get a final clip length of $14.9325\,seconds$. You create an in point at the start of your clip: $33.792\,seconds$. You put an out point $14.9325\,seconds$ later, at $48.7245\,seconds$ ($33.792 + 14.9325$). You attach a \texttt{ReframeRT} effect, set it to $0.4$ and stretch. You change the out point at $48.7245$ to an in point. You start your next clip after the slow motion effect at the $48.7245$ out point. You can do this without making any calculations by first applying the effect and then lengthening or shortening the bar to where the stretched movie ends.
 
-Now in the timeline we have the affected part of the plugin where we see the slow/fast effect, and the continuation of the timeline from where the plugin ends. We then have to select the interval on which the plugin acts and render it or transform it into a nested clip or nested asset. In this way we can replace or overlap it with the part of the timeline that originally included all of the part we wanted to slow down/speed up.
+Now in the timeline we have the affected part of the plugin where we see the slow/fast effect, and the continuation of the timeline from where the plugin ends. We then have to select the interval on which the plugin acts and render it or transform it into a nested clip or nested asset. In this way we can replace or overlap it with the part of the timeline that originally included all of the part we wanted to slow down/speed up. See also the \textit{Reframe} render effect for direct rendering.
 
 \subsubsection*{Downsample}%
 \label{ssub:downsample}
@@ -2672,7 +2721,7 @@ Downsample mode changes the frame rate of the input as well as the number of the
 \begin{itemize}
     \item ReframeRT uses the fps indicated in \texttt{Settings $\rightarrow$ Format $\rightarrow$ fps} project and not the \texttt{fps} of the assets.
     \item It can be associated with Nested Clips.
-    \item As an alternative to ReframeRT you can use the \textit{speed curve}, or change the framerate in \texttt{Resources $\rightarrow$ info} and in the \texttt{Project}.
+    \item As an alternative to ReframeRT you can use the \textit{speed curve}, or change the framerate in \texttt{Resources $\rightarrow$ info} and in the \texttt{Project}; or using \textit{Reframe} render effect, or using \textit{Speed PerCent} plugin.
     \item It is keyframmable.
     \item ResampleRT with the same settings is used to act on audio tracks.
 \end{itemize}
@@ -2681,7 +2730,14 @@ Downsample mode changes the frame rate of the input as well as the number of the
 \label{sub:reroute}
 \index{reroute}
 
-The \textit{Reroute} plugin enables you to selectively transfer the Alpha channel or the Components (RGB or YUV) or both from a \textit{source} track to a \textit{target} track, partially overwriting the target's contents. It works as a \textit{shared plugin}. The typical usage scenario is to build up a possibly animated Mask in one track and then to transfer the Alpha channel to another content track.
+The \textit{Reroute} plugin\protect\footnote{By Hermann Vosseler} enables you to selectively transfer the Alpha channel or the Components (RGB or YUV) or both from a \textit{source} track to a \textit{target} track, partially overwriting the target's contents.
+
+\begin{description}
+       \item[Target Track:] you can choose between \textit{Top} and \textit{Bottom}.
+       \item[Operation:] you can choose between \textit{Replace Target} (component + alpha channels); \textit{Components Only} (color channels only) and \textit{Alpha Replace} (alpha channel only)
+\end{description}
+
+It works as a shared plugin. The typical usage scenario is to build up a possibly animated Mask in one track and then to transfer the Alpha channel to another target track.
 
 \subsection{Reverse video}%
 \label{sub:reverse_video}
@@ -2814,7 +2870,7 @@ An example of common usage is to select the number of frames you wish to average
 \label{sub:Sharpen}
 \index{sharpen}
 
-Sharpen the video, either the \textit{luminance}, \textit{horizontal}, or \textit{interlace}. With the Clear buttons we can bring the slider to default values without affecting the other parameters.
+Sharpen the video, either the \textit{luminance}, \textit{horizontal}, or \textit{interlace}. You can use sliders or, for maximum precision, you can use the input box. With the \textit{Clear} buttons we can bring the slider to default values without affecting the other parameters.
 
 \subsection{Shift Interlace}%
 \label{sub:shift_interlace}
@@ -2950,6 +3006,12 @@ Points and curves are identified by numeric ids, and not the table position. Thi
 
 The \textit{fill} point is a marker point, and not really part of the curve. That point identifies the inside of the loop. It can also be used to identify the outside of the loop in order to fill that. The loop is created by drawing a line from the last point to the first point in the curve. The line of this last segment is from the last point of the curve. If there are isolated loops in the curve (it is self intersecting) then you will be able to use multiple fill points to fill these regions.
 
+\subsection{Speed PerCent}%
+\label{sub:speed_per_cent}
+\index{speed percent}
+
+It works like the \texttt{ReframeRT} plugin in \textit{Stretch} mode. The interpolation algorithm is simply the slope of a linear curve. It allows you to change the speed of the video track, or an edit, or a region of the track quickly and intuitively. There are presets to set the speed to 100\% (default) or 25\%; 50\%; 200\% and 400\%. Or we can enter the value directly in the text box or use the slider until the desired value is reached. \textit{Interpolate} option works between keyframes. It requires setting the right limits for applying the effect and then rendering that region, or turning it into a nested clip, which will replace the original one.
+
 \subsection{Sphere Cam}%
 \label{sub:sphere_cam}
 \index{sphere cam}
@@ -3075,7 +3137,9 @@ To include graphical elements like \textit{logos}, you may want to import your t
 
 The X Window system originally did not have a suitable font renderer for video. It also is restricted to the current bit depth. It does not have a convenient way to know which fonts work with the suitable font renderer in the desired bit depth. The easiest way we have found to support fonts in the titler is to have a directory for them at \texttt{/usr/lib/cinelerra/fonts}.
 
-The titler supports mainly \textit{TTF}, true type fonts. It supports others but TTF are the most reliable. To add true type fonts, copy the \texttt{.TTF} files to the fonts directory. In that directory run
+The titler supports mainly \textit{TTF}, true type fonts. It supports others but TTF are the most reliable. AppImage does not provide this capability unless you use the workaround as described in the Appendix \nameref{cha:faq_problems_workarounds}.
+
+ To add true type fonts, copy the \texttt{.TTF} files to the fonts directory. In that directory run
 \vspace{1ex}
 \begin{lstlisting}[style=sh]
     # /usr/lib/cinelerra/fonts
@@ -3332,7 +3396,7 @@ This effect supports keyframes so these parameters can change smoothly over time
 \label{sub:Unsharp}
 \index{unsharp}
 
-This effect applies a traditional \textit{darkroom} technique, the so called \textit{unsharp mask} to every video frame. With different parameter values, this can be used to soften or to sharpen the image. Its parameters are:
+This effect applies a traditional \textit{darkroom} technique, the so called \textit{unsharp mask} to every video frame. With different parameter values, this can be used to soften or to sharpen the image. You can use sliders or, for maximum precision, you can use the input box. Its parameters are:
 
 \begin{description}
     \item[Amount] moving the slider to the right makes dark areas get darker and light areas get lighter.
@@ -3513,19 +3577,19 @@ You can also display the 4 histograms (master or RGB) on the left of the window.
 \label{sub:wave}
 \index{wave}
 
-The \textit{wave} effect adds waves on the image. \textit{Amplitude}, \textit{Phase}, and \textit{Wavelength} parameters can be adjusted. With the Clear buttons we can bring the slider to default values without affecting the other parameters.
+The \textit{wave} effect adds waves on the image. \textit{Amplitude}, \textit{Phase}, and \textit{Wavelength} parameters can be adjusted. You can use sliders or, for maximum precision, you can use the input box. With the \textit{Clear} buttons we can bring the slider to default values without affecting the other parameters.
 
 \subsection{Whirl}%
 \label{sub:whirl}
 \index{whirl}
 
-Creates a whirl (spiral) of the video around the center. With the Clear buttons we can bring the slider to default values without affecting the other parameters.
+Creates a whirl (spiral) of the video around the center. You can use sliders or, for maximum precision, you can use the input box. With the \textit{Clear} buttons we can bring the slider to default values without affecting the other parameters.
 
 \subsection{YUV}%
 \label{sub:yuv}
 \index{yuv}
 
-Modify the Y, U, V settings. With the Clear buttons we can bring the slider to default values without affecting the other parameters.
+Modify the Y, U, V settings. You can use sliders or, for maximum precision, you can use the input box. With the \textit{Clear} buttons we can bring the slider to default values without affecting the other parameters.
 
 \subsection{YUV411}%
 \label{sub:yuv411}
@@ -3544,10 +3608,10 @@ Modify the 411 yuv to look like 420 color space instead. If the edit to which th
        \label{fig:yuvshift}
 \end{figure}
 
-This effect is used for YUV input video from older cameras using $3$ sensors. It is possible to have misalignment of the $3$ sets of numbers: \textit{Y}, which represents the luminance or brightness component, and for \textit{U} and \textit{V} representing the chrominance (color) components. If they were misaligned in the video, you can use \textit{YUVShift} to realign. To move a specific component up/down, modify the \textit{dy} value using the slider bar in the RGBShift window. To move a component left/right, modify the corresponding \textit{dx} value. With the Clear buttons we can bring the slider to default values without affecting the other parameters. If you are using an RGB color space, you will want to use the \textit{RGBShift} effect instead.
+This effect is used for YUV input video from older cameras using $3$ sensors. It is possible to have misalignment of the $3$ sets of numbers: \textit{Y}, which represents the luminance or brightness component, and for \textit{U} and \textit{V} representing the chrominance (color) components. If they were misaligned in the video, you can use \textit{YUVShift} to realign. To move a specific component up/down, modify the \textit{dy} value using the slider bar in the RGBShift window. To move a component left/right, modify the corresponding \textit{dx} value. For maximum precision you can use the input box. With the \textit{Clear} buttons we can bring the slider to default values without affecting the other parameters. If you are using an RGB color space, you will want to use the \textit{RGBShift} effect instead.
 
-Figure~\ref{fig:yuvshift} (top) shows the blue \textit{U} component aligned too far to the left. And the red \textit{V} component is misaligned too far to the right. Note the \textit{U\_dx} current slider bar set to $0$ as shown by the yellow box value in the YUVShift plugin window. All components are currently at zero.
-A corrected video image is shown in the bottom. Now the red and blue colors are correctly aligned. Note how \textit{U\_dx} is now at $+20$ and \textit{V\_dx} is now negative to realign the image.
+Figure~\ref{fig:yuvshift} (top) shows the blue \textit{U} component aligned too far to the right/down. And the red \textit{V} component is misaligned too far to the right/down. Note the \textit{U\_dx} current slider bar set to $0$ as shown by the input box value in the YUVShift plugin window. All components are currently at zero.
+A corrected video image is shown in the bottom. Now the red and blue colors are correctly aligned. Note how \textit{U\_dx} is now at $+26$ and \textit{V\_dx} is now $+41$ to realign the image.
 
 \subsection{Zoom Blur}%
 \label{sub:zoom_blur}
@@ -3555,22 +3619,24 @@ A corrected video image is shown in the bottom. Now the red and blue colors are
 
 Blurs the video from the center outwards, like the sun’s rays, and uses a zoom effect.
 
+\begin{figure}[hbtp]
+       \centering
+       \includegraphics[width=0.8\linewidth]{zoom.png}
+       \caption{For clarity of presentation only 3 fields are shown}
+       \label{fig:zoom}
+\end{figure}
+
 \begin{description}
     \item[X,Y] center of the origin field.
     \item[Radius] Zoom on the fields.
     \item[Steps] number of blur steps to be used in the calculation. Increasing the number takes more CPU.
     \item[Clear] With the Clear buttons we can bring the slider to default values without affecting the other parameters.
+    \item[Reset] To reset all parameters to default at the same time.
 \end{description}
 
+You can use sliders or, for maximum precision, you can use the input box.
 Figure~\ref{fig:zoom} shows the parameters: Radius=21 and Steps=3.
 
-\begin{figure}[hbtp]
-    \centering
-    \includegraphics[width=0.8\linewidth]{zoom.png}
-    \caption{For clarity of presentation only 3 fields are shown}
-    \label{fig:zoom}
-\end{figure}
-
 \section{CUDA plugins}%
 \label{sec:cuda_plugins}
 \settocdepth{section}
@@ -3649,7 +3715,7 @@ plugins included for consistency and to avoid problems.
 The OpenCV plugins are built only in the 64-bit tarball builds, both static and dynamic, but due
 to size these plugins are not included with pkgs, i.e. the System builds. However it is relatively
 easy to add the current plugins for your distro via a simple procedure of copying the plugins
-from the static tarball to the cin5 install plugin path. They are:
+from the static tarball to the cin5 install plugin path (AppImage does not provide this capability). They are:
 
 \begin{lstlisting}[style=sh]
 cin/plugins/opencv/findobj.plugin
@@ -4017,31 +4083,44 @@ The following is a list of the integrated audio plug-ins\protect\footnote{credit
   compression/expansion filter.
 \item [F\_acrusher]~\\Reduces audio bit resolution.
 \item [F\_acue]~\\Delay filtering to match a cue.
+\item [F\_adecorrelate]~\\Apply decorrelation to input audio stream.
 \item [F\_adelay]~\\Delays one or more audio channels.
+\item [F\_adenorm]~\\Remedy denormals by adding extremely low-level noise.
+\item [F\_adynamicequalizer]~\\Apply dynamic equalization to input audio stream.  
+\item [F\_adynamicsmooth]~\\Apply dynamic smoothing to input audio stream.
 \item [F\_aderivative]~\\Compute derivative of input audio.
 \item [F\_aecho]~\\Adds echoing to the audio.
 \item [F\_aemphasis]~\\Audio emphasis.
 \item [F\_aeval]~\\Filters audio signal according to a
   specific expression.
+\item [F\_aeexciter]~\\Enhance high frequency part of audio.
 \item [F\_afade]~\\Fades in/out input audio.
 \item [F\_aformat]~\\Convert the input audio to one of he
   specified formats.
+\item [F\_afreqshift]~\\Apply frequency shifting to input audio.
+\item [F\_afwtdn]~\\Reduce broadband noise from input samples using Wavelets.
 \item [F\_agate]~\\Audio gate.
-\item [F\_aintegral]~\\Compute integral of input audio.
+\item [F\_alatency]~\\Measure filtering latency.
 \item [F\_allpass]~\\Applies a two-pole all-pass filter.
 \item [F\_aloop]~\\Loops audio samples.
 \item [F\_anoisesrc]~\\Generates a noise audio signal.
 \item [F\_aperms]~\\Set permissions for the output audio
   frame.
 \item [F\_aphaser]~\\Adds a phasing effect to the audio.
+\item [F\_aphaseshift]~\\Apply phase shifting to input audio.
+\item [F\_apsyclip]~\\Apply Psychoacoustic clipper to input audio stream.
 \item [F\_arealtime]~\\Slows down filtering to match realtime.
 \item [F\_aresample]~\\Resamples audio data.
-\item [F\_asetrate]~\\Change the sample rate without altering
-  the data.
-\item [F\_astats]~\\Shows time domain statistics about audio
-  frames.
+\item [F\_asetrate]~\\Change the sample rate without altering the data.
+\item [F\_aspectralstats]~\\Display frequency domain statistical information about the audio channels. Statistics are calculated and stored as metadata for each audio channel and for each audio frame.
+\item [F\_astats]~\\Shows time domain statistics about audio frames.
 \item [F\_asubboost]~\\Boost subwoofer frequencies.
-\item [F\_atempo]~\\Adjusts audio tempo.
+\item [F\_asubcut]~\\Cut subwoofer frequencies.
+\item [F\_asupercut]~\\Cut super frequencies.
+\item [F\_asuperpass]~\\Apply high order Butterworth band-pass filter.
+\item [F\_asuperstop]~\\Apply high order Butterworth band-stop filter.
+\item [F\_atempo]~\\Adjusts audio tempo so that when you speed up audio, it will adjust the pitch accordingly to make audio sounds more normal, but faster without being badly distorted. Its behavior is similar to what can be seen when you watch a youtube video, click the gear icon, and select a speed greater or less than 1.
+\item [F\_atilt]~\\Apply spectral tilt filter to audio stream.
 \item [F\_atrim]~\\Pick one continuous section from the input,
   drop the rest.
 \item [F\_bandpass]~\\Applies a two-pole Butterworth band-pass
@@ -4081,7 +4160,7 @@ The following is a list of the integrated audio plug-ins\protect\footnote{credit
   audio channels. When using this plugin, be sure to \textit{attach
     effect} to all audio tracks by dragging the plugin to the $1^{st}$
   audio track and then right mouse clicking all subsequent audio
-  tracks which brings up an menu. Highlight the effect shown in the
+  tracks which brings up a menu. Highlight the effect shown in the
   middle section and click OK.
 \item [F\_flanger]~\\Applies a flanging effect to the audio.
 \item [F\_haas]~\\Apply Haas Stereo Enhancer for a more
@@ -4113,9 +4192,11 @@ The following is a list of the integrated audio plug-ins\protect\footnote{credit
   tracks by dragging the plugin to the $1^{st}$ audio track and then
   right mouse clicking all subsequent audio tracks which brings up an
   menu. Highlight the effect shown in the middle section and click OK.
+\item [F\_tiltshelf]~\\Boost or cut the lower frequencies and cut or boost higher frequencies of the audio using a two-pole shelving filter with a response similar to that of a standard hi-fi’s tone-controls. This is also known as shelving equalization (EQ).
 \item [F\_treble]~\\Boosts or cuts upper frequencies.
 \item [F\_tremolo]~\\Applies tremolo effect.
 \item [F\_vibrato]~\\Applies vibrato effect.
+\item [F\_virtualbass]~\\Apply audio Virtual Bass filter.
 \item [F\_volume]~\\Change input volume.
 \item [F\_volumedetect]~\\Detect audio volume.
 \end{description}
@@ -4139,23 +4220,32 @@ The following is a list of the integrated video plug-ins \protect\footnote{credi
 \item [F\_blackdetect]~\\Detect video intervals that are
   (almost) black.
 \item [F\_blackframe]~\\Detect frames that are (almost) black.
-\item [F\_boxblur]~\\Blurs the input video. Through the
-  settings you are able to change the power and the radius of the
-  boxblur applied to luma, chroma and alpha.
+\item [F\_blockdetect]~\\Determines blockiness of frames without altering the input frames.
+\item [F\_blurdetect]~\\Determines blurriness of frames without altering the input frames.
+\item [F\_boxblur]~\\Blurs the input video. Through the settings you are able to change the power and the radius of the boxblur applied to luma, chroma and alpha.
 \item [F\_bwdif]~\\Deinterlaces the input image.
 \item [F\_cas]~\\Apply Contrast Adaptive Sharpen filter to video.
 \item [F\_chromakey]~\\Turns a certain color into
   transparency. Operates on YUV colors.
+\item [F\_chromanr]~\\Reduce chrominance noise.
 \item [F\_ciescope]~\\Video CIE scope.
 \item [F\_color]~\\Provide an uniformly colored input.
 \item [F\_colorbalance]~\\Adjusts the color balance.
 \item [F\_colorchannelmixer]~\\Adjusts colors by mixing color
   channels.
+\item [F\_colorchart]~\\The colorchart source provides a colors checker chart.
+\item [F\_colorcontrast]~\\Adjust color contrast between RGB
+  components.
+\item [F\_colorcorrect]~\\Adjust color white balance selectivity
+  for blacks and whites.
 \item [F\_colorkey]~\\Turns a certain color into
   transparency. Operates on RGB colors.
 \item [F\_colorlevels]~\\Adjusts the color levels.
 \item [F\_colormatrix]~\\Converts color matrix.
+\item [F\_colorize]~\\Overlay a solid color on the video stream.
 \item [F\_colorspace]~\\Converts color space.
+\item [F\_colorspectrum]~\\Provides a color spectrum input.
+\item [F\_colortemperature]~\\Adjust color temperature of video.
 \item [F\_cover\_rect]~\\Find and cover a user specified
   object.
 \item [F\_crop]~\\Crops the input video.
@@ -4207,9 +4297,12 @@ The following is a list of the integrated video plug-ins \protect\footnote{credi
 \item [F\_elbg]~\\Apply posterize effect, using the ELBG
   algorithm.
 \item [F\_entropy]~\\Measure video frames entropy.
+\item [F\_epx]~\\Scale the input using EPX algorithm.
 \item [F\_eq]~\\Adjusts brightness, contrast, gamma and
   saturation.
 \item [F\_erosion]~\\Applies erosion effect.
+\item [F\_estdif]~\\Apply Edge Slope Tracing deinterlace.
+\item [F\_exposure]~\\Adjust exposure of the video stream.
 \item [F\_fade]~\\Fade in/out input video.
 \item [F\_fftdnoiz]~\\Denoise frames using $3D FFT$.
 \item [F\_fftfilt]~\\Apply arbitrary expressions to pixels in
@@ -4229,6 +4322,7 @@ The following is a list of the integrated video plug-ins \protect\footnote{credi
 \item [F\_gradfun]~\\Debands video quickly using gradients.
 \item [F\_gradients]~\\Draws a transparent gradient.
 \item [F\_graphmonitor]~\\Show various filtergraph stats.
+\item [F\_grayworld]~\\A color constancy filter that applies color correction based on the grayworld assumption.
 \item [F\_greyedge]~\\Estimates scene illumination by grey
   edge assumption.
 \item [F\_haldclutsrc]~\\Provide an identity Hald CLUT\@.
@@ -4237,10 +4331,11 @@ The following is a list of the integrated video plug-ins \protect\footnote{credi
   equalization.
 \item [F\_histogram]~\\Computes and draws a histogram.
 \item [F\_hqdn3d]~\\Applies a High Quality 3D Denoiser.
-\item [F\_hqx]~\\Scales the input by 2, 3 or 4 using the
-  $hq*x$ magnification algorithm.
-\item [F\_hue]~\\Adjust the hue and saturation of the input
-  video.
+\item [F\_hqx]~\\Scales the input by 2, 3 or 4 using the $hq*x$ magnification algorithm.
+\item [F\_hsvhold]~\\Turns a certain HSV range into gray values.
+\item [F\_hsvkey]~\\Turns a certain HSV range into transparency.
+\item [F\_hue]~\\Adjust the hue and saturation of the input video.
+\item [F\_huesaturation]~\\Apply hue-saturation-intensity adjustments to input video stream.
 \item [F\_idet]~\\Interlace detect Filter.
 \item [F\_il]~\\Deinterleaves or interleaves fields.
 \item [F\_inflate]~\\Applies inflate effect.
@@ -4248,8 +4343,9 @@ The following is a list of the integrated video plug-ins \protect\footnote{credi
   interlaced.
 \item [F\_kerndeint]~\\Applies kernel deinterlacing to the
   input.
-\item [F\_lenscorrection]~\\Rectifies the image by correcting
-  for lens distortion.
+\item [F\_kirsch]~\\Apply kirsch operator.
+\item [F\_latency]~\\Measure filtering latency.
+\item [F\_lenscorrection]~\\Rectifies the image by correcting for lens distortion.
 \item [F\_life]~\\Generate a life pattern.
 \item [F\_limiter]~\\Limit pixels components to the specified
   range.
@@ -4271,6 +4367,7 @@ The following is a list of the integrated video plug-ins \protect\footnote{credi
   deinterlacing.
 \item [F\_median]~\\Pick median pixel from rectangle defined by radius.
 \item [F\_mestimate]~\\Generate motion vectors.
+\item [F\_monochrome]~\\Convert video to gray using custom color filter.
 \item [F\_mpdecimate]~\\Remove near-duplicate frames.
 \item [F\_mptestsrc]~\\Generate various test pattern.
 \item [F\_negate]~\\Negates input video.
@@ -4291,8 +4388,8 @@ The following is a list of the integrated video plug-ins \protect\footnote{credi
 \item [F\_perspective]~\\Corrects the perspective of video.
 \item [F\_phase]~\\Phases shift fields.
 \item [F\_photosensitivity]~\\Filter out photosensitive epilepsy seizure-inducing flashes.
-\item [F\_pixscope]~\\Pixel data analysis for checking color
-  and levels. It will display sample values of color channels.
+\item [F\_pixscope]~\\Pixel data analysis for checking color and levels. It will display sample values of color channels.
+\item [F\_pixelize]~\\Apply pixelization to video stream.
 \item [F\_pp]~\\Filters video using libpostproc.
 \item [F\_pp7]~\\Applies Postprocessing 7 filter.
 \item [F\_prewitt]~\\Apply prewitt operator.
@@ -4310,11 +4407,12 @@ The following is a list of the integrated video plug-ins \protect\footnote{credi
   performs a simple/quick $2D$ spatial gradient measurement on the
   video (usually a grayscale image). It highlights regions of high
   spatial frequency which most ikely correspond to edges.
-\item [F\_rotate]~\\Rotates the input image.
+\item [F\_rotate]~\\Rotates the input image by an arbitrary angle expressed in radians.  If you want to rotate 
+by degrees, you can use the \textit{rotate} plugin instead. 
 \item [F\_sab]~\\Applies shape adaptive blur.
-\item [F\_scale]~\\Scale the input video size and/or convert
-  the image format.
+\item [F\_scale]~\\Scale the input video size and/or convert the image format.
 \item [F\_scdet]~\\Detect video scene change.
+\item [F\_scharr]~\\Apply scharr operator to input video stream.
 \item [F\_scroll]~\\Scroll input video horizontally and/or vertically by constant speed.
 \item [F\_separatefields]~\\Split input video frames into
   fields.
@@ -4322,13 +4420,15 @@ The following is a list of the integrated video plug-ins \protect\footnote{credi
   output video frame.
 \item [F\_setrange]~\\Force color range for the output video
   frame.
+\item [F\_shear]~\\Shear transform the input image.
 \item [F\_showpalette]~\\Display frame palette.
 \item [F\_shuffleframes]~\\Shuffles video frames.
+\item [F\_shufflepixels]~\\Shuffles video pixels.
 \item [F\_shuffleplanes]~\\Shuffles video planes.
 \item [F\_sierpinski]~\\Generate a Sierpinski carpet/triangle fractal, and randomly pan around.
-\item [F\_signalstats]~\\Separates statistics from video
-  analysis.
+\item [F\_signalstats]~\\Separates statistics from video analysis.
 \index{over sharpened footage}
+\item [F\_siti]~\\Calculate Spatial Info (SI) and Temporal Info (TI) scores for a video, as defined in ITU-T P.910: Subjective video quality assessment methods for multimedia applications.
 \item [F\_smartblur]~\\Blurs the input video without impacting
   the outlines. Through the settings you can select the radius, the
   strength and the threshold of luma and chroma. This plugin can be used to correct 
@@ -4358,6 +4458,7 @@ The following is a list of the integrated video plug-ins \protect\footnote{credi
 \item [F\_tlut2]~\\Compute and apply a lookup table from 2
   successive frames.
 \item [F\_tmedian]~\\Pick median pixels from successive frames.
+\item [F\_tmidequalizer]~\\Apply Temporal Midway Equalization.
 \item [F\_tmix]~\\Mix successive video frames.
 \item [F\_transpose]~\\Transposes input video.
 \item [F\_unsharp]~\\Sharpen or blur the input videlo.
@@ -4423,6 +4524,10 @@ If the scale factor is $2$, every $2$ input samples will be reduced to $1$ outpu
 \subsubsection*{Time Stretch}%
 \label{ssub:time_stretch}
 
+\subsubsection*{CD Ripper}%
+\label{ssub:cd_ripper}
+
+
 \subsection{Rendered Video Effects}%
 \label{sub:renederd_video_effets}
 
@@ -4443,9 +4548,6 @@ To create a slow-motion of fast moving video:
     \item At the popup menu, enter the \textit{scale factor} $2$ to run twice as fast, and $0.5$ to run at half speed.
 \end{itemize}
 
-\subsubsection*{CD Ripper}%
-\label{ssub:cd_ripper}
-
 \subsubsection*{720 to 480}%
 \label{ssub:720_to_480}