MCPcopy Create free account
hub / github.com/FFmpeg/FFmpeg / construct_perm_table

Function construct_perm_table

libavcodec/twinvq.c:965–987  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

963}
964
965static av_cold void construct_perm_table(TwinContext *tctx,enum FrameType ftype)
966{
967 int block_size;
968 const ModeTab *mtab = tctx->mtab;
969 int size = tctx->avctx->channels*mtab->fmode[ftype].sub;
970 int16_t *tmp_perm = (int16_t *) tctx->tmp_buf;
971
972 if (ftype == FT_PPC) {
973 size = tctx->avctx->channels;
974 block_size = mtab->ppc_shape_len;
975 } else
976 block_size = mtab->size / mtab->fmode[ftype].sub;
977
978 permutate_in_line(tmp_perm, tctx->n_div[ftype], size,
979 block_size, tctx->length[ftype],
980 tctx->length_change[ftype], ftype);
981
982 transpose_perm(tctx->permut[ftype], tmp_perm, tctx->n_div[ftype],
983 tctx->length[ftype], tctx->length_change[ftype]);
984
985 linear_perm(tctx->permut[ftype], tctx->permut[ftype], size,
986 size*block_size);
987}
988
989static av_cold void init_bitstream_params(TwinContext *tctx)
990{

Callers 1

init_bitstream_paramsFunction · 0.85

Calls 3

permutate_in_lineFunction · 0.85
transpose_permFunction · 0.85
linear_permFunction · 0.85

Tested by

no test coverage detected