]> git.sesse.net Git - vlc/blobdiff - include/vdec_ext-plugins.h
* ./BUGS: added a list of known bugs. Please add your findings!
[vlc] / include / vdec_ext-plugins.h
index dd74f09d8bdf700df5815915248cfad87c6cf3d0..3b72d5995e506c8d476cfa777554174373ee40ce 100644 (file)
@@ -2,7 +2,7 @@
  * vdec_ext-plugins.h : structures from the video decoder exported to plug-ins
  *****************************************************************************
  * Copyright (C) 1999, 2000 VideoLAN
- * $Id: vdec_ext-plugins.h,v 1.4 2001/09/05 16:07:49 massiot Exp $
+ * $Id: vdec_ext-plugins.h,v 1.9 2002/01/04 14:01:34 sam Exp $
  *
  * Authors: Christophe Massiot <massiot@via.ecp.fr>
  *
  *****************************************************************************/
 typedef struct idct_inner_s
 {
-    dctelem_t               pi_block[64];                           /* block */
+    /* Should be kept aligned ! */
+    dctelem_t *             pi_block;                               /* block */
     void                ( * pf_idct )   ( dctelem_t *, yuv_data_t *, int,
                                           void *, int );
                                         /* sparse IDCT or not, add or copy ? */
     int                     i_sparse_pos;                  /* position of the
                                                             * non-NULL coeff */
-    yuv_data_t *            p_dct_data;              /* pointer to the position
-                                                      * in the final picture */
 } idct_inner_t;
 
 typedef struct motion_inner_s
@@ -52,16 +51,20 @@ typedef struct macroblock_s
     int                     i_mb_modes;
 
     /* IDCT information */
-    idct_inner_t            p_idcts[6];
-    int                     i_coded_block_pattern;
+    idct_inner_t            p_idcts[12];
+    u16                     i_coded_block_pattern;
                                                  /* which blocks are coded ? */
-    int                     i_lum_dct_stride, i_chrom_dct_stride;
-                                 /* nb of coeffs to jump when changing lines */
+    yuv_data_t *            p_y_data;
+    yuv_data_t *            p_u_data;
+    yuv_data_t *            p_v_data;
+                                                    /* pointers to the position
+                                                     * in the final picture  */
 
     /* Motion compensation information */
     motion_inner_t          p_motions[8];
     int                     i_nb_motions;
     yuv_data_t *            pp_dest[3];
+
 } macroblock_t;
 
 /* Macroblock Modes */