|
|
|
@ -59,7 +59,6 @@ static av_cold int g722_encode_close(AVCodecContext *avctx) |
|
|
|
|
static av_cold int g722_encode_init(AVCodecContext * avctx) |
|
|
|
|
{ |
|
|
|
|
G722Context *c = avctx->priv_data; |
|
|
|
|
int ret; |
|
|
|
|
|
|
|
|
|
c->band[0].scale_factor = 8; |
|
|
|
|
c->band[1].scale_factor = 2; |
|
|
|
@ -73,10 +72,8 @@ static av_cold int g722_encode_init(AVCodecContext * avctx) |
|
|
|
|
c->paths[i] = av_mallocz_array(max_paths, sizeof(**c->paths)); |
|
|
|
|
c->node_buf[i] = av_mallocz_array(frontier, 2 * sizeof(**c->node_buf)); |
|
|
|
|
c->nodep_buf[i] = av_mallocz_array(frontier, 2 * sizeof(**c->nodep_buf)); |
|
|
|
|
if (!c->paths[i] || !c->node_buf[i] || !c->nodep_buf[i]) { |
|
|
|
|
ret = AVERROR(ENOMEM); |
|
|
|
|
goto error; |
|
|
|
|
} |
|
|
|
|
if (!c->paths[i] || !c->node_buf[i] || !c->nodep_buf[i]) |
|
|
|
|
return AVERROR(ENOMEM); |
|
|
|
|
} |
|
|
|
|
} |
|
|
|
|
|
|
|
|
@ -118,9 +115,6 @@ static av_cold int g722_encode_init(AVCodecContext * avctx) |
|
|
|
|
ff_g722dsp_init(&c->dsp); |
|
|
|
|
|
|
|
|
|
return 0; |
|
|
|
|
error: |
|
|
|
|
g722_encode_close(avctx); |
|
|
|
|
return ret; |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
static const int16_t low_quant[33] = { |
|
|
|
@ -387,4 +381,5 @@ AVCodec ff_adpcm_g722_encoder = { |
|
|
|
|
.capabilities = AV_CODEC_CAP_SMALL_LAST_FRAME, |
|
|
|
|
.sample_fmts = (const enum AVSampleFormat[]){ AV_SAMPLE_FMT_S16, AV_SAMPLE_FMT_NONE }, |
|
|
|
|
.channel_layouts = (const uint64_t[]){ AV_CH_LAYOUT_MONO, 0 }, |
|
|
|
|
.caps_internal = FF_CODEC_CAP_INIT_CLEANUP, |
|
|
|
|
}; |
|
|
|
|