--- branches/dev-api-4/xvidcore/vfw/src/config.h 2003/05/17 13:37:49 1032 +++ branches/dev-api-4/xvidcore/vfw/src/config.h 2004/01/20 14:11:39 1312 @@ -1,8 +1,33 @@ +/***************************************************************************** + * + * XVID MPEG-4 VIDEO CODEC + * - VFW configuration header - + * + * Copyright(C) 2002-2003 Anonymous + * + * This program is free software ; you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation ; either version 2 of the License, or + * (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY ; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program ; if not, write to the Free Software + * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA + * + * $Id: config.h,v 1.1.2.17 2004-01-20 14:11:39 syskin Exp $ + * + ****************************************************************************/ #ifndef _CONFIG_H_ #define _CONFIG_H_ #include #include "vfwext.h" +#include extern HINSTANCE g_hInst; @@ -19,7 +44,6 @@ #define DEFAULT_MIN_KBPS 16 #define DEFAULT_MAX_KBPS 10000 - /* registry stuff */ #define XVID_REG_KEY HKEY_CURRENT_USER #define XVID_REG_PARENT "Software\\GNU" @@ -60,10 +84,11 @@ { int frame; + int type; int mode; int weight; int quant; - /* overrides: when ==MODIFIER_USE_DEFAULT use default/global setting */ + unsigned int greyscale; unsigned int chroma_opt; unsigned int bvop_threshold; @@ -73,11 +98,12 @@ typedef struct { /********** ATTENTION **********/ - int mode; // Vidomi directly accesses these vars - int bitrate; // - int desired_size; // please try to avoid modifications here - char stats[MAX_PATH]; // + int mode; /* Vidomi directly accesses these vars */ + int bitrate; + int desired_size; /* please try to avoid modifications here */ + char stats[MAX_PATH]; /*******************************/ + int use_2pass_bitrate; /* use bitrate for 2pass2 (instead of desired size) */ /* profile */ char profile_name[MAX_PATH]; @@ -97,6 +123,10 @@ int bquant_offset; int packed; int closed_gov; + int display_aspect_ratio; /* aspect ratio */ + int ar_x, ar_y; /* picture aspect ratio */ + int par_x, par_y; /* custom pixel aspect ratio */ + int ar_mode; /* picture/pixel AR */ /* zones */ int num_zones; @@ -108,34 +138,26 @@ int rc_averaging_period; int rc_buffer; + /* 2pass1 */ + int discard1pass; + /* 2pass2 */ int keyframe_boost; - int kftreshold; + int kfthreshold; int kfreduction; - int discard1pass; int curve_compression_high; int curve_compression_low; - int use_alt_curve; - int alt_curve_use_auto; - int alt_curve_auto_str; - int alt_curve_use_auto_bonus_bias; - int alt_curve_bonus_bias; - int alt_curve_type; - int alt_curve_high_dist; - int alt_curve_low_dist; - int alt_curve_min_rel_qual; + int overflow_control_strength; int twopass_max_overflow_improvement; int twopass_max_overflow_degradation; - int bitrate_payback_delay; - int bitrate_payback_method; /* motion */ - int motion_search; int vhq_mode; int chromame; + int cartoon_mode; + int turbo; int max_key_interval; - int min_key_interval; int frame_drop_ratio; /* quant */ @@ -152,6 +174,7 @@ int fourcc_used; int vop_debug; int debug; + int display_status; DWORD cpu; @@ -194,6 +217,17 @@ #define PROFILE_AS (PROFILE_ADAPTQUANT|PROFILE_BVOP|PROFILE_MPEGQUANT|PROFILE_INTERLACE|PROFILE_QPEL|PROFILE_GMC) #define PROFILE_ARTS (PROFILE_ADAPTQUANT|PROFILE_REDUCED) +static const int PARS[][2] = { + {1, 1}, + {12, 11}, + {10, 11}, + {16, 11}, + {40, 33}, + {0, 0}, +}; + + + typedef struct { @@ -220,8 +254,10 @@ void config_reg_get(CONFIG * config); void config_reg_set(CONFIG * config); +static void +zones_update(HWND hDlg, CONFIG * config); + BOOL CALLBACK main_proc(HWND, UINT, WPARAM, LPARAM); BOOL CALLBACK about_proc(HWND, UINT, WPARAM, LPARAM); - #endif /* _CONFIG_H_ */