Color Management, Stage 2: Switch color pipeline to use OpenColorIO
[blender.git] / source / blender / imbuf / intern / IMB_anim.h
index 05ba4b0d05fb0ab80fbe1a6bf1e1818ca3d280fe..d5cc4929aed5ba383bdfb108ac90901e10f007c0 100644 (file)
@@ -1,8 +1,4 @@
 /*
- * allocimbuf.h
- *
- * $Id$
- *
  * ***** BEGIN GPL LICENSE BLOCK *****
  *
  * This program is free software; you can redistribute it and/or
@@ -34,8 +30,8 @@
  */
 
 
-#ifndef IMB_ANIM_H
-#define IMB_ANIM_H
+#ifndef __IMB_ANIM_H__
+#define __IMB_ANIM_H__
 
 #ifdef _WIN32
 #  define INC_OLE2
 
 #  undef AVIIF_KEYFRAME // redefined in AVI_avi.h
 #  undef AVIIF_LIST // redefined in AVI_avi.h
-
-#  define FIXCC(fcc)  if (fcc == 0)    fcc = mmioFOURCC('N', 'o', 'n', 'e'); \
-               if (fcc == BI_RLE8) fcc = mmioFOURCC('R', 'l', 'e', '8');
-#endif
+#endif /* _WIN32 */
 
 #include <sys/types.h>
 #include <ctype.h>
 #endif
 
 /* anim.curtype, runtime only */
-#define ANIM_NONE              0
-#define ANIM_SEQUENCE  (1 << 0)
-#define ANIM_MOVIE             (1 << 4)
-#define ANIM_AVI               (1 << 6)
-#define ANIM_QTIME             (1 << 7)
+#define ANIM_NONE       0
+#define ANIM_SEQUENCE   (1 << 0)
+#define ANIM_MOVIE      (1 << 4)
+#define ANIM_AVI        (1 << 6)
+#define ANIM_QTIME      (1 << 7)
 #define ANIM_FFMPEG     (1 << 8)
 #define ANIM_REDCODE    (1 << 9)
 
-#define MAXNUMSTREAMS          50
+#define MAXNUMSTREAMS       50
 
 struct _AviMovie;
 struct anim_index;
@@ -130,18 +123,18 @@ struct anim_index;
 struct anim {
        int ib_flags;
        int curtype;
-       int curposition;        /* index  0 = 1e,  1 = 2e, enz. */
+       int curposition;    /* index  0 = 1e,  1 = 2e, enz. */
        int duration;
        short frs_sec;
        float frs_sec_base;
        int x, y;
        
-               /* voor op nummer */
-       char name[256];
-               /* voor sequence */
-       char first[256];
+       /* for number */
+       char name[1024];
+       /* for sequence */
+       char first[1024];
 
-               /* movie */
+       /* movie */
        void *movie;
        void *track;
        void *params;
@@ -151,21 +144,21 @@ struct anim {
        int preseek;
        int streamindex;
        
-               /* avi */
+       /* avi */
        struct _AviMovie *avi;
 
 #if defined(_WIN32) && !defined(FREE_WINDOWS)
-               /* windows avi */
+       /* windows avi */
        int avistreams;
        int firstvideo;
        int pfileopen;
-       PAVIFILE        pfile;
-       PAVISTREAM  pavi[MAXNUMSTREAMS];        // the current streams
-       PGETFRAME         pgf;
+       PAVIFILE pfile;
+       PAVISTREAM pavi[MAXNUMSTREAMS];     // the current streams
+       PGETFRAME pgf;
 #endif
 
 #ifdef WITH_QUICKTIME
-               /* quicktime */
+       /* quicktime */
        struct _QuicktimeMovie *qtime;
 #endif /* WITH_QUICKTIME */
 
@@ -174,31 +167,31 @@ struct anim {
        AVCodecContext *pCodecCtx;
        AVCodec *pCodec;
        AVFrame *pFrame;
+       int pFrameComplete;
        AVFrame *pFrameRGB;
        AVFrame *pFrameDeinterlaced;
        struct SwsContext *img_convert_ctx;
        int videoStream;
 
-       struct ImBuf * last_frame;
+       struct ImBuf *last_frame;
        int64_t last_pts;
        int64_t next_pts;
-       int64_t next_undecoded_pts;
        AVPacket next_packet;
 #endif
 
 #ifdef WITH_REDCODE
-       struct redcode_handle * redcodeCtx;
+       struct redcode_handle *redcodeCtx;
 #endif
 
-       char index_dir[256];
+       char index_dir[768];
 
        int proxies_tried;
        int indices_tried;
        
-       struct anim * proxy_anim[IMB_PROXY_MAX_SLOT];
-       struct anim_index * curr_idx[IMB_TC_MAX_SLOT];
+       struct anim *proxy_anim[IMB_PROXY_MAX_SLOT];
+       struct anim_index *curr_idx[IMB_TC_MAX_SLOT];
 
+       char colorspace[64];
 };
 
 #endif
-