Olaf improvement for README.pkgs + fixes and Andrea replacing improved images + fixes
[goodguy/cin-manual-latex.git] / parts / FFmpeg.tex
index 5a0ce7d5e73c67c38f940ef7e055c922b2cdc5ed..f9c6269562dc5cc0a9b3eee2cfd83665432b702e 100644 (file)
@@ -6,27 +6,27 @@
 \section{FFmpeg Early Probe Explanation}%
 \label{sec:ffmpeg_early_probe_explanation}
 
 \section{FFmpeg Early Probe Explanation}%
 \label{sec:ffmpeg_early_probe_explanation}
 
-When you open media, a series of libraries and codec functions are used to \textit{probe} the data, to see if it can determine the type of file format and codec parameters needed to correctly decode the file.  If ffmpeg probes early -- \textit{Try FFMpeg first} is in effect for the FF button -- it will usually find some way to try to decode just about any contemporary media file.  But there are some times that the built in codecs are actually a better choice.  A lot of this may fall into the category of personal preference.  For example, some may prefer the mpeg library in the \CGG{} code over the ffmpeg code because it has more decoding capability and seems to be more robust when the media is damaged.  In that case you will want the FF button to read \textit{Try FFMpeg last}.
+When you open media, a series of libraries and codec functions are used to \textit{probe} the data, to see if it can determine the type of file format and codec parameters needed to correctly decode the file.  If ffmpeg probes early -- \textit{Try FFMpeg first} is in effect for the FF button (green icon) -- it will usually find some way to try to decode just about any contemporary media file.  But there are some times that the built in codecs are actually a better choice.  A lot of this may fall into the category of personal preference.  For example, some may prefer the mpeg library in the \CGG{} code over the ffmpeg code because it has more decoding capability and seems to be more robust when the media is damaged.  In that case you will want the FF button to read \textit{Try FFMpeg last}.
 
 To summarize, if ffmpeg probes early, you will never get to use the built in libraries, and if you want to skip over buggy old libraries, use ffmpeg early probe enabled so that the newest code will be tried first.
 
 To summarize, if ffmpeg probes early, you will never get to use the built in libraries, and if you want to skip over buggy old libraries, use ffmpeg early probe enabled so that the newest code will be tried first.
-The FF button is located in the upper right hand corner of the main window.
+The green icon is located in the upper right hand corner of the main window.
 
 
-When the icon is red, ffmpeg probes early is enabled and you will see it reads
- \textit{Currently: Try FFMpeg first} when moving over the FF button in the upper 
-right hand corner of the screen.  When the icon is black, ffmpeg probes early is disabled so that 
+When the icon is green, ffmpeg probes early is enabled and you will see it reads
+ \textit{Currently: Try FFMpeg first} when moving over the icon button in the upper 
+right hand corner of the screen.  When the icon is capital "C", ffmpeg probes early is disabled so that 
 ffmpeg probes late and it reads \textit{Currently: Try FFMpeg last}.  The initial default state of 
 the icon is on, that is, ffmpeg probes first. Suggestion is to leave it on except in a few special 
 ffmpeg probes late and it reads \textit{Currently: Try FFMpeg last}.  The initial default state of 
 the icon is on, that is, ffmpeg probes first. Suggestion is to leave it on except in a few special 
-cases where it may be better to have early probes disabled.  When you mouse over the main menu FF 
+cases where it may be better to have early probes disabled.  When you mouse over the main menu icon 
 toggle button, the text displays ffmpeg's \textit{Currently} set position.  Just left mouse click to change to the other setting.
 The ffmpeg early probe state is saved between sessions and is also affected by choices made in Probe Order (refer to section~\ref{sub:probe_order_loading_media}). It is important to note that the various file indexes may need to be rebuilt if you change which codec is being used to decode the file.  There is a warning popup to remind you when you change the default ffmpeg early probe state (unless you have checked the box to no longer show the warning).  You can easily rebuild the index for a specific media file by going to the Resources window, right mouse click on that media, and choose \texttt{Rebuild Index} from the popup choices.
 
 toggle button, the text displays ffmpeg's \textit{Currently} set position.  Just left mouse click to change to the other setting.
 The ffmpeg early probe state is saved between sessions and is also affected by choices made in Probe Order (refer to section~\ref{sub:probe_order_loading_media}). It is important to note that the various file indexes may need to be rebuilt if you change which codec is being used to decode the file.  There is a warning popup to remind you when you change the default ffmpeg early probe state (unless you have checked the box to no longer show the warning).  You can easily rebuild the index for a specific media file by going to the Resources window, right mouse click on that media, and choose \texttt{Rebuild Index} from the popup choices.
 
-Figure~\ref{fig:ff} shows (1) reddish colored FF in upper right hand corner of main window indicating
-that ffmpeg early probes is enabled; (2) \textit{Try FFMpeg last}  indicator message for ffmpeg early probes enabled (note that the color is different because you highlighted the icon); and (3) black colored FF indicates ffmpeg will be used last and you are changing the behavior so that \CGG{} warns you accordingly.
+Figure~\ref{fig:ff} shows (1) greenish colored icon in upper right hand corner of main window indicating
+that ffmpeg early probes is enabled; (2) \textit{Try FFMpeg last}  indicator message for ffmpeg early probes enabled (note that the icon is different because you highlighted the icon); and (3) "C"  icon indicates ffmpeg will be used last and you are changing the behavior so that \CGG{} warns you accordingly.
 
 \begin{figure}[htpb]
     \centering
 
 \begin{figure}[htpb]
     \centering
