22#include <QtCore/qglobal.h>
23#include <QtCore/qdebug.h>
26#include <libavformat/avformat.h>
27#include <libavcodec/avcodec.h>
28#include <libswresample/swresample.h>
29#include <libavutil/avutil.h>
30#include <libswscale/swscale.h>
33static_assert(LIBAVUTIL_VERSION_INT >= AV_VERSION_INT(56, 70, 100),
34 "FFmpeg 4.4 or newer is required (libavutil >= 56.70)");
36#define QT_FFMPEG_HAS_AV_CHANNEL_LAYOUT
37 (LIBAVCODEC_VERSION_INT
>= AV_VERSION_INT
(59
, 24
, 100
))
38#define QT_FFMPEG_HAS_FRAME_TIME_BASE
39 (LIBAVCODEC_VERSION_INT
>= AV_VERSION_INT
(59
, 18
, 100
))
40#define QT_FFMPEG_HAS_FRAME_DURATION
41 (LIBAVCODEC_VERSION_INT
>= AV_VERSION_INT
(60
, 3
, 100
))
42#define QT_FFMPEG_STREAM_SIDE_DATA_DEPRECATED
43 (LIBAVCODEC_VERSION_INT
>= AV_VERSION_INT
(60
, 15
, 100
))
44#define QT_FFMPEG_HAS_D3D12VA
45 (LIBAVUTIL_VERSION_INT
>= AV_VERSION_INT
(59
, 8
, 100
))
46#define QT_FFMPEG_SWR_CONST_CH_LAYOUT
47 (LIBSWRESAMPLE_VERSION_INT
>= AV_VERSION_INT
(4
, 9
, 100
))
48#define QT_FFMPEG_AVIO_WRITE_CONST
49 (LIBAVFORMAT_VERSION_MAJOR
>= 61
)
50#define QT_CODEC_PARAMETERS_HAVE_FRAMERATE
51 (LIBAVCODEC_VERSION_INT
>= AV_VERSION_INT
(60
, 11
, 100
))
52#define QT_FFMPEG_HAS_AVCODEC_GET_SUPPORTED_CONFIG
53 (LIBAVUTIL_VERSION_INT
>= AV_VERSION_INT
(59
, 39
, 100
))
54#define QT_FFMPEG_HAS_SWS_FLAGS_ENUM
55 (LIBSWSCALE_VERSION_INT
>= AV_VERSION_INT
(9
, 1
, 100
))
85 return AVScore(qToUnderlying(a) + b);
89 return AVScore(qToUnderlying(a) - b);
93 return AVScore(a + qToUnderlying(b));
97 return AVScore(a - qToUnderlying(b));
101 return AVScore(qToUnderlying(a) - qToUnderlying(b));
113 return AVScore(-qToUnderlying(d));
118 dbg << qToUnderlying(score);
150# define AV_PROFILE_H264_HIGH FF_PROFILE_H264_HIGH
153# define AV_PROFILE_HEVC_MAIN FF_PROFILE_HEVC_MAIN
constexpr AVScore operator""_avscore(unsigned long long arg)
int writeQIODevice(void *opaque, AvioWriteBufferType buf, int buf_size)
constexpr AVScore BestAVScore
constexpr AVScore operator+(AVScore a, int b)
constexpr AVScore & operator-=(AVScore &a, int b)
std::variant< AVPixelFormat, AVSampleFormat > PixelOrSampleFormat
constexpr AVScore operator-(const AVScore &d)
constexpr AVScore operator+(int a, AVScore b)
constexpr AVScore DefaultAVScore
constexpr AVScore & operator+=(AVScore &a, int b)
constexpr AVScore operator-(int a, AVScore b)
constexpr AVScore operator-(AVScore a, AVScore b)
constexpr AVScore NotSuitableAVScore
AVChannelLayout ChannelLayoutT
QDebug operator<<(QDebug dbg, AVScore score)
constexpr AVScore MinAVScore
constexpr AVScore operator-(AVScore a, int b)
#define AV_PROFILE_HEVC_MAIN
#define AV_PROFILE_H264_HIGH
#define QT_FFMPEG_HAS_SWS_FLAGS_ENUM
#define QT_FFMPEG_HAS_AV_CHANNEL_LAYOUT
#define QT_BEGIN_NAMESPACE
QT_PREPEND_NAMESPACE(QFFmpeg)::AVScore Type
static constexpr Type max() noexcept
static constexpr Type min() noexcept