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 54 59 #define LIBAVUTIL_VERSION_MINOR 7 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 < 55) 91 #endif 92 #ifndef FF_API_PIX_FMT 93 #define FF_API_PIX_FMT (LIBAVUTIL_VERSION_MAJOR < 55) 94 #endif 95 #ifndef FF_API_CONTEXT_SIZE 96 #define FF_API_CONTEXT_SIZE (LIBAVUTIL_VERSION_MAJOR < 55) 97 #endif 98 #ifndef FF_API_PIX_FMT_DESC 99 #define FF_API_PIX_FMT_DESC (LIBAVUTIL_VERSION_MAJOR < 55) 100 #endif 101 #ifndef FF_API_AV_REVERSE 102 #define FF_API_AV_REVERSE (LIBAVUTIL_VERSION_MAJOR < 55) 103 #endif 104 #ifndef FF_API_AUDIOCONVERT 105 #define FF_API_AUDIOCONVERT (LIBAVUTIL_VERSION_MAJOR < 55) 106 #endif 107 #ifndef FF_API_CPU_FLAG_MMX2 108 #define FF_API_CPU_FLAG_MMX2 (LIBAVUTIL_VERSION_MAJOR < 55) 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 < 55) 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 < 55) 121 #endif 122 #ifndef FF_API_VDPAU 123 #define FF_API_VDPAU (LIBAVUTIL_VERSION_MAJOR < 55) 124 #endif 125 #ifndef FF_API_GET_CHANNEL_LAYOUT_COMPAT 126 #define FF_API_GET_CHANNEL_LAYOUT_COMPAT (LIBAVUTIL_VERSION_MAJOR < 55) 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 < 55) 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 < 55) 139 #endif 140 141 142 #ifndef FF_CONST_AVUTIL53 143 #if LIBAVUTIL_VERSION_MAJOR >= 53 144 #define FF_CONST_AVUTIL53 const 145 #else 146 #define FF_CONST_AVUTIL53 147 #endif 148 #endif 149 150 /** 151 * @} 152 */ 153 154 #endif /* AVUTIL_VERSION_H */ 155 156