[svn] / branches / dev-api-4 / xvidcore / vfw / src / config.h Repository:
ViewVC logotype

Annotation of /branches/dev-api-4/xvidcore/vfw/src/config.h

Parent Directory Parent Directory | Revision Log Revision Log


Revision 983 - (view) (download)

1 : suxen_drol 889 #ifndef _CONFIG_H_
2 :     #define _CONFIG_H_
3 :    
4 :     #include <windows.h>
5 :    
6 : suxen_drol 983 extern HINSTANCE g_hInst;
7 : suxen_drol 889
8 :    
9 :     /* small hack */
10 :     #ifndef IDC_HAND
11 :     #define IDC_HAND MAKEINTRESOURCE(32649)
12 :     #endif
13 :    
14 :     /* one kilobit */
15 :     #define CONFIG_KBPS 1000
16 :    
17 :     /* registry stuff */
18 :     #define XVID_REG_KEY HKEY_CURRENT_USER
19 :     #define XVID_REG_PARENT "Software\\GNU"
20 :     #define XVID_REG_CHILD "XviD"
21 :     #define XVID_REG_CLASS "config"
22 :    
23 :     #define XVID_BUILD __TIME__ ", " __DATE__
24 :     #define XVID_WEBSITE "http://www.xvid.org/"
25 :     #define XVID_SPECIAL_BUILD "(Vanilla CVS Build)"
26 :    
27 :     /* constants */
28 : suxen_drol 983 #define CONFIG_2PASS_FILE "\\video.pass"
29 : suxen_drol 889
30 :     /* codec modes */
31 : suxen_drol 983 #define RC_MODE_CBR 0
32 :     #define RC_MODE_VBR_QUAL 1 /* deprecated */
33 :     #define RC_MODE_FIXED 2
34 :     #define RC_MODE_2PASS1 3
35 :     #define RC_MODE_2PASS2_EXT 4
36 :     #define RC_MODE_2PASS2_INT 5
37 :     #define RC_MODE_NULL 6
38 : suxen_drol 889
39 :     /* vhq modes */
40 :     #define VHQ_OFF 0
41 :     #define VHQ_MODE_DECISION 1
42 :     #define VHQ_LIMITED_SEARCH 2
43 :     #define VHQ_MEDIUM_SEARCH 3
44 :     #define VHQ_WIDE_SEARCH 4
45 :    
46 : suxen_drol 983 /* quantizer modes */
47 :     #define QUANT_MODE_H263 0
48 :     #define QUANT_MODE_MPEG 1
49 :     #define QUANT_MODE_CUSTOM 2
50 : suxen_drol 889
51 :    
52 :     typedef struct
53 :     {
54 :     /********** ATTENTION **********/
55 :     int mode; // Vidomi directly accesses these vars
56 :     int rc_bitrate; //
57 :     int desired_size; // please try to avoid modifications here
58 : suxen_drol 983 char stats[MAX_PATH]; //
59 : suxen_drol 889 /*******************************/
60 :    
61 : suxen_drol 983 char profile_name[MAX_PATH];
62 :     int profile;
63 :    
64 : suxen_drol 889 int quality;
65 :     int quant;
66 :     int rc_reaction_delay_factor;
67 :     int rc_averaging_period;
68 :     int rc_buffer;
69 :    
70 :     int motion_search;
71 :     int quant_type;
72 :     int fourcc_used;
73 :     int vhq_mode;
74 :     int max_key_interval;
75 :     int min_key_interval;
76 :     int lum_masking;
77 :     int interlacing;
78 :     int qpel;
79 :     int gmc;
80 :     int chromame;
81 :     int greyscale;
82 : suxen_drol 983 int use_bvop;
83 : suxen_drol 889 int max_bframes;
84 :     int bquant_ratio;
85 :     int bquant_offset;
86 : suxen_drol 983 int bvop_threshold;
87 : suxen_drol 889 int packed;
88 : suxen_drol 983 int closed_gov;
89 : suxen_drol 889 int debug;
90 :     int reduced_resolution;
91 :    
92 :     int min_iquant;
93 :     int max_iquant;
94 :     int min_pquant;
95 :     int max_pquant;
96 :     BYTE qmatrix_intra[64];
97 :     BYTE qmatrix_inter[64];
98 :    
99 :     int keyframe_boost;
100 :     int kftreshold;
101 :     int kfreduction;
102 :     int discard1pass;
103 :     int curve_compression_high;
104 :     int curve_compression_low;
105 :     int use_alt_curve;
106 :     int alt_curve_use_auto;
107 :     int alt_curve_auto_str;
108 :     int alt_curve_use_auto_bonus_bias;
109 :     int alt_curve_bonus_bias;
110 :     int alt_curve_type;
111 :     int alt_curve_high_dist;
112 :     int alt_curve_low_dist;
113 :     int alt_curve_min_rel_qual;
114 :     int twopass_max_bitrate;
115 :     int twopass_max_overflow_improvement;
116 :     int twopass_max_overflow_degradation;
117 :     int bitrate_payback_delay;
118 :     int bitrate_payback_method;
119 :     int hinted_me;
120 :    
121 :     int num_threads;
122 :     int chroma_opt;
123 :    
124 :     int frame_drop_ratio;
125 :    
126 :     /* decoder */
127 :    
128 : suxen_drol 983 // int deblock_y;
129 :     // int deblock_uv;
130 : suxen_drol 889
131 :     DWORD cpu;
132 :     float fquant;
133 :     BOOL save;
134 :     } CONFIG;
135 :    
136 :     typedef struct PROPSHEETINFO
137 :     {
138 : suxen_drol 983 int idd;
139 : suxen_drol 889 CONFIG * config;
140 :     } PROPSHEETINFO;
141 :    
142 :     typedef struct REG_INT
143 :     {
144 :     char* reg_value;
145 :     int* config_int;
146 :     int def;
147 :     } REG_INT;
148 :    
149 :     typedef struct REG_STR
150 :     {
151 :     char* reg_value;
152 :     char* config_str;
153 :     char* def;
154 :     } REG_STR;
155 :    
156 : suxen_drol 983
157 :     void config_reg_get(CONFIG * config);
158 :     void config_reg_set(CONFIG * config);
159 :    
160 : suxen_drol 889 BOOL CALLBACK main_proc(HWND, UINT, WPARAM, LPARAM);
161 :     BOOL CALLBACK about_proc(HWND, UINT, WPARAM, LPARAM);
162 :    
163 : suxen_drol 983
164 : suxen_drol 889 #endif /* _CONFIG_H_ */

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