Lines Matching refs:sr
33 static int resolve_gain_offset(enum lc3_srate sr, int nbytes) in resolve_gain_offset() argument
35 int sr_ind = lc3_hr(sr) ? 4 + (sr - LC3_SRATE_48K_HR) : sr; in resolve_gain_offset()
38 return LC3_MIN(sr >= LC3_SRATE_96K_HR ? 181 : 255, in resolve_gain_offset()
83 enum lc3_dt dt, enum lc3_srate sr, const float *x, in estimate_gain() argument
87 int n4 = lc3_ne(dt, sr) / 4; in estimate_gain()
95 if (lc3_hr(sr)) { in estimate_gain()
100 }[dt][sr - LC3_SRATE_48K_HR]; in estimate_gain()
137 float nf = lc3_hr(sr) ? in estimate_gain()
174 float x_lim = lc3_hr(sr) ? 0x7fffp8f : 0x7fffp0f; in estimate_gain()
198 enum lc3_dt dt, enum lc3_srate sr, in adjust_gain() argument
207 }[sr]; in adjust_gain()
227 if (lc3_hr(sr) && nbits > nbits_budget) { in adjust_gain()
235 if (!lc3_hr(sr) && nbits < nbits_budget - (delta + 2)) in adjust_gain()
238 if (!lc3_hr(sr) && nbits > nbits_budget) in adjust_gain()
252 enum lc3_dt dt, enum lc3_srate sr, int g_int, float *x, int *n) in quantize() argument
255 int ne = lc3_ne(dt, sr); in quantize()
260 float xq_min = lc3_hr(sr) ? 0.5f : 10.f/16; in quantize()
278 enum lc3_dt dt, enum lc3_srate sr, in unquantize() argument
282 int i, ne = lc3_ne(dt, sr); in unquantize()
304 static bool resolve_modes(enum lc3_srate sr, int nbytes, bool *p_lsb_mode) in resolve_modes() argument
306 int sr_ind = lc3_hr(sr) ? 4 + (sr - LC3_SRATE_48K_HR) : sr; in resolve_modes()
309 *p_lsb_mode = (nbytes >= 20 * (3 + sr_ind)) && (sr < LC3_SRATE_96K_HR); in resolve_modes()
311 return (nbytes > 20 * (1 + sr_ind)) && (sr < LC3_SRATE_96K_HR); in resolve_modes()
324 enum lc3_dt dt, enum lc3_srate sr, int nbytes, in compute_nbits() argument
327 bool lsb_mode, high_rate = resolve_modes(sr, nbytes, &lsb_mode); in compute_nbits()
328 int ne = lc3_ne(dt, sr); in compute_nbits()
346 float xq_off = lc3_hr(sr) ? 0.5f : 6.f/16; in compute_nbits()
420 enum lc3_dt dt, enum lc3_srate sr, int nbytes, in put_quantized() argument
423 bool high_rate = resolve_modes(sr, nbytes, NULL); in put_quantized()
424 int ne = lc3_ne(dt, sr); in put_quantized()
435 float xq_off = lc3_hr(sr) ? 0.5f : 6.f/16; in put_quantized()
498 enum lc3_dt dt, enum lc3_srate sr, int nbytes, in get_quantized() argument
501 bool high_rate = resolve_modes(sr, nbytes, NULL); in get_quantized()
502 int ne = lc3_ne(dt, sr); in get_quantized()
516 int max_shl = lc3_hr(sr) ? 22 : 14; in get_quantized()
800 static int get_nbits_nq(enum lc3_dt dt, enum lc3_srate sr) in get_nbits_nq() argument
802 int ne = lc3_ne(dt, sr); in get_nbits_nq()
811 static int get_nbits_ac(enum lc3_dt dt, enum lc3_srate sr, int nbytes) in get_nbits_ac() argument
813 return get_nbits_nq(dt, sr) + in get_nbits_ac()
814 3 + lc3_hr(sr) + LC3_MIN((nbytes-1) / 160, 2); in get_nbits_ac()
821 enum lc3_dt dt, enum lc3_srate sr, int nbytes, in lc3_spec_analyze() argument
833 int nbits_budget = 8*nbytes - get_nbits_ac(dt, sr, nbytes) - in lc3_spec_analyze()
834 lc3_bwdet_get_nbits(sr) - lc3_ltpf_get_nbits(pitch) - in lc3_spec_analyze()
843 int g_off = resolve_gain_offset(sr, nbytes); in lc3_spec_analyze()
845 int g_min, g_int = estimate_gain(dt, sr, in lc3_spec_analyze()
850 quantize(dt, sr, g_int, x, &side->nq); in lc3_spec_analyze()
852 int nbits = compute_nbits(dt, sr, nbytes, x, &side->nq, 0, NULL); in lc3_spec_analyze()
859 int g_adj = adjust_gain(dt, sr, in lc3_spec_analyze()
863 quantize(dt, sr, g_adj, x, &side->nq); in lc3_spec_analyze()
866 nbits = compute_nbits(dt, sr, nbytes, in lc3_spec_analyze()
874 enum lc3_dt dt, enum lc3_srate sr, in lc3_spec_put_side() argument
877 int nbits_nq = get_nbits_nq(dt, sr); in lc3_spec_put_side()
888 enum lc3_dt dt, enum lc3_srate sr, enum lc3_bandwidth bw, in lc3_spec_encode() argument
894 put_noise_factor(bits, estimate_noise(dt, bw, lc3_hr(sr), x, nq)); in lc3_spec_encode()
896 put_quantized(bits, dt, sr, nbytes, x, nq, lsb_mode); in lc3_spec_encode()
901 put_lsb(bits, nbits_left, lc3_hr(sr), x, nq); in lc3_spec_encode()
903 put_residual(bits, nbits_left, lc3_hr(sr), x, nq); in lc3_spec_encode()
915 enum lc3_dt dt, enum lc3_srate sr, struct lc3_spec_side *side) in lc3_spec_get_side() argument
917 int nbits_nq = get_nbits_nq(dt, sr); in lc3_spec_get_side()
918 int ne = lc3_ne(dt, sr); in lc3_spec_get_side()
931 enum lc3_dt dt, enum lc3_srate sr, enum lc3_bandwidth bw, in lc3_spec_decode() argument
941 if ((ret = get_quantized(bits, dt, sr, nbytes, in lc3_spec_decode()
950 get_residual(bits, nbits_left, lc3_hr(sr), x, nq); in lc3_spec_decode()
952 int g_int = side->g_idx - resolve_gain_offset(sr, nbytes); in lc3_spec_decode()
953 float g = unquantize(dt, sr, g_int, x, nq); in lc3_spec_decode()