8 |
|
|
9 |
#define DEBUG(X) |
#define DEBUG(X) |
10 |
// OutputDebugString(X) |
// OutputDebugString(X) |
11 |
#define DEBUG1(X,A) |
#define DEBUG1(X,A) { char tmp[120]; wsprintf(tmp, "%s %i", (X), (A)); OutputDebugString(tmp); } |
|
// { char tmp[120]; wsprintf(tmp, "%s %i", (X), (A)); OutputDebugString(tmp); } |
|
12 |
#define DEBUG2(X,A,B) |
#define DEBUG2(X,A,B) |
13 |
// { char tmp[120]; wsprintf(tmp, "%s %i %i", (X), (A), (B)); OutputDebugString(tmp); } |
// { char tmp[120]; wsprintf(tmp, "%s %i %i", (X), (A), (B)); OutputDebugString(tmp); } |
14 |
#define DEBUG3(X,A,B,C) |
#define DEBUG3(X,A,B,C) |
19 |
// { char tmp[120]; wsprintf(tmp, "%s %i %i %i %i %i", (X), (A), (B), (C), (D), (E)); OutputDebugString(tmp); } |
// { char tmp[120]; wsprintf(tmp, "%s %i %i %i %i %i", (X), (A), (B), (C), (D), (E)); OutputDebugString(tmp); } |
20 |
#define DEBUGFOURCC(X,Y) |
#define DEBUGFOURCC(X,Y) |
21 |
// { char tmp[120]; wsprintf(tmp, "%s %c %c %c %c", (X), (Y)&0xff, ((Y)>>8)&0xff, ((Y)>>16)&0xff, ((Y)>>24)&0xff); OutputDebugString(tmp); } |
// { char tmp[120]; wsprintf(tmp, "%s %c %c %c %c", (X), (Y)&0xff, ((Y)>>8)&0xff, ((Y)>>16)&0xff, ((Y)>>24)&0xff); OutputDebugString(tmp); } |
22 |
|
#define DEBUGERR(X) OutputDebugString(X) |
23 |
#define DEBUG2P(X) OutputDebugString(X) |
#define DEBUG2P(X) OutputDebugString(X) |
24 |
#define DEBUG1ST(A,B,C,D,E,F,G) { char tmp[120]; wsprintf(tmp, "1st-pass: size:%d total-kbytes:%d %s quant:%d %s kblocks:%d mblocks:%d", (A), (B), (C) ? "intra" : "inter", (D), (E), (F), (G)); OutputDebugString(tmp); } |
#define DEBUG1ST(A,B,C,D,E,F,G) { char tmp[120]; wsprintf(tmp, "1st-pass: size:%d total-kbytes:%d %s quant:%d %s kblocks:%d mblocks:%d", (A), (B), (C) ? "intra" : "inter", (D), (E), (F), (G)); OutputDebugString(tmp); } |
25 |
#define DEBUG2ND(A,B,C,D,E,F,G,H) { char tmp[120]; wsprintf(tmp, "2nd-pass: quant:%d %s %s stats1:%d scaled:%d actual:%d overflow:%d %s", (A), (B), (C) ? "intra" : "inter", (D), (E), (F), (G), (H) ? "credits" : "movie"); OutputDebugString(tmp); } |
#define DEBUG2ND(A,B,C,D,E,F,G,H) { char tmp[120]; wsprintf(tmp, "2nd-pass: quant:%d %s %s stats1:%d scaled:%d actual:%d overflow:%d %s", (A), (B), (C) ? "intra" : "inter", (D), (E), (F), (G), (H) ? "credits" : "movie"); OutputDebugString(tmp); } |
91 |
|
|
92 |
typedef struct |
typedef struct |
93 |
{ |
{ |
94 |
|
HANDLE hints; |
95 |
HANDLE stats1; |
HANDLE stats1; |
96 |
HANDLE stats2; |
HANDLE stats2; |
97 |
|
|
98 |
|
void * hintstream; |
99 |
|
|
100 |
int bytes1; |
int bytes1; |
101 |
int bytes2; |
int bytes2; |
102 |
int desired_bytes2; |
int desired_bytes2; |
103 |
|
|
104 |
float movie_curve; |
double movie_curve; |
105 |
float credits_start_curve; |
double credits_start_curve; |
106 |
float credits_end_curve; |
double credits_end_curve; |
107 |
|
|
108 |
double average_frame; |
double average_frame; |
109 |
double curve_comp_scale; |
double curve_comp_scale; |
110 |
|
double curve_bias_bonus; |
111 |
|
double alt_curve_low; |
112 |
|
double alt_curve_high; |
113 |
|
double alt_curve_low_diff; |
114 |
|
double alt_curve_high_diff; |
115 |
|
double alt_curve_mid_qual; |
116 |
|
double alt_curve_qual_dev; |
117 |
int overflow; |
int overflow; |
118 |
|
|
119 |
NNSTATS nns1; |
NNSTATS nns1; |
158 |
LRESULT decompress_end(CODEC *); |
LRESULT decompress_end(CODEC *); |
159 |
LRESULT decompress(CODEC *, ICDECOMPRESS *); |
LRESULT decompress(CODEC *, ICDECOMPRESS *); |
160 |
|
|
|
int codec_2pass_init(CODEC *); |
|
161 |
int codec_get_quant(CODEC *, XVID_ENC_FRAME *); |
int codec_get_quant(CODEC *, XVID_ENC_FRAME *); |
|
int codec_2pass_get_quant(CODEC *, XVID_ENC_FRAME *); |
|
|
int codec_2pass_update(CODEC *, XVID_ENC_FRAME *, XVID_ENC_STATS *); |
|
162 |
int codec_is_in_credits(CONFIG *, int); |
int codec_is_in_credits(CONFIG *, int); |
163 |
int codec_get_vbr_quant(CONFIG *, int); |
int codec_get_vbr_quant(CONFIG *, int); |
164 |
|
|