Lines Matching refs:rac
136 static int lag_read_prob_header(lag_rac *rac, GetBitContext *gb)
144 rac->prob[0] = 0;
145 rac->prob[257] = UINT_MAX;
148 if (lag_decode_prob(gb, &rac->prob[i]) < 0) {
149 av_log(rac->avctx, AV_LOG_ERROR, "Invalid probability encountered.\n");
152 if ((uint64_t)cumul_prob + rac->prob[i] > UINT_MAX) {
153 av_log(rac->avctx, AV_LOG_ERROR, "Integer overflow encountered in cumulative probability calculation.\n");
156 cumul_prob += rac->prob[i];
157 if (!rac->prob[i]) {
159 av_log(rac->avctx, AV_LOG_ERROR, "Invalid probability run encountered.\n");
165 rac->prob[++i] = 0;
172 av_log(rac->avctx, AV_LOG_ERROR, "All probabilities are 0!\n");
186 rac->prob[i] = softfloat_mul(rac->prob[i], mul);
187 scaled_cumul_prob += rac->prob[i];
190 av_log(rac->avctx, AV_LOG_ERROR, "Scaled probabilities invalid\n");
194 rac->prob[i] = softfloat_mul(rac->prob[i], mul);
195 scaled_cumul_prob += rac->prob[i];
204 av_log(rac->avctx, AV_LOG_ERROR,
212 if (rac->prob[i]) {
213 rac->prob[i]++;
233 rac->scale = scale_factor;
237 rac->prob[i] += rac->prob[i - 1];
329 static int lag_decode_line(LagarithContext *l, lag_rac *rac,
349 dst[i] = lag_get_rac(rac);
359 int index = lag_get_rac(rac);
442 lag_rac rac;
446 rac.avctx = l->avctx;
465 if ((ret = lag_read_prob_header(&rac, &gb)) < 0)
468 ff_lag_rac_init(&rac, &gb, length - stride);
470 if (rac.overread > MAX_OVERREAD)
472 read += lag_decode_line(l, &rac, dst + (i * stride), width,