FFmpeg
Macros
Library Version Macros

Macros

#define AV_VERSION_INT(a, b, c)   ((a)<<16 | (b)<<8 | (c))
 
#define AV_VERSION_DOT(a, b, c)   a ##.## b ##.## c
 
#define AV_VERSION(a, b, c)   AV_VERSION_DOT(a, b, c)
 
#define AV_VERSION_MAJOR(a)   ((a) >> 16)
 Extract version components from the full AV_VERSION_INT int as returned by functions like avformat_version() and avcodec_version() More...
 
#define AV_VERSION_MINOR(a)   (((a) & 0x00FF00) >> 8)
 
#define AV_VERSION_MICRO(a)   ((a) & 0xFF)
 

Detailed Description

Useful to check and match library version in order to maintain backward compatibility.

The FFmpeg libraries follow a versioning sheme very similar to Semantic Versioning (http://semver.org/) The difference is that the component called PATCH is called MICRO in FFmpeg and its value is reset to 100 instead of 0 to keep it above or equal to 100. Also we do not increase MICRO for every bugfix or change in git master.

Prior to FFmpeg 3.2 point releases did not change any lib version number to avoid aliassing different git master checkouts. Starting with FFmpeg 3.2, the released library versions will occupy a separate MAJOR.MINOR that is not used on the master development branch. That is if we branch a release of master 55.10.123 we will bump to 55.11.100 for the release and master will continue at 55.12.100 after it. Each new point release will then bump the MICRO improving the usefulness of the lib versions.

Macro Definition Documentation

◆ AV_VERSION_INT

#define AV_VERSION_INT (   a,
  b,
  c 
)    ((a)<<16 | (b)<<8 | (c))

Definition at line 56 of file version.h.

◆ AV_VERSION_DOT

#define AV_VERSION_DOT (   a,
  b,
  c 
)    a ##.## b ##.## c

Definition at line 57 of file version.h.

◆ AV_VERSION

#define AV_VERSION (   a,
  b,
  c 
)    AV_VERSION_DOT(a, b, c)

Definition at line 58 of file version.h.

◆ AV_VERSION_MAJOR

#define AV_VERSION_MAJOR (   a)    ((a) >> 16)

Extract version components from the full AV_VERSION_INT int as returned by functions like avformat_version() and avcodec_version()

Definition at line 64 of file version.h.

◆ AV_VERSION_MINOR

#define AV_VERSION_MINOR (   a)    (((a) & 0x00FF00) >> 8)

Definition at line 65 of file version.h.

◆ AV_VERSION_MICRO

#define AV_VERSION_MICRO (   a)    ((a) & 0xFF)

Definition at line 66 of file version.h.