FFmpeg: Difference between revisions
Weibullguy (talk | contribs) mNo edit summary |
No edit summary |
||
| Line 53: | Line 53: | ||
--enable-libogg | --enable-libogg | ||
--enable-libtheora | --enable-libtheora | ||
--enable- | --enable-libx264 | ||
--enable- | --enable-libxvid | ||
--enable-libvorbis | --enable-libvorbis | ||
Revision as of 17:16, 28 June 2007
Introduction to FFmpeg
FFmpeg is a solution to record, convert and stream audio and video. It is a very fast video and audio converter and it can also acquire from a live audio/video source. Designed to be intuitive, the command-line interface (ffmpeg) tries to figure out all the parameters, when possible. FFmpeg can also convert from any sample rate to any other, and resize video on the fly with a high quality polyphase filter. FFmpeg can use a video4linux compatible video source and any Open Sound System audio source.
Project Homepage: http://ffmpeg.mplayerhq.hu/
Using a SVN Snapshot
If you would rather use a svn snapshot instead of the tarball above grab the source with Subversion and optionaly create a tarball for use at a later time:
svn co svn://svn.mplayerhq.hu/ffmpeg/trunk ffmpeg
tar cvjf ffmpeg-r$(svnversion ffmpeg).tar.bz2 ffmpeg
Dependencies
Optional
Configuring
Look at the output of ./configure --help and add the parameters for the optional dependencies you have installed.
A few options you may want to use:
--enable-pp --enable-liba52 --enable-libfaac --enable-libfaad --enable-libmp3lame --enable-libogg --enable-libtheora --enable-libx264 --enable-libxvid --enable-libvorbis
Non-Multilib
If you are not building a SVN Snapshot apply the following patches:
patch -Np1 -i ../ffmpeg-0.4.9-pre1-gcc4-1.patch && patch -Np1 -i ../ffmpeg-0.4.9-pre1-amr_fixes-1.patch
Compile the package:
./configure --prefix=/usr --enable-shared \
--enable-pthreads --enable-gpl \
--disable-ffplay &&
make
Install the package
make install
Multilib
32Bit
If you are not building a SVN Snapshot apply the following patches:
patch -Np1 -i ../ffmpeg-0.4.9-pre1-gcc4-1.patch && patch -Np1 -i ../ffmpeg-0.4.9-pre1-amr_fixes-1.patch
Compile the package:
export USE_ARCH=32 &&
CFLAGS="${BUILD32} -fPIC" \
./configure --prefix=/usr --cc="gcc ${BUILD32}" \
--enable-shared --enable-pthreads \
--enable-gpl --disable-ffplay &&
make
Install the package
make install &&
mv -v /usr/bin/ffmpeg{,-32} &&
unset USE_ARCH
N32
If you are not building a SVN Snapshot apply the following patches and sed:
patch -Np1 -i ../ffmpeg-0.4.9-pre1-gcc4-1.patch && patch -Np1 -i ../ffmpeg-0.4.9-pre1-amr_fixes-1.patch && sed -i 's:$(prefix)/lib:&32:g' $(grep -lr '$(prefix)/lib' *)
Compile the package:
export USE_ARCH=n32 &&
CFLAGS="${BUILDN32} -fPIC" \
./configure --prefix=/usr --cc="gcc ${BUILD32}" \
--{,sh}libdir=/usr/lib32 \
--enable-shared --enable-pthreads \
--enable-gpl --disable-ffplay &&
make
Install the package
make install &&
mv -v /usr/bin/ffmpeg{,-n32} &&
unset USE_ARCH
64Bit
If you are not building a SVN Snapshot apply the following patches and sed:
patch -Np1 -i ../ffmpeg-0.4.9-pre1-gcc4-1.patch && patch -Np1 -i ../ffmpeg-0.4.9-pre1-amr_fixes-1.patch && sed -i 's:$(prefix)/lib:&64:g' $(grep -lr '$(prefix)/lib' *)
Compile the package:
export USE_ARCH=64 &&
CFLAGS="${BUILD64} -fPIC" \
./configure --prefix=/usr --cc="gcc ${BUILD64}" \
--{,sh}libdir=/usr/lib64 \
--enable-shared --enable-pthreads \
--enable-gpl --disable-ffplay &&
make
Install the package
make install &&
mv -v /usr/bin/ffmpeg{,-64} &&
ln -sfv multiarch_wrapper /usr/bin/ffmpeg &&
unset USE_ARCH
Contents
| Installed Directories: | /usr/lib/vhook, /usr/include/ffmpeg |
|---|---|
| Installed Programs: | ffmpeg, ffserver |
| Installed Libraries: | libavcodec.so, libavformat.so, |
| Symlinks: | None |
Short Descriptions
| ffmpeg | is a hyper fast audio and video encoder. |
|---|---|
| ffserver | is a hyper fast multi format audio and video streaming server. |
| libavcodec | is a library containing all the FFmpeg audio/video encoders and decoders. |
| libavformat | is a library containing parsers and generators for all common audio/video formats. |