00001
00002 #define AC3_FRAME_SIZE (6*256)
00003 #define AC3_MAX_CODED_FRAME_SIZE 3840
00004 #define AC3_MAX_CHANNELS 6
00005
00006 typedef struct AC3EncodeContext {
00007 PutBitContext pb;
00008 int nb_channels;
00009 int nb_all_channels;
00010 int lfe_channel;
00011 int bit_rate;
00012 int sample_rate;
00013 int bsid;
00014 int frame_size_min;
00015 int frame_size;
00016 int halfratecod;
00017 int frmsizecod;
00018 int fscod;
00019 int acmod;
00020 int lfe;
00021 int bsmod;
00022 short last_samples[AC3_MAX_CHANNELS][256];
00023 int chbwcod[AC3_MAX_CHANNELS];
00024 int nb_coefs[AC3_MAX_CHANNELS];
00025
00026
00027 int sgaincod, sdecaycod, fdecaycod, dbkneecod, floorcod;
00028 int sgain, sdecay, fdecay, dbknee, floor;
00029 int csnroffst;
00030 int fgaincod[AC3_MAX_CHANNELS];
00031 int fsnroffst[AC3_MAX_CHANNELS];
00032
00033 int mant1_cnt, mant2_cnt, mant4_cnt;
00034 } AC3EncodeContext;