-    \includegraphics[width=0.7\linewidth]{ff.png}
-    \caption{The three colors of \textit{Probe}}
+    \includegraphics[width=0.9\linewidth]{ff.png}
+    \caption{The three icons of \textit{FF Probe}}
     \label{fig:ff}
 \end{figure}
 
     \label{fig:ff}
 \end{figure}
 
@@ -272,8 +272,8 @@ Then to use and to get 10 bit depth and preserve depth from decode to encode:
     \item check OK, and watch for messages in the terminal window
 \end{enumerate}
 
     \item check OK, and watch for messages in the terminal window
 \end{enumerate}
 
-\subsection{Viewing \& Modifying FFmpeg Format Options inside \CGG{}}%
-\label{sub:viewing_modifying_ffmpeg_cinelerra}
+\subsection{Modifying FFmpeg Format Options inside \CGG{}}%
+\label{sub:modifying_ffmpeg_cinelerra}
 
 There are thousands of options for using ffmpeg.  Now it is possible to \textit{view} the available options for a particular video and audio choice by using the \textit{wrench icon} and then clicking on the \textit{view} box.  FFmpeg has to be the selected file format for this feature to be visible.  It makes it a lot easier since only the applicable options show up as opposed to everything that ffmpeg can do.  These options are just \textit{Hints} and some may be missing due to the way that ffmpeg options are coded -- \CGG{} shows the option data ffmpeg has exposed.
 
 
 There are thousands of options for using ffmpeg.  Now it is possible to \textit{view} the available options for a particular video and audio choice by using the \textit{wrench icon} and then clicking on the \textit{view} box.  FFmpeg has to be the selected file format for this feature to be visible.  It makes it a lot easier since only the applicable options show up as opposed to everything that ffmpeg can do.  These options are just \textit{Hints} and some may be missing due to the way that ffmpeg options are coded -- \CGG{} shows the option data ffmpeg has exposed.
 
@@ -294,21 +294,23 @@ shown on the top line of the Options window.
 
 Parameters exist in 3 layers: ffmpeg, codec, and an interface layer.  You can apply parameters to each layer.  The top 2 layers are accessed with the Kind popup menu. The ffmpeg layer is topmost, and is selected as Kind: ffmpeg.  It can specify many of the more common parameters, such as the bitrate, quality, and so on.  The middle layer is selected as Kind: codec.  These options can specialize your choices, and frequently includes presets and profiles useful for coding well known parameter sets, like \textit{profile=high422}, \textit{preset=medium}, or \textit{tune=film}, etc.   The interface layer may or may not be available.  It is usually accessible only by an \textit{opts} parameter, like \texttt{x264-params key=value:key=value}:\dots  These options are passed directly to the low level codec library.
 
 
 Parameters exist in 3 layers: ffmpeg, codec, and an interface layer.  You can apply parameters to each layer.  The top 2 layers are accessed with the Kind popup menu. The ffmpeg layer is topmost, and is selected as Kind: ffmpeg.  It can specify many of the more common parameters, such as the bitrate, quality, and so on.  The middle layer is selected as Kind: codec.  These options can specialize your choices, and frequently includes presets and profiles useful for coding well known parameter sets, like \textit{profile=high422}, \textit{preset=medium}, or \textit{tune=film}, etc.   The interface layer may or may not be available.  It is usually accessible only by an \textit{opts} parameter, like \texttt{x264-params key=value:key=value}:\dots  These options are passed directly to the low level codec library.
 
-Figure~\ref{fig:video-preset} shows \textit{ffmpeg} video as the Kind. Note the x264opts (should actually be x264-params now) in the Video Preset window immediately below.
+With the \textit{format} button we can access further parameters, called \textit{Private Options}. A window opens that contains a new view button. More details in the section: \nameref{sub:extra_cin_option_ffmpeg}
+
+Figure~\ref{fig:video-preset} shows \textit{ffmpeg} video as the Kind. Note the x264opts (should actually be x264-params now) in the Video Preset window immediately below. There is also the \textit{format} window with private options.
 
 \begin{figure}[htpb]
     \centering
 
 \begin{figure}[htpb]
     \centering
-    \includegraphics[width=0.8\linewidth]{video-preset.png}
-    \caption{FFmpeg wrench, video preset and view options}
+    \includegraphics[width=1.0\linewidth]{video-preset.png}
+    \caption{FFmpeg wrench, video preset, view and format options}
     \label{fig:video-preset}
 \end{figure}
 
     \label{fig:video-preset}
 \end{figure}
 
-Figure~\ref{fig:audio-preset02} shows \textit{ffmpeg} video for the Kind. Note the yellow tooltip in the lower right hand corner describing the highlighted option.  Also note the allowed \textit{Range} values above the box provided for keyins.
+Figure~\ref{fig:audio-preset02} shows \textit{ffmpeg} video for the Kind. Note the yellow tooltip in the lower right hand corner describing the highlighted option.  Also note the allowed \textit{Range} values above the box provided for keyins. There is also the \textit{format} window with private options.
 
 \begin{figure}[htpb]
     \centering
 
 \begin{figure}[htpb]
     \centering
-    \includegraphics[width=0.8\linewidth]{audio-preset02.png}
-    \caption{FFmpeg wrench, audio preset and view options}
+    \includegraphics[width=1.0\linewidth]{audio-preset02.png}
+    \caption{FFmpeg wrench, audio preset, view and format options}
     \label{fig:audio-preset02}
 \end{figure}
 
     \label{fig:audio-preset02}
 \end{figure}