%general-entities; ]> $LastChangedBy$ $Date$ FFmpeg-&ffmpeg-version; FFmpeg 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. &lfs72_checked; Package Information Download (HTTP): Download (FTP): Download MD5 sum: &ffmpeg-md5sum; Download size: &ffmpeg-size; Estimated disk space required: &ffmpeg-buildsize; Estimated build time: &ffmpeg-time; FFmpeg Dependencies Recommended Optional , , , , , , x264 , OpenCore AMR, , , GSM, libdc1394, libnut (SVN checkout), libxavs (SVN checkout), librtmp, libschroedinger, MediaLibrary, OpenAL, libaacplus, libass, libcelt, libcdio, libopencv, libdc1394, libv4l2, (FFmpeg includes code for its own jpeg2000 encoder and decoder, which is enabled by default), , , , and texi2html (to build HTML documentation). Optional (For Hardware Video Decoding) VA API with corresponding drivers, including: Intel Driver (i965 chipsets only), XVBA Driver for Radeon Cards and VDPAU Driver for NVidia Cards (requires libvdpau). User Notes: Installation of FFmpeg Install FFmpeg by running the following commands: ./configure --prefix=/usr --enable-gpl \ --enable-shared --disable-static && make To convert the docs to html use the following commands: cd doc && sed -i '/@top/d;/ignore$/d' *.texi && sed -i '/@include avoptions/d' avtools-common-opts.texi && for DOC in *.texi do makeinfo --html --no-split -o ${DOC%texi}html ${DOC} done && cd .. If you have installed and wish to create the API documentation (takes about 150 MB of space), issue the command doxygen. This package does not come with a test suite. Now, as the root user: make install && make install-man && mkdir /usr/share/doc/ffmpeg-&ffmpeg-version; && cp doc/*.html doc/*.txt /usr/share/doc/ffmpeg-&ffmpeg-version; The FFmpeg source contains a tool called qt-faststart that can modify QuickTime formatted movies (mov or mp4) so that the header information is located at the beginning of the file instead of the end. This allows video players to begin playing the content before the entire file has been downloaded. An example of where this is useful for preparing videos before uploading them to YouTube. If need qt-faststart, you can compile it with gcc. As the root user: gcc tools/qt-faststart.c -o /usr/bin/qt-faststart If you used doxygen to create the API documentation, install it by issuing the following commands as the root user: mkdir /usr/share/doc/ffmpeg-&ffmpeg-version;/api && cp -v doxy/* /usr/share/doc/ffmpeg-&ffmpeg-version;/api Command Explanations : This switch enables the use of GPL code and permits support for postprocessing, swscale and many other features. : This switch is needed to build the shared libraries, otherwise only static libraries are built and installed. : FFmpeg comes with code to compile decoders for almost every codec you could think of. The only reason to enable a specific codec (and make FFmpeg link to the prerequisite shared library installed on your system) is to make ffmpeg compile an encoder for that codec. FFmpeg is an excellent collection of decoders. If you just want to use FFmpeg to watch video or listen to music (via other applications like Gstreamer or Xine) then you will not benefit from linking FFmpeg to another library. sed -i '/@top/d;/ignore$/d' *.texi and sed -i '/@include avoptions/d' avtools-common-opts.texi: these seds work around problems with the .texi files. makeinfo --html --no-split -o ${DOC%texi}html ${DOC}: this converts the .texi files into html. Configuring FFmpeg Config Files /etc/ffserver.conf and ~/.ffmpeg/ffserver-config ~/.ffmpeg/ffserver-config /etc/ffserver.conf You'll find a sample ffserver configuration file at doc/ffserver.conf in the source tree. Contents Installed Programs Installed Libraries Installed Directories ffmpeg, ffplay, ffprobe, ffserver and qt-faststart libavcodec.so, libavdevice.so, libavfilter.so, libavformat.so, libavutil.so, libpostproc.so, libswresample and libswscale.so /usr/include/libavcodec, /usr/include/libavdevice, /usr/include/libavfilter, /usr/include/libavformat, /usr/include/libavutil, /usr/include/libpostproc, /usr/include/libswresample /usr/include/libswscale, /usr/share/ffmpeg and /usr/share/doc/ffmpeg-&ffmpeg-version; Short Descriptions ffmpeg is a command-line tool to convert video files, network streams and input from a TV card to several video formats. ffmpeg ffplay is a very simple and portable media player using the ffmpeg libraries and the SDL library. ffplay ffprobe gathers information from multimedia streams and prints it in a human and machine-readable fashion. ffprobe ffserver is a streaming server for everything that ffmpeg could use as input (files, streams, TV card input, webcam, etc). ffserver qt-faststart moves the index file to the front of quicktime (mov/mp4) videos. qt-faststart libavcodec.so is a library containing the FFmpeg codecs (both encoding and decoding). libavcodec.so libavdevice.so is the FFmpeg device handling library. libavdevice.so libavfilter.so is a library of filters that can alter video or audio between the decoder and the encoder (or output). libavfilter.so libavformat.so is a library containing the file formats handling (mux and demux code for several formats) used by ffplay as well as allowing the generation of audio or video streams. libavformat.so libavutil.so is the FFmpeg utility library. libavutil.so libpostproc.so is the FFmpeg post processing library. libpostproc.so libswresample.so is the FFmpeg audio rescaling library, it contains functions for converting audio sample formats. libswresample.so libswscale.so is the FFmpeg image rescaling library. libswscale.so