1/* 2 * copyright (c) 2003 Fabrice Bellard 3 * 4 * This file is part of FFmpeg. 5 * 6 * FFmpeg is free software; you can redistribute it and/or 7 * modify it under the terms of the GNU Lesser General Public 8 * License as published by the Free Software Foundation; either 9 * version 2.1 of the License, or (at your option) any later version. 10 * 11 * FFmpeg is distributed in the hope that it will be useful, 12 * but WITHOUT ANY WARRANTY; without even the implied warranty of 13 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU 14 * Lesser General Public License for more details. 15 * 16 * You should have received a copy of the GNU Lesser General Public 17 * License along with FFmpeg; if not, write to the Free Software 18 * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA 19 */ 20 21#ifndef AVUTIL_VERSION_H 22#define AVUTIL_VERSION_H 23 24#include "macros.h" 25 26/** 27 * @addtogroup version_utils 28 * 29 * Useful to check and match library version in order to maintain 30 * backward compatibility. 31 * 32 * @{ 33 */ 34 35#define AV_VERSION_INT(a, b, c) (a<<16 | b<<8 | c) 36#define AV_VERSION_DOT(a, b, c) a ##.## b ##.## c 37#define AV_VERSION(a, b, c) AV_VERSION_DOT(a, b, c) 38 39/** 40 * @} 41 */ 42 43/** 44 * @file 45 * @ingroup lavu 46 * Libavutil version macros 47 */ 48 49/** 50 * @defgroup lavu_ver Version and Build diagnostics 51 * 52 * Macros and function useful to check at compiletime and at runtime 53 * which version of libavutil is in use. 54 * 55 * @{ 56 */ 57 58#define LIBAVUTIL_VERSION_MAJOR 52 59#define LIBAVUTIL_VERSION_MINOR 92 60#define LIBAVUTIL_VERSION_MICRO 100 61 62#define LIBAVUTIL_VERSION_INT AV_VERSION_INT(LIBAVUTIL_VERSION_MAJOR, \ 63 LIBAVUTIL_VERSION_MINOR, \ 64 LIBAVUTIL_VERSION_MICRO) 65#define LIBAVUTIL_VERSION AV_VERSION(LIBAVUTIL_VERSION_MAJOR, \ 66 LIBAVUTIL_VERSION_MINOR, \ 67 LIBAVUTIL_VERSION_MICRO) 68#define LIBAVUTIL_BUILD LIBAVUTIL_VERSION_INT 69 70#define LIBAVUTIL_IDENT "Lavu" AV_STRINGIFY(LIBAVUTIL_VERSION) 71 72/** 73 * @} 74 * 75 * @defgroup depr_guards Deprecation guards 76 * FF_API_* defines may be placed below to indicate public API that will be 77 * dropped at a future version bump. The defines themselves are not part of 78 * the public API and may change, break or disappear at any time. 79 * 80 * @{ 81 */ 82 83#ifndef FF_API_GET_BITS_PER_SAMPLE_FMT 84#define FF_API_GET_BITS_PER_SAMPLE_FMT (LIBAVUTIL_VERSION_MAJOR < 54) 85#endif 86#ifndef FF_API_FIND_OPT 87#define FF_API_FIND_OPT (LIBAVUTIL_VERSION_MAJOR < 54) 88#endif 89#ifndef FF_API_OLD_AVOPTIONS 90#define FF_API_OLD_AVOPTIONS (LIBAVUTIL_VERSION_MAJOR < 54) 91#endif 92#ifndef FF_API_PIX_FMT 93#define FF_API_PIX_FMT (LIBAVUTIL_VERSION_MAJOR < 54) 94#endif 95#ifndef FF_API_CONTEXT_SIZE 96#define FF_API_CONTEXT_SIZE (LIBAVUTIL_VERSION_MAJOR < 54) 97#endif 98#ifndef FF_API_PIX_FMT_DESC 99#define FF_API_PIX_FMT_DESC (LIBAVUTIL_VERSION_MAJOR < 54) 100#endif 101#ifndef FF_API_AV_REVERSE 102#define FF_API_AV_REVERSE (LIBAVUTIL_VERSION_MAJOR < 54) 103#endif 104#ifndef FF_API_AUDIOCONVERT 105#define FF_API_AUDIOCONVERT (LIBAVUTIL_VERSION_MAJOR < 54) 106#endif 107#ifndef FF_API_CPU_FLAG_MMX2 108#define FF_API_CPU_FLAG_MMX2 (LIBAVUTIL_VERSION_MAJOR < 54) 109#endif 110#ifndef FF_API_SAMPLES_UTILS_RETURN_ZERO 111#define FF_API_SAMPLES_UTILS_RETURN_ZERO (LIBAVUTIL_VERSION_MAJOR < 54) 112#endif 113#ifndef FF_API_LLS_PRIVATE 114#define FF_API_LLS_PRIVATE (LIBAVUTIL_VERSION_MAJOR < 54) 115#endif 116#ifndef FF_API_LLS1 117#define FF_API_LLS1 (LIBAVUTIL_VERSION_MAJOR < 54) 118#endif 119#ifndef FF_API_AVFRAME_LAVC 120#define FF_API_AVFRAME_LAVC (LIBAVUTIL_VERSION_MAJOR < 54) 121#endif 122#ifndef FF_API_VDPAU 123#define FF_API_VDPAU (LIBAVUTIL_VERSION_MAJOR < 54) 124#endif 125#ifndef FF_API_GET_CHANNEL_LAYOUT_COMPAT 126#define FF_API_GET_CHANNEL_LAYOUT_COMPAT (LIBAVUTIL_VERSION_MAJOR < 54) 127#endif 128#ifndef FF_API_OLD_OPENCL 129#define FF_API_OLD_OPENCL (LIBAVUTIL_VERSION_MAJOR < 54) 130#endif 131#ifndef FF_API_XVMC 132#define FF_API_XVMC (LIBAVUTIL_VERSION_MAJOR < 54) 133#endif 134#ifndef FF_API_INTFLOAT 135#define FF_API_INTFLOAT (LIBAVUTIL_VERSION_MAJOR < 54) 136#endif 137#ifndef FF_API_OPT_TYPE_METADATA 138#define FF_API_OPT_TYPE_METADATA (LIBAVUTIL_VERSION_MAJOR < 54) 139#endif 140#ifndef FF_API_AVFRAME_COLORSPACE 141#define FF_API_AVFRAME_COLORSPACE (LIBAVUTIL_VERSION_MAJOR >= 52) 142#endif 143 144 145#ifndef FF_CONST_AVUTIL53 146#if LIBAVUTIL_VERSION_MAJOR >= 53 147#define FF_CONST_AVUTIL53 const 148#else 149#define FF_CONST_AVUTIL53 150#endif 151#endif 152 153/** 154 * @} 155 */ 156 157#endif /* AVUTIL_VERSION_H */ 158 159