*/version.h: Add note/recommandition about bumping major
[ffmpeg.git] / libavcodec / version.h
1 /*
2  *
3  * This file is part of FFmpeg.
4  *
5  * FFmpeg is free software; you can redistribute it and/or
6  * modify it under the terms of the GNU Lesser General Public
7  * License as published by the Free Software Foundation; either
8  * version 2.1 of the License, or (at your option) any later version.
9  *
10  * FFmpeg is distributed in the hope that it will be useful,
11  * but WITHOUT ANY WARRANTY; without even the implied warranty of
12  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
13  * Lesser General Public License for more details.
14  *
15  * You should have received a copy of the GNU Lesser General Public
16  * License along with FFmpeg; if not, write to the Free Software
17  * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
18  */
19
20 #ifndef AVCODEC_VERSION_H
21 #define AVCODEC_VERSION_H
22
23 /**
24  * @file
25  * @ingroup libavc
26  * Libavcodec version macros.
27  */
28
29 #include "libavutil/version.h"
30
31 #define LIBAVCODEC_VERSION_MAJOR 56
32 #define LIBAVCODEC_VERSION_MINOR 58
33 #define LIBAVCODEC_VERSION_MICRO 100
34
35 #define LIBAVCODEC_VERSION_INT  AV_VERSION_INT(LIBAVCODEC_VERSION_MAJOR, \
36                                                LIBAVCODEC_VERSION_MINOR, \
37                                                LIBAVCODEC_VERSION_MICRO)
38 #define LIBAVCODEC_VERSION      AV_VERSION(LIBAVCODEC_VERSION_MAJOR,    \
39                                            LIBAVCODEC_VERSION_MINOR,    \
40                                            LIBAVCODEC_VERSION_MICRO)
41 #define LIBAVCODEC_BUILD        LIBAVCODEC_VERSION_INT
42
43 #define LIBAVCODEC_IDENT        "Lavc" AV_STRINGIFY(LIBAVCODEC_VERSION)
44
45 /**
46  * FF_API_* defines may be placed below to indicate public API that will be
47  * dropped at a future version bump. The defines themselves are not part of
48  * the public API and may change, break or disappear at any time.
49  *
50  * @note, when bumping the major version it is recommandeded to manually
51  * disable each FF_API_* in its own commit instead of disabling them all
52  * at once through the bump. This improves the git bissect-ability of the change.
53  */
54
55 #ifndef FF_API_VIMA_DECODER
56 #define FF_API_VIMA_DECODER     (LIBAVCODEC_VERSION_MAJOR < 57)
57 #endif
58 #ifndef FF_API_REQUEST_CHANNELS
59 #define FF_API_REQUEST_CHANNELS (LIBAVCODEC_VERSION_MAJOR < 57)
60 #endif
61 #ifndef FF_API_OLD_DECODE_AUDIO
62 #define FF_API_OLD_DECODE_AUDIO (LIBAVCODEC_VERSION_MAJOR < 57)
63 #endif
64 #ifndef FF_API_OLD_ENCODE_AUDIO
65 #define FF_API_OLD_ENCODE_AUDIO (LIBAVCODEC_VERSION_MAJOR < 57)
66 #endif
67 #ifndef FF_API_OLD_ENCODE_VIDEO
68 #define FF_API_OLD_ENCODE_VIDEO (LIBAVCODEC_VERSION_MAJOR < 57)
69 #endif
70 #ifndef FF_API_CODEC_ID
71 #define FF_API_CODEC_ID          (LIBAVCODEC_VERSION_MAJOR < 57)
72 #endif
73 #ifndef FF_API_AUDIO_CONVERT
74 #define FF_API_AUDIO_CONVERT     (LIBAVCODEC_VERSION_MAJOR < 57)
75 #endif
76 #ifndef FF_API_AVCODEC_RESAMPLE
77 #define FF_API_AVCODEC_RESAMPLE  FF_API_AUDIO_CONVERT
78 #endif
79 #ifndef FF_API_DEINTERLACE
80 #define FF_API_DEINTERLACE       (LIBAVCODEC_VERSION_MAJOR < 57)
81 #endif
82 #ifndef FF_API_DESTRUCT_PACKET
83 #define FF_API_DESTRUCT_PACKET   (LIBAVCODEC_VERSION_MAJOR < 57)
84 #endif
85 #ifndef FF_API_GET_BUFFER
86 #define FF_API_GET_BUFFER        (LIBAVCODEC_VERSION_MAJOR < 57)
87 #endif
88 #ifndef FF_API_MISSING_SAMPLE
89 #define FF_API_MISSING_SAMPLE    (LIBAVCODEC_VERSION_MAJOR < 57)
90 #endif
91 #ifndef FF_API_LOWRES
92 #define FF_API_LOWRES            (LIBAVCODEC_VERSION_MAJOR < 57)
93 #endif
94 #ifndef FF_API_CAP_VDPAU
95 #define FF_API_CAP_VDPAU         (LIBAVCODEC_VERSION_MAJOR < 57)
96 #endif
97 #ifndef FF_API_BUFS_VDPAU
98 #define FF_API_BUFS_VDPAU        (LIBAVCODEC_VERSION_MAJOR < 57)
99 #endif
100 #ifndef FF_API_VOXWARE
101 #define FF_API_VOXWARE           (LIBAVCODEC_VERSION_MAJOR < 57)
102 #endif
103 #ifndef FF_API_SET_DIMENSIONS
104 #define FF_API_SET_DIMENSIONS    (LIBAVCODEC_VERSION_MAJOR < 57)
105 #endif
106 #ifndef FF_API_DEBUG_MV
107 #define FF_API_DEBUG_MV          (LIBAVCODEC_VERSION_MAJOR < 57)
108 #endif
109 #ifndef FF_API_AC_VLC
110 #define FF_API_AC_VLC            (LIBAVCODEC_VERSION_MAJOR < 57)
111 #endif
112 #ifndef FF_API_OLD_MSMPEG4
113 #define FF_API_OLD_MSMPEG4       (LIBAVCODEC_VERSION_MAJOR < 57)
114 #endif
115 #ifndef FF_API_ASPECT_EXTENDED
116 #define FF_API_ASPECT_EXTENDED   (LIBAVCODEC_VERSION_MAJOR < 57)
117 #endif
118 #ifndef FF_API_THREAD_OPAQUE
119 #define FF_API_THREAD_OPAQUE     (LIBAVCODEC_VERSION_MAJOR < 57)
120 #endif
121 #ifndef FF_API_CODEC_PKT
122 #define FF_API_CODEC_PKT         (LIBAVCODEC_VERSION_MAJOR < 57)
123 #endif
124 #ifndef FF_API_ARCH_ALPHA
125 #define FF_API_ARCH_ALPHA        (LIBAVCODEC_VERSION_MAJOR < 57)
126 #endif
127 #ifndef FF_API_XVMC
128 #define FF_API_XVMC              (LIBAVCODEC_VERSION_MAJOR < 57)
129 #endif
130 #ifndef FF_API_ERROR_RATE
131 #define FF_API_ERROR_RATE        (LIBAVCODEC_VERSION_MAJOR < 57)
132 #endif
133 #ifndef FF_API_QSCALE_TYPE
134 #define FF_API_QSCALE_TYPE       (LIBAVCODEC_VERSION_MAJOR < 57)
135 #endif
136 #ifndef FF_API_MB_TYPE
137 #define FF_API_MB_TYPE           (LIBAVCODEC_VERSION_MAJOR < 57)
138 #endif
139 #ifndef FF_API_MAX_BFRAMES
140 #define FF_API_MAX_BFRAMES       (LIBAVCODEC_VERSION_MAJOR < 57)
141 #endif
142 #ifndef FF_API_NEG_LINESIZES
143 #define FF_API_NEG_LINESIZES     (LIBAVCODEC_VERSION_MAJOR < 57)
144 #endif
145 #ifndef FF_API_EMU_EDGE
146 #define FF_API_EMU_EDGE          (LIBAVCODEC_VERSION_MAJOR < 57)
147 #endif
148 #ifndef FF_API_ARCH_SH4
149 #define FF_API_ARCH_SH4          (LIBAVCODEC_VERSION_MAJOR < 57)
150 #endif
151 #ifndef FF_API_ARCH_SPARC
152 #define FF_API_ARCH_SPARC        (LIBAVCODEC_VERSION_MAJOR < 57)
153 #endif
154 #ifndef FF_API_UNUSED_MEMBERS
155 #define FF_API_UNUSED_MEMBERS    (LIBAVCODEC_VERSION_MAJOR < 57)
156 #endif
157 #ifndef FF_API_IDCT_XVIDMMX
158 #define FF_API_IDCT_XVIDMMX      (LIBAVCODEC_VERSION_MAJOR < 57)
159 #endif
160 #ifndef FF_API_INPUT_PRESERVED
161 #define FF_API_INPUT_PRESERVED   (LIBAVCODEC_VERSION_MAJOR < 57)
162 #endif
163 #ifndef FF_API_NORMALIZE_AQP
164 #define FF_API_NORMALIZE_AQP     (LIBAVCODEC_VERSION_MAJOR < 57)
165 #endif
166 #ifndef FF_API_GMC
167 #define FF_API_GMC               (LIBAVCODEC_VERSION_MAJOR < 57)
168 #endif
169 #ifndef FF_API_MV0
170 #define FF_API_MV0               (LIBAVCODEC_VERSION_MAJOR < 57)
171 #endif
172 #ifndef FF_API_CODEC_NAME
173 #define FF_API_CODEC_NAME        (LIBAVCODEC_VERSION_MAJOR < 57)
174 #endif
175 #ifndef FF_API_AFD
176 #define FF_API_AFD               (LIBAVCODEC_VERSION_MAJOR < 57)
177 #endif
178 #ifndef FF_API_VISMV
179 /* XXX: don't forget to drop the -vismv documentation */
180 #define FF_API_VISMV             (LIBAVCODEC_VERSION_MAJOR < 57)
181 #endif
182 #ifndef FF_API_DV_FRAME_PROFILE
183 #define FF_API_DV_FRAME_PROFILE  (LIBAVCODEC_VERSION_MAJOR < 57)
184 #endif
185 #ifndef FF_API_AUDIOENC_DELAY
186 #define FF_API_AUDIOENC_DELAY    (LIBAVCODEC_VERSION_MAJOR < 58)
187 #endif
188 #ifndef FF_API_VAAPI_CONTEXT
189 #define FF_API_VAAPI_CONTEXT     (LIBAVCODEC_VERSION_MAJOR < 58)
190 #endif
191 #ifndef FF_API_AVCTX_TIMEBASE
192 #define FF_API_AVCTX_TIMEBASE    (LIBAVCODEC_VERSION_MAJOR < 59)
193 #endif
194 #ifndef FF_API_MPV_OPT
195 #define FF_API_MPV_OPT           (LIBAVCODEC_VERSION_MAJOR < 59)
196 #endif
197 #ifndef FF_API_STREAM_CODEC_TAG
198 #define FF_API_STREAM_CODEC_TAG  (LIBAVCODEC_VERSION_MAJOR < 59)
199 #endif
200 #ifndef FF_API_QUANT_BIAS
201 #define FF_API_QUANT_BIAS        (LIBAVCODEC_VERSION_MAJOR < 59)
202 #endif
203 #ifndef FF_API_RC_STRATEGY
204 #define FF_API_RC_STRATEGY       (LIBAVCODEC_VERSION_MAJOR < 59)
205 #endif
206 #ifndef FF_API_CODED_FRAME
207 #define FF_API_CODED_FRAME       (LIBAVCODEC_VERSION_MAJOR < 59)
208 #endif
209 #ifndef FF_API_MOTION_EST
210 #define FF_API_MOTION_EST        (LIBAVCODEC_VERSION_MAJOR < 59)
211 #endif
212 #ifndef FF_API_WITHOUT_PREFIX
213 #define FF_API_WITHOUT_PREFIX    (LIBAVCODEC_VERSION_MAJOR < 59)
214 #endif
215
216 #endif /* AVCODEC_VERSION_H */