summaryrefslogtreecommitdiff
path: root/libavcodec/ac3enc_template.c
diff options
context:
space:
mode:
authorAndreas Rheinhardt <andreas.rheinhardt@gmail.com>2020-12-03 04:44:21 +0100
committerAndreas Rheinhardt <andreas.rheinhardt@gmail.com>2021-01-09 04:06:31 +0100
commit49a12ac4af32f82643b840c40d2af2f9e2623729 (patch)
treefd3790ba60688f082dd80e486700f146ded990f5 /libavcodec/ac3enc_template.c
parent496ff9f2e5abb08ddf086c7a3c9e8b922d60dd24 (diff)
avcodec/ac3enc_template: Perform compile-time checks at compile-time
Runtime checks for whether the encoder is fixed-point or not are unnecessary here as this is a template; furthermore, there is no fixed-point EAC-3 encoder, so some checks for whether one is in EAC-3 mode can be omitted when doing fixed-point encoding. Signed-off-by: Andreas Rheinhardt <andreas.rheinhardt@gmail.com>
Diffstat (limited to 'libavcodec/ac3enc_template.c')
-rw-r--r--libavcodec/ac3enc_template.c11
1 files changed, 5 insertions, 6 deletions
diff --git a/libavcodec/ac3enc_template.c b/libavcodec/ac3enc_template.c
index 0d99bd84c8..a486c95c8e 100644
--- a/libavcodec/ac3enc_template.c
+++ b/libavcodec/ac3enc_template.c
@@ -98,8 +98,7 @@ static void apply_mdct(AC3EncodeContext *s)
s->ac3dsp.apply_window_int16(s->windowed_samples, input_samples,
s->mdct_window, AC3_WINDOW_SIZE);
- if (s->fixed_point)
- block->coeff_shift[ch+1] = normalize_samples(s);
+ block->coeff_shift[ch + 1] = normalize_samples(s);
#endif
s->mdct.mdct_calcw(&s->mdct, block->mdct_coef[ch+1],
@@ -312,7 +311,7 @@ static void apply_channel_coupling(AC3EncodeContext *s)
}
}
- if (CONFIG_EAC3_ENCODER && s->eac3)
+ if (AC3ENC_FLOAT && CONFIG_EAC3_ENCODER && s->eac3)
ff_eac3_set_cpl_states(s);
}
@@ -384,14 +383,14 @@ int AC3_NAME(encode_frame)(AVCodecContext *avctx, AVPacket *avpkt,
return ret;
}
- if (s->bit_alloc.sr_code == 1 || s->eac3)
+ if (s->bit_alloc.sr_code == 1 || (AC3ENC_FLOAT && s->eac3))
ff_ac3_adjust_frame_size(s);
copy_input_samples(s, (SampleType **)frame->extended_data);
apply_mdct(s);
- if (s->fixed_point)
+ if (!AC3ENC_FLOAT)
scale_coefficients(s);
clip_coefficients(&s->adsp, s->blocks[0].mdct_coef[1],
@@ -405,7 +404,7 @@ int AC3_NAME(encode_frame)(AVCodecContext *avctx, AVPacket *avpkt,
compute_rematrixing_strategy(s);
- if (!s->fixed_point)
+ if (AC3ENC_FLOAT)
scale_coefficients(s);
ff_ac3_apply_rematrixing(s);