Lines Matching refs:band

136     int ch, band;
146 for (band = 0; band < DCAENC_SUBBANDS; band++) {
147 c->subband[ch][band] = bufer +
149 band * (SUBBAND_SAMPLES + DCA_ADPCM_COEFFS) + DCA_ADPCM_COEFFS;
340 int band;
356 for (band = 0; band < 32; band++) {
359 int s = (2 * band + 1) * (2 * (i + 16) + 1);
363 c->subband[ch][band][subs] = ((band + 1) & 2) ? -resp : resp;
477 static void walk_band_low(DCAEncContext *c, int band, int channel,
482 if (band == 0) {
487 walk(c, band, band - 1, 8 * band - 4 + f,
492 static void walk_band_high(DCAEncContext *c, int band, int channel,
497 if (band == 31) {
502 walk(c, band, band + 1, 8 * band + 4 + f,
519 int i, k, band, ch, ssf;
545 for (band = 0; band < 32; band++) {
546 c->band_masking_cb[band] = 2048;
547 walk_band_low(c, band, 0, update_band_masking, NULL);
548 walk_band_high(c, band, 0, update_band_masking, NULL);
566 int band, ch;
569 for (band = 0; band < 32; band++)
570 c->peak_cb[ch][band] = find_peak(c, c->subband[ch][band],
580 int ch, band;
587 for (band = 0; band < 32; band++) {
588 samples = c->subband[ch][band] - DCA_ADPCM_COEFFS;
592 c->prediction_mode[ch][band] = pred_vq_id;
594 c->diff_peak_cb[ch][band] = find_peak(c, estimated_diff, 16);
596 c->prediction_mode[ch][band] = -1;
606 static inline int32_t get_step_size(DCAEncContext *c, int ch, int band)
611 step_size = ff_dca_lossless_quant[c->abits[ch][band]];
613 step_size = ff_dca_lossy_quant[c->abits[ch][band]];
651 static inline void quantize_adpcm_subband(DCAEncContext *c, int ch, int band)
654 int32_t diff_peak_cb = c->diff_peak_cb[ch][band];
655 c->scale_factor[ch][band] = calc_one_scale(c, diff_peak_cb,
656 c->abits[ch][band],
657 &c->quant[ch][band]);
659 step_size = get_step_size(c, ch, band);
660 ff_dcaadpcm_do_real(c->prediction_mode[ch][band],
661 c->quant[ch][band],
662 ff_dca_scale_factor_quant7[c->scale_factor[ch][band]],
663 step_size, c->adpcm_history[ch][band], c->subband[ch][band],
664 c->adpcm_history[ch][band] + 4, c->quantized[ch][band],
670 int band, ch;
673 for (band = 0; band < 32; band++)
674 if (c->prediction_mode[ch][band] >= 0)
675 quantize_adpcm_subband(c, ch, band);
680 int sample, band, ch;
683 for (band = 0; band < 32; band++) {
684 if (c->prediction_mode[ch][band] == -1) {
686 int32_t val = quantize_value(c->subband[ch][band][sample],
687 c->quant[ch][band]);
688 c->quantized[ch][band][sample] = val;
775 int ch, band, ret = USED_26ABITS | USED_1ABITS;
787 for (band = 0; band < 32; band++) {
788 int snr_cb = c->peak_cb[ch][band] - c->band_masking_cb[band] - noise;
791 c->abits[ch][band] = 26;
794 c->abits[ch][band] = 8 + mul32(snr_cb - 222, 69000000);
797 c->abits[ch][band] = 2 + mul32(snr_cb, 106000000);
800 c->abits[ch][band] = 1;
803 c->abits[ch][band] = 0;
815 for (band = 0; band < 32; band++) {
816 if (c->prediction_mode[ch][band] == -1) {
817 c->scale_factor[ch][band] = calc_one_scale(c, c->peak_cb[ch][band],
818 c->abits[ch][band],
819 &c->quant[ch][band]);
829 for (band = 0; band < 32; band++) {
830 if (c->abits[ch][band] && c->abits[ch][band] <= DCA_CODE_BOOKS) {
831 accumulate_huff_bit_consumption(c->abits[ch][band],
832 c->quantized[ch][band],
833 huff_bit_count_accum[ch][c->abits[ch][band] - 1]);
834 clc_bit_count_accum[ch][c->abits[ch][band] - 1] += bit_consumption[c->abits[ch][band]];
836 bits_counter += bit_consumption[c->abits[ch][band]];
908 int ch, band;
915 for (band = 0; band < 32; band++) {
916 int32_t *samples = c->subband[ch][band] - DCA_ADPCM_COEFFS;
917 if (c->prediction_mode[ch][band] == -1) {
918 step_size = get_step_size(c, ch, band);
920 ff_dca_core_dequantize(c->adpcm_history[ch][band],
921 c->quantized[ch][band]+12, step_size,
922 ff_dca_scale_factor_quant7[c->scale_factor[ch][band]], 0, 4);
924 AV_COPY128U(c->adpcm_history[ch][band], c->adpcm_history[ch][band]+4);
934 samples[0] = c->adpcm_history[ch][band][0] * (1 << 7);
935 samples[1] = c->adpcm_history[ch][band][1] * (1 << 7);
936 samples[2] = c->adpcm_history[ch][band][2] * (1 << 7);
937 samples[3] = c->adpcm_history[ch][band][3] * (1 << 7);
1078 static void put_subframe_samples(DCAEncContext *c, int ss, int band, int ch)
1081 if (c->abits[ch][band] <= DCA_CODE_BOOKS) {
1082 av_assert0(c->abits[ch][band] > 0);
1083 sel = c->quant_index_sel[ch][c->abits[ch][band] - 1];
1085 if (sel < ff_dca_quant_index_group_size[c->abits[ch][band] - 1]) {
1086 ff_dca_vlc_enc_quant(&c->pb, &c->quantized[ch][band][ss * 8], 8,
1087 sel, c->abits[ch][band] - 1);
1092 if (c->abits[ch][band] <= 7) {
1096 sum *= ff_dca_quant_levels[c->abits[ch][band]];
1097 sum += c->quantized[ch][band][ss * 8 + i + j];
1098 sum += (ff_dca_quant_levels[c->abits[ch][band]] - 1) / 2;
1100 put_bits(&c->pb, bit_consumption[c->abits[ch][band]] / 4, sum);
1107 bits = bit_consumption[c->abits[ch][band]] / 16;
1108 put_sbits(&c->pb, bits, c->quantized[ch][band][ss * 8 + i]);
1114 int i, band, ss, ch;
1124 for (band = 0; band < DCAENC_SUBBANDS; band++)
1125 put_bits(&c->pb, 1, !(c->prediction_mode[ch][band] == -1));
1129 for (band = 0; band < DCAENC_SUBBANDS; band++)
1130 if (c->prediction_mode[ch][band] >= 0)
1131 put_bits(&c->pb, 12, c->prediction_mode[ch][band]);
1136 for (band = 0; band < DCAENC_SUBBANDS; band++) {
1137 put_bits(&c->pb, 5, c->abits[ch][band]);
1148 for (band = 0; band < DCAENC_SUBBANDS; band++)
1149 if (c->abits[ch][band])
1155 for (band = 0; band < DCAENC_SUBBANDS; band++)
1156 if (c->abits[ch][band])
1157 put_bits(&c->pb, 7, c->scale_factor[ch][band]);
1176 for (band = 0; band < DCAENC_SUBBANDS; band++)
1177 if (c->abits[ch][band])
1178 put_subframe_samples(c, ss, band, ch);