From b6094811f9fca66cdf853420696e96fdc3e4987a Mon Sep 17 00:00:00 2001 From: Anton Khirnov Date: Sun, 27 Oct 2013 16:35:32 +0100 Subject: [PATCH] lavc: move MB_TYPE_* macros from avcodec.h to mpegvideo.h They are mpegvideo-specific and not supposed to be used by callers. --- libavcodec/avcodec.h | 2 ++ libavcodec/mpegvideo.h | 24 ++++++++++++++++++++++++ libavcodec/version.h | 3 +++ 3 files changed, 29 insertions(+) diff --git a/libavcodec/avcodec.h b/libavcodec/avcodec.h index ad80a289de..93e1368f43 100644 --- a/libavcodec/avcodec.h +++ b/libavcodec/avcodec.h @@ -778,6 +778,7 @@ typedef struct RcOverride{ */ #define CODEC_CAP_VARIABLE_FRAME_SIZE 0x10000 +#if FF_API_MB_TYPE //The following defines may change, don't expect compatibility if you use them. #define MB_TYPE_INTRA4x4 0x0001 #define MB_TYPE_INTRA16x16 0x0002 //FIXME H.264-specific @@ -801,6 +802,7 @@ typedef struct RcOverride{ #define MB_TYPE_QUANT 0x00010000 #define MB_TYPE_CBP 0x00020000 //Note bits 24-31 are reserved for codec specific use (h264 ref0, mpeg1 0mv, ...) +#endif /** * Pan Scan area. diff --git a/libavcodec/mpegvideo.h b/libavcodec/mpegvideo.h index b55a95e49c..205cd432b5 100644 --- a/libavcodec/mpegvideo.h +++ b/libavcodec/mpegvideo.h @@ -107,6 +107,30 @@ typedef struct Picture{ AVBufferRef *mb_type_buf; uint32_t *mb_type; +#if !FF_API_MB_TYPE +#define MB_TYPE_INTRA4x4 0x0001 +#define MB_TYPE_INTRA16x16 0x0002 //FIXME H.264-specific +#define MB_TYPE_INTRA_PCM 0x0004 //FIXME H.264-specific +#define MB_TYPE_16x16 0x0008 +#define MB_TYPE_16x8 0x0010 +#define MB_TYPE_8x16 0x0020 +#define MB_TYPE_8x8 0x0040 +#define MB_TYPE_INTERLACED 0x0080 +#define MB_TYPE_DIRECT2 0x0100 //FIXME +#define MB_TYPE_ACPRED 0x0200 +#define MB_TYPE_GMC 0x0400 +#define MB_TYPE_SKIP 0x0800 +#define MB_TYPE_P0L0 0x1000 +#define MB_TYPE_P1L0 0x2000 +#define MB_TYPE_P0L1 0x4000 +#define MB_TYPE_P1L1 0x8000 +#define MB_TYPE_L0 (MB_TYPE_P0L0 | MB_TYPE_P1L0) +#define MB_TYPE_L1 (MB_TYPE_P0L1 | MB_TYPE_P1L1) +#define MB_TYPE_L0L1 (MB_TYPE_L0 | MB_TYPE_L1) +#define MB_TYPE_QUANT 0x00010000 +#define MB_TYPE_CBP 0x00020000 +#endif + AVBufferRef *mbskip_table_buf; uint8_t *mbskip_table; diff --git a/libavcodec/version.h b/libavcodec/version.h index ea79bd953c..9ee6947d7d 100644 --- a/libavcodec/version.h +++ b/libavcodec/version.h @@ -106,5 +106,8 @@ #ifndef FF_API_QSCALE_TYPE #define FF_API_QSCALE_TYPE (LIBAVCODEC_VERSION_MAJOR < 56) #endif +#ifndef FF_API_MB_TYPE +#define FF_API_MB_TYPE (LIBAVCODEC_VERSION_MAJOR < 56) +#endif #endif /* AVCODEC_VERSION_H */