From: Good Guy Date: Sun, 15 Jan 2023 23:13:28 +0000 (-0700) Subject: Credit IgorB and Andrea PiP how-to; added new AUTHORS section X-Git-Tag: 2023-01~6 X-Git-Url: https://cinelerra-gg.org/git/?a=commitdiff_plain;h=79741b6f1c0ede527c81e5c9f8718355c705c7a8;p=goodguy%2Fcin-manual-latex.git Credit IgorB and Andrea PiP how-to; added new AUTHORS section --- diff --git a/CinelerraGG_Manual.tex b/CinelerraGG_Manual.tex index 900c63f..025c5dd 100644 --- a/CinelerraGG_Manual.tex +++ b/CinelerraGG_Manual.tex @@ -48,6 +48,7 @@ svgnames, \include{parts/Tips} \include{parts/Translations} \include{parts/Licenses} +\include{parts/AUTHORS} \chapter*{Appendices} \addappheadtotoc diff --git a/images/Frame_on_PiP.png b/images/Frame_on_PiP.png new file mode 100644 index 0000000..536d4f3 Binary files /dev/null and b/images/Frame_on_PiP.png differ diff --git a/parts/AUTHORS.tex b/parts/AUTHORS.tex new file mode 100644 index 0000000..a99be36 --- /dev/null +++ b/parts/AUTHORS.tex @@ -0,0 +1,96 @@ +\chapter{Authors and Contributors}% +\label{cha:contributors} +\index{Authors} +\index{Contributors} + +\textbf{Adam Williams} - wrote the original complete Cinelerra package Copyrighted under GPL and continues to release new versions yearly; this is the HV version . + +Sam - designed and engineered the \CGG{} website and continuously maintains and updates the Operating system and applications. + +Willam Morrow - was responsible for the current \CGG{} software version which emphasized crash-free stability; he started adding fixes and features in 2007, merged his version based on the HV version with the CV version in 2016, continued to add new features and fixes and incorporate desirable updates from HV and CV until November 2020. + +Software developers working on \CGG{} between the years of 2021 to 2023 along with some areas where they have been crucial (in alphabetical order by first name): +\begin{itemize} + \item Andrew Randrianasulu - continuous ongoing support; bug fixes; library upgrades with relevant patches; some nice enhancements; created and debugged builds: NetBSD and the Android tablet using Termux. + \item Andras Reuss - created very useful Autosave backup feature in Preferences with Andrew assist. + \item Georgy Salnikov - added all of the Help software in the program allowing access to HTML manual pages; major improvement in the Motion plugin; provided scripts and program mods to convert Latex manual to HTML. + \item Manuel Virgil - DPX list writer developer; EXR package upgrade to 3.1.4 (not currently in use). + \item Mat Nieuwenhoven - creator of the AppImage build procedure; LV2 specific control patch; maintains \CGG{} wikipaedia entry. +\end{itemize} + +Personnel providing current recent testing, examples, demos, and work on the manual for the \CGG{} version (in alphabetical order by first name): +\begin{itemize} + \item Andrea Paz - main person who keeps the Manual updated; does builds for early testing of changes; provides examples and demos. + \item Andrey Spitsyn - responsible for the huge task of getting the \CGG{} Manual in LaTex. + \item DeJay - expert user and frequent responder to users in the Forum. + \item Igor Beghetto - provides ingenious solutions; expert on proxies; creates easy to follow demos and tutorials. + \item Glen MacArthur - provides A/V Linux distro which includes \CGG{}. + \item Pierre Autourduglobe - designed and thoroughly tested Interview Mode for implementation; major tester of Mixers; provided reason for getting the Shuttle to work; tested other new features. + \item RafaMar - updated Spanish translations; instrumental in getting friend's help in adding the Help button to the Batch Render menu; provided additional ShapeWipe transitions. + \item Terje Hanssen - especially tests Bluray video media creation providing invaluable feedback. +\end{itemize} + +Software Developers in the earlier years of \CGG{} (alphabetical by last name): +\begin{itemize} +\item Messick, Eric - provided the initial Shuttle code (FixedImagePhoto.com/Contact). +\item Olaf - Cakewalk and Neophyte theme developer - Cakewalk is the default theme due to its being modern; tested and provided much feedback. +\item Roenitz, Frederic - wrote the VP8/VP9 render formats. +\end{itemize} + +Contributors and Software Developers through the years either on HV or CV, the Community Version. They are listed by last name in + alphabetical order, along with some of their specific expert work - often just a single known item listed, and it may not even have been the most important when they obviously did so much more. The CV developers were +responsible for many improvements based on the HV version to include bugfixing, creating build systems, +internationalization work, plugins, and IIRC ffmpeg support appeared in one of the CV forks. +\begin{itemize} +\item Arendt, David - early tester providing significant feedback. +\item Basto, EaSergio M. - completely replaced/fixed autogen.sh; removed old outdated fonts. +\item Baverstock, Richard - assisted with working on the SVG plugin; added tape controls in the capture monitor window; major early tester and contributor. +\item Bielefeldt, Karl - created gradient wipe plugin; worked on outdated mpeg2enc. +\item Brosius, Kevin - provided many patches, for example fixed scroll bar resizing in bclistbox.C; major early contributor. +\item Cornet, Jerome - updated Deinterlace plugin for temporal field swap. +\item Coulon, Jean-Luc - updated French translation; provided patches for translation gettextization strings. +\item Delannoy, Florent - C41 plugin to convert a 16 bit C41 digital intermediate negative file to positive image. +\item Diniz, Rafael - worked on the Brazillian Portuguese translation; created Slackware packages. +\item Dumuid, Pierre - assisted in merge efforts; added column in File Load dialog box for sorting by extension; wrote Selective Temporal Averaging plugin. +\item Erdelyi, Georgely - early on provided patches for libsndfile, titler, and other programs to compile on Suse. +\item Ferralis, Nicola - updated Ubuntu PPA over many years; along with Slock Ruddy, responsible for GreyCStoration plugin (currently inactive in \CGG{}), worked on Italian translation. +\item Ferrer, Alex - originally put up a Cinelerra manual TWiki; maintained the wiki. +\item Flaming, Benjamin - created the Diffkey plugin. +\item Geddes, Tyler - contributed to CV Version. +\item Harang, Camille - worked on fixing guicast programs for big Endian; part of small team of 3 that used Cinelerra to make short documentaries/interviews. +\item Heen, Tollef Fog - contributed to CV Version. +\item Iniguez, Gustavo - contributed to HV version. +\item Joyeux, Sylvain - worked on the UI; worked on configuration/build scripts. +\item Kielb, Andreas - created Firewire I/O patches. +\item Konink, Stefan de - added patch for playing without sound. +\item Kurz, Nathan - added a YUV4MPEG pipe output dialog to the user interface; yuvstream.C program developer; early contributor. +\item Maufrais, Nicolas - collaborated on the Cinelerra-CV manual. +\item Mekkes, Greg - added patch to Motion Blur plugin. +\item Menk, Michael Eric - contributed to CV Version. +\item Montgomery, Monty - Blue Banana color modification plugin; fileffmpeg developer in CV fork. +\item Mueller, Johannes - author of keyboard tracks up/down shortcut and horizontal scrolling with the mouse wheel. +\item Muylkens, Koen - created the Blue Dot theme. +\item Pesegov, Valentin - added Russian translation. +\item Poure, Jean-Michel - provided fixes in build procedures for Debian; first entry in Mailing List September 2004. +\item Rampino, Paolo - aka Akirad, created several colorful/artistic themes; developer of the cinecutie fork (now inactive); worked on Italian translation. +\item Reinholdtsen, Petter - assisted in early hardware upgrade; core developer; moved over new features from HV to CV; fixed many, many bugs. +\item Robak, Herman - created initial draft repositories; major early contributor. +\item Runkaru, Einar - numerous bug fixes; for a long time maintaned a separate branch and currently has his own personal CVE fork; noted first entry in Mailing List in January 2010. +\item Schmarsel, Danny - past website designer and administrator for Cinelerra-CV website; created Cinelerra LiveDVD for Slackware (now inactive); provided German translation. +\item Seigne, Eric - initial French translation. +\item Setti, Riccardo - contributed to CV Version. +\item \textbf{Sixt, Johannes - long time contributor from early on and continuous}; notable for merging into Cinelerra-CV the new releases of HV. +\item Stewart, Joe - worked on Inkscape for Cinelerra; created Motion Blur plugin. +\item Streetman, Dan - developed patch to correct text\_to\_seconds; added patch to Titler for timecode functionality; patches to ReframeRT. +\item Taraba, Mark - provided support for all types of PNGs; first Mailing List entry in August 2004. +\item Thaeter, Christian - maintained server to host Cinelerra-CV website. +\item Tori, Andraz - responsible for Cinelerra x86 Debian packages; worked on an SVG plugin; added overlaying speedup patch; major early contributor and lots of debugging. +\item Traniello, Raffaella - best known for "Cinelerra for Grandma" still active at \url{http://g-raffa.eu/Cinelerra/HOWTO/basics.html} . +\item Vladimirsky, Igor - was igor\_ubuntu at one time; developer of the Russian po file; currently supports the Cinelerra-CV site; and much, much more work; noted first entry in Mailing List 2014. +\item Vosseler, Hermann - developer of the Reroute plugin used to transfer the Alpha +channel and/or the RGB/YUV Components from source track to target track; significant +Bezier automation patch for fades, camera and projector. +\item Wulff, Jonas - patched Histogram plugin to provide a split output screen. +\newline +\item \textbf{+ many others}. +\end{itemize} diff --git a/parts/Real-World.tex b/parts/Real-World.tex index 9d8cd08..bca5948 100644 --- a/parts/Real-World.tex +++ b/parts/Real-World.tex @@ -205,7 +205,7 @@ Start \CGG{} to create an empty video track and two audio tracks (default). If y \item In the align mixer dialog select first \textit{adjust}. Wait for the program do its work. You can see the progress bar at the bottom right of the main window. \item Check the correctness of the alignment from column \textit{R}; the values of the various tracks must be close to 1. Then click on the \textit{apply} button. The tracks will move to the right and align. \item In the main timeline in the audio 9 track, click on the \textit{Play Track} button that is beside the \textit{Arm track} button to enable it (if it is not already). Then enable audio and you can hear the audio while editing. - \item Position the windows mixers in a position you are comfortable with and next in the main window move the cursor to the beginning of the timeline. We can also resize the Mixers windows to your liking. + \item Position the windows mixers in a position you are comfortable with and next in the main window move the cursor to the beginning of the timeline. You can also resize the Mixers windows to your liking. \item Click on play (space bar) and stop when you want to insert the portion of the track you want in the main track. You do this by double clicking in the mixer. \item Go on starting, stopping and double clicking to insert new portions of the clips in the main track. \item When you finish, arm only the main video track and your main audio 9 track. @@ -228,7 +228,7 @@ More info can be found in \nameref{sub:align_timecodes}. \section{Workflow with Keyframes and Plugins}% \label{sec:workflow_keyframes_plugins} -One of the most powerful functions of \CGG{} is the use of keyframes, which can be managed and applied for virtually anything you can do in the timeline, for example using them with plugins. See \nameref{cha:keyframes} for their in-depth description. Since they can be used in many ways, including very sophisticated ones, we present a workflow that can serve as an approach to the basic operation of keyframes applied to plugins\protect\footnote{credit to DeJay.}. +One of the most powerful functions of \CGG{} is the use of keyframes, which can be managed and applied for virtually anything you can do in the timeline, for example using them with plugins. See \nameref{cha:Keyframes} for their in-depth description. Since they can be used in many ways, including very sophisticated ones, we present a workflow that can serve as an approach to the basic operation of keyframes applied to plugins\protect\footnote{credit to DeJay.}. Effects keyframing only works on the effect you are using, they are independently set for each effect you have added. @@ -247,3 +247,52 @@ It is always best to use the File pulldown and the option \textit{Save As} after The final result is to have the first clip with a given plugin setting; the next edit with other settings; and so on throughout the timeline. The advantage is that you have only used the plugin once instead of adding a plugin to each edit. It is preferable to put all the effects on the whole timeline and adjust them for each clip together, so you can see the overall result before moving on to the next clip. Effects are read from the top to the bottom of the stack and it is usually necessary to disable the effects lower down the stack while making adjustments. Using the example of Histogram, Saturation and Sharpen, disable Saturation and Sharpen while adjusting Histogram, or the Videoscope readings will be incorrect and so will the resulting settings, then enable Saturation and adjust that before moving to the next clip. Usually Sharpen is used as a \textit{track effect}, meaning you don't keyframe it for each clip, keeping it disabled until the rest is complete. + +\section{Create a frame for a PiP}% +\label{sec:create_frame_pip} + +In \CGG{} it is quick and easy to create \textit{Picture-in-Picture} (PiP) using the Camera and Projector tools. You can read about how to use these at \nameref{sub:camera_and_projector}. + +PiPs created with Camera and Projector, however, do not have a frame. You can add it with the \textit{Sketcher} plugin that allows for drawing on the canvas of the Compositor window. Such a frame remains fixed in the position where it was created and can only be moved manually, with a movement that must be in accordance with the movement of the PiP. Unfortunately, this is very complicated and imprecise work. +A convenient workaround is to use the \textit{Sketcher} plugin together with the \textit{Crop\&Position} plugin. Here is a description of how to do this. + +Consider an example of a main video (\texttt{bbb\_sunflower\_1080p\_30fps\_ normal.mp4}) and a still image example (\texttt{Rodents.png}). You want to insert a crop of the image surrounded by a colored frame inside the video. Later you can move the PiP with its frame by using keyframes. + +\begin{enumerate} + \item First, create a project with 3 video tracks. From top to bottom name them: \texttt{V3\_Frame 4Picture}, \texttt{V2\_Picture}, \texttt{V1\_Video}. + \item In V1\_Video put the video file. In V2\_Picture put the image (extending it to the length of the video by simply dragging the right edge) - or you can put another video instead of a still image. The V3\_Frame4Picture track is left empty. + \item In V2\_Picture, if needed put the \textit{Scale} plugin, and then 2 separate \textit{Crop\&Position} plugins. The \textit{Scale} plugin may be needed to scale the image - maybe to use it with the Camera tool, however it is not needed for the creation of the frame and PiP. Depending on its use, you can put it in the first or second position in the plugin stack. The first \textit{Crop\&Position} plugin (the topmost one, which is processed first in \textit{Temporary} and whose output becomes the input to the next plugin) will be used only to make the desired crop for our image (Crop Only). The second \textit{Crop\&Position} plugin will be used to place the PiP in the desired position (Position Only). + \item In V3\_Frame4Picture, select the length of the video track and apply the \textit{Sketcher} plugin. Either highlight the region in which to apply the plugin or assign \textit{In/Out Points}, because you can not add plugins to an empty track. Now add the \textit{Shared Effects} of the \textit{Crop\&Position} plugin, taking care to choose the second plugin (Position Only) which is further down the stack (for shared effects see: \nameref{sec:shared_effect_tracks}). +\end{enumerate} + +This is what the timeline should look like: + +\begin{lstlisting}[numbers=none] + - V3_Frame4Picture + -> Sketcher + -> Shared V2_Picture:Crop&Position (Position ONLY) + - V2_Picture + -> Rodents.png + -> Crop&Position (Crop ONLY) + -> Scale + -> Crop&Position (Position ONLY) + - V1_Video + -> bbb_sunflower_1080p_30fps_normal.mp4 +\end{lstlisting} + + +as you can see in figure~\ref{fig:Frame_on_PiP}. + +\begin{figure}[htpb] + \centering + \includegraphics[width=1.0\linewidth]{Frame_on_PiP.png} + \caption{Setting effects} + \label{fig:Frame_on_PiP} +\end{figure} + +All that remains is to create the frame on the image that has already been cropped to the desired size. Drawing the frame with the \textit{Sketcher} plugin is not difficult but requires precision. You can draw the 4 corner points imprecisely (\texttt{Shift + LMB}) and then arrange the created points by dragging them to exactly the right coordinates (\texttt{Ctrl+LMB}), or you can impose the coordinates on the 4 corner points by entering the exact numbers in the \texttt{X} and \texttt{Y Input} windows. You can also adjust the thickness of the frame and the color (see \nameref{sub:Sketcher}). + +If you want to move the PiP to another position you have to go back to \textit{Crop\&Position} (Position Only) and change the coordinates. Now you can see that the frame also moves along with the image thanks to the Shared effect present in the V3\_Frame4Picture track, which returns the same coordinates to the \textit{Sketcher} plugin. + +Finally, you can animate the position of the PiP as well as the thickness and color of the frame throughout the video using the keyframes (see \nameref{cha:keyframes}). +