[svn] / trunk / vfw / src / config.h Repository:
ViewVC logotype

Diff of /trunk/vfw/src/config.h

Parent Directory Parent Directory | Revision Log Revision Log | View Patch Patch

revision 3, Fri Mar 8 02:46:11 2002 UTC revision 858, Sun Feb 16 04:37:29 2003 UTC
# Line 5  Line 5 
5    
6    
7  HINSTANCE hInst;  HINSTANCE hInst;
8    HWND hTooltip;
9    
10    
11  /* small hack */  /* small hack */
# Line 17  Line 18 
18    
19  /* registry stuff */  /* registry stuff */
20  #define XVID_REG_KEY    HKEY_CURRENT_USER  #define XVID_REG_KEY    HKEY_CURRENT_USER
21  #define XVID_REG_SUBKEY "Software\\GNU\\XviD"  #define XVID_REG_PARENT "Software\\GNU"
22    #define XVID_REG_CHILD  "XviD"
23  #define XVID_REG_CLASS  "config"  #define XVID_REG_CLASS  "config"
24    
25  #define XVID_WEBSITE    "http://www.xvid.org"  #define XVID_BUILD              __TIME__ ", " __DATE__
26    #define XVID_WEBSITE    "http://www.xvid.org/"
27    #define XVID_SPECIAL_BUILD      "(Vanilla CVS Build)"
28    
29  /* constants */  /* constants */
30    #define CONFIG_HINTFILE         "\\hintfile.mvh"
31  #define CONFIG_2PASS_1_FILE "\\video.stats"  #define CONFIG_2PASS_1_FILE "\\video.stats"
32  #define CONFIG_2PASS_2_FILE "\\videogk.stats"  #define CONFIG_2PASS_2_FILE "\\videogk.stats"
33    
34  /* property sheets - sheets can be reordered here */  /* property sheets - sheets can be reordered here */
35  #define DLG_COUNT               5  #define DLG_COUNT               6
36    
37  #define DLG_MAIN                0  #define DLG_GLOBAL              0
38  #define DLG_ADV                 1  #define DLG_QUANT               1
39  #define DLG_DEBUG               2  #define DLG_2PASS               2
40  #define DLG_CPU                 3  #define DLG_2PASSALT    3
41  #define DLG_ABOUT               4  #define DLG_CREDITS             4
42    #define DLG_CPU                 5
43    
44  /* codec modes */  /* codec modes */
45  #define DLG_MODE_CBR                    0  #define DLG_MODE_CBR                    0
# Line 48  Line 54 
54  #define QUANT_MODE_H263                 0  #define QUANT_MODE_H263                 0
55  #define QUANT_MODE_MPEG                 1  #define QUANT_MODE_MPEG                 1
56  #define QUANT_MODE_CUSTOM               2  #define QUANT_MODE_CUSTOM               2
57    #define QUANT_MODE_MOD                  3
58    #define QUANT_MODE_MOD_NEW              4
59    
60  /* credits modes */  /* credits modes */
61  #define CREDITS_MODE_RATE               0  #define CREDITS_MODE_RATE               0
62  #define CREDITS_MODE_QUANT              1  #define CREDITS_MODE_QUANT              1
63  #define CREDITS_MODE_SIZE               2  #define CREDITS_MODE_SIZE               2
64    
65    /* vhq modes */
66    #define VHQ_OFF                                 0
67    #define VHQ_MODE_DECISION               1
68    #define VHQ_LIMITED_SEARCH              2
69    #define VHQ_MEDIUM_SEARCH               3
70    #define VHQ_WIDE_SEARCH                 4
71    
72  #define CREDITS_START                   1  #define CREDITS_START                   1
73  #define CREDITS_END                             2  #define CREDITS_END                             2
74    
75    #define RAD2DEG 57.295779513082320876798154814105
76    #define DEG2RAD 0.017453292519943295769236907684886
77    
78  typedef struct  typedef struct
79  {  {
80          int mode;  /********** ATTENTION **********/
81          int bitrate;          int mode;                                       // Vidomi directly accesses these vars
82            int rc_bitrate;                         //
83            int desired_size;                       // please try to avoid modifications here
84            char stats1[MAX_PATH];          //
85    /*******************************/
86    
87          int quality;          int quality;
88          int     quant;          int     quant;
89            int rc_reaction_delay_factor;
90            int rc_averaging_period;
91            int rc_buffer;
92    
93          char stats1[MAX_PATH];          int motion_search;
94          char stats2[MAX_PATH];          int quant_type;
95          int discard1pass;          int fourcc_used;
96          int dummy2pass;          int vhq_mode;
97          int desired_size;          int max_key_interval;
98            int min_key_interval;
99            int lum_masking;
100            int interlacing;
101            int qpel;
102            int gmc;
103            int chromame;
104    //added by koepi for gruel's greyscale_mode
105            int greyscale;
106    // end of koepi's additions
107            int max_bframes;
108            int bquant_ratio;
109            int bquant_offset;
110            int packed;
111            int dx50bvop;
112            int debug;
113            int reduced_resolution;
114    
115          int min_iquant;          int min_iquant;
116          int max_iquant;          int max_iquant;
117            int min_pquant;
118            int max_pquant;
119            BYTE qmatrix_intra[64];
120            BYTE qmatrix_inter[64];
121    
122          int keyframe_boost;          int keyframe_boost;
123          int min_key_interval;  //added by koepi for new 2pass curve treatment
124          int bitrate_payback_delay;          int kftreshold;
125          int bitrate_payback_method;          int kfreduction;
126    // end of koepi's additions
127            int discard1pass;
128            int dummy2pass;
129          int curve_compression_high;          int curve_compression_high;
130          int curve_compression_low;          int curve_compression_low;
131            int use_alt_curve;
132          float fquant;          int alt_curve_use_auto;
133            int alt_curve_auto_str;
134            int alt_curve_use_auto_bonus_bias;
135            int alt_curve_bonus_bias;
136            int alt_curve_type;
137            int alt_curve_high_dist;
138            int alt_curve_low_dist;
139            int alt_curve_min_rel_qual;
140            int twopass_max_bitrate;
141            int twopass_max_overflow_improvement;
142            int twopass_max_overflow_degradation;
143            int bitrate_payback_delay;
144            int bitrate_payback_method;
145            int hinted_me;
146            char hintfile[MAX_PATH];
147            char stats2[MAX_PATH];
148    
149          int credits_start;          int credits_start;
150          int credits_start_begin;          int credits_start_begin;
# Line 90  Line 153 
153          int credits_end_begin;          int credits_end_begin;
154          int credits_end_end;          int credits_end_end;
155    
156    //added by koepi for gruel's greyscale_mode
157            int credits_greyscale;
158    // end of koepi's additions
159          int credits_mode;          int credits_mode;
160          int credits_rate;          int credits_rate;
161          int credits_quant_i;          int credits_quant_i;
# Line 97  Line 163 
163          int credits_start_size;          int credits_start_size;
164          int credits_end_size;          int credits_end_size;
165    
166          int motion_search;  #ifdef _SMP
167          int quant_type;          int num_threads;
168          int max_key_interval;  #endif
169            int chroma_opt;
170    
171          int rc_buffersize;          int frame_drop_ratio;
172    
173          int min_quant;          /* decoder */
         int max_quant;  
         int lum_masking;  
174    
175          int fourcc_used;          int deblock_y;
176            int deblock_uv;
         BYTE qmatrix_intra[64];  
         BYTE qmatrix_inter[64];  
177    
178    //      char build[50];
179          DWORD cpu;          DWORD cpu;
180            float fquant;
181          BOOL save;          BOOL save;
   
182  } CONFIG;  } CONFIG;
183    
   
