[svn] / tags / branch-release-1-0 / xvidcore / src / decoder.h Repository:
ViewVC logotype

Annotation of /tags/branch-release-1-0/xvidcore/src/decoder.h

Parent Directory Parent Directory | Revision Log Revision Log


Revision 195 - (view) (download)
Original Path: trunk/xvidcore/src/decoder.h

1 : Isibaar 3 #ifndef _DECODER_H_
2 :     #define _DECODER_H_
3 :    
4 :     #include "xvid.h"
5 :    
6 :     #include "portab.h"
7 :     #include "global.h"
8 :     #include "image/image.h"
9 :    
10 :    
11 :     typedef struct
12 :     {
13 :     // bitstream
14 :    
15 :     uint32_t shape;
16 :     uint32_t time_inc_bits;
17 :     uint32_t quant_bits;
18 :     uint32_t quant_type;
19 :     uint32_t quarterpel;
20 :    
21 : h 69 uint32_t interlacing;
22 :     uint32_t top_field_first;
23 :     uint32_t alternate_vertical_scan;
24 :    
25 : Isibaar 3 // image
26 :    
27 :     uint32_t width;
28 :     uint32_t height;
29 :     uint32_t edged_width;
30 :     uint32_t edged_height;
31 : edgomez 195
32 : Isibaar 3 IMAGE cur;
33 : edgomez 195 IMAGE refn[3]; // 0 -- last I or P VOP
34 :     // 1 -- first I or P
35 :     // 2 -- for interpolate mode B-frame
36 : Isibaar 3 IMAGE refh;
37 :     IMAGE refv;
38 :     IMAGE refhv;
39 :    
40 :     // macroblock
41 :    
42 :     uint32_t mb_width;
43 :     uint32_t mb_height;
44 : edgomez 195 MACROBLOCK *mbs;
45 : Isibaar 3
46 : chenm001 156 // for B-frame
47 : edgomez 195 int32_t frames; // total frame number
48 :     int8_t scalability;
49 :     VECTOR p_fmv, p_bmv; // pred forward & backward motion vector
50 :     MACROBLOCK *last_mbs; // last MB
51 :     int64_t time; // for record time
52 :     int64_t time_base;
53 :     int64_t last_time_base;
54 :     int64_t last_non_b_time;
55 :     uint32_t time_pp;
56 :     uint32_t time_bp;
57 :     uint8_t low_delay; // low_delay flage (1 means no B_VOP)
58 :     }
59 :     DECODER;
60 : Isibaar 3
61 :     void init_decoder(uint32_t cpu_flags);
62 :    
63 :     int decoder_create(XVID_DEC_PARAM * param);
64 :     int decoder_destroy(DECODER * dec);
65 : edgomez 195 int decoder_decode(DECODER * dec,
66 :     XVID_DEC_FRAME * frame);
67 : Isibaar 3
68 :    
69 : edgomez 195 #endif /* _DECODER_H_ */

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