[FFmpeg-cvslog] r25963 - trunk/libavcodec/ac3enc.c
jbr
subversion
Tue Dec 14 15:51:27 CET 2010
Author: jbr
Date: Tue Dec 14 15:51:26 2010
New Revision: 25963
Log:
cosmetics: add more space between functions
Modified:
trunk/libavcodec/ac3enc.c
Modified: trunk/libavcodec/ac3enc.c
==============================================================================
--- trunk/libavcodec/ac3enc.c Tue Dec 14 15:51:23 2010 (r25962)
+++ trunk/libavcodec/ac3enc.c Tue Dec 14 15:51:26 2010 (r25963)
@@ -33,6 +33,7 @@
#include "ac3.h"
#include "audioconvert.h"
+
#define MDCT_NBITS 9
#define MDCT_SAMPLES (1 << MDCT_NBITS)
@@ -40,6 +41,7 @@
#define FIX15(a) av_clip_int16(SCALE_FLOAT(a, 15))
+
typedef struct IComplex {
int16_t re,im;
} IComplex;
@@ -86,11 +88,13 @@ typedef struct AC3EncodeContext {
int16_t last_samples[AC3_MAX_CHANNELS][AC3_BLOCK_SIZE]; ///< last 256 samples from previous frame
} AC3EncodeContext;
+
static int16_t costab[64];
static int16_t sintab[64];
static int16_t xcos1[128];
static int16_t xsin1[128];
+
static av_cold void fft_init(int ln)
{
int i, n, n2;
@@ -106,6 +110,7 @@ static av_cold void fft_init(int ln)
}
}
+
static av_cold void mdct_init(int nbits)
{
int i, n, n4;
@@ -122,6 +127,7 @@ static av_cold void mdct_init(int nbits)
}
}
+
/* butter fly op */
#define BF(pre, pim, qre, qim, pre1, pim1, qre1, qim1) \
{ \
@@ -136,6 +142,7 @@ static av_cold void mdct_init(int nbits)
qim = (by - ay) >> 1; \
}
+
#define CMUL(pre, pim, are, aim, bre, bim) \
{ \
pre = (MUL16(are, bre) - MUL16(aim, bim)) >> 15; \
@@ -210,6 +217,7 @@ static void fft(IComplex *z, int ln)
} while (nblocks);
}
+
static void mdct512(int32_t *out, int16_t *in)
{
int i, re, im, re1, im1;
@@ -241,6 +249,7 @@ static void mdct512(int32_t *out, int16_
}
}
+
/* compute log2(max(abs(tab[]))) */
static int log2_tab(int16_t *tab, int n)
{
@@ -253,6 +262,7 @@ static int log2_tab(int16_t *tab, int n)
return av_log2(v);
}
+
static void lshift_tab(int16_t *tab, int n, int lshift)
{
int i;
@@ -267,6 +277,7 @@ static void lshift_tab(int16_t *tab, int
}
}
+
static int calc_exp_diff(uint8_t *exp1, uint8_t *exp2, int n)
{
int sum, i;
@@ -276,9 +287,11 @@ static int calc_exp_diff(uint8_t *exp1,
return sum;
}
+
/* new exponents are sent if their Norm 1 exceed this number */
#define EXP_DIFF_THRESHOLD 1000
+
static void compute_exp_strategy(uint8_t exp_strategy[AC3_MAX_BLOCKS][AC3_MAX_CHANNELS],
uint8_t exp[AC3_MAX_BLOCKS][AC3_MAX_CHANNELS][AC3_MAX_COEFS],
int ch, int is_lfe)
@@ -316,6 +329,7 @@ static void compute_exp_strategy(uint8_t
}
}
+
/* set exp[i] to min(exp[i], exp1[i]) */
static void exponent_min(uint8_t exp[AC3_MAX_COEFS], uint8_t exp1[AC3_MAX_COEFS], int n)
{
@@ -326,6 +340,7 @@ static void exponent_min(uint8_t exp[AC3
}
}
+
/* update the exponents so that they are the ones the decoder will
decode. Return the number of bits used to code the exponents */
static int encode_exp(uint8_t encoded_exp[AC3_MAX_COEFS],
@@ -375,6 +390,7 @@ static int encode_exp(uint8_t encoded_ex
return 4 + (nb_groups / 3) * 7;
}
+
/* return the size in bits taken by the mantissa */
static int compute_mantissa_size(AC3EncodeContext *s, uint8_t *m, int nb_coefs)
{
@@ -455,6 +471,7 @@ static void bit_alloc_masking(AC3EncodeC
}
}
+
static int bit_alloc(AC3EncodeContext *s,
int16_t mask[AC3_MAX_BLOCKS][AC3_MAX_CHANNELS][50],
int16_t psd[AC3_MAX_BLOCKS][AC3_MAX_CHANNELS][AC3_MAX_COEFS],
@@ -481,6 +498,7 @@ static int bit_alloc(AC3EncodeContext *s
return 16 * s->frame_size - frame_bits;
}
+
#define SNR_INC1 4
static int compute_bit_allocation(AC3EncodeContext *s,
@@ -597,6 +615,7 @@ static int compute_bit_allocation(AC3Enc
return 0;
}
+
/* output the AC-3 frame header */
static void output_frame_header(AC3EncodeContext *s, unsigned char *frame)
{
@@ -627,6 +646,7 @@ static void output_frame_header(AC3Encod
put_bits(&s->pb, 1, 0); /* no additional bit stream info */
}
+
/* symetric quantization on 'levels' levels */
static inline int sym_quant(int c, int e, int levels)
{
@@ -645,6 +665,7 @@ static inline int sym_quant(int c, int e
return v;
}
+
/* asymetric quantization on 2^qbits levels */
static inline int asym_quant(int c, int e, int qbits)
{
@@ -664,6 +685,7 @@ static inline int asym_quant(int c, int
return v & ((1 << qbits)-1);
}
+
/* Output one audio block. There are AC3_MAX_BLOCKS audio blocks in one AC-3
frame */
static void output_audio_block(AC3EncodeContext *s,
@@ -897,8 +919,10 @@ static void output_audio_block(AC3Encode
}
}
+
#define CRC16_POLY ((1 << 0) | (1 << 2) | (1 << 15) | (1 << 16))
+
static unsigned int mul_poly(unsigned int a, unsigned int b, unsigned int poly)
{
unsigned int c;
@@ -915,6 +939,7 @@ static unsigned int mul_poly(unsigned in
return c;
}
+
static unsigned int pow_poly(unsigned int a, unsigned int n, unsigned int poly)
{
unsigned int r;
@@ -928,6 +953,7 @@ static unsigned int pow_poly(unsigned in
return r;
}
+
/* fill the end of the frame and compute the two crcs */
static int output_frame_end(AC3EncodeContext *s)
{
@@ -964,6 +990,7 @@ static int output_frame_end(AC3EncodeCon
return frame_size * 2;
}
+
static int AC3_encode_frame(AVCodecContext *avctx,
unsigned char *frame, int buf_size, void *data)
{
@@ -1077,12 +1104,14 @@ static int AC3_encode_frame(AVCodecConte
return output_frame_end(s);
}
+
static av_cold int AC3_encode_close(AVCodecContext *avctx)
{
av_freep(&avctx->coded_frame);
return 0;
}
+
static av_cold int set_channel_info(AC3EncodeContext *s, int channels,
int64_t *channel_layout)
{
@@ -1127,6 +1156,7 @@ static av_cold int set_channel_info(AC3E
return 0;
}
+
static av_cold int AC3_encode_init(AVCodecContext *avctx)
{
int freq = avctx->sample_rate;
@@ -1208,6 +1238,7 @@ static av_cold int AC3_encode_init(AVCod
return 0;
}
+
#ifdef TEST
/*************************************************************************/
/* TEST */
@@ -1216,6 +1247,7 @@ static av_cold int AC3_encode_init(AVCod
#define FN (MDCT_SAMPLES/4)
+
static void fft_test(AVLFG *lfg)
{
IComplex in[FN], in1[FN];
@@ -1243,6 +1275,7 @@ static void fft_test(AVLFG *lfg)
}
}
+
static void mdct_test(AVLFG *lfg)
{
int16_t input[MDCT_SAMPLES];
@@ -1281,6 +1314,7 @@ static void mdct_test(AVLFG *lfg)
av_log(NULL, AV_LOG_DEBUG, "err2=%f emax=%f\n", err / AC3_MAX_COEFS, emax);
}
+
int main(void)
{
AVLFG lfg;
@@ -1295,6 +1329,7 @@ int main(void)
}
#endif /* TEST */
+
AVCodec ac3_encoder = {
"ac3",
AVMEDIA_TYPE_AUDIO,
More information about the ffmpeg-cvslog
mailing list