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