diff avcodec.h @ 842:e460775adb38 libavcodec

cleanup (breaks compatibility, requested by fabrice) remove CODEC_FLAG_NOT_TRUNCATED & add CODEC_FLAG_TRUNCATED add CODEC_CAP_TRUNCATED add alpha plane to AVPicture remove CODEC_ID_MSMPEG4 remove various unused stuff support "truncated" mpeg4 streams
author michaelni
date Fri, 08 Nov 2002 18:35:39 +0000
parents 14f4598ec793
children 8c81f1ee9271
line wrap: on
line diff
--- a/avcodec.h	Wed Nov 06 11:59:17 2002 +0000
+++ b/avcodec.h	Fri Nov 08 18:35:39 2002 +0000
@@ -5,8 +5,8 @@
 
 #define LIBAVCODEC_VERSION_INT 0x000406
 #define LIBAVCODEC_VERSION     "0.4.6"
-#define LIBAVCODEC_BUILD       4634
-#define LIBAVCODEC_BUILD_STR   "4634"
+#define LIBAVCODEC_BUILD       4635
+#define LIBAVCODEC_BUILD_STR   "4635"
 
 enum CodecID {
     CODEC_ID_NONE, 
@@ -50,7 +50,6 @@
     CODEC_ID_ADPCM_IMA_WAV,
     CODEC_ID_ADPCM_MS,
 };
-#define CODEC_ID_MSMPEG4 CODEC_ID_MSMPEG4V3
 
 enum CodecType {
     CODEC_TYPE_UNKNOWN = -1,
@@ -80,6 +79,12 @@
 /* in bytes */
 #define AVCODEC_MAX_AUDIO_FRAME_SIZE 131072
 
+/**
+ * Required number of zero bytes at the end of the input bitstream for decoding.
+ * to avoid overreading (and possibly segfaulting)
+ */
+#define FF_INPUT_BUFFER_PADDING_SIZE 8
+
 /* motion estimation type, EPZS by default */
 enum Motion_Est_ID {
     ME_ZERO = 1,
@@ -128,8 +133,8 @@
 #define CODEC_FLAG_GRAY  0x2000   /* only decode/encode grayscale */
 #define CODEC_FLAG_EMU_EDGE 0x4000/* dont draw edges */
 #define CODEC_FLAG_DR1    0x8000  /* direct renderig type 1 (store internal frames in external buffers) */
-#define CODEC_FLAG_NOT_TRUNCATED  0x00010000 /* input bitstream is not truncated, except before a startcode 
-                                                allows the last part of a frame to be decoded earlier */
+#define CODEC_FLAG_TRUNCATED  0x00010000 /* input bitstream might be truncated at a random location instead 
+                                            of only at frame boundaries */
 #define CODEC_FLAG_NORMALIZE_AQP  0x00020000 /* normalize adaptive quantization */
 #define CODEC_FLAG_INTERLACED_DCT 0x00040000 /* use interlaced dct */
 #define CODEC_FLAG_LOW_DELAY      0x00080000 /* force low delay / will fail on b frames */
@@ -141,6 +146,7 @@
 /* if 'parse_only' field is true, then avcodec_parse_frame() can be
    used */
 #define CODEC_CAP_PARSE_ONLY      0x0004
+#define CODEC_CAP_TRUNCATED       0x0008
 
 #define FRAME_RATE_BASE 10000
 
@@ -770,10 +776,13 @@
     struct AVCodec *next;
 } AVCodec;
 
-/* three components are given, that's all */
+/** 
+ * four components are given, that's all.
+ * the last component is alpha
+ */
 typedef struct AVPicture {
-    UINT8 *data[3];
-    int linesize[3];
+    UINT8 *data[4];
+    int linesize[4];
 } AVPicture;
 
 extern AVCodec ac3_encoder;
@@ -925,13 +934,6 @@
 
 void avcodec_flush_buffers(AVCodecContext *avctx);
 
-// deprecated / obsolete stuff, WILL be removed
-#ifndef MBC
-#define MBC 128
-#define MBR 96
-#endif
-#define QP_TYPE int
-
 /**
  * Interface for 0.5.0 version
  *