annotate ac3enc.h @ 540:4cee7ce37e10 libavcodec

don't exit decoder after decoding first field -> fixes angels.avi interlacing
author arpi_esp
date Thu, 11 Jul 2002 23:34:06 +0000
parents 289eb941b8ba
children
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
0
986e461dc072 Initial revision
glantau
parents:
diff changeset
1
986e461dc072 Initial revision
glantau
parents:
diff changeset
2 #define AC3_FRAME_SIZE (6*256)
986e461dc072 Initial revision
glantau
parents:
diff changeset
3 #define AC3_MAX_CODED_FRAME_SIZE 3840 /* in bytes */
314
289eb941b8ba * encoding of AC3 with more than 2 channels
kabi
parents: 0
diff changeset
4 #define AC3_MAX_CHANNELS 6
0
986e461dc072 Initial revision
glantau
parents:
diff changeset
5
986e461dc072 Initial revision
glantau
parents:
diff changeset
6 typedef struct AC3EncodeContext {
986e461dc072 Initial revision
glantau
parents:
diff changeset
7 PutBitContext pb;
986e461dc072 Initial revision
glantau
parents:
diff changeset
8 int nb_channels;
314
289eb941b8ba * encoding of AC3 with more than 2 channels
kabi
parents: 0
diff changeset
9 int nb_all_channels;
289eb941b8ba * encoding of AC3 with more than 2 channels
kabi
parents: 0
diff changeset
10 int lfe_channel;
0
986e461dc072 Initial revision
glantau
parents:
diff changeset
11 int bit_rate;
986e461dc072 Initial revision
glantau
parents:
diff changeset
12 int sample_rate;
986e461dc072 Initial revision
glantau
parents:
diff changeset
13 int bsid;
986e461dc072 Initial revision
glantau
parents:
diff changeset
14 int frame_size_min; /* minimum frame size in case rounding is necessary */
986e461dc072 Initial revision
glantau
parents:
diff changeset
15 int frame_size; /* current frame size in words */
986e461dc072 Initial revision
glantau
parents:
diff changeset
16 int halfratecod;
986e461dc072 Initial revision
glantau
parents:
diff changeset
17 int frmsizecod;
986e461dc072 Initial revision
glantau
parents:
diff changeset
18 int fscod; /* frequency */
986e461dc072 Initial revision
glantau
parents:
diff changeset
19 int acmod;
314
289eb941b8ba * encoding of AC3 with more than 2 channels
kabi
parents: 0
diff changeset
20 int lfe;
0
986e461dc072 Initial revision
glantau
parents:
diff changeset
21 int bsmod;
986e461dc072 Initial revision
glantau
parents:
diff changeset
22 short last_samples[AC3_MAX_CHANNELS][256];
986e461dc072 Initial revision
glantau
parents:
diff changeset
23 int chbwcod[AC3_MAX_CHANNELS];
986e461dc072 Initial revision
glantau
parents:
diff changeset
24 int nb_coefs[AC3_MAX_CHANNELS];
986e461dc072 Initial revision
glantau
parents:
diff changeset
25
986e461dc072 Initial revision
glantau
parents:
diff changeset
26 /* bitrate allocation control */
986e461dc072 Initial revision
glantau
parents:
diff changeset
27 int sgaincod, sdecaycod, fdecaycod, dbkneecod, floorcod;
986e461dc072 Initial revision
glantau
parents:
diff changeset
28 int sgain, sdecay, fdecay, dbknee, floor;
986e461dc072 Initial revision
glantau
parents:
diff changeset
29 int csnroffst;
986e461dc072 Initial revision
glantau
parents:
diff changeset
30 int fgaincod[AC3_MAX_CHANNELS];
986e461dc072 Initial revision
glantau
parents:
diff changeset
31 int fsnroffst[AC3_MAX_CHANNELS];
986e461dc072 Initial revision
glantau
parents:
diff changeset
32 /* mantissa encoding */
986e461dc072 Initial revision
glantau
parents:
diff changeset
33 int mant1_cnt, mant2_cnt, mant4_cnt;
986e461dc072 Initial revision
glantau
parents:
diff changeset
34 } AC3EncodeContext;