diff options
author | Andreas Rheinhardt <andreas.rheinhardt@outlook.com> | 2024-06-02 09:07:33 +0200 |
---|---|---|
committer | Andreas Rheinhardt <andreas.rheinhardt@outlook.com> | 2024-06-20 18:58:38 +0200 |
commit | dd1e804a987d7464d9bfd7c25dd9ef295223bd36 (patch) | |
tree | 5dadc4d0f1131262e726037d9046e94c9058b6d7 /libavcodec/mpegutils.h | |
parent | 5805b860fe713177430f26b8617bb2bc3c2e7e8f (diff) | |
download | ffmpeg-dd1e804a987d7464d9bfd7c25dd9ef295223bd36.tar.gz |
avcodec/mpegutils: Remap MB_TYPE_ACPRED, add codec-specific MB_TYPE
MB_TYPE_ACPRED is currently reused for MB_TYPE_REF0 by H.264,
so that the value fits into an uint16_t. Given that MB_TYPE_ACPRED
is not subject to any such restriction (apart from fitting into
32bits), it can be remapped to a hithereto unused bit.
The then available bit will be declared to be codec-specific
(i.e. unused by generic code), so that H.264 can use it
for MB_TYPE_REF0 and so that it can be reused later for
e.g. MB_TYPE_H261_FIL.
Signed-off-by: Andreas Rheinhardt <andreas.rheinhardt@outlook.com>
Diffstat (limited to 'libavcodec/mpegutils.h')
-rw-r--r-- | libavcodec/mpegutils.h | 5 |
1 files changed, 4 insertions, 1 deletions
diff --git a/libavcodec/mpegutils.h b/libavcodec/mpegutils.h index 3da1e7ed38..0cca4f0a2f 100644 --- a/libavcodec/mpegutils.h +++ b/libavcodec/mpegutils.h @@ -45,7 +45,6 @@ #define MB_TYPE_8x8 (1 << 6) #define MB_TYPE_INTERLACED (1 << 7) #define MB_TYPE_DIRECT2 (1 << 8) // FIXME -#define MB_TYPE_ACPRED (1 << 9) #define MB_TYPE_GMC (1 << 10) #define MB_TYPE_SKIP (1 << 11) #define MB_TYPE_P0L0 (1 << 12) @@ -57,9 +56,13 @@ #define MB_TYPE_L0L1 (MB_TYPE_L0 | MB_TYPE_L1) #define MB_TYPE_QUANT (1 << 16) #define MB_TYPE_CBP (1 << 17) +#define MB_TYPE_ACPRED (1 << 18) #define MB_TYPE_INTRA MB_TYPE_INTRA4x4 // default mb_type if there is just one type +// The following MB-type can be used by each codec as it sees fit. +#define MB_TYPE_CODEC_SPECIFIC (1 << 9) + #define IS_INTRA4x4(a) ((a) & MB_TYPE_INTRA4x4) #define IS_INTRA16x16(a) ((a) & MB_TYPE_INTRA16x16) #define IS_PCM(a) ((a) & MB_TYPE_INTRA_PCM) |