I try to attach a draft on the paragraph on alternative builds, to be
put in the appendix.
If it goes well, I would propose to wait until Andrew's patches are
put into git.

@Phyllis For the draft I used what you reported in previous emails.
\section{Experimental Builds}
\label{sec:experimental_builds}
\index{build!experimental}

The main compilation we have seen leads to building \CGG{} with its own 
internal ffmpeg, provided with stability patches and feature patches. Normally 
ffmpeg is updated to version x.1 of each release. The reasons why it is best to 
use thirdparty with their static versions of the libraries and ffmpeg are 
explained in detail in \nameref{Using the very latest Libraries} and in 
\nameref{Unbundled Builds}.

You can still compile \CGG{} with ffmpeg-git to enjoy the latest version. This 
build may lead to feature variation and lower stability.
You have to supply the actual URL location of the ffmpeg git as you can see in 
this example \texttt{bld.sh} script:

\begin{lstlisting}[numbers=none]
#!/bin/bash
./autogen.sh
./configure --with-single-user --with-booby 
--with-git-ffmpeg=https://git.ffmpeg.org/ffmpeg.git
make && make install ) 2>1 | tee log
mv Makefile Makefile.cfg
cp Makefile.devel Makefile
\end{lstlisting}

Since the procedure for obtaining the latest ffmpeg version is not always kept 
up-to-date and the line numbers will always change, you may have to create that 
patch first. Generally those line numbers are only updated by a developer when 
a new stable version with worthwhile features is actually included in the 
\CGG{} build. FFmpeg is constantly changing and many times the git version is 
not as stable as desired.

Finally, it is possible to compile \CGG{} so that it uses ffmpeg which is 
already installed on the system. This build lightens the compile and may 
increase performance in both rendering and timeline. Again there may be 
variations in functionality and less stability.
Getting a build to work in a system environment is not easy. If you have 
already installed libraries which are normally in the thirdparty build, getting 
them to be recognized means you have to install the devel version
so the header files which match the library interfaces exist. If you want to 
build using only the thirdparty libraries installed in your system, just 
include \texttt{-–without-thirdparty} to your configure script. For example:

\begin{lstlisting}[numbers=none]
 ./confgure --with-single-user --disable-static-build --without-thirdparty 
--without-libdpx
\end{lstlisting}

libdpx is just such an example of lost functionality: this build of \CGG{} will 
not be able to use the DPX format.

Attachment: Developer.tar.gz
Description: application/gzip

-- 
Cin mailing list
Cin@lists.cinelerra-gg.org
https://lists.cinelerra-gg.org/mailman/listinfo/cin

Reply via email to