[cvs] / xvidcore / src / image / image.h Repository:
ViewVC logotype

Diff of /xvidcore/src/image/image.h

Parent Directory Parent Directory | Revision Log Revision Log | View Patch Patch

revision 1.5, Thu Apr 25 06:55:00 2002 UTC revision 1.8.2.4, Thu Nov 7 10:28:15 2002 UTC
# Line 3  Line 3 
3    
4  #include "../portab.h"  #include "../portab.h"
5  #include "colorspace.h"  #include "colorspace.h"
6    #include "../xvid.h"
7    
8  #define EDGE_SIZE  32  #define EDGE_SIZE  64
9    
10    
11  typedef struct  typedef struct
# Line 12  Line 13 
13          uint8_t * y;          uint8_t * y;
14          uint8_t * u;          uint8_t * u;
15          uint8_t * v;          uint8_t * v;
16  } IMAGE;  }
17    IMAGE;
18    
19  void init_image(uint32_t cpu_flags);  void init_image(uint32_t cpu_flags);
20    
 int32_t image_create(IMAGE * image, uint32_t edged_width, uint32_t edged_height);  
 void image_destroy(IMAGE * image, uint32_t edged_width, uint32_t edged_height);  
21    
22  void image_swap(IMAGE * image1, IMAGE * image2);  static void __inline
23  void image_copy(IMAGE *image1, IMAGE * image2, uint32_t edged_width, uint32_t height);  image_null(IMAGE * image)
24  void image_setedges(IMAGE * image, uint32_t edged_width, uint32_t edged_height, uint32_t width, uint32_t height, uint32_t interlacing);  {
25  void image_interpolate(const IMAGE * refn,          image->y = image->u = image->v = NULL;
26                                             IMAGE * refh, IMAGE * refv,  IMAGE * refhv,  }
                                            uint32_t edged_width, uint32_t edged_height, uint32_t rounding);  
   
 float image_psnr(IMAGE *orig_image, IMAGE *recon_image,  
               uint16_t stride, uint16_t width, uint16_t height);  
   
   
 int image_input(IMAGE * image, uint32_t width, int height, uint32_t edged_width,  
                         uint8_t * src, int csp);  
27    
28  int image_output(IMAGE * image, uint32_t width, int height, uint32_t edged_width,  int32_t image_create(IMAGE * image,
29                          uint8_t * dst, uint32_t dst_stride, int csp);                                           uint32_t edged_width,
30                                             uint32_t edged_height);
31    void image_destroy(IMAGE * image,
32                                       uint32_t edged_width,
33                                       uint32_t edged_height);
34    
35    void image_swap(IMAGE * image1,
36                                    IMAGE * image2);
37    void image_copy(IMAGE * image1,
38                                    IMAGE * image2,
39                                    uint32_t edged_width,
40                                    uint32_t height);
41    void image_setedges(IMAGE * image,
42                                            uint32_t edged_width,
43                                            uint32_t edged_height,
44                                            uint32_t width,
45                                            uint32_t height);
46    void image_interpolate(const IMAGE * refn,
47                                               IMAGE * refh,
48                                               IMAGE * refv,
49                                               IMAGE * refhv,
50                                               uint32_t edged_width,
51                                               uint32_t edged_height,
52                                               uint32_t quarterpel,
53                                               uint32_t rounding);
54    
55    float image_psnr(IMAGE * orig_image,
56                                     IMAGE * recon_image,
57                                     uint16_t stride,
58                                     uint16_t width,
59                                     uint16_t height);
60    
61    
62    int image_input(IMAGE * image,
63                                    uint32_t width,
64                                    int height,
65                                    uint32_t edged_width,
66                                    uint8_t * src,
67                                    int src_stride,
68                                    int csp,
69                                    int interlaced);
70    
71    int image_output(IMAGE * image,
72                                     uint32_t width,
73                                     int height,
74                                     uint32_t edged_width,
75                                     uint8_t * dst,
76                                     uint32_t dst_stride,
77                                     int csp,
78                                     int interlaced);
79    
80    
81    
# Line 44  Line 85 
85                                  const uint32_t height,                                  const uint32_t height,
86                             char * filename);                             char * filename);
87    
88  float image_mad(const IMAGE * img1, const IMAGE * img2, uint32_t stride,  float image_mad(const IMAGE * img1,
89                                          uint32_t width, uint32_t height);                                  const IMAGE * img2,
90                                    uint32_t stride,
91                                    uint32_t width,
92                                    uint32_t height);
93    
94    void
95    output_slice(IMAGE * cur, int edged_width, int width, XVID_DEC_PICTURE* out_frm, int mbx, int mby,int mbl);
96    
97  #endif /* _IMAGE_H_ */  #endif /* _IMAGE_H_ */

Legend:
Removed from v.1.5  
changed lines
  Added in v.1.8.2.4

No admin address has been configured
ViewVC Help
Powered by ViewVC 1.0.4