[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 1382, Mon Mar 22 22:36:25 2004 UTC revision 1718, Mon Jul 10 17:39:38 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.2 2004-03-22 22:36:25 edgomez Exp $   * $Id: config.h,v 1.11 2006-07-10 17:39:23 Isibaar 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 93  Line 93 
93          unsigned int greyscale;          unsigned int greyscale;
94          unsigned int chroma_opt;          unsigned int chroma_opt;
95          unsigned int bvop_threshold;          unsigned int bvop_threshold;
96            unsigned int cartoon_mode;
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 111  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];
148          int lum_masking;          int lum_masking;
149          int interlacing;          int interlacing;
150            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 166  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 chromame;  
         int cartoon_mode;  
         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 228  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_PACKED      0x00000080
248    #define PROFILE_EXTRA       0x00000100
249    
 #define PROFILE_AS                      (PROFILE_ADAPTQUANT|PROFILE_BVOP|PROFILE_MPEGQUANT|PROFILE_INTERLACE|PROFILE_QPEL|PROFILE_GMC)  
 #define PROFILE_ARTS            (PROFILE_ADAPTQUANT|PROFILE_REDUCED)  
250    
251  static const int PARS[][2] = {  static const int PARS[][2] = {
252          {1, 1},          {1, 1},
# Line 259  Line 274 
274          int max_acpred_mbs;     /* percentage */          int max_acpred_mbs;     /* percentage */
275          int max_vbv_size;                       /*      max vbv size (bits) 16368 bits */          int max_vbv_size;                       /*      max vbv size (bits) 16368 bits */
276          int max_video_packet_length; /* bits */          int max_video_packet_length; /* bits */
277          int max_bitrate;                        /* kbits/s */          int max_bitrate;                        /* bits per second */
278        int vbv_peakrate;                   /* max bits over anyone second period; 0=don't care */
279        int xvid_max_bframes;               /* xvid: max consecutive bframes */
280          unsigned int flags;          unsigned int flags;
281  } profile_t;  } profile_t;
282    
283    
284  extern const profile_t profiles[];  extern const profile_t profiles[];
285    
286    extern const quality_t quality_table[];
287    extern const int quality_table_num; /* number of elements in quality table */
288    
289    
290  void config_reg_get(CONFIG * config);  void config_reg_get(CONFIG * config);
291  void config_reg_set(CONFIG * config);  void config_reg_set(CONFIG * config);

Legend:
Removed from v.1382  
changed lines
  Added in v.1718

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