proxy examples from IgorB and a few other changes
[goodguy/cin-manual-latex.git] / parts / Rendering.tex
index ce979033a3fd0411dab5bf201a2d5bc4c3c06ef2..af97965049ba418a31f32ba583bb58dc656293d6 100644 (file)
@@ -110,7 +110,9 @@ Use the \textit{File} pulldown and select Render to start the render dialog
   of if you use specific render formats frequently, is to save that
   profile for future usage without having to set it up again.
 \item[Save Profile:] after setting up your render preference
-  formats, use the save profile button to save it.
+  formats, do not forget to type in a format name and then use the save profile
+button to save it.  The named/saved Profiles will be saved in your
+\$HOME/.bcast5/Cinelerra\_rc file where it can be carefully modified.
 \item[Delete Profile:] if you want to delete a saved profile,
   highlight the one you no longer want and delete.
 \item[Insertion strategy:] \index{insertion strategy} select an insertion mode from the
@@ -172,7 +174,9 @@ all parameter configurations.
        list.  The list is provided by ffmpeg as input selection, but is
        more like suggestions than fact.  For example, the raw formats can
        take almost any format, but the rawvideo codec actually specifies no
-       legal formats.
+       legal formats.  Note that if you want a very specific Bitrate you must
+       make sure there is not conflicting parameter values set such as Quality
+       or CRF.
 \end{itemize}
 
 \noindent Some option files provide \textit{cin\_pix\_fmt} to
@@ -183,7 +187,7 @@ errors when the other provided parameters conflict with the
 parameter dictates pixel format must be \texttt{yuv420p}.
 
 \paragraph{cin\_bitrate} If you specify the bitrate, you can not
-specify the quality.\\ Example: \textit{cin\_bitrate=2000000}
+specify the quality or CRF.\\ Example: \textit{cin\_bitrate=2000000}
 
 \paragraph{cin\_quality} If you specify the quality, you can not
 specify the bitrate.\\ Example: \textit{cin\_quality=7}
@@ -213,6 +217,8 @@ information on all these options can be found at
 \href{https://ffmpeg.org/ffmpeg-all.html#Format-Options}{ffmpeg.org}
 sections 19 and 21. See also \nameref{sub:modifying_ffmpeg_cinelerra}.
 
+Render presets in \CGG{} should work Out Of the Box. You can still configure the \textit{Global Options} and \textit{Private Options} manually. Finding the combination of parameters that best suits your needs, or simply finding working (\textit{legal}) combinations, requires studying each codec in depth. You can start by looking in Wikipedia until you get to download and study the \textit{white papers} of the codecs of interest. In any case, you must then start a long experimental phase, trying presets with different configurations or creating new ones, until you get satisfactory results. If you create new presets it is a good idea to make them known on the mailing list ({\small \url{https://lists.cinelerra-gg.org/mailman/listinfo/cin}}) or on the MantisBT Bug Tracker ({\small \url{https://www.cinelerra-gg.org/bugtracker/my_view_page.php}}) so that they can be integrated into subsequent versions of \CGG{}. For an introduction see \nameref{sec:overview_formats}.
+
 \section{Some Specific Rendering}%
 \label{sec:some_specific_rendering}
 
@@ -671,6 +677,39 @@ video/audio wrenches and choose \textit{faststart\_h264}.  With the
 possible, but you can easily modify these options in the associated
 Video Preset textbox.
 
+\section{About Image Sequences}%
+\label{sec:about_image_sequences}
+\index{image sequence}
+
+\CGG{} supports image sequences with both decoding and encoding.
+
+\CGG{} by default uses ffmpeg as encoding/decoding engine but we can disable it to have the specific internal engine available. See \nameref{sec:ffmpeg_early_probe_explanation} on how to switch between engines. With the internal engine we can create and load sequences of OpenEXR; PNG; TIFF; TGA; GIF; PPM and JPEG. With ffmpeg we can create and load DPX sequences or create a custom preset for any kind of image. Using these formats results in great timeline efficiency and high video quality at the cost of taking up a lot of space because they are uncompressed (or with lossless compression).
+By rendering, you will get as many still images as there are frames in the project, plus a \textit{file-list} (or \textit{TOC}) that indexes the images. A good practice is to create a folder to contain the images (for example \texttt{/tmp/img\_seq/}) and then open the rendering window in \CGG{} and set a serial and increasing number as the name (for example: \texttt{/tmp/img\_seq/image \%05d.png}). \textit{image} is a generic name chosen at will; $\%$ creates a progressive sequence of distinct images; $05d$ indicates how many digits the image number will be, in this case 5 digits to go from $00000$ to $99999$.
+Once we have our folder of images, if we want to import it in a project just load the file-list, which includes the link to all the files of the sequence.
+To learn more about using and creating a preset with ffmpeg of an image sequence, see \nameref{sec:ffmpeg_image2_streams} and/or \nameref{sec:image_sequence_creation}.
+
+\section{Data storage formulas}%
+\label{sec:data_storage_formulas}
+\index{data storage}
+
+If we are dealing with large projects and poorly compressed formats, we will get large files that are difficult to manage and take up a lot of space on the HDD. We present some simple formulas to be able to calculate the space that will be occupied and the data rates we have to deal with:
+
+\begin{description}
+       \item[Frame size] 
+       
+       \[ \dfrac{Width \times Height [pixels] \times BitDepth [bits/pixel] \times Color}{8 [bit/Byte]} \]      
+       \[= ... [MB/frame] \]
+       \item[File size] 
+       
+       \[ Frame size [MB/frame] \times frames [frame] = ... [MB] \]
+       \item[Data Rate] 
+       
+       \[ Frame size [MB/frame] \times fps [frame/sec] = ... [MB/sec] \]
+       \item[Data in 1 Hour] 
+       
+       \[ \dfrac{Data Rate [MB/sec] \times 3600 [sec]}{1024MB/GB}  = ... [GB] \]       
+\end{description}
+
 \section{Batch Rendering}%
 \label{sec:batch_rendering}
 \index{batch rendering}