Lines Matching +full:- +full:i
1 /* libFLAC - Free Lossless Audio Codec library
2 * Copyright (C) 2000-2009 Josh Coalson
3 * Copyright (C) 2011-2023 Xiph.Org Foundation
9 * - Redistributions of source code must retain the above copyright
12 * - Redistributions in binary form must reproduce the above copyright
16 * - Neither the name of the Xiph.org Foundation nor the names of its
70 uint32_t i; in FLAC__lpc_window_data() local
71 for(i = 0; i < data_len; i++) in FLAC__lpc_window_data()
72 out[i] = in[i] * window[i]; in FLAC__lpc_window_data()
77 uint32_t i; in FLAC__lpc_window_data_wide() local
78 for(i = 0; i < data_len; i++) in FLAC__lpc_window_data_wide()
79 out[i] = in[i] * window[i]; in FLAC__lpc_window_data_wide()
84 uint32_t i, j; in FLAC__lpc_window_data_partial() local
86 for(i = 0; i < part_size; i++) in FLAC__lpc_window_data_partial()
87 out[i] = in[data_shift+i] * window[i]; in FLAC__lpc_window_data_partial()
88 i = flac_min(i,data_len - part_size - data_shift); in FLAC__lpc_window_data_partial()
89 for(j = data_len - part_size; j < data_len; i++, j++) in FLAC__lpc_window_data_partial()
90 out[i] = in[data_shift+i] * window[j]; in FLAC__lpc_window_data_partial()
91 if(i < data_len) in FLAC__lpc_window_data_partial()
92 out[i] = 0.0f; in FLAC__lpc_window_data_partial()
98 uint32_t i, j; in FLAC__lpc_window_data_partial_wide() local
100 for(i = 0; i < part_size; i++) in FLAC__lpc_window_data_partial_wide()
101 out[i] = in[data_shift+i] * window[i]; in FLAC__lpc_window_data_partial_wide()
102 i = flac_min(i,data_len - part_size - data_shift); in FLAC__lpc_window_data_partial_wide()
103 for(j = data_len - part_size; j < data_len; i++, j++) in FLAC__lpc_window_data_partial_wide()
104 out[i] = in[data_shift+i] * window[j]; in FLAC__lpc_window_data_partial_wide()
105 if(i < data_len) in FLAC__lpc_window_data_partial_wide()
106 out[i] = 0.0f; in FLAC__lpc_window_data_partial_wide()
115 uint32_t i; in FLAC__lpc_compute_autocorrelation()
122 * for(i = 0; i < data_len; i++) in FLAC__lpc_compute_autocorrelation()
123 * data[i] -= mean; in FLAC__lpc_compute_autocorrelation()
127 while(lag--) { in FLAC__lpc_compute_autocorrelation()
128 for(i = lag, d = 0.0; i < data_len; i++) in FLAC__lpc_compute_autocorrelation()
129 d += data[i] * (double)data[i - lag]; in FLAC__lpc_compute_autocorrelation()
140 const uint32_t limit = data_len - lag; in FLAC__lpc_compute_autocorrelation()
154 for(coeff = 0; coeff < data_len - sample; coeff++) in FLAC__lpc_compute_autocorrelation()
178 uint32_t i, j; in FLAC__lpc_compute_lp_coefficients() local
188 for(i = 0; i < *max_order; i++) { in FLAC__lpc_compute_lp_coefficients()
190 r = -autoc[i+1]; in FLAC__lpc_compute_lp_coefficients()
191 for(j = 0; j < i; j++) in FLAC__lpc_compute_lp_coefficients()
192 r -= lpc[j] * autoc[i-j]; in FLAC__lpc_compute_lp_coefficients()
196 lpc[i]=r; in FLAC__lpc_compute_lp_coefficients()
197 for(j = 0; j < (i>>1); j++) { in FLAC__lpc_compute_lp_coefficients()
199 lpc[j] += r * lpc[i-1-j]; in FLAC__lpc_compute_lp_coefficients()
200 lpc[i-1-j] += r * tmp; in FLAC__lpc_compute_lp_coefficients()
202 if(i & 1) in FLAC__lpc_compute_lp_coefficients()
205 err *= (1.0 - r * r); in FLAC__lpc_compute_lp_coefficients()
208 for(j = 0; j <= i; j++) in FLAC__lpc_compute_lp_coefficients()
209 lp_coeff[i][j] = (FLAC__real)(-lpc[j]); /* negate FIR filter coeff to get predictor coeff */ in FLAC__lpc_compute_lp_coefficients()
210 error[i] = err; in FLAC__lpc_compute_lp_coefficients()
214 *max_order = i+1; in FLAC__lpc_compute_lp_coefficients()
222 uint32_t i; in FLAC__lpc_quantize_coefficients() local
229 /* drop one bit for the sign; from here on out we consider only |lp_coeff[i]| */ in FLAC__lpc_quantize_coefficients()
230 precision--; in FLAC__lpc_quantize_coefficients()
232 qmin = -qmax; in FLAC__lpc_quantize_coefficients()
233 qmax--; in FLAC__lpc_quantize_coefficients()
235 /* calc cmax = max( |lp_coeff[i]| ) */ in FLAC__lpc_quantize_coefficients()
237 for(i = 0; i < order; i++) { in FLAC__lpc_quantize_coefficients()
238 const double d = fabs(lp_coeff[i]); in FLAC__lpc_quantize_coefficients()
244 /* => coefficients are all 0, which means our constant-detect didn't work */ in FLAC__lpc_quantize_coefficients()
248 const int max_shiftlimit = (1 << (FLAC__SUBFRAME_LPC_QLP_SHIFT_LEN-1)) - 1; in FLAC__lpc_quantize_coefficients()
249 const int min_shiftlimit = -max_shiftlimit - 1; in FLAC__lpc_quantize_coefficients()
253 log2cmax--; in FLAC__lpc_quantize_coefficients()
254 *shift = (int)precision - log2cmax - 1; in FLAC__lpc_quantize_coefficients()
265 for(i = 0; i < order; i++) { in FLAC__lpc_quantize_coefficients()
266 error += lp_coeff[i] * (1 << *shift); in FLAC__lpc_quantize_coefficients()
271 …ax %d>%d shift=%d cmax=%f precision=%u lpc[%u]=%f\n",q,qmax,*shift,cmax,precision+1,i,lp_coeff[i]); in FLAC__lpc_quantize_coefficients()
273 …in %d<%d shift=%d cmax=%f precision=%u lpc[%u]=%f\n",q,qmin,*shift,cmax,precision+1,i,lp_coeff[i]); in FLAC__lpc_quantize_coefficients()
279 error -= q; in FLAC__lpc_quantize_coefficients()
280 qlp_coeff[i] = q; in FLAC__lpc_quantize_coefficients()
288 const int nshift = -(*shift); in FLAC__lpc_quantize_coefficients()
294 for(i = 0; i < order; i++) { in FLAC__lpc_quantize_coefficients()
295 error += lp_coeff[i] / (1 << nshift); in FLAC__lpc_quantize_coefficients()
299 …ax %d>%d shift=%d cmax=%f precision=%u lpc[%u]=%f\n",q,qmax,*shift,cmax,precision+1,i,lp_coeff[i]); in FLAC__lpc_quantize_coefficients()
301 …in %d<%d shift=%d cmax=%f precision=%u lpc[%u]=%f\n",q,qmin,*shift,cmax,precision+1,i,lp_coeff[i]); in FLAC__lpc_quantize_coefficients()
307 error -= q; in FLAC__lpc_quantize_coefficients()
308 qlp_coeff[i] = q; in FLAC__lpc_quantize_coefficients()
325 uint32_t i, j; in FLAC__lpc_compute_residual_from_qlp_coefficients() local
331 for(i=0;i<order;i++) in FLAC__lpc_compute_residual_from_qlp_coefficients()
332 fprintf(stderr,", q[%u]=%d",i,qlp_coeff[i]); in FLAC__lpc_compute_residual_from_qlp_coefficients()
337 for(i = 0; i < data_len; i++) { in FLAC__lpc_compute_residual_from_qlp_coefficients()
342 sum += qlp_coeff[j] * (*(--history)); in FLAC__lpc_compute_residual_from_qlp_coefficients()
344 if(sumo > 2147483647ll || sumo < -2147483648ll) in FLAC__lpc_compute_residual_from_qlp_coefficients()
345 …lpc_compute_residual_from_qlp_coefficients: OVERFLOW, i=%u, j=%u, c=%d, d=%d, sumo=%" PRId64 "\n",… in FLAC__lpc_compute_residual_from_qlp_coefficients()
347 *(residual++) = *(data++) - (sum >> lp_quantization); in FLAC__lpc_compute_residual_from_qlp_coefficients()
351 for(i = 0; i < data_len; i++) { in FLAC__lpc_compute_residual_from_qlp_coefficients()
354 sum += qlp_coeff[j] * data[i-j-1]; in FLAC__lpc_compute_residual_from_qlp_coefficients()
355 residual[i] = data[i] - (sum >> lp_quantization); in FLAC__lpc_compute_residual_from_qlp_coefficients()
361 int i;
376 for(i = 0; i < (int)data_len; i++) {
378 sum += qlp_coeff[11] * data[i-12];
379 sum += qlp_coeff[10] * data[i-11];
380 sum += qlp_coeff[9] * data[i-10];
381 sum += qlp_coeff[8] * data[i-9];
382 sum += qlp_coeff[7] * data[i-8];
383 sum += qlp_coeff[6] * data[i-7];
384 sum += qlp_coeff[5] * data[i-6];
385 sum += qlp_coeff[4] * data[i-5];
386 sum += qlp_coeff[3] * data[i-4];
387 sum += qlp_coeff[2] * data[i-3];
388 sum += qlp_coeff[1] * data[i-2];
389 sum += qlp_coeff[0] * data[i-1];
390 residual[i] = data[i] - (sum >> lp_quantization);
394 for(i = 0; i < (int)data_len; i++) {
396 sum += qlp_coeff[10] * data[i-11];
397 sum += qlp_coeff[9] * data[i-10];
398 sum += qlp_coeff[8] * data[i-9];
399 sum += qlp_coeff[7] * data[i-8];
400 sum += qlp_coeff[6] * data[i-7];
401 sum += qlp_coeff[5] * data[i-6];
402 sum += qlp_coeff[4] * data[i-5];
403 sum += qlp_coeff[3] * data[i-4];
404 sum += qlp_coeff[2] * data[i-3];
405 sum += qlp_coeff[1] * data[i-2];
406 sum += qlp_coeff[0] * data[i-1];
407 residual[i] = data[i] - (sum >> lp_quantization);
413 for(i = 0; i < (int)data_len; i++) {
415 sum += qlp_coeff[9] * data[i-10];
416 sum += qlp_coeff[8] * data[i-9];
417 sum += qlp_coeff[7] * data[i-8];
418 sum += qlp_coeff[6] * data[i-7];
419 sum += qlp_coeff[5] * data[i-6];
420 sum += qlp_coeff[4] * data[i-5];
421 sum += qlp_coeff[3] * data[i-4];
422 sum += qlp_coeff[2] * data[i-3];
423 sum += qlp_coeff[1] * data[i-2];
424 sum += qlp_coeff[0] * data[i-1];
425 residual[i] = data[i] - (sum >> lp_quantization);
429 for(i = 0; i < (int)data_len; i++) {
431 sum += qlp_coeff[8] * data[i-9];
432 sum += qlp_coeff[7] * data[i-8];
433 sum += qlp_coeff[6] * data[i-7];
434 sum += qlp_coeff[5] * data[i-6];
435 sum += qlp_coeff[4] * data[i-5];
436 sum += qlp_coeff[3] * data[i-4];
437 sum += qlp_coeff[2] * data[i-3];
438 sum += qlp_coeff[1] * data[i-2];
439 sum += qlp_coeff[0] * data[i-1];
440 residual[i] = data[i] - (sum >> lp_quantization);
448 for(i = 0; i < (int)data_len; i++) {
450 sum += qlp_coeff[7] * data[i-8];
451 sum += qlp_coeff[6] * data[i-7];
452 sum += qlp_coeff[5] * data[i-6];
453 sum += qlp_coeff[4] * data[i-5];
454 sum += qlp_coeff[3] * data[i-4];
455 sum += qlp_coeff[2] * data[i-3];
456 sum += qlp_coeff[1] * data[i-2];
457 sum += qlp_coeff[0] * data[i-1];
458 residual[i] = data[i] - (sum >> lp_quantization);
462 for(i = 0; i < (int)data_len; i++) {
464 sum += qlp_coeff[6] * data[i-7];
465 sum += qlp_coeff[5] * data[i-6];
466 sum += qlp_coeff[4] * data[i-5];
467 sum += qlp_coeff[3] * data[i-4];
468 sum += qlp_coeff[2] * data[i-3];
469 sum += qlp_coeff[1] * data[i-2];
470 sum += qlp_coeff[0] * data[i-1];
471 residual[i] = data[i] - (sum >> lp_quantization);
477 for(i = 0; i < (int)data_len; i++) {
479 sum += qlp_coeff[5] * data[i-6];
480 sum += qlp_coeff[4] * data[i-5];
481 sum += qlp_coeff[3] * data[i-4];
482 sum += qlp_coeff[2] * data[i-3];
483 sum += qlp_coeff[1] * data[i-2];
484 sum += qlp_coeff[0] * data[i-1];
485 residual[i] = data[i] - (sum >> lp_quantization);
489 for(i = 0; i < (int)data_len; i++) {
491 sum += qlp_coeff[4] * data[i-5];
492 sum += qlp_coeff[3] * data[i-4];
493 sum += qlp_coeff[2] * data[i-3];
494 sum += qlp_coeff[1] * data[i-2];
495 sum += qlp_coeff[0] * data[i-1];
496 residual[i] = data[i] - (sum >> lp_quantization);
504 for(i = 0; i < (int)data_len; i++) {
506 sum += qlp_coeff[3] * data[i-4];
507 sum += qlp_coeff[2] * data[i-3];
508 sum += qlp_coeff[1] * data[i-2];
509 sum += qlp_coeff[0] * data[i-1];
510 residual[i] = data[i] - (sum >> lp_quantization);
514 for(i = 0; i < (int)data_len; i++) {
516 sum += qlp_coeff[2] * data[i-3];
517 sum += qlp_coeff[1] * data[i-2];
518 sum += qlp_coeff[0] * data[i-1];
519 residual[i] = data[i] - (sum >> lp_quantization);
525 for(i = 0; i < (int)data_len; i++) {
527 sum += qlp_coeff[1] * data[i-2];
528 sum += qlp_coeff[0] * data[i-1];
529 residual[i] = data[i] - (sum >> lp_quantization);
533 for(i = 0; i < (int)data_len; i++)
534 residual[i] = data[i] - ((qlp_coeff[0] * data[i-1]) >> lp_quantization);
540 for(i = 0; i < (int)data_len; i++) {
543 case 32: sum += qlp_coeff[31] * data[i-32]; /* Falls through. */
544 case 31: sum += qlp_coeff[30] * data[i-31]; /* Falls through. */
545 case 30: sum += qlp_coeff[29] * data[i-30]; /* Falls through. */
546 case 29: sum += qlp_coeff[28] * data[i-29]; /* Falls through. */
547 case 28: sum += qlp_coeff[27] * data[i-28]; /* Falls through. */
548 case 27: sum += qlp_coeff[26] * data[i-27]; /* Falls through. */
549 case 26: sum += qlp_coeff[25] * data[i-26]; /* Falls through. */
550 case 25: sum += qlp_coeff[24] * data[i-25]; /* Falls through. */
551 case 24: sum += qlp_coeff[23] * data[i-24]; /* Falls through. */
552 case 23: sum += qlp_coeff[22] * data[i-23]; /* Falls through. */
553 case 22: sum += qlp_coeff[21] * data[i-22]; /* Falls through. */
554 case 21: sum += qlp_coeff[20] * data[i-21]; /* Falls through. */
555 case 20: sum += qlp_coeff[19] * data[i-20]; /* Falls through. */
556 case 19: sum += qlp_coeff[18] * data[i-19]; /* Falls through. */
557 case 18: sum += qlp_coeff[17] * data[i-18]; /* Falls through. */
558 case 17: sum += qlp_coeff[16] * data[i-17]; /* Falls through. */
559 case 16: sum += qlp_coeff[15] * data[i-16]; /* Falls through. */
560 case 15: sum += qlp_coeff[14] * data[i-15]; /* Falls through. */
561 case 14: sum += qlp_coeff[13] * data[i-14]; /* Falls through. */
562 case 13: sum += qlp_coeff[12] * data[i-13];
563 sum += qlp_coeff[11] * data[i-12];
564 sum += qlp_coeff[10] * data[i-11];
565 sum += qlp_coeff[ 9] * data[i-10];
566 sum += qlp_coeff[ 8] * data[i- 9];
567 sum += qlp_coeff[ 7] * data[i- 8];
568 sum += qlp_coeff[ 6] * data[i- 7];
569 sum += qlp_coeff[ 5] * data[i- 6];
570 sum += qlp_coeff[ 4] * data[i- 5];
571 sum += qlp_coeff[ 3] * data[i- 4];
572 sum += qlp_coeff[ 2] * data[i- 3];
573 sum += qlp_coeff[ 1] * data[i- 2];
574 sum += qlp_coeff[ 0] * data[i- 1];
576 residual[i] = data[i] - (sum >> lp_quantization);
585 uint32_t i, j; in FLAC__lpc_compute_residual_from_qlp_coefficients_wide() local
591 for(i=0;i<order;i++) in FLAC__lpc_compute_residual_from_qlp_coefficients_wide()
592 fprintf(stderr,", q[%u]=%d",i,qlp_coeff[i]); in FLAC__lpc_compute_residual_from_qlp_coefficients_wide()
597 for(i = 0; i < data_len; i++) { in FLAC__lpc_compute_residual_from_qlp_coefficients_wide()
601 sum += (FLAC__int64)qlp_coeff[j] * (FLAC__int64)(*(--history)); in FLAC__lpc_compute_residual_from_qlp_coefficients_wide()
602 if(FLAC__bitmath_silog2((FLAC__int64)(*data) - (sum >> lp_quantization)) > 32) { in FLAC__lpc_compute_residual_from_qlp_coefficients_wide()
603 …de: OVERFLOW, i=%u, data=%d, sum=%" PRId64 ", residual=%" PRId64 "\n", i, *data, (int64_t)(sum >> … in FLAC__lpc_compute_residual_from_qlp_coefficients_wide()
606 *(residual++) = *(data++) - (FLAC__int32)(sum >> lp_quantization); in FLAC__lpc_compute_residual_from_qlp_coefficients_wide()
611 int i;
626 for(i = 0; i < (int)data_len; i++) {
628 sum += qlp_coeff[11] * (FLAC__int64)data[i-12];
629 sum += qlp_coeff[10] * (FLAC__int64)data[i-11];
630 sum += qlp_coeff[9] * (FLAC__int64)data[i-10];
631 sum += qlp_coeff[8] * (FLAC__int64)data[i-9];
632 sum += qlp_coeff[7] * (FLAC__int64)data[i-8];
633 sum += qlp_coeff[6] * (FLAC__int64)data[i-7];
634 sum += qlp_coeff[5] * (FLAC__int64)data[i-6];
635 sum += qlp_coeff[4] * (FLAC__int64)data[i-5];
636 sum += qlp_coeff[3] * (FLAC__int64)data[i-4];
637 sum += qlp_coeff[2] * (FLAC__int64)data[i-3];
638 sum += qlp_coeff[1] * (FLAC__int64)data[i-2];
639 sum += qlp_coeff[0] * (FLAC__int64)data[i-1];
640 residual[i] = data[i] - (sum >> lp_quantization);
644 for(i = 0; i < (int)data_len; i++) {
646 sum += qlp_coeff[10] * (FLAC__int64)data[i-11];
647 sum += qlp_coeff[9] * (FLAC__int64)data[i-10];
648 sum += qlp_coeff[8] * (FLAC__int64)data[i-9];
649 sum += qlp_coeff[7] * (FLAC__int64)data[i-8];
650 sum += qlp_coeff[6] * (FLAC__int64)data[i-7];
651 sum += qlp_coeff[5] * (FLAC__int64)data[i-6];
652 sum += qlp_coeff[4] * (FLAC__int64)data[i-5];
653 sum += qlp_coeff[3] * (FLAC__int64)data[i-4];
654 sum += qlp_coeff[2] * (FLAC__int64)data[i-3];
655 sum += qlp_coeff[1] * (FLAC__int64)data[i-2];
656 sum += qlp_coeff[0] * (FLAC__int64)data[i-1];
657 residual[i] = data[i] - (sum >> lp_quantization);
663 for(i = 0; i < (int)data_len; i++) {
665 sum += qlp_coeff[9] * (FLAC__int64)data[i-10];
666 sum += qlp_coeff[8] * (FLAC__int64)data[i-9];
667 sum += qlp_coeff[7] * (FLAC__int64)data[i-8];
668 sum += qlp_coeff[6] * (FLAC__int64)data[i-7];
669 sum += qlp_coeff[5] * (FLAC__int64)data[i-6];
670 sum += qlp_coeff[4] * (FLAC__int64)data[i-5];
671 sum += qlp_coeff[3] * (FLAC__int64)data[i-4];
672 sum += qlp_coeff[2] * (FLAC__int64)data[i-3];
673 sum += qlp_coeff[1] * (FLAC__int64)data[i-2];
674 sum += qlp_coeff[0] * (FLAC__int64)data[i-1];
675 residual[i] = data[i] - (sum >> lp_quantization);
679 for(i = 0; i < (int)data_len; i++) {
681 sum += qlp_coeff[8] * (FLAC__int64)data[i-9];
682 sum += qlp_coeff[7] * (FLAC__int64)data[i-8];
683 sum += qlp_coeff[6] * (FLAC__int64)data[i-7];
684 sum += qlp_coeff[5] * (FLAC__int64)data[i-6];
685 sum += qlp_coeff[4] * (FLAC__int64)data[i-5];
686 sum += qlp_coeff[3] * (FLAC__int64)data[i-4];
687 sum += qlp_coeff[2] * (FLAC__int64)data[i-3];
688 sum += qlp_coeff[1] * (FLAC__int64)data[i-2];
689 sum += qlp_coeff[0] * (FLAC__int64)data[i-1];
690 residual[i] = data[i] - (sum >> lp_quantization);
698 for(i = 0; i < (int)data_len; i++) {
700 sum += qlp_coeff[7] * (FLAC__int64)data[i-8];
701 sum += qlp_coeff[6] * (FLAC__int64)data[i-7];
702 sum += qlp_coeff[5] * (FLAC__int64)data[i-6];
703 sum += qlp_coeff[4] * (FLAC__int64)data[i-5];
704 sum += qlp_coeff[3] * (FLAC__int64)data[i-4];
705 sum += qlp_coeff[2] * (FLAC__int64)data[i-3];
706 sum += qlp_coeff[1] * (FLAC__int64)data[i-2];
707 sum += qlp_coeff[0] * (FLAC__int64)data[i-1];
708 residual[i] = data[i] - (sum >> lp_quantization);
712 for(i = 0; i < (int)data_len; i++) {
714 sum += qlp_coeff[6] * (FLAC__int64)data[i-7];
715 sum += qlp_coeff[5] * (FLAC__int64)data[i-6];
716 sum += qlp_coeff[4] * (FLAC__int64)data[i-5];
717 sum += qlp_coeff[3] * (FLAC__int64)data[i-4];
718 sum += qlp_coeff[2] * (FLAC__int64)data[i-3];
719 sum += qlp_coeff[1] * (FLAC__int64)data[i-2];
720 sum += qlp_coeff[0] * (FLAC__int64)data[i-1];
721 residual[i] = data[i] - (sum >> lp_quantization);
727 for(i = 0; i < (int)data_len; i++) {
729 sum += qlp_coeff[5] * (FLAC__int64)data[i-6];
730 sum += qlp_coeff[4] * (FLAC__int64)data[i-5];
731 sum += qlp_coeff[3] * (FLAC__int64)data[i-4];
732 sum += qlp_coeff[2] * (FLAC__int64)data[i-3];
733 sum += qlp_coeff[1] * (FLAC__int64)data[i-2];
734 sum += qlp_coeff[0] * (FLAC__int64)data[i-1];
735 residual[i] = data[i] - (sum >> lp_quantization);
739 for(i = 0; i < (int)data_len; i++) {
741 sum += qlp_coeff[4] * (FLAC__int64)data[i-5];
742 sum += qlp_coeff[3] * (FLAC__int64)data[i-4];
743 sum += qlp_coeff[2] * (FLAC__int64)data[i-3];
744 sum += qlp_coeff[1] * (FLAC__int64)data[i-2];
745 sum += qlp_coeff[0] * (FLAC__int64)data[i-1];
746 residual[i] = data[i] - (sum >> lp_quantization);
754 for(i = 0; i < (int)data_len; i++) {
756 sum += qlp_coeff[3] * (FLAC__int64)data[i-4];
757 sum += qlp_coeff[2] * (FLAC__int64)data[i-3];
758 sum += qlp_coeff[1] * (FLAC__int64)data[i-2];
759 sum += qlp_coeff[0] * (FLAC__int64)data[i-1];
760 residual[i] = data[i] - (sum >> lp_quantization);
764 for(i = 0; i < (int)data_len; i++) {
766 sum += qlp_coeff[2] * (FLAC__int64)data[i-3];
767 sum += qlp_coeff[1] * (FLAC__int64)data[i-2];
768 sum += qlp_coeff[0] * (FLAC__int64)data[i-1];
769 residual[i] = data[i] - (sum >> lp_quantization);
775 for(i = 0; i < (int)data_len; i++) {
777 sum += qlp_coeff[1] * (FLAC__int64)data[i-2];
778 sum += qlp_coeff[0] * (FLAC__int64)data[i-1];
779 residual[i] = data[i] - (sum >> lp_quantization);
783 for(i = 0; i < (int)data_len; i++)
784 residual[i] = data[i] - ((qlp_coeff[0] * (FLAC__int64)data[i-1]) >> lp_quantization);
790 for(i = 0; i < (int)data_len; i++) {
793 case 32: sum += qlp_coeff[31] * (FLAC__int64)data[i-32]; /* Falls through. */
794 case 31: sum += qlp_coeff[30] * (FLAC__int64)data[i-31]; /* Falls through. */
795 case 30: sum += qlp_coeff[29] * (FLAC__int64)data[i-30]; /* Falls through. */
796 case 29: sum += qlp_coeff[28] * (FLAC__int64)data[i-29]; /* Falls through. */
797 case 28: sum += qlp_coeff[27] * (FLAC__int64)data[i-28]; /* Falls through. */
798 case 27: sum += qlp_coeff[26] * (FLAC__int64)data[i-27]; /* Falls through. */
799 case 26: sum += qlp_coeff[25] * (FLAC__int64)data[i-26]; /* Falls through. */
800 case 25: sum += qlp_coeff[24] * (FLAC__int64)data[i-25]; /* Falls through. */
801 case 24: sum += qlp_coeff[23] * (FLAC__int64)data[i-24]; /* Falls through. */
802 case 23: sum += qlp_coeff[22] * (FLAC__int64)data[i-23]; /* Falls through. */
803 case 22: sum += qlp_coeff[21] * (FLAC__int64)data[i-22]; /* Falls through. */
804 case 21: sum += qlp_coeff[20] * (FLAC__int64)data[i-21]; /* Falls through. */
805 case 20: sum += qlp_coeff[19] * (FLAC__int64)data[i-20]; /* Falls through. */
806 case 19: sum += qlp_coeff[18] * (FLAC__int64)data[i-19]; /* Falls through. */
807 case 18: sum += qlp_coeff[17] * (FLAC__int64)data[i-18]; /* Falls through. */
808 case 17: sum += qlp_coeff[16] * (FLAC__int64)data[i-17]; /* Falls through. */
809 case 16: sum += qlp_coeff[15] * (FLAC__int64)data[i-16]; /* Falls through. */
810 case 15: sum += qlp_coeff[14] * (FLAC__int64)data[i-15]; /* Falls through. */
811 case 14: sum += qlp_coeff[13] * (FLAC__int64)data[i-14]; /* Falls through. */
812 case 13: sum += qlp_coeff[12] * (FLAC__int64)data[i-13];
813 sum += qlp_coeff[11] * (FLAC__int64)data[i-12];
814 sum += qlp_coeff[10] * (FLAC__int64)data[i-11];
815 sum += qlp_coeff[ 9] * (FLAC__int64)data[i-10];
816 sum += qlp_coeff[ 8] * (FLAC__int64)data[i- 9];
817 sum += qlp_coeff[ 7] * (FLAC__int64)data[i- 8];
818 sum += qlp_coeff[ 6] * (FLAC__int64)data[i- 7];
819 sum += qlp_coeff[ 5] * (FLAC__int64)data[i- 6];
820 sum += qlp_coeff[ 4] * (FLAC__int64)data[i- 5];
821 sum += qlp_coeff[ 3] * (FLAC__int64)data[i- 4];
822 sum += qlp_coeff[ 2] * (FLAC__int64)data[i- 3];
823 sum += qlp_coeff[ 1] * (FLAC__int64)data[i- 2];
824 sum += qlp_coeff[ 0] * (FLAC__int64)data[i- 1];
826 residual[i] = data[i] - (sum >> lp_quantization);
834 int i; in FLAC__lpc_compute_residual_from_qlp_coefficients_limit_residual() local
840 for(i = 0; i < (int)data_len; i++) { in FLAC__lpc_compute_residual_from_qlp_coefficients_limit_residual()
843 case 32: sum += qlp_coeff[31] * (FLAC__int64)data[i-32]; /* Falls through. */ in FLAC__lpc_compute_residual_from_qlp_coefficients_limit_residual()
844 case 31: sum += qlp_coeff[30] * (FLAC__int64)data[i-31]; /* Falls through. */ in FLAC__lpc_compute_residual_from_qlp_coefficients_limit_residual()
845 case 30: sum += qlp_coeff[29] * (FLAC__int64)data[i-30]; /* Falls through. */ in FLAC__lpc_compute_residual_from_qlp_coefficients_limit_residual()
846 case 29: sum += qlp_coeff[28] * (FLAC__int64)data[i-29]; /* Falls through. */ in FLAC__lpc_compute_residual_from_qlp_coefficients_limit_residual()
847 case 28: sum += qlp_coeff[27] * (FLAC__int64)data[i-28]; /* Falls through. */ in FLAC__lpc_compute_residual_from_qlp_coefficients_limit_residual()
848 case 27: sum += qlp_coeff[26] * (FLAC__int64)data[i-27]; /* Falls through. */ in FLAC__lpc_compute_residual_from_qlp_coefficients_limit_residual()
849 case 26: sum += qlp_coeff[25] * (FLAC__int64)data[i-26]; /* Falls through. */ in FLAC__lpc_compute_residual_from_qlp_coefficients_limit_residual()
850 case 25: sum += qlp_coeff[24] * (FLAC__int64)data[i-25]; /* Falls through. */ in FLAC__lpc_compute_residual_from_qlp_coefficients_limit_residual()
851 case 24: sum += qlp_coeff[23] * (FLAC__int64)data[i-24]; /* Falls through. */ in FLAC__lpc_compute_residual_from_qlp_coefficients_limit_residual()
852 case 23: sum += qlp_coeff[22] * (FLAC__int64)data[i-23]; /* Falls through. */ in FLAC__lpc_compute_residual_from_qlp_coefficients_limit_residual()
853 case 22: sum += qlp_coeff[21] * (FLAC__int64)data[i-22]; /* Falls through. */ in FLAC__lpc_compute_residual_from_qlp_coefficients_limit_residual()
854 case 21: sum += qlp_coeff[20] * (FLAC__int64)data[i-21]; /* Falls through. */ in FLAC__lpc_compute_residual_from_qlp_coefficients_limit_residual()
855 case 20: sum += qlp_coeff[19] * (FLAC__int64)data[i-20]; /* Falls through. */ in FLAC__lpc_compute_residual_from_qlp_coefficients_limit_residual()
856 case 19: sum += qlp_coeff[18] * (FLAC__int64)data[i-19]; /* Falls through. */ in FLAC__lpc_compute_residual_from_qlp_coefficients_limit_residual()
857 case 18: sum += qlp_coeff[17] * (FLAC__int64)data[i-18]; /* Falls through. */ in FLAC__lpc_compute_residual_from_qlp_coefficients_limit_residual()
858 case 17: sum += qlp_coeff[16] * (FLAC__int64)data[i-17]; /* Falls through. */ in FLAC__lpc_compute_residual_from_qlp_coefficients_limit_residual()
859 case 16: sum += qlp_coeff[15] * (FLAC__int64)data[i-16]; /* Falls through. */ in FLAC__lpc_compute_residual_from_qlp_coefficients_limit_residual()
860 case 15: sum += qlp_coeff[14] * (FLAC__int64)data[i-15]; /* Falls through. */ in FLAC__lpc_compute_residual_from_qlp_coefficients_limit_residual()
861 case 14: sum += qlp_coeff[13] * (FLAC__int64)data[i-14]; /* Falls through. */ in FLAC__lpc_compute_residual_from_qlp_coefficients_limit_residual()
862 case 13: sum += qlp_coeff[12] * (FLAC__int64)data[i-13]; /* Falls through. */ in FLAC__lpc_compute_residual_from_qlp_coefficients_limit_residual()
863 case 12: sum += qlp_coeff[11] * (FLAC__int64)data[i-12]; /* Falls through. */ in FLAC__lpc_compute_residual_from_qlp_coefficients_limit_residual()
864 case 11: sum += qlp_coeff[10] * (FLAC__int64)data[i-11]; /* Falls through. */ in FLAC__lpc_compute_residual_from_qlp_coefficients_limit_residual()
865 case 10: sum += qlp_coeff[ 9] * (FLAC__int64)data[i-10]; /* Falls through. */ in FLAC__lpc_compute_residual_from_qlp_coefficients_limit_residual()
866 case 9: sum += qlp_coeff[ 8] * (FLAC__int64)data[i- 9]; /* Falls through. */ in FLAC__lpc_compute_residual_from_qlp_coefficients_limit_residual()
867 case 8: sum += qlp_coeff[ 7] * (FLAC__int64)data[i- 8]; /* Falls through. */ in FLAC__lpc_compute_residual_from_qlp_coefficients_limit_residual()
868 case 7: sum += qlp_coeff[ 6] * (FLAC__int64)data[i- 7]; /* Falls through. */ in FLAC__lpc_compute_residual_from_qlp_coefficients_limit_residual()
869 case 6: sum += qlp_coeff[ 5] * (FLAC__int64)data[i- 6]; /* Falls through. */ in FLAC__lpc_compute_residual_from_qlp_coefficients_limit_residual()
870 case 5: sum += qlp_coeff[ 4] * (FLAC__int64)data[i- 5]; /* Falls through. */ in FLAC__lpc_compute_residual_from_qlp_coefficients_limit_residual()
871 case 4: sum += qlp_coeff[ 3] * (FLAC__int64)data[i- 4]; /* Falls through. */ in FLAC__lpc_compute_residual_from_qlp_coefficients_limit_residual()
872 case 3: sum += qlp_coeff[ 2] * (FLAC__int64)data[i- 3]; /* Falls through. */ in FLAC__lpc_compute_residual_from_qlp_coefficients_limit_residual()
873 case 2: sum += qlp_coeff[ 1] * (FLAC__int64)data[i- 2]; /* Falls through. */ in FLAC__lpc_compute_residual_from_qlp_coefficients_limit_residual()
874 case 1: sum += qlp_coeff[ 0] * (FLAC__int64)data[i- 1]; in FLAC__lpc_compute_residual_from_qlp_coefficients_limit_residual()
876 residual_to_check = data[i] - (sum >> lp_quantization); in FLAC__lpc_compute_residual_from_qlp_coefficients_limit_residual()
881 residual[i] = residual_to_check; in FLAC__lpc_compute_residual_from_qlp_coefficients_limit_residual()
888 int i; in FLAC__lpc_compute_residual_from_qlp_coefficients_limit_residual_33bit() local
894 for(i = 0; i < (int)data_len; i++) { in FLAC__lpc_compute_residual_from_qlp_coefficients_limit_residual_33bit()
897 case 32: sum += qlp_coeff[31] * data[i-32]; /* Falls through. */ in FLAC__lpc_compute_residual_from_qlp_coefficients_limit_residual_33bit()
898 case 31: sum += qlp_coeff[30] * data[i-31]; /* Falls through. */ in FLAC__lpc_compute_residual_from_qlp_coefficients_limit_residual_33bit()
899 case 30: sum += qlp_coeff[29] * data[i-30]; /* Falls through. */ in FLAC__lpc_compute_residual_from_qlp_coefficients_limit_residual_33bit()
900 case 29: sum += qlp_coeff[28] * data[i-29]; /* Falls through. */ in FLAC__lpc_compute_residual_from_qlp_coefficients_limit_residual_33bit()
901 case 28: sum += qlp_coeff[27] * data[i-28]; /* Falls through. */ in FLAC__lpc_compute_residual_from_qlp_coefficients_limit_residual_33bit()
902 case 27: sum += qlp_coeff[26] * data[i-27]; /* Falls through. */ in FLAC__lpc_compute_residual_from_qlp_coefficients_limit_residual_33bit()
903 case 26: sum += qlp_coeff[25] * data[i-26]; /* Falls through. */ in FLAC__lpc_compute_residual_from_qlp_coefficients_limit_residual_33bit()
904 case 25: sum += qlp_coeff[24] * data[i-25]; /* Falls through. */ in FLAC__lpc_compute_residual_from_qlp_coefficients_limit_residual_33bit()
905 case 24: sum += qlp_coeff[23] * data[i-24]; /* Falls through. */ in FLAC__lpc_compute_residual_from_qlp_coefficients_limit_residual_33bit()
906 case 23: sum += qlp_coeff[22] * data[i-23]; /* Falls through. */ in FLAC__lpc_compute_residual_from_qlp_coefficients_limit_residual_33bit()
907 case 22: sum += qlp_coeff[21] * data[i-22]; /* Falls through. */ in FLAC__lpc_compute_residual_from_qlp_coefficients_limit_residual_33bit()
908 case 21: sum += qlp_coeff[20] * data[i-21]; /* Falls through. */ in FLAC__lpc_compute_residual_from_qlp_coefficients_limit_residual_33bit()
909 case 20: sum += qlp_coeff[19] * data[i-20]; /* Falls through. */ in FLAC__lpc_compute_residual_from_qlp_coefficients_limit_residual_33bit()
910 case 19: sum += qlp_coeff[18] * data[i-19]; /* Falls through. */ in FLAC__lpc_compute_residual_from_qlp_coefficients_limit_residual_33bit()
911 case 18: sum += qlp_coeff[17] * data[i-18]; /* Falls through. */ in FLAC__lpc_compute_residual_from_qlp_coefficients_limit_residual_33bit()
912 case 17: sum += qlp_coeff[16] * data[i-17]; /* Falls through. */ in FLAC__lpc_compute_residual_from_qlp_coefficients_limit_residual_33bit()
913 case 16: sum += qlp_coeff[15] * data[i-16]; /* Falls through. */ in FLAC__lpc_compute_residual_from_qlp_coefficients_limit_residual_33bit()
914 case 15: sum += qlp_coeff[14] * data[i-15]; /* Falls through. */ in FLAC__lpc_compute_residual_from_qlp_coefficients_limit_residual_33bit()
915 case 14: sum += qlp_coeff[13] * data[i-14]; /* Falls through. */ in FLAC__lpc_compute_residual_from_qlp_coefficients_limit_residual_33bit()
916 case 13: sum += qlp_coeff[12] * data[i-13]; /* Falls through. */ in FLAC__lpc_compute_residual_from_qlp_coefficients_limit_residual_33bit()
917 case 12: sum += qlp_coeff[11] * data[i-12]; /* Falls through. */ in FLAC__lpc_compute_residual_from_qlp_coefficients_limit_residual_33bit()
918 case 11: sum += qlp_coeff[10] * data[i-11]; /* Falls through. */ in FLAC__lpc_compute_residual_from_qlp_coefficients_limit_residual_33bit()
919 case 10: sum += qlp_coeff[ 9] * data[i-10]; /* Falls through. */ in FLAC__lpc_compute_residual_from_qlp_coefficients_limit_residual_33bit()
920 case 9: sum += qlp_coeff[ 8] * data[i- 9]; /* Falls through. */ in FLAC__lpc_compute_residual_from_qlp_coefficients_limit_residual_33bit()
921 case 8: sum += qlp_coeff[ 7] * data[i- 8]; /* Falls through. */ in FLAC__lpc_compute_residual_from_qlp_coefficients_limit_residual_33bit()
922 case 7: sum += qlp_coeff[ 6] * data[i- 7]; /* Falls through. */ in FLAC__lpc_compute_residual_from_qlp_coefficients_limit_residual_33bit()
923 case 6: sum += qlp_coeff[ 5] * data[i- 6]; /* Falls through. */ in FLAC__lpc_compute_residual_from_qlp_coefficients_limit_residual_33bit()
924 case 5: sum += qlp_coeff[ 4] * data[i- 5]; /* Falls through. */ in FLAC__lpc_compute_residual_from_qlp_coefficients_limit_residual_33bit()
925 case 4: sum += qlp_coeff[ 3] * data[i- 4]; /* Falls through. */ in FLAC__lpc_compute_residual_from_qlp_coefficients_limit_residual_33bit()
926 case 3: sum += qlp_coeff[ 2] * data[i- 3]; /* Falls through. */ in FLAC__lpc_compute_residual_from_qlp_coefficients_limit_residual_33bit()
927 case 2: sum += qlp_coeff[ 1] * data[i- 2]; /* Falls through. */ in FLAC__lpc_compute_residual_from_qlp_coefficients_limit_residual_33bit()
928 case 1: sum += qlp_coeff[ 0] * data[i- 1]; in FLAC__lpc_compute_residual_from_qlp_coefficients_limit_residual_33bit()
930 residual_to_check = data[i] - (sum >> lp_quantization); in FLAC__lpc_compute_residual_from_qlp_coefficients_limit_residual_33bit()
935 residual[i] = residual_to_check; in FLAC__lpc_compute_residual_from_qlp_coefficients_limit_residual_33bit()
949 uint32_t i; in FLAC__lpc_max_prediction_before_shift_bps() local
950 for(i = 0; i < order; i++) in FLAC__lpc_max_prediction_before_shift_bps()
951 abs_sum_of_qlp_coeff += abs(qlp_coeff[i]); in FLAC__lpc_max_prediction_before_shift_bps()
960 …_bps = FLAC__lpc_max_prediction_before_shift_bps(subframe_bps, qlp_coeff, order) - lp_quantization; in FLAC__lpc_max_residual_bps()
968 /* The attribute below is to silence the undefined sanitizer of oss-fuzz.
973 __attribute__((no_sanitize("signed-integer-overflow")))
979 uint32_t i, j; in FLAC__lpc_restore_signal() local
985 for(i=0;i<order;i++) in FLAC__lpc_restore_signal()
986 fprintf(stderr,", q[%u]=%d",i,qlp_coeff[i]); in FLAC__lpc_restore_signal()
991 for(i = 0; i < data_len; i++) { in FLAC__lpc_restore_signal()
996 sum += qlp_coeff[j] * (*(--history)); in FLAC__lpc_restore_signal()
999 if(sumo > 2147483647ll || sumo < -2147483648ll) in FLAC__lpc_restore_signal()
1000 …fprintf(stderr,"FLAC__lpc_restore_signal: OVERFLOW, i=%u, j=%u, c=%d, d=%d, sumo=%" PRId64 "\n",i,… in FLAC__lpc_restore_signal()
1007 for(i = 0; i < data_len; i++) { in FLAC__lpc_restore_signal()
1010 sum += qlp_coeff[j] * data[i-j-1]; in FLAC__lpc_restore_signal()
1011 data[i] = residual[i] + (sum >> lp_quantization); in FLAC__lpc_restore_signal()
1017 int i;
1032 for(i = 0; i < (int)data_len; i++) {
1034 sum += qlp_coeff[11] * data[i-12];
1035 sum += qlp_coeff[10] * data[i-11];
1036 sum += qlp_coeff[9] * data[i-10];
1037 sum += qlp_coeff[8] * data[i-9];
1038 sum += qlp_coeff[7] * data[i-8];
1039 sum += qlp_coeff[6] * data[i-7];
1040 sum += qlp_coeff[5] * data[i-6];
1041 sum += qlp_coeff[4] * data[i-5];
1042 sum += qlp_coeff[3] * data[i-4];
1043 sum += qlp_coeff[2] * data[i-3];
1044 sum += qlp_coeff[1] * data[i-2];
1045 sum += qlp_coeff[0] * data[i-1];
1046 data[i] = residual[i] + (sum >> lp_quantization);
1050 for(i = 0; i < (int)data_len; i++) {
1052 sum += qlp_coeff[10] * data[i-11];
1053 sum += qlp_coeff[9] * data[i-10];
1054 sum += qlp_coeff[8] * data[i-9];
1055 sum += qlp_coeff[7] * data[i-8];
1056 sum += qlp_coeff[6] * data[i-7];
1057 sum += qlp_coeff[5] * data[i-6];
1058 sum += qlp_coeff[4] * data[i-5];
1059 sum += qlp_coeff[3] * data[i-4];
1060 sum += qlp_coeff[2] * data[i-3];
1061 sum += qlp_coeff[1] * data[i-2];
1062 sum += qlp_coeff[0] * data[i-1];
1063 data[i] = residual[i] + (sum >> lp_quantization);
1069 for(i = 0; i < (int)data_len; i++) {
1071 sum += qlp_coeff[9] * data[i-10];
1072 sum += qlp_coeff[8] * data[i-9];
1073 sum += qlp_coeff[7] * data[i-8];
1074 sum += qlp_coeff[6] * data[i-7];
1075 sum += qlp_coeff[5] * data[i-6];
1076 sum += qlp_coeff[4] * data[i-5];
1077 sum += qlp_coeff[3] * data[i-4];
1078 sum += qlp_coeff[2] * data[i-3];
1079 sum += qlp_coeff[1] * data[i-2];
1080 sum += qlp_coeff[0] * data[i-1];
1081 data[i] = residual[i] + (sum >> lp_quantization);
1085 for(i = 0; i < (int)data_len; i++) {
1087 sum += qlp_coeff[8] * data[i-9];
1088 sum += qlp_coeff[7] * data[i-8];
1089 sum += qlp_coeff[6] * data[i-7];
1090 sum += qlp_coeff[5] * data[i-6];
1091 sum += qlp_coeff[4] * data[i-5];
1092 sum += qlp_coeff[3] * data[i-4];
1093 sum += qlp_coeff[2] * data[i-3];
1094 sum += qlp_coeff[1] * data[i-2];
1095 sum += qlp_coeff[0] * data[i-1];
1096 data[i] = residual[i] + (sum >> lp_quantization);
1104 for(i = 0; i < (int)data_len; i++) {
1106 sum += qlp_coeff[7] * data[i-8];
1107 sum += qlp_coeff[6] * data[i-7];
1108 sum += qlp_coeff[5] * data[i-6];
1109 sum += qlp_coeff[4] * data[i-5];
1110 sum += qlp_coeff[3] * data[i-4];
1111 sum += qlp_coeff[2] * data[i-3];
1112 sum += qlp_coeff[1] * data[i-2];
1113 sum += qlp_coeff[0] * data[i-1];
1114 data[i] = residual[i] + (sum >> lp_quantization);
1118 for(i = 0; i < (int)data_len; i++) {
1120 sum += qlp_coeff[6] * data[i-7];
1121 sum += qlp_coeff[5] * data[i-6];
1122 sum += qlp_coeff[4] * data[i-5];
1123 sum += qlp_coeff[3] * data[i-4];
1124 sum += qlp_coeff[2] * data[i-3];
1125 sum += qlp_coeff[1] * data[i-2];
1126 sum += qlp_coeff[0] * data[i-1];
1127 data[i] = residual[i] + (sum >> lp_quantization);
1133 for(i = 0; i < (int)data_len; i++) {
1135 sum += qlp_coeff[5] * data[i-6];
1136 sum += qlp_coeff[4] * data[i-5];
1137 sum += qlp_coeff[3] * data[i-4];
1138 sum += qlp_coeff[2] * data[i-3];
1139 sum += qlp_coeff[1] * data[i-2];
1140 sum += qlp_coeff[0] * data[i-1];
1141 data[i] = residual[i] + (sum >> lp_quantization);
1145 for(i = 0; i < (int)data_len; i++) {
1147 sum += qlp_coeff[4] * data[i-5];
1148 sum += qlp_coeff[3] * data[i-4];
1149 sum += qlp_coeff[2] * data[i-3];
1150 sum += qlp_coeff[1] * data[i-2];
1151 sum += qlp_coeff[0] * data[i-1];
1152 data[i] = residual[i] + (sum >> lp_quantization);
1160 for(i = 0; i < (int)data_len; i++) {
1162 sum += qlp_coeff[3] * data[i-4];
1163 sum += qlp_coeff[2] * data[i-3];
1164 sum += qlp_coeff[1] * data[i-2];
1165 sum += qlp_coeff[0] * data[i-1];
1166 data[i] = residual[i] + (sum >> lp_quantization);
1170 for(i = 0; i < (int)data_len; i++) {
1172 sum += qlp_coeff[2] * data[i-3];
1173 sum += qlp_coeff[1] * data[i-2];
1174 sum += qlp_coeff[0] * data[i-1];
1175 data[i] = residual[i] + (sum >> lp_quantization);
1181 for(i = 0; i < (int)data_len; i++) {
1183 sum += qlp_coeff[1] * data[i-2];
1184 sum += qlp_coeff[0] * data[i-1];
1185 data[i] = residual[i] + (sum >> lp_quantization);
1189 for(i = 0; i < (int)data_len; i++)
1190 data[i] = residual[i] + ((qlp_coeff[0] * data[i-1]) >> lp_quantization);
1196 for(i = 0; i < (int)data_len; i++) {
1199 case 32: sum += qlp_coeff[31] * data[i-32]; /* Falls through. */
1200 case 31: sum += qlp_coeff[30] * data[i-31]; /* Falls through. */
1201 case 30: sum += qlp_coeff[29] * data[i-30]; /* Falls through. */
1202 case 29: sum += qlp_coeff[28] * data[i-29]; /* Falls through. */
1203 case 28: sum += qlp_coeff[27] * data[i-28]; /* Falls through. */
1204 case 27: sum += qlp_coeff[26] * data[i-27]; /* Falls through. */
1205 case 26: sum += qlp_coeff[25] * data[i-26]; /* Falls through. */
1206 case 25: sum += qlp_coeff[24] * data[i-25]; /* Falls through. */
1207 case 24: sum += qlp_coeff[23] * data[i-24]; /* Falls through. */
1208 case 23: sum += qlp_coeff[22] * data[i-23]; /* Falls through. */
1209 case 22: sum += qlp_coeff[21] * data[i-22]; /* Falls through. */
1210 case 21: sum += qlp_coeff[20] * data[i-21]; /* Falls through. */
1211 case 20: sum += qlp_coeff[19] * data[i-20]; /* Falls through. */
1212 case 19: sum += qlp_coeff[18] * data[i-19]; /* Falls through. */
1213 case 18: sum += qlp_coeff[17] * data[i-18]; /* Falls through. */
1214 case 17: sum += qlp_coeff[16] * data[i-17]; /* Falls through. */
1215 case 16: sum += qlp_coeff[15] * data[i-16]; /* Falls through. */
1216 case 15: sum += qlp_coeff[14] * data[i-15]; /* Falls through. */
1217 case 14: sum += qlp_coeff[13] * data[i-14]; /* Falls through. */
1218 case 13: sum += qlp_coeff[12] * data[i-13];
1219 sum += qlp_coeff[11] * data[i-12];
1220 sum += qlp_coeff[10] * data[i-11];
1221 sum += qlp_coeff[ 9] * data[i-10];
1222 sum += qlp_coeff[ 8] * data[i- 9];
1223 sum += qlp_coeff[ 7] * data[i- 8];
1224 sum += qlp_coeff[ 6] * data[i- 7];
1225 sum += qlp_coeff[ 5] * data[i- 6];
1226 sum += qlp_coeff[ 4] * data[i- 5];
1227 sum += qlp_coeff[ 3] * data[i- 4];
1228 sum += qlp_coeff[ 2] * data[i- 3];
1229 sum += qlp_coeff[ 1] * data[i- 2];
1230 sum += qlp_coeff[ 0] * data[i- 1];
1232 data[i] = residual[i] + (sum >> lp_quantization);
1241 uint32_t i, j; in FLAC__lpc_restore_signal_wide() local
1247 for(i=0;i<order;i++) in FLAC__lpc_restore_signal_wide()
1248 fprintf(stderr,", q[%u]=%d",i,qlp_coeff[i]); in FLAC__lpc_restore_signal_wide()
1253 for(i = 0; i < data_len; i++) { in FLAC__lpc_restore_signal_wide()
1257 sum += (FLAC__int64)qlp_coeff[j] * (FLAC__int64)(*(--history)); in FLAC__lpc_restore_signal_wide()
1260 …derr,"FLAC__lpc_restore_signal_wide: OVERFLOW, i=%u, residual=%d, sum=%" PRId64 ", data=%" PRId64 … in FLAC__lpc_restore_signal_wide()
1269 int i;
1284 for(i = 0; i < (int)data_len; i++) {
1286 sum += qlp_coeff[11] * (FLAC__int64)data[i-12];
1287 sum += qlp_coeff[10] * (FLAC__int64)data[i-11];
1288 sum += qlp_coeff[9] * (FLAC__int64)data[i-10];
1289 sum += qlp_coeff[8] * (FLAC__int64)data[i-9];
1290 sum += qlp_coeff[7] * (FLAC__int64)data[i-8];
1291 sum += qlp_coeff[6] * (FLAC__int64)data[i-7];
1292 sum += qlp_coeff[5] * (FLAC__int64)data[i-6];
1293 sum += qlp_coeff[4] * (FLAC__int64)data[i-5];
1294 sum += qlp_coeff[3] * (FLAC__int64)data[i-4];
1295 sum += qlp_coeff[2] * (FLAC__int64)data[i-3];
1296 sum += qlp_coeff[1] * (FLAC__int64)data[i-2];
1297 sum += qlp_coeff[0] * (FLAC__int64)data[i-1];
1298 data[i] = (FLAC__int32) (residual[i] + (sum >> lp_quantization));
1302 for(i = 0; i < (int)data_len; i++) {
1304 sum += qlp_coeff[10] * (FLAC__int64)data[i-11];
1305 sum += qlp_coeff[9] * (FLAC__int64)data[i-10];
1306 sum += qlp_coeff[8] * (FLAC__int64)data[i-9];
1307 sum += qlp_coeff[7] * (FLAC__int64)data[i-8];
1308 sum += qlp_coeff[6] * (FLAC__int64)data[i-7];
1309 sum += qlp_coeff[5] * (FLAC__int64)data[i-6];
1310 sum += qlp_coeff[4] * (FLAC__int64)data[i-5];
1311 sum += qlp_coeff[3] * (FLAC__int64)data[i-4];
1312 sum += qlp_coeff[2] * (FLAC__int64)data[i-3];
1313 sum += qlp_coeff[1] * (FLAC__int64)data[i-2];
1314 sum += qlp_coeff[0] * (FLAC__int64)data[i-1];
1315 data[i] = (FLAC__int32) (residual[i] + (sum >> lp_quantization));
1321 for(i = 0; i < (int)data_len; i++) {
1323 sum += qlp_coeff[9] * (FLAC__int64)data[i-10];
1324 sum += qlp_coeff[8] * (FLAC__int64)data[i-9];
1325 sum += qlp_coeff[7] * (FLAC__int64)data[i-8];
1326 sum += qlp_coeff[6] * (FLAC__int64)data[i-7];
1327 sum += qlp_coeff[5] * (FLAC__int64)data[i-6];
1328 sum += qlp_coeff[4] * (FLAC__int64)data[i-5];
1329 sum += qlp_coeff[3] * (FLAC__int64)data[i-4];
1330 sum += qlp_coeff[2] * (FLAC__int64)data[i-3];
1331 sum += qlp_coeff[1] * (FLAC__int64)data[i-2];
1332 sum += qlp_coeff[0] * (FLAC__int64)data[i-1];
1333 data[i] = (FLAC__int32) (residual[i] + (sum >> lp_quantization));
1337 for(i = 0; i < (int)data_len; i++) {
1339 sum += qlp_coeff[8] * (FLAC__int64)data[i-9];
1340 sum += qlp_coeff[7] * (FLAC__int64)data[i-8];
1341 sum += qlp_coeff[6] * (FLAC__int64)data[i-7];
1342 sum += qlp_coeff[5] * (FLAC__int64)data[i-6];
1343 sum += qlp_coeff[4] * (FLAC__int64)data[i-5];
1344 sum += qlp_coeff[3] * (FLAC__int64)data[i-4];
1345 sum += qlp_coeff[2] * (FLAC__int64)data[i-3];
1346 sum += qlp_coeff[1] * (FLAC__int64)data[i-2];
1347 sum += qlp_coeff[0] * (FLAC__int64)data[i-1];
1348 data[i] = (FLAC__int32) (residual[i] + (sum >> lp_quantization));
1356 for(i = 0; i < (int)data_len; i++) {
1358 sum += qlp_coeff[7] * (FLAC__int64)data[i-8];
1359 sum += qlp_coeff[6] * (FLAC__int64)data[i-7];
1360 sum += qlp_coeff[5] * (FLAC__int64)data[i-6];
1361 sum += qlp_coeff[4] * (FLAC__int64)data[i-5];
1362 sum += qlp_coeff[3] * (FLAC__int64)data[i-4];
1363 sum += qlp_coeff[2] * (FLAC__int64)data[i-3];
1364 sum += qlp_coeff[1] * (FLAC__int64)data[i-2];
1365 sum += qlp_coeff[0] * (FLAC__int64)data[i-1];
1366 data[i] = (FLAC__int32) (residual[i] + (sum >> lp_quantization));
1370 for(i = 0; i < (int)data_len; i++) {
1372 sum += qlp_coeff[6] * (FLAC__int64)data[i-7];
1373 sum += qlp_coeff[5] * (FLAC__int64)data[i-6];
1374 sum += qlp_coeff[4] * (FLAC__int64)data[i-5];
1375 sum += qlp_coeff[3] * (FLAC__int64)data[i-4];
1376 sum += qlp_coeff[2] * (FLAC__int64)data[i-3];
1377 sum += qlp_coeff[1] * (FLAC__int64)data[i-2];
1378 sum += qlp_coeff[0] * (FLAC__int64)data[i-1];
1379 data[i] = (FLAC__int32) (residual[i] + (sum >> lp_quantization));
1385 for(i = 0; i < (int)data_len; i++) {
1387 sum += qlp_coeff[5] * (FLAC__int64)data[i-6];
1388 sum += qlp_coeff[4] * (FLAC__int64)data[i-5];
1389 sum += qlp_coeff[3] * (FLAC__int64)data[i-4];
1390 sum += qlp_coeff[2] * (FLAC__int64)data[i-3];
1391 sum += qlp_coeff[1] * (FLAC__int64)data[i-2];
1392 sum += qlp_coeff[0] * (FLAC__int64)data[i-1];
1393 data[i] = (FLAC__int32) (residual[i] + (sum >> lp_quantization));
1397 for(i = 0; i < (int)data_len; i++) {
1399 sum += qlp_coeff[4] * (FLAC__int64)data[i-5];
1400 sum += qlp_coeff[3] * (FLAC__int64)data[i-4];
1401 sum += qlp_coeff[2] * (FLAC__int64)data[i-3];
1402 sum += qlp_coeff[1] * (FLAC__int64)data[i-2];
1403 sum += qlp_coeff[0] * (FLAC__int64)data[i-1];
1404 data[i] = (FLAC__int32) (residual[i] + (sum >> lp_quantization));
1412 for(i = 0; i < (int)data_len; i++) {
1414 sum += qlp_coeff[3] * (FLAC__int64)data[i-4];
1415 sum += qlp_coeff[2] * (FLAC__int64)data[i-3];
1416 sum += qlp_coeff[1] * (FLAC__int64)data[i-2];
1417 sum += qlp_coeff[0] * (FLAC__int64)data[i-1];
1418 data[i] = (FLAC__int32) (residual[i] + (sum >> lp_quantization));
1422 for(i = 0; i < (int)data_len; i++) {
1424 sum += qlp_coeff[2] * (FLAC__int64)data[i-3];
1425 sum += qlp_coeff[1] * (FLAC__int64)data[i-2];
1426 sum += qlp_coeff[0] * (FLAC__int64)data[i-1];
1427 data[i] = (FLAC__int32) (residual[i] + (sum >> lp_quantization));
1433 for(i = 0; i < (int)data_len; i++) {
1435 sum += qlp_coeff[1] * (FLAC__int64)data[i-2];
1436 sum += qlp_coeff[0] * (FLAC__int64)data[i-1];
1437 data[i] = (FLAC__int32) (residual[i] + (sum >> lp_quantization));
1441 for(i = 0; i < (int)data_len; i++)
1442 …data[i] = (FLAC__int32)(residual[i] + ((qlp_coeff[0] * (FLAC__int64)data[i-1]) >> lp_quantization)…
1448 for(i = 0; i < (int)data_len; i++) {
1451 case 32: sum += qlp_coeff[31] * (FLAC__int64)data[i-32]; /* Falls through. */
1452 case 31: sum += qlp_coeff[30] * (FLAC__int64)data[i-31]; /* Falls through. */
1453 case 30: sum += qlp_coeff[29] * (FLAC__int64)data[i-30]; /* Falls through. */
1454 case 29: sum += qlp_coeff[28] * (FLAC__int64)data[i-29]; /* Falls through. */
1455 case 28: sum += qlp_coeff[27] * (FLAC__int64)data[i-28]; /* Falls through. */
1456 case 27: sum += qlp_coeff[26] * (FLAC__int64)data[i-27]; /* Falls through. */
1457 case 26: sum += qlp_coeff[25] * (FLAC__int64)data[i-26]; /* Falls through. */
1458 case 25: sum += qlp_coeff[24] * (FLAC__int64)data[i-25]; /* Falls through. */
1459 case 24: sum += qlp_coeff[23] * (FLAC__int64)data[i-24]; /* Falls through. */
1460 case 23: sum += qlp_coeff[22] * (FLAC__int64)data[i-23]; /* Falls through. */
1461 case 22: sum += qlp_coeff[21] * (FLAC__int64)data[i-22]; /* Falls through. */
1462 case 21: sum += qlp_coeff[20] * (FLAC__int64)data[i-21]; /* Falls through. */
1463 case 20: sum += qlp_coeff[19] * (FLAC__int64)data[i-20]; /* Falls through. */
1464 case 19: sum += qlp_coeff[18] * (FLAC__int64)data[i-19]; /* Falls through. */
1465 case 18: sum += qlp_coeff[17] * (FLAC__int64)data[i-18]; /* Falls through. */
1466 case 17: sum += qlp_coeff[16] * (FLAC__int64)data[i-17]; /* Falls through. */
1467 case 16: sum += qlp_coeff[15] * (FLAC__int64)data[i-16]; /* Falls through. */
1468 case 15: sum += qlp_coeff[14] * (FLAC__int64)data[i-15]; /* Falls through. */
1469 case 14: sum += qlp_coeff[13] * (FLAC__int64)data[i-14]; /* Falls through. */
1470 case 13: sum += qlp_coeff[12] * (FLAC__int64)data[i-13];
1471 sum += qlp_coeff[11] * (FLAC__int64)data[i-12];
1472 sum += qlp_coeff[10] * (FLAC__int64)data[i-11];
1473 sum += qlp_coeff[ 9] * (FLAC__int64)data[i-10];
1474 sum += qlp_coeff[ 8] * (FLAC__int64)data[i- 9];
1475 sum += qlp_coeff[ 7] * (FLAC__int64)data[i- 8];
1476 sum += qlp_coeff[ 6] * (FLAC__int64)data[i- 7];
1477 sum += qlp_coeff[ 5] * (FLAC__int64)data[i- 6];
1478 sum += qlp_coeff[ 4] * (FLAC__int64)data[i- 5];
1479 sum += qlp_coeff[ 3] * (FLAC__int64)data[i- 4];
1480 sum += qlp_coeff[ 2] * (FLAC__int64)data[i- 3];
1481 sum += qlp_coeff[ 1] * (FLAC__int64)data[i- 2];
1482 sum += qlp_coeff[ 0] * (FLAC__int64)data[i- 1];
1484 data[i] = (FLAC__int32) (residual[i] + (sum >> lp_quantization));
1491 /* The attribute below is to silence the undefined sanitizer of oss-fuzz.
1496 __attribute__((no_sanitize("signed-integer-overflow")))
1501 uint32_t i, j; in FLAC__lpc_restore_signal_wide_33bit() local
1508 for(i = 0; i < data_len; i++) { in FLAC__lpc_restore_signal_wide_33bit()
1512 sum += (FLAC__int64)qlp_coeff[j] * (FLAC__int64)(*(--history)); in FLAC__lpc_restore_signal_wide_33bit()
1515 …err,"FLAC__lpc_restore_signal_33bit: OVERFLOW, i=%u, residual=%d, sum=%" PRId64 ", data=%" PRId64 … in FLAC__lpc_restore_signal_wide_33bit()
1524 int i;
1530 for(i = 0; i < (int)data_len; i++) {
1533 case 32: sum += qlp_coeff[31] * data[i-32]; /* Falls through. */
1534 case 31: sum += qlp_coeff[30] * data[i-31]; /* Falls through. */
1535 case 30: sum += qlp_coeff[29] * data[i-30]; /* Falls through. */
1536 case 29: sum += qlp_coeff[28] * data[i-29]; /* Falls through. */
1537 case 28: sum += qlp_coeff[27] * data[i-28]; /* Falls through. */
1538 case 27: sum += qlp_coeff[26] * data[i-27]; /* Falls through. */
1539 case 26: sum += qlp_coeff[25] * data[i-26]; /* Falls through. */
1540 case 25: sum += qlp_coeff[24] * data[i-25]; /* Falls through. */
1541 case 24: sum += qlp_coeff[23] * data[i-24]; /* Falls through. */
1542 case 23: sum += qlp_coeff[22] * data[i-23]; /* Falls through. */
1543 case 22: sum += qlp_coeff[21] * data[i-22]; /* Falls through. */
1544 case 21: sum += qlp_coeff[20] * data[i-21]; /* Falls through. */
1545 case 20: sum += qlp_coeff[19] * data[i-20]; /* Falls through. */
1546 case 19: sum += qlp_coeff[18] * data[i-19]; /* Falls through. */
1547 case 18: sum += qlp_coeff[17] * data[i-18]; /* Falls through. */
1548 case 17: sum += qlp_coeff[16] * data[i-17]; /* Falls through. */
1549 case 16: sum += qlp_coeff[15] * data[i-16]; /* Falls through. */
1550 case 15: sum += qlp_coeff[14] * data[i-15]; /* Falls through. */
1551 case 14: sum += qlp_coeff[13] * data[i-14]; /* Falls through. */
1552 case 13: sum += qlp_coeff[12] * data[i-13]; /* Falls through. */
1553 case 12: sum += qlp_coeff[11] * data[i-12]; /* Falls through. */
1554 case 11: sum += qlp_coeff[10] * data[i-11]; /* Falls through. */
1555 case 10: sum += qlp_coeff[ 9] * data[i-10]; /* Falls through. */
1556 case 9: sum += qlp_coeff[ 8] * data[i- 9]; /* Falls through. */
1557 case 8: sum += qlp_coeff[ 7] * data[i- 8]; /* Falls through. */
1558 case 7: sum += qlp_coeff[ 6] * data[i- 7]; /* Falls through. */
1559 case 6: sum += qlp_coeff[ 5] * data[i- 6]; /* Falls through. */
1560 case 5: sum += qlp_coeff[ 4] * data[i- 5]; /* Falls through. */
1561 case 4: sum += qlp_coeff[ 3] * data[i- 4]; /* Falls through. */
1562 case 3: sum += qlp_coeff[ 2] * data[i- 3]; /* Falls through. */
1563 case 2: sum += qlp_coeff[ 1] * data[i- 2]; /* Falls through. */
1564 case 1: sum += qlp_coeff[ 0] * data[i- 1];
1566 data[i] = residual[i] + (sum >> lp_quantization);
1597 ….0) { /* error should not be negative but can happen due to inadequate floating-point resolution */ in FLAC__lpc_compute_expected_bits_per_residual_sample_with_error_scale()
1607 …uint32_t order, indx, best_index; /* 'index' the index into lpc_error; index==order-1 since lpc_er… in FLAC__lpc_compute_best_order()
1616 best_bits = (uint32_t)(-1); in FLAC__lpc_compute_best_order()
1619 …ple_with_error_scale(lpc_error[indx], error_scale) * (double)(total_samples - order) + (double)(or… in FLAC__lpc_compute_best_order()
1626 return best_index+1; /* +1 since indx of lpc_error[] is order-1 */ in FLAC__lpc_compute_best_order()