Changes between Version 6 and Version 7 of Using libav*


Ignore:
Timestamp:
Sep 2, 2012, 8:14:31 AM (7 years ago)
Author:
rogerdpack
Comment:

add doxygen links, clarify some libs

Legend:

Unmodified
Added
Removed
Modified
  • Using libav*

    v6 v7  
    11FFmpeg itself is composed of several subcomponents that can be used individually, and outside of FFmpeg, for instance in your own program.  These are
    2 * libavformat which contains muxer information and capabilities.
     2* libavformat which contains muxer and de-muxer information and capabilities.
    33* libavcodec which contains all the (built-in) video encoding and decoding codecs that FFmpeg contains.
    44* libswscale contains the (raw pixel) format conversions, and also high speed/assembly optimized versions of certain scaling routines.
    5 * libavfilter contains the filters FFmpeg contains, like adjusting audio sample rate, etc.* libavutil ??
     5* libavfilter contains the filters FFmpeg contains, like adjusting audio sample rate, etc.
    66* libavdevice contains interfaces for working with "local devices" for instance webcams in windows, line-in audio in linux, etc.
    77* libpostproc ??
    88* libswresample audio conversion routines (?)
    99* libavresample audio conversion routines (?)
     10* libavutil "contains the code shared across all the other FFmpeg libraries" so isn't used by itself, that I know of.
    1011
    1112= Getting started =
     
    1314There is not much "web based" official documentation for using these libraries.
    1415
    15 Check [https://github.com/FFmpeg/FFmpeg/tree/master/doc/examples doc/examples], also doxygen documentation is fairly complete and should work as reference (example: the [http://ffmpeg.org/doxygen/trunk/group__libavf.html libavformat doxygen]).
     16Check [https://github.com/FFmpeg/FFmpeg/tree/master/doc/examples doc/examples], also doxygen documentation is fairly complete and should work as reference (example: the [http://ffmpeg.org/doxygen/trunk/files.html example codes as doxygen]).
    1617
    1718In general, you must have the appropriate library compiled/available on your machine (for instance, if using packages, something like libswscale-dev must be installed, or configure, build, and install FFmpeg yourself using the --enable-shared configure option), then you include the appropriate header file in your C code, then link against that library's linker file, like "gcc input.c -lswscale" or the like during the linker phase.
     
    2728= Hints =
    2829
     30== libavformat ==
     31
     32Its [http://ffmpeg.org/doxygen/trunk/group__libavf.html Doxygen docu].  see most of the tutorials, as well.
     33
    2934== libavcodec ==
     35
     36Its [http://ffmpeg.org/doxygen/trunk/group__libavc.html Doxygen docu].  see most of the tutorials, as well.
    3037
    3138Determining the right values to pass to AVCodecContext:
     
    4148== libswresample ==
    4249
    43 [https://github.com/FFmpeg/FFmpeg/blob/master/doc/swresample.txt This file] is also given as documentation.
     50[https://github.com/FFmpeg/FFmpeg/blob/master/doc/swresample.txt This file] is also given as documentation.  You may find some docu under the doxygen of libavcodec "Audio resampling".
    4451
    4552== libswscale ==
     
    4754[https://github.com/FFmpeg/FFmpeg/blob/master/doc/swscale.txt This file] is also given as documentation.
    4855
     56== libavdevice ==
     57
     58Its [http://ffmpeg.org/doxygen/trunk/group__lavd.html doxygen documentation].
     59
    4960= Contact =
    5061