[cvs] / xvidcore / src / utils / ratecontrol.h Repository:
ViewVC logotype

Diff of /xvidcore/src/utils/ratecontrol.h

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

revision 1.2, Sun Mar 24 05:47:23 2002 UTC revision 1.5, Wed Jun 12 20:38:41 2002 UTC
# Line 1  Line 1 
1  #ifndef _RATECONTROL_H_  #ifndef _RATECONTROL_H_
2  #define _RATECONTROL_H_  #define _RATECONTROL_H_
3    
 #include "../encoder.h"  
4  #include "../portab.h"  #include "../portab.h"
5    
6  void RateControlInit(uint32_t target_rate, uint32_t reaction_delay_factor, int framerate,  typedef struct
7                                           int max_quant, int min_quant);  {
8            int64_t size;
9  int RateControlGetQ(int keyframe);          int32_t count;
10    }
11  void RateControlUpdate(int16_t quant, int frame_size, int keyframe);  QuantInfo;
12    
13    typedef struct
14    {
15            int32_t rtn_quant;
16            int64_t frames;
17            int64_t total_size;
18            double framerate;
19            int32_t target_rate;
20            int16_t max_quant;
21            int16_t min_quant;
22            int64_t last_change;
23            int64_t quant_sum;
24            double quant_error[32];
25            double avg_framesize;
26            double target_framesize;
27            double sequence_quality;
28            int32_t averaging_period;
29            int32_t reaction_delay_factor;
30            int32_t buffer;
31    }
32    RateControl;
33    
34    void RateControlInit(RateControl * rate_control,
35                                             uint32_t target_rate,
36                                             uint32_t reaction_delay_factor,
37                                             uint32_t averaging_period,
38                                             uint32_t buffer,
39                                             int framerate,
40                                             int max_quant,
41                                             int min_quant);
42    
43    int RateControlGetQ(RateControl * rate_control,
44                                            int keyframe);
45    
46    void RateControlUpdate(RateControl * rate_control,
47                                               int16_t quant,
48                                               int frame_size,
49                                               int keyframe);
50    
51  #endif /* _RATECONTROL_H_ */  #endif /* _RATECONTROL_H_ */
   

Legend:
Removed from v.1.2  
changed lines
  Added in v.1.5

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