|
|
|
@ -925,27 +925,25 @@ FF_ENABLE_DEPRECATION_WARNINGS |
|
|
|
|
ff_qpeldsp_init(&s->qdsp); |
|
|
|
|
|
|
|
|
|
if (s->msmpeg4_version) { |
|
|
|
|
FF_ALLOCZ_OR_GOTO(s->avctx, s->ac_stats, |
|
|
|
|
2 * 2 * (MAX_LEVEL + 1) * |
|
|
|
|
(MAX_RUN + 1) * 2 * sizeof(int), fail); |
|
|
|
|
int ac_stats_size = 2 * 2 * (MAX_LEVEL + 1) * (MAX_RUN + 1) * 2 * sizeof(int); |
|
|
|
|
if (!(s->ac_stats = av_mallocz(ac_stats_size))) |
|
|
|
|
return AVERROR(ENOMEM); |
|
|
|
|
} |
|
|
|
|
FF_ALLOCZ_OR_GOTO(s->avctx, s->avctx->stats_out, 256, fail); |
|
|
|
|
|
|
|
|
|
FF_ALLOCZ_OR_GOTO(s->avctx, s->q_intra_matrix, 64 * 32 * sizeof(int), fail); |
|
|
|
|
FF_ALLOCZ_OR_GOTO(s->avctx, s->q_chroma_intra_matrix, 64 * 32 * sizeof(int), fail); |
|
|
|
|
FF_ALLOCZ_OR_GOTO(s->avctx, s->q_inter_matrix, 64 * 32 * sizeof(int), fail); |
|
|
|
|
FF_ALLOCZ_OR_GOTO(s->avctx, s->q_intra_matrix16, 64 * 32 * 2 * sizeof(uint16_t), fail); |
|
|
|
|
FF_ALLOCZ_OR_GOTO(s->avctx, s->q_chroma_intra_matrix16, 64 * 32 * 2 * sizeof(uint16_t), fail); |
|
|
|
|
FF_ALLOCZ_OR_GOTO(s->avctx, s->q_inter_matrix16, 64 * 32 * 2 * sizeof(uint16_t), fail); |
|
|
|
|
FF_ALLOCZ_OR_GOTO(s->avctx, s->input_picture, |
|
|
|
|
MAX_PICTURE_COUNT * sizeof(Picture *), fail); |
|
|
|
|
FF_ALLOCZ_OR_GOTO(s->avctx, s->reordered_input_picture, |
|
|
|
|
MAX_PICTURE_COUNT * sizeof(Picture *), fail); |
|
|
|
|
|
|
|
|
|
if (!(s->avctx->stats_out = av_mallocz(256)) || |
|
|
|
|
!FF_ALLOCZ_TYPED_ARRAY(s->q_intra_matrix, 32) || |
|
|
|
|
!FF_ALLOCZ_TYPED_ARRAY(s->q_chroma_intra_matrix, 32) || |
|
|
|
|
!FF_ALLOCZ_TYPED_ARRAY(s->q_inter_matrix, 32) || |
|
|
|
|
!FF_ALLOCZ_TYPED_ARRAY(s->q_intra_matrix16, 32) || |
|
|
|
|
!FF_ALLOCZ_TYPED_ARRAY(s->q_chroma_intra_matrix16, 32) || |
|
|
|
|
!FF_ALLOCZ_TYPED_ARRAY(s->q_inter_matrix16, 32) || |
|
|
|
|
!FF_ALLOCZ_TYPED_ARRAY(s->input_picture, MAX_PICTURE_COUNT) || |
|
|
|
|
!FF_ALLOCZ_TYPED_ARRAY(s->reordered_input_picture, MAX_PICTURE_COUNT)) |
|
|
|
|
return AVERROR(ENOMEM); |
|
|
|
|
|
|
|
|
|
if (s->noise_reduction) { |
|
|
|
|
FF_ALLOCZ_OR_GOTO(s->avctx, s->dct_offset, |
|
|
|
|
2 * 64 * sizeof(uint16_t), fail); |
|
|
|
|
if (!FF_ALLOCZ_TYPED_ARRAY(s->dct_offset, 2)) |
|
|
|
|
return AVERROR(ENOMEM); |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
ff_dct_encode_init(s); |
|
|
|
@ -1060,8 +1058,6 @@ FF_ENABLE_DEPRECATION_WARNINGS |
|
|
|
|
cpb_props->buffer_size = avctx->rc_buffer_size; |
|
|
|
|
|
|
|
|
|
return 0; |
|
|
|
|
fail: |
|
|
|
|
return AVERROR_UNKNOWN; |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
av_cold int ff_mpv_encode_end(AVCodecContext *avctx) |
|
|
|
|