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

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

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

revision 1588, Sat Jan 8 12:28:48 2005 UTC revision 1702, Tue Apr 25 15:19:27 2006 UTC
# Line 19  Line 19 
19   *  along with this program ; if not, write to the Free Software   *  along with this program ; if not, write to the Free Software
20   *  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA   *  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA
21   *   *
22   * $Id: config.h,v 1.5 2005-01-08 12:28:48 syskin Exp $   * $Id: config.h,v 1.10 2006-04-25 15:19:27 syskin Exp $
23   *   *
24   ****************************************************************************/   ****************************************************************************/
25  #ifndef _CONFIG_H_  #ifndef _CONFIG_H_
# Line 56  Line 56 
56  #define XVID_SPECIAL_BUILD      "(Vanilla CVS Build)"  #define XVID_SPECIAL_BUILD      "(Vanilla CVS Build)"
57    
58  /* constants */  /* constants */
59  #define CONFIG_2PASS_FILE "\\video.pass"  #define CONFIG_2PASS_FILE ".\\video.pass"
60    
61  /* codec modes */  /* codec modes */
62  #define RC_MODE_1PASS             0  #define RC_MODE_1PASS             0
# Line 97  Line 97 
97  } zone_t;  } zone_t;
98    
99    
100    /* this structure represents a quality preset. it encapsulates
101       options from the motion and quantizer config pages. */
102    #define QUALITY_GENERAL_STRING  "General purpose"
103    #define QUALITY_USER_STRING     "(User defined)"
104    typedef struct {
105      char * name;
106      /* motion */
107      int motion_search;
108            int vhq_mode;
109            int vhq_bframe;
110            int chromame;
111            int turbo;
112            int max_key_interval;
113            int frame_drop_ratio;
114    
115            /* quant */
116            int min_iquant;
117            int max_iquant;
118            int min_pquant;
119            int max_pquant;
120            int min_bquant;
121            int max_bquant;
122            int trellis_quant;
123    } quality_t;
124    
125    
126  typedef struct  typedef struct
127  {  {
128  /********** ATTENTION **********/  /********** ATTENTION **********/
# Line 112  Line 138 
138          char profile_name[MAX_PATH];          char profile_name[MAX_PATH];
139          int profile;                    /* used internally; *not* written to registry */          int profile;                    /* used internally; *not* written to registry */
140    
141      /* quality preset */
142            char quality_name[MAX_PATH];
143            int quality;                    /* used internally; *not* written to registry */
144    
145          int quant_type;          int quant_type;
146          BYTE qmatrix_intra[64];          BYTE qmatrix_intra[64];
147          BYTE qmatrix_inter[64];          BYTE qmatrix_inter[64];
# Line 120  Line 150 
150          int tff;          int tff;
151          int qpel;          int qpel;
152          int gmc;          int gmc;
         int reduced_resolution;  
153          int use_bvop;          int use_bvop;
154          int max_bframes;          int max_bframes;
155          int bquant_ratio;          int bquant_ratio;
156          int bquant_offset;          int bquant_offset;
157          int packed;          int packed;
         int closed_gov;  
158          int display_aspect_ratio;                               /* aspect ratio */          int display_aspect_ratio;                               /* aspect ratio */
159          int ar_x, ar_y;                                                 /* picture aspect ratio */          int ar_x, ar_y;                                                 /* picture aspect ratio */
160          int par_x, par_y;                                               /* custom pixel aspect ratio */          int par_x, par_y;                                               /* custom pixel aspect ratio */
# Line 168  Line 196 
196          int audio_rate;          int audio_rate;
197          int audio_size;          int audio_size;
198    
199          /* motion */    /* user defined quality settings */
200          int motion_search;    quality_t quality_user;
         int vhq_mode;  
         int vhq_bframe;  
         int chromame;  
         int turbo;  
         int max_key_interval;  
         int frame_drop_ratio;  
   
         /* quant */  
         int min_iquant;  
         int max_iquant;  
         int min_pquant;  
         int max_pquant;  
         int min_bquant;  
         int max_bquant;  
         int trellis_quant;  
201    
202          /* debug */          /* debug */
203          int num_threads;          int num_threads;
# Line 230  Line 243 
243  #define PROFILE_INTERLACE       0x00000008  #define PROFILE_INTERLACE       0x00000008
244  #define PROFILE_QPEL            0x00000010  #define PROFILE_QPEL            0x00000010
245  #define PROFILE_GMC                     0x00000020  #define PROFILE_GMC                     0x00000020
246  #define PROFILE_REDUCED         0x00000040      /* dynamic resolution conversion */  #define PROFILE_4MV                 0x00000040
247    #define PROFILE_EXTRA       0x00000080
248    
 #define PROFILE_AS                      (PROFILE_ADAPTQUANT|PROFILE_BVOP|PROFILE_MPEGQUANT|PROFILE_INTERLACE|PROFILE_QPEL|PROFILE_GMC)  
 #define PROFILE_ARTS            (PROFILE_ADAPTQUANT|PROFILE_REDUCED)  
249    
250  static const int PARS[][2] = {  static const int PARS[][2] = {
251          {1, 1},          {1, 1},
# Line 261  Line 273 
273          int max_acpred_mbs;     /* percentage */          int max_acpred_mbs;     /* percentage */
274          int max_vbv_size;                       /*      max vbv size (bits) 16368 bits */          int max_vbv_size;                       /*      max vbv size (bits) 16368 bits */
275          int max_video_packet_length; /* bits */          int max_video_packet_length; /* bits */
276          int max_bitrate;                        /* kbits/s */          int max_bitrate;                        /* bits per second */
277        int vbv_peakrate;                   /* max bits over anyone second period; 0=don't care */
278        int xvid_max_bframes;               /* xvid: max consecutive bframes */
279          unsigned int flags;          unsigned int flags;
280  } profile_t;  } profile_t;
281    
282    
283  extern const profile_t profiles[];  extern const profile_t profiles[];
284    
285    extern const quality_t quality_table[];
286    extern const int quality_table_num; /* number of elements in quality table */
287    
288    
289  void config_reg_get(CONFIG * config);  void config_reg_get(CONFIG * config);
290  void config_reg_set(CONFIG * config);  void config_reg_set(CONFIG * config);

Legend:
Removed from v.1588  
changed lines
  Added in v.1702

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