diff --git a/fftools/cmdutils.c b/fftools/cmdutils.c index 078a9b520f..91b1308b0c 100644 --- a/fftools/cmdutils.c +++ b/fftools/cmdutils.c @@ -32,6 +32,7 @@ #include "config.h" #include "compat/va_copy.h" #include "libavformat/avformat.h" +#include "libavformat/version.h" #include "libavfilter/avfilter.h" #include "libavdevice/avdevice.h" #include "libswscale/swscale.h" diff --git a/fftools/ffprobe.c b/fftools/ffprobe.c index 44d0ea3049..37bdb9a7e6 100644 --- a/fftools/ffprobe.c +++ b/fftools/ffprobe.c @@ -29,6 +29,7 @@ #include #include "libavformat/avformat.h" +#include "libavformat/version.h" #include "libavcodec/avcodec.h" #include "libavcodec/version.h" #include "libavutil/avassert.h" diff --git a/libavdevice/pulse_audio_dec.c b/libavdevice/pulse_audio_dec.c index 989fc6c689..a33d1afd1f 100644 --- a/libavdevice/pulse_audio_dec.c +++ b/libavdevice/pulse_audio_dec.c @@ -30,6 +30,7 @@ #include "libavformat/avformat.h" #include "libavformat/internal.h" +#include "libavformat/version.h" #include "pulse_audio_common.h" #include "timefilter.h" diff --git a/libavdevice/pulse_audio_enc.c b/libavdevice/pulse_audio_enc.c index 05cd5ccee6..35beb14ead 100644 --- a/libavdevice/pulse_audio_enc.c +++ b/libavdevice/pulse_audio_enc.c @@ -23,6 +23,7 @@ #include #include "libavformat/avformat.h" #include "libavformat/internal.h" +#include "libavformat/version.h" #include "libavutil/channel_layout.h" #include "libavutil/internal.h" #include "libavutil/opt.h" diff --git a/libavformat/Makefile b/libavformat/Makefile index 322c8e7896..27d553c20e 100644 --- a/libavformat/Makefile +++ b/libavformat/Makefile @@ -4,6 +4,7 @@ DESC = FFmpeg container format library HEADERS = avformat.h \ avio.h \ version.h \ + version_major.h \ OBJS = allformats.o \ avio.o \ diff --git a/libavformat/avformat.h b/libavformat/avformat.h index 0446e1fdfa..03df76af92 100644 --- a/libavformat/avformat.h +++ b/libavformat/avformat.h @@ -319,7 +319,7 @@ #include "libavutil/log.h" #include "avio.h" -#include "libavformat/version.h" +#include "libavformat/version_major.h" struct AVFormatContext; struct AVStream; diff --git a/libavformat/avio.h b/libavformat/avio.h index ca970b1ce3..3ed9175a9b 100644 --- a/libavformat/avio.h +++ b/libavformat/avio.h @@ -33,7 +33,7 @@ #include "libavutil/dict.h" #include "libavutil/log.h" -#include "libavformat/version.h" +#include "libavformat/version_major.h" /** * Seeking works like for a local file. diff --git a/libavformat/flacenc.c b/libavformat/flacenc.c index cf44ff7001..d7930f4a6e 100644 --- a/libavformat/flacenc.c +++ b/libavformat/flacenc.c @@ -30,6 +30,7 @@ #include "flacenc.h" #include "id3v2.h" #include "internal.h" +#include "version.h" #include "vorbiscomment.h" diff --git a/libavformat/framehash.c b/libavformat/framehash.c index abe565548c..654996e8e0 100644 --- a/libavformat/framehash.c +++ b/libavformat/framehash.c @@ -20,6 +20,7 @@ #include "libavutil/channel_layout.h" #include "internal.h" +#include "version.h" int ff_framehash_write_header(AVFormatContext *s) { diff --git a/libavformat/matroskaenc.c b/libavformat/matroskaenc.c index b39157538c..a48d3f0c0f 100644 --- a/libavformat/matroskaenc.c +++ b/libavformat/matroskaenc.c @@ -35,6 +35,7 @@ #include "isom.h" #include "matroska.h" #include "riff.h" +#include "version.h" #include "vorbiscomment.h" #include "wv.h" diff --git a/libavformat/mmf.c b/libavformat/mmf.c index 4c3ef3456b..d07b251b57 100644 --- a/libavformat/mmf.c +++ b/libavformat/mmf.c @@ -26,6 +26,7 @@ #include "pcm.h" #include "rawenc.h" #include "riff.h" +#include "version.h" typedef struct MMFContext { int64_t atrpos, atsqpos, awapos; diff --git a/libavformat/movenc.c b/libavformat/movenc.c index 6fc1afb730..2d0a2b3a93 100644 --- a/libavformat/movenc.c +++ b/libavformat/movenc.c @@ -60,6 +60,7 @@ #include "mov_chan.h" #include "movenc_ttml.h" #include "ttmlenc.h" +#include "version.h" #include "vpcc.h" static const AVOption options[] = { diff --git a/libavformat/mux.c b/libavformat/mux.c index 80ee555c38..1c1fbf275c 100644 --- a/libavformat/mux.c +++ b/libavformat/mux.c @@ -21,6 +21,7 @@ #include "avformat.h" #include "internal.h" +#include "version.h" #include "libavcodec/bsf.h" #include "libavcodec/internal.h" #include "libavcodec/packet_internal.h" diff --git a/libavformat/mxfenc.c b/libavformat/mxfenc.c index f328164747..5f5629f7e2 100644 --- a/libavformat/mxfenc.c +++ b/libavformat/mxfenc.c @@ -58,6 +58,7 @@ #include "avc.h" #include "mxf.h" #include "config.h" +#include "version.h" extern const AVOutputFormat ff_mxf_d10_muxer; extern const AVOutputFormat ff_mxf_opatom_muxer; diff --git a/libavformat/nutenc.c b/libavformat/nutenc.c index f88b424429..d8c35783ae 100644 --- a/libavformat/nutenc.c +++ b/libavformat/nutenc.c @@ -34,6 +34,7 @@ #include "internal.h" #include "avio_internal.h" #include "riff.h" +#include "version.h" static int find_expected_header(AVCodecParameters *p, int size, int key_frame, uint8_t out[64]) diff --git a/libavformat/oggenc.c b/libavformat/oggenc.c index a88dab8ccc..31f47dadf6 100644 --- a/libavformat/oggenc.c +++ b/libavformat/oggenc.c @@ -31,6 +31,7 @@ #include "avformat.h" #include "avio_internal.h" #include "internal.h" +#include "version.h" #include "vorbiscomment.h" #define MAX_PAGE_SIZE 65025 diff --git a/libavformat/rtmpproto.c b/libavformat/rtmpproto.c index 34020bc383..88557140f7 100644 --- a/libavformat/rtmpproto.c +++ b/libavformat/rtmpproto.c @@ -42,6 +42,7 @@ #include "rtmpcrypt.h" #include "rtmppkt.h" #include "url.h" +#include "version.h" #if CONFIG_ZLIB #include diff --git a/libavformat/rtsp.c b/libavformat/rtsp.c index 5fa756bf5c..9e6fd136cc 100644 --- a/libavformat/rtsp.c +++ b/libavformat/rtsp.c @@ -50,6 +50,7 @@ #include "url.h" #include "rtpenc.h" #include "mpegts.h" +#include "version.h" /* Default timeout values for read packet in seconds */ #define READ_PACKET_TIMEOUT_S 10 diff --git a/libavformat/rtspdec.c b/libavformat/rtspdec.c index 2ada29a2d3..eee6329025 100644 --- a/libavformat/rtspdec.c +++ b/libavformat/rtspdec.c @@ -34,6 +34,7 @@ #include "rdt.h" #include "tls.h" #include "url.h" +#include "version.h" static const struct RTSPStatusMessage { enum RTSPStatusCode code; diff --git a/libavformat/utils.c b/libavformat/utils.c index 91c8a15a89..3f253c2045 100644 --- a/libavformat/utils.c +++ b/libavformat/utils.c @@ -46,6 +46,7 @@ #if CONFIG_NETWORK #include "network.h" #endif +#include "version.h" #include "libavutil/ffversion.h" const char av_format_ffversion[] = "FFmpeg version " FFMPEG_VERSION; diff --git a/libavformat/version.h b/libavformat/version.h index 6371371890..e063e12b98 100644 --- a/libavformat/version.h +++ b/libavformat/version.h @@ -29,9 +29,8 @@ #include "libavutil/version.h" -// Major bumping may affect Ticket5467, 5421, 5451(compatibility with Chromium) -// Also please add any ticket numbers that you believe might be affected here -#define LIBAVFORMAT_VERSION_MAJOR 59 +#include "version_major.h" + #define LIBAVFORMAT_VERSION_MINOR 19 #define LIBAVFORMAT_VERSION_MICRO 100 @@ -45,22 +44,4 @@ #define LIBAVFORMAT_IDENT "Lavf" AV_STRINGIFY(LIBAVFORMAT_VERSION) -/** - * FF_API_* defines may be placed below to indicate public API that will be - * dropped at a future version bump. The defines themselves are not part of - * the public API and may change, break or disappear at any time. - * - * @note, when bumping the major version it is recommended to manually - * disable each FF_API_* in its own commit instead of disabling them all - * at once through the bump. This improves the git bisect-ability of the change. - * - */ -#define FF_API_LAVF_PRIV_OPT (LIBAVFORMAT_VERSION_MAJOR < 60) -#define FF_API_COMPUTE_PKT_FIELDS2 (LIBAVFORMAT_VERSION_MAJOR < 60) -#define FF_API_AVIOCONTEXT_WRITTEN (LIBAVFORMAT_VERSION_MAJOR < 60) -#define FF_HLS_TS_OPTIONS (LIBAVFORMAT_VERSION_MAJOR < 60) -#define FF_API_AVSTREAM_CLASS (LIBAVFORMAT_VERSION_MAJOR > 59) - - -#define FF_API_R_FRAME_RATE 1 #endif /* AVFORMAT_VERSION_H */ diff --git a/libavformat/version_major.h b/libavformat/version_major.h new file mode 100644 index 0000000000..5f71298bcc --- /dev/null +++ b/libavformat/version_major.h @@ -0,0 +1,53 @@ +/* + * Version macros. + * + * This file is part of FFmpeg. + * + * FFmpeg is free software; you can redistribute it and/or + * modify it under the terms of the GNU Lesser General Public + * License as published by the Free Software Foundation; either + * version 2.1 of the License, or (at your option) any later version. + * + * FFmpeg is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + * Lesser General Public License for more details. + * + * You should have received a copy of the GNU Lesser General Public + * License along with FFmpeg; if not, write to the Free Software + * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA + */ + +#ifndef AVFORMAT_VERSION_MAJOR_H +#define AVFORMAT_VERSION_MAJOR_H + +/** + * @file + * @ingroup libavf + * Libavformat version macros + */ + +// Major bumping may affect Ticket5467, 5421, 5451(compatibility with Chromium) +// Also please add any ticket numbers that you believe might be affected here +#define LIBAVFORMAT_VERSION_MAJOR 59 + +/** + * FF_API_* defines may be placed below to indicate public API that will be + * dropped at a future version bump. The defines themselves are not part of + * the public API and may change, break or disappear at any time. + * + * @note, when bumping the major version it is recommended to manually + * disable each FF_API_* in its own commit instead of disabling them all + * at once through the bump. This improves the git bisect-ability of the change. + * + */ +#define FF_API_LAVF_PRIV_OPT (LIBAVFORMAT_VERSION_MAJOR < 60) +#define FF_API_COMPUTE_PKT_FIELDS2 (LIBAVFORMAT_VERSION_MAJOR < 60) +#define FF_API_AVIOCONTEXT_WRITTEN (LIBAVFORMAT_VERSION_MAJOR < 60) +#define FF_HLS_TS_OPTIONS (LIBAVFORMAT_VERSION_MAJOR < 60) +#define FF_API_AVSTREAM_CLASS (LIBAVFORMAT_VERSION_MAJOR > 59) + + +#define FF_API_R_FRAME_RATE 1 + +#endif /* AVFORMAT_VERSION_MAJOR_H */