aboutsummaryrefslogtreecommitdiffstats
path: root/libavcodec/avcodec.h
diff options
context:
space:
mode:
authorWolfgang Hesseler <qv@multimediaware.com>2003-12-09 01:49:56 +0000
committerMichael Niedermayer <michaelni@gmx.at>2003-12-09 01:49:56 +0000
commit8d7ec294c4460e8a8c657f2423983b728d7903d4 (patch)
treee95c23fce6df8351048503aa6e17dc66305c1ca9 /libavcodec/avcodec.h
parenta0b8f70c2958ccf96b57f3d07af90545800f5b35 (diff)
downloadffmpeg-8d7ec294c4460e8a8c657f2423983b728d7903d4.tar.gz
move motion_val & mb_type to AVFrame patch by (Wolfgang Hesseler <qv at multimediaware dot com>)
cleanups & fixes by me Originally committed as revision 2579 to svn://svn.ffmpeg.org/ffmpeg/trunk
Diffstat (limited to 'libavcodec/avcodec.h')
-rw-r--r--libavcodec/avcodec.h48
1 files changed, 47 insertions, 1 deletions
diff --git a/libavcodec/avcodec.h b/libavcodec/avcodec.h
index a8773667a6..13ab4362f7 100644
--- a/libavcodec/avcodec.h
+++ b/libavcodec/avcodec.h
@@ -17,7 +17,7 @@ extern "C" {
#define FFMPEG_VERSION_INT 0x000408
#define FFMPEG_VERSION "0.4.8"
-#define LIBAVCODEC_BUILD 4694
+#define LIBAVCODEC_BUILD 4695
#define LIBAVCODEC_VERSION_INT FFMPEG_VERSION_INT
#define LIBAVCODEC_VERSION FFMPEG_VERSION
@@ -282,6 +282,30 @@ static const __attribute__((unused)) int Motion_Est_QTab[] =
#define CODEC_CAP_PARSE_ONLY 0x0004
#define CODEC_CAP_TRUNCATED 0x0008
+//the following defines might change, so dont expect compatibility if u use them
+#define MB_TYPE_INTRA4x4 0x0001
+#define MB_TYPE_INTRA16x16 0x0002 //FIXME h264 specific
+#define MB_TYPE_INTRA_PCM 0x0004 //FIXME h264 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
+//Note bits 24-31 are reserved for codec specific use (h264 ref0, mpeg1 0mv, ...)
+
/**
* Pan Scan area.
* this specifies the area which should be displayed. Note there may be multiple such areas for one frame
@@ -405,6 +429,28 @@ typedef struct AVPanScan{
uint8_t *mbskip_table;\
\
/**\
+ * Motion vector table\
+ * - encoding: unused\
+ * - decoding: set by lavc\
+ */\
+ int16_t (*motion_val[2])[2];\
+\
+ /**\
+ * Macroblock type table\
+ * mb_type_base + mb_width + 2\
+ * - encoding: unused\
+ * - decoding: set by lavc\
+ */\
+ uint32_t *mb_type;\
+\
+ /**\
+ * Macroblock size: (0->16x16, 1->8x8, 2-> 4x4, 3-> 2x2)\
+ * - encoding: unused\
+ * - decoding: set by lavc\
+ */\
+ uint8_t motion_subsample_log2;\
+\
+ /**\
* for some private data of the user\
* - encoding: unused\
* - decoding: set by user\