diff options
author | Justin Ruggles <justin.ruggles@gmail.com> | 2011-06-10 12:42:36 -0400 |
---|---|---|
committer | Justin Ruggles <justin.ruggles@gmail.com> | 2011-06-13 16:49:35 -0400 |
commit | e754dfc0bba4f81fe797f240fca94fea5dfd925e (patch) | |
tree | a610aa37e26a60e164d0ae4a1c12552c3df12754 /libavcodec/ac3enc.h | |
parent | 36151b3e3112cd7d8ae0e02e850dee16bd966696 (diff) | |
download | ffmpeg-e754dfc0bba4f81fe797f240fca94fea5dfd925e.tar.gz |
ac3enc: dynamically allocate AC3EncodeContext fields windowed_samples and mdct
This will allow the same struct to be used for both the fixed and float ac3
encoders.
Diffstat (limited to 'libavcodec/ac3enc.h')
-rw-r--r-- | libavcodec/ac3enc.h | 5 |
1 files changed, 2 insertions, 3 deletions
diff --git a/libavcodec/ac3enc.h b/libavcodec/ac3enc.h index 34ca2e449f..ccdb963a7c 100644 --- a/libavcodec/ac3enc.h +++ b/libavcodec/ac3enc.h @@ -128,7 +128,7 @@ typedef struct AC3EncodeContext { PutBitContext pb; ///< bitstream writer context DSPContext dsp; AC3DSPContext ac3dsp; ///< AC-3 optimized functions - AC3MDCTContext mdct; ///< MDCT context + AC3MDCTContext *mdct; ///< MDCT context AC3Block blocks[AC3_MAX_BLOCKS]; ///< per-block info @@ -189,6 +189,7 @@ typedef struct AC3EncodeContext { int frame_bits; ///< all frame bits except exponents and mantissas int exponent_bits; ///< number of bits used for exponents + SampleType *windowed_samples; SampleType **planar_samples; uint8_t *bap_buffer; uint8_t *bap1_buffer; @@ -208,8 +209,6 @@ typedef struct AC3EncodeContext { uint8_t *ref_bap [AC3_MAX_CHANNELS][AC3_MAX_BLOCKS]; ///< bit allocation pointers (bap) int ref_bap_set; ///< indicates if ref_bap pointers have been set - DECLARE_ALIGNED(32, SampleType, windowed_samples)[AC3_WINDOW_SIZE]; - void (*output_frame_header)(struct AC3EncodeContext *s); } AC3EncodeContext; |