Commit b6094811 authored by Anton Khirnov's avatar Anton Khirnov

lavc: move MB_TYPE_* macros from avcodec.h to mpegvideo.h

They are mpegvideo-specific and not supposed to be used by callers.
parent b45c8708
...@@ -778,6 +778,7 @@ typedef struct RcOverride{ ...@@ -778,6 +778,7 @@ typedef struct RcOverride{
*/ */
#define CODEC_CAP_VARIABLE_FRAME_SIZE 0x10000 #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. //The following defines may change, don't expect compatibility if you use them.
#define MB_TYPE_INTRA4x4 0x0001 #define MB_TYPE_INTRA4x4 0x0001
#define MB_TYPE_INTRA16x16 0x0002 //FIXME H.264-specific #define MB_TYPE_INTRA16x16 0x0002 //FIXME H.264-specific
...@@ -801,6 +802,7 @@ typedef struct RcOverride{ ...@@ -801,6 +802,7 @@ typedef struct RcOverride{
#define MB_TYPE_QUANT 0x00010000 #define MB_TYPE_QUANT 0x00010000
#define MB_TYPE_CBP 0x00020000 #define MB_TYPE_CBP 0x00020000
//Note bits 24-31 are reserved for codec specific use (h264 ref0, mpeg1 0mv, ...) //Note bits 24-31 are reserved for codec specific use (h264 ref0, mpeg1 0mv, ...)
#endif
/** /**
* Pan Scan area. * Pan Scan area.
......
...@@ -107,6 +107,30 @@ typedef struct Picture{ ...@@ -107,6 +107,30 @@ typedef struct Picture{
AVBufferRef *mb_type_buf; AVBufferRef *mb_type_buf;
uint32_t *mb_type; 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; AVBufferRef *mbskip_table_buf;
uint8_t *mbskip_table; uint8_t *mbskip_table;
......
...@@ -106,5 +106,8 @@ ...@@ -106,5 +106,8 @@
#ifndef FF_API_QSCALE_TYPE #ifndef FF_API_QSCALE_TYPE
#define FF_API_QSCALE_TYPE (LIBAVCODEC_VERSION_MAJOR < 56) #define FF_API_QSCALE_TYPE (LIBAVCODEC_VERSION_MAJOR < 56)
#endif #endif
#ifndef FF_API_MB_TYPE
#define FF_API_MB_TYPE (LIBAVCODEC_VERSION_MAJOR < 56)
#endif
#endif /* AVCODEC_VERSION_H */ #endif /* AVCODEC_VERSION_H */
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment