Lines Matching refs:sub

464         FlacSubframe *sub = &frame->subframes[ch];
466 sub->wasted = 0;
467 sub->obits = s->avctx->bits_per_raw_sample;
469 if (sub->obits > 16)
470 sub->rc.coding_mode = CODING_MODE_RICE2;
472 sub->rc.coding_mode = CODING_MODE_RICE;
518 static uint64_t subframe_count_exact(FlacEncodeContext *s, FlacSubframe *sub,
528 if (sub->wasted)
529 count += sub->wasted;
532 if (sub->type == FLAC_SUBFRAME_CONSTANT) {
533 count += sub->obits;
534 } else if (sub->type == FLAC_SUBFRAME_VERBATIM) {
535 count += s->frame.blocksize * sub->obits;
538 count += pred_order * sub->obits;
541 if (sub->type == FLAC_SUBFRAME_LPC)
548 porder = sub->rc.porder;
556 int k = sub->rc.params[p];
557 count += sub->rc.coding_mode;
558 count += rice_count_exact(&sub->residual[i], part_end - i, k);
722 FlacSubframe *sub, int pred_order)
729 uint64_t bits = 8 + pred_order * sub->obits + 2 + sub->rc.coding_mode;
730 if (sub->type == FLAC_SUBFRAME_LPC)
732 bits += calc_rice_params(&sub->rc, sub->rc_udata, sub->rc_sums, pmin, pmax, sub->residual,
794 FlacSubframe *sub;
800 sub = &frame->subframes[ch];
801 res = sub->residual;
802 smp = sub->samples;
810 sub->type = sub->type_code = FLAC_SUBFRAME_CONSTANT;
812 return subframe_count_exact(s, sub, 0);
817 sub->type = sub->type_code = FLAC_SUBFRAME_VERBATIM;
819 return subframe_count_exact(s, sub, 0);
827 sub->type = FLAC_SUBFRAME_FIXED;
837 bits[i] = find_subframe_rice_params(s, sub, i);
841 sub->order = opt_order;
842 sub->type_code = sub->type | sub->order;
843 if (sub->order != max_order) {
844 encode_residual_fixed(res, smp, n, sub->order);
845 find_subframe_rice_params(s, sub, sub->order);
847 return subframe_count_exact(s, sub, sub->order);
851 sub->type = FLAC_SUBFRAME_LPC;
879 bits[i] = find_subframe_rice_params(s, sub, order+1);
897 bits[i] = find_subframe_rice_params(s, sub, i+1);
919 bits[i] = find_subframe_rice_params(s, sub, i+1);
960 score = find_subframe_rice_params(s, sub, opt_order);
970 sub->order = opt_order;
971 sub->type_code = sub->type | (sub->order-1);
972 sub->shift = shift[sub->order-1];
973 for (i = 0; i < sub->order; i++)
974 sub->coefs[i] = coefs[sub->order-1][i];
977 s->flac_dsp.lpc16_encode(res, smp, n, sub->order, sub->coefs, sub->shift);
979 s->flac_dsp.lpc32_encode(res, smp, n, sub->order, sub->coefs, sub->shift);
982 find_subframe_rice_params(s, sub, sub->order);
984 return subframe_count_exact(s, sub, sub->order);
1049 FlacSubframe *sub = &s->frame.subframes[ch];
1053 v |= sub->samples[i];
1062 sub->samples[i] >>= v;
1064 sub->wasted = v;
1065 sub->obits -= v;
1069 if (sub->obits <= 17)
1070 sub->rc.coding_mode = CODING_MODE_RICE;
1214 FlacSubframe *sub = &s->frame.subframes[ch];
1217 int32_t *res = sub->residual;
1218 int32_t *frame_end = &sub->residual[s->frame.blocksize];
1222 put_bits(&s->pb, 6, sub->type_code);
1223 put_bits(&s->pb, 1, !!sub->wasted);
1224 if (sub->wasted)
1225 put_bits(&s->pb, sub->wasted, 1);
1228 if (sub->type == FLAC_SUBFRAME_CONSTANT) {
1229 put_sbits(&s->pb, sub->obits, res[0]);
1230 } else if (sub->type == FLAC_SUBFRAME_VERBATIM) {
1232 put_sbits(&s->pb, sub->obits, *res++);
1235 for (i = 0; i < sub->order; i++)
1236 put_sbits(&s->pb, sub->obits, *res++);
1239 if (sub->type == FLAC_SUBFRAME_LPC) {
1242 put_sbits(&s->pb, 5, sub->shift);
1243 for (i = 0; i < sub->order; i++)
1244 put_sbits(&s->pb, cbits, sub->coefs[i]);
1248 put_bits(&s->pb, 2, sub->rc.coding_mode - 4);
1251 porder = sub->rc.porder;
1256 part_end = &sub->residual[psize];
1258 int k = sub->rc.params[p];
1259 put_bits(&s->pb, sub->rc.coding_mode, k);