Browse Source

Merge commit '27631796c9d1b8146ad4a16e6539ecc08afa7565'

* commit '27631796c9d1b8146ad4a16e6539ecc08afa7565':
  ac3: Only initialize float_dsp for the float encoder variant

Merged-by: Michael Niedermayer <michaelni@gmx.at>
tags/n2.3
Michael Niedermayer 11 years ago
parent
commit
97c285e61b
4 changed files with 9 additions and 3 deletions
  1. +0
    -1
      libavcodec/ac3enc.c
  2. +1
    -0
      libavcodec/ac3enc.h
  3. +7
    -1
      libavcodec/ac3enc_float.c
  4. +1
    -1
      libavcodec/eac3enc.c

+ 0
- 1
libavcodec/ac3enc.c View File

@@ -2479,7 +2479,6 @@ av_cold int ff_ac3_encode_init(AVCodecContext *avctx)
goto init_fail;

ff_dsputil_init(&s->dsp, avctx);
avpriv_float_dsp_init(&s->fdsp, avctx->flags & CODEC_FLAG_BITEXACT);
ff_ac3dsp_init(&s->ac3dsp, avctx->flags & CODEC_FLAG_BITEXACT);

dprint_options(s);


+ 1
- 0
libavcodec/ac3enc.h View File

@@ -266,6 +266,7 @@ typedef struct AC3EncodeContext {
extern const uint64_t ff_ac3_channel_layouts[19];

int ff_ac3_encode_init(AVCodecContext *avctx);
int ff_ac3_float_encode_init(AVCodecContext *avctx);

int ff_ac3_encode_close(AVCodecContext *avctx);



+ 7
- 1
libavcodec/ac3enc_float.c View File

@@ -134,6 +134,12 @@ static CoefType calc_cpl_coord(CoefSumType energy_ch, CoefSumType energy_cpl)
return FFMIN(coord, COEF_MAX);
}

av_cold int ff_ac3_float_encode_init(AVCodecContext *avctx)
{
AC3EncodeContext *s = avctx->priv_data;
avpriv_float_dsp_init(&s->fdsp, avctx->flags & CODEC_FLAG_BITEXACT);
return ff_ac3_encode_init(avctx);
}

AVCodec ff_ac3_encoder = {
.name = "ac3",
@@ -141,7 +147,7 @@ AVCodec ff_ac3_encoder = {
.type = AVMEDIA_TYPE_AUDIO,
.id = AV_CODEC_ID_AC3,
.priv_data_size = sizeof(AC3EncodeContext),
.init = ff_ac3_encode_init,
.init = ff_ac3_float_encode_init,
.encode2 = ff_ac3_float_encode_frame,
.close = ff_ac3_encode_close,
.sample_fmts = (const enum AVSampleFormat[]){ AV_SAMPLE_FMT_FLTP,


+ 1
- 1
libavcodec/eac3enc.c View File

@@ -257,7 +257,7 @@ AVCodec ff_eac3_encoder = {
.type = AVMEDIA_TYPE_AUDIO,
.id = AV_CODEC_ID_EAC3,
.priv_data_size = sizeof(AC3EncodeContext),
.init = ff_ac3_encode_init,
.init = ff_ac3_float_encode_init,
.encode2 = ff_ac3_float_encode_frame,
.close = ff_ac3_encode_close,
.sample_fmts = (const enum AVSampleFormat[]){ AV_SAMPLE_FMT_FLTP,


Loading…
Cancel
Save