184  typedef struct PROPSHEETINFO  typedef struct PROPSHEETINFO
185  {  {
186          int page;          int page;
187          CONFIG * config;          CONFIG * config;
188  } PROPSHEETINFO;  } PROPSHEETINFO;
189    
190    typedef struct REG_INT
191    {
192            char* reg_value;
193            int* config_int;
194            int def;
195    } REG_INT;
196    
197    typedef struct REG_STR
198    {
199            char* reg_value;
200            char* config_str;
201            char* def;
202    } REG_STR;
203    
204  void config_reg_get(CONFIG *);  void config_reg_get(CONFIG *);
205  void config_reg_set(CONFIG *);  void config_reg_set(CONFIG *);
206  void config_mode(HWND);  void config_reg_default(CONFIG *);
207  void config_upload(HWND, int, CONFIG *);  int config_get_int(HWND, INT, int);
208  void config_download(HWND, int, CONFIG *);  int config_get_uint(HWND, UINT, int);
209  void config_slider(HWND, CONFIG *);  void main_download(HWND, CONFIG *);
210  void config_value(HWND, CONFIG *);  void main_slider(HWND, CONFIG *);
211  int config_get_int(HWND, UINT, int);  void main_value(HWND, CONFIG *);
212  void credits_controls(HWND);  void adv_dialog(HWND, CONFIG *);
213    void adv_mode(HWND, int);
214    void adv_upload(HWND, int, CONFIG *);
215    void adv_download(HWND, int, CONFIG *);
216  void quant_upload(HWND, CONFIG *);  void quant_upload(HWND, CONFIG *);
217  void quant_download(HWND, CONFIG *);  void quant_download(HWND, CONFIG *);
218  BOOL CALLBACK config_proc(HWND, UINT, WPARAM, LPARAM);  BOOL CALLBACK enum_tooltips(HWND, LPARAM);
219  BOOL CALLBACK credits_proc(HWND, UINT, WPARAM, LPARAM);  BOOL CALLBACK main_proc(HWND, UINT, WPARAM, LPARAM);
220  BOOL CALLBACK twopass_proc(HWND, UINT, WPARAM, LPARAM);  BOOL CALLBACK adv_proc(HWND, UINT, WPARAM, LPARAM);
221  BOOL CALLBACK quantmatrix_proc(HWND, UINT, WPARAM, LPARAM);  BOOL CALLBACK quantmatrix_proc(HWND, UINT, WPARAM, LPARAM);
222    BOOL CALLBACK about_proc(HWND, UINT, WPARAM, LPARAM);
223    
224  #endif /* _CONFIG_H_ */  #endif /* _CONFIG_H_ */

Legend:
Removed from v.3  
changed lines
  Added in v.858

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