File: proto.h

package info (click to toggle)
libmpeg1 1.2.2-4
  • links: PTS
  • area: main
  • in suites: hamm, slink
  • size: 736 kB
  • ctags: 637
  • sloc: ansic: 8,415; sh: 1,328; makefile: 123
file content (163 lines) | stat: -rw-r--r-- 4,369 bytes parent folder | download
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
#include "mpeg.h"		/* for typedef's */


/* util.c */
void       correct_underflow (void);
int        next_bits (int num, unsigned int mask);
char      *get_ext_data (void);
int        next_start_code (void);
char      *get_extra_bit_info (void);

/* video.c */
void       init_stats (void);
void       PrintAllStats (void);
double     ReadSysClock (void);
VidStream *NewVidStream (int bufLength);
void       DestroyVidStream (VidStream *astream);
PictImage *NewPictImage (unsigned int width, unsigned int height);
void       DestroyPictImage (PictImage *apictimage);
VidStream *mpegVidRsrc (TimeStamp time_stamp, VidStream *vid_stream);
void       ToggleBFlag (void);
void       TogglePFlag (void);

/* parseblock.c */
void       ParseReconBlock (int n);
void       ParseAwayBlock (int n);

/* motionvector.c */
void       ComputeForwVector (int *recon_right_for_ptr, 
			      int *recon_down_for_ptr);
void       ComputeBackVector (int *recon_right_back_ptr,
			      int *recon_down_back_ptr);

/* decoders.c */
void       init_tables (void);
void       decodeDCTDCSizeLum (unsigned int *value);
void       decodeDCTDCSizeChrom (unsigned int *value);
void       decodeDCTCoeffFirst (unsigned int *run, int *level);
void       decodeDCTCoeffNext (unsigned int *run, int *level);

/* gdith.c */
void       InitDither (ImageDesc *Image);

/* 24bit.c */
void InitColorDither (void);
void ColorDitherImage (unsigned char *lum, unsigned char *cr, unsigned char *cb, unsigned char *out, int rows, int cols);

/* jrevdct.c */
void init_pre_idct (void);
void mpeg_j_rev_dct_sparse (DCTBLOCK data, int pos);
void mpeg_j_rev_dct (DCTBLOCK data);
void mpeg_j_rev_dct_sparse (DCTBLOCK data, int pos);
void mpeg_j_rev_dct (DCTBLOCK data);

#if (ENABLE_DITHER)
/* fs2.c */
void InitFS2Dither (void);
void FS2DitherImage (unsigned char *lum, 
		     unsigned char *cr,
		     unsigned char *cb,
		     unsigned char *disp, 
		     int rows, int cols);

/* fs2fast.c */
void InitFS2FastDither (void);
void FS2FastDitherImage (unsigned char *lum, 
			 unsigned char *cr,
			 unsigned char *cb,
			 unsigned char *out,
			 int h, int w);

/* fs4.c */
void InitFS4Dither (void);
void FS4DitherImage (unsigned char *lum,
		     unsigned char *cr,
		     unsigned char *cb,
		     unsigned char *disp,
		     int rows, int cols);

/* hybrid.c */
void InitHybridDither (void);
void HybridDitherImage (unsigned char *lum,
			unsigned char *cr,
			unsigned char *cb,
			unsigned char *out,
			int h, int w);

/* hybriderr.c */
void InitHybridErrorDither (void);
void HybridErrorDitherImage (unsigned char *lum,
			     unsigned char *cr,
			     unsigned char *cb,
			     unsigned char *out,
			     int h, int w);

/* 2x2.c */
void Init2x2Dither (void);
void RandInit (int h, int w);
void PostInit2x2Dither (void);
void Twox2DitherImage (unsigned char *lum,
		       unsigned char *cr,
		       unsigned char *cb,
		       unsigned char *out,
		       int h, int w);

/* gray.c */
void GrayDitherImage (unsigned char *lum,
		      unsigned char *cr,
		      unsigned char *cb,
		      unsigned char *out,
		      int h, int w);

/* mono.c */

/* ordered.c */
void InitOrderedDither (void);
void OrderedDitherImage (unsigned char *lum,
			 unsigned char *cr,
			 unsigned char *cb,
			 unsigned char *out,
			 int h, int w);

/* ordered2.c */
void InitOrdered2Dither (void);
void Ordered2DitherImage (unsigned char *lum,
			  unsigned char *cr,
			  unsigned char *cb,
			  unsigned char *out,
			  int h, int w);

/* mb_ordered.c */
void InitMBOrderedDither (void);
void MBOrderedDitherImage (unsigned char *lum,
			   unsigned char *cr,
			   unsigned char *cb,
			   unsigned char *out,
			   int h, int w);
void MBOrderedDitherDisplayCopy (VidStream *vid_stream,
				 int mb_addr,
				 int motion_forw,
				 int r_right_forw,
				 int r_down_forw,
				 int motion_back,
				 int r_right_back,
				 int r_down_back,
				 unsigned char *past,
				 unsigned char *future);

#endif

/* globals.c */
int    yiffprintf (char *format, ...);
int    get_more_data (unsigned int *buf_start,
		      int max_length, 
		      int *length_ptr,
		      unsigned int **buf_ptr);
#if (ENABLE_DITHER)
void   DoDitherImage (unsigned char *l, 
		      unsigned char *Cr,
		      unsigned char *Cb,
		      unsigned char *disp,
		      int h, int w);
#endif
void   ExecuteDisplay (VidStream *vid_stream);