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

Annotation of /xvidcore/src/image/image.h

Parent Directory Parent Directory | Revision Log Revision Log


Revision 1.11 - (view) (download)

1 : Isibaar 1.1 #ifndef _IMAGE_H_
2 :     #define _IMAGE_H_
3 :    
4 : edgomez 1.11 #include <stdlib.h>
5 :    
6 : Isibaar 1.1 #include "../portab.h"
7 : edgomez 1.11 #include "../global.h"
8 : Isibaar 1.1 #include "colorspace.h"
9 : albeu 1.7 #include "../xvid.h"
10 : Isibaar 1.1
11 : edgomez 1.11 #define EDGE_SIZE 64
12 : Isibaar 1.1
13 : edgomez 1.11 void init_image(uint32_t cpu_flags);
14 : Isibaar 1.1
15 : edgomez 1.11
16 :     static void __inline
17 :     image_null(IMAGE * image)
18 : Isibaar 1.1 {
19 : edgomez 1.11 image->y = image->u = image->v = NULL;
20 : edgomez 1.6 }
21 : Isibaar 1.1
22 : edgomez 1.6 int32_t image_create(IMAGE * image,
23 :     uint32_t edged_width,
24 :     uint32_t edged_height);
25 :     void image_destroy(IMAGE * image,
26 :     uint32_t edged_width,
27 :     uint32_t edged_height);
28 :    
29 :     void image_swap(IMAGE * image1,
30 :     IMAGE * image2);
31 : edgomez 1.11
32 : edgomez 1.6 void image_copy(IMAGE * image1,
33 :     IMAGE * image2,
34 :     uint32_t edged_width,
35 :     uint32_t height);
36 : edgomez 1.11
37 : edgomez 1.6 void image_setedges(IMAGE * image,
38 :     uint32_t edged_width,
39 :     uint32_t edged_height,
40 :     uint32_t width,
41 : h 1.9 uint32_t height);
42 : edgomez 1.11
43 : edgomez 1.6 void image_interpolate(const IMAGE * refn,
44 :     IMAGE * refh,
45 :     IMAGE * refv,
46 :     IMAGE * refhv,
47 :     uint32_t edged_width,
48 :     uint32_t edged_height,
49 : edgomez 1.11 uint32_t quarterpel,
50 : edgomez 1.6 uint32_t rounding);
51 :    
52 :     float image_psnr(IMAGE * orig_image,
53 :     IMAGE * recon_image,
54 :     uint16_t stride,
55 :     uint16_t width,
56 :     uint16_t height);
57 :    
58 :    
59 : edgomez 1.11 float sse_to_PSNR(long sse, int pixels);
60 :    
61 :     long plane_sse(uint8_t * orig,
62 :     uint8_t * recon,
63 :     uint16_t stride,
64 :     uint16_t width,
65 :     uint16_t height);
66 :    
67 :     void
68 :     image_chroma_optimize(IMAGE * img, int width, int height, int edged_width);
69 :    
70 :    
71 : edgomez 1.6 int image_input(IMAGE * image,
72 :     uint32_t width,
73 :     int height,
74 :     uint32_t edged_width,
75 :     uint8_t * src,
76 : edgomez 1.11 int src_stride,
77 :     int csp,
78 :     int interlaced);
79 : edgomez 1.6
80 :     int image_output(IMAGE * image,
81 :     uint32_t width,
82 :     int height,
83 :     uint32_t edged_width,
84 :     uint8_t * dst,
85 :     uint32_t dst_stride,
86 : edgomez 1.11 int csp,
87 :     int interlaced);
88 : edgomez 1.6
89 :    
90 :    
91 :     int image_dump_yuvpgm(const IMAGE * image,
92 :     const uint32_t edged_width,
93 :     const uint32_t width,
94 :     const uint32_t height,
95 :     char *filename);
96 :    
97 :     float image_mad(const IMAGE * img1,
98 :     const IMAGE * img2,
99 :     uint32_t stride,
100 :     uint32_t width,
101 :     uint32_t height);
102 : albeu 1.7
103 : suxen_drol 1.8 void
104 : albeu 1.7 output_slice(IMAGE * cur, int edged_width, int width, XVID_DEC_PICTURE* out_frm, int mbx, int mby,int mbl);
105 : edgomez 1.11
106 :    
107 :     void
108 :     image_clear(IMAGE * img, int width, int height, int edged_width,
109 :     int y, int u, int v);
110 :    
111 :    
112 :     void
113 :     image_deblock_rrv(IMAGE * img, int edgeg_width,
114 :     const MACROBLOCK * mbs, int mb_width, int mb_height, int mb_stride,
115 :     int block, int flags);
116 :    
117 : Isibaar 1.1
118 : edgomez 1.6 #endif /* _IMAGE_H_ */

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