Build AsminVoicechat / prepare-release (push) Successful in 14s
Build AsminVoicechat / build-and-test (17) (push) Canceled after 0s
Build AsminVoicechat / build-and-test (18) (push) Canceled after 0s
Build AsminVoicechat / build-and-test (19) (push) Canceled after 0s
Build AsminVoicechat / build-and-test (20) (push) Canceled after 0s
Build AsminVoicechat / build-and-test (21) (push) Canceled after 0s
Build AsminVoicechat / build-and-test (22) (push) Canceled after 0s
Build AsminVoicechat / build-and-test (23) (push) Canceled after 0s
Build AsminVoicechat / build-and-test (24) (push) Canceled after 0s
Build AsminVoicechat / build-and-test (25) (push) Canceled after 0s
Build AsminVoicechat / build-and-test (26) (push) Canceled after 0s
Build AsminVoicechat / build-and-test (27-ea) (push) Canceled after 0s
Build AsminVoicechat / build-and-test (16) (push) Canceled after 38s
43 lines
1.4 KiB
Java
43 lines
1.4 KiB
Java
/*
|
|
* Decompiled with CFR 0.152.
|
|
*/
|
|
package de.maxhenkel.voicechat.concentus;
|
|
|
|
import de.maxhenkel.voicechat.concentus.Filters;
|
|
import de.maxhenkel.voicechat.concentus.Inlines;
|
|
|
|
class SilkLPState {
|
|
final int[] In_LP_State = new int[2];
|
|
int transition_frame_no = 0;
|
|
int mode = 0;
|
|
|
|
SilkLPState() {
|
|
}
|
|
|
|
void Reset() {
|
|
this.In_LP_State[0] = 0;
|
|
this.In_LP_State[1] = 0;
|
|
this.transition_frame_no = 0;
|
|
this.mode = 0;
|
|
}
|
|
|
|
void silk_LP_variable_cutoff(short[] frame, int frame_ptr, int frame_length) {
|
|
int[] B_Q28 = new int[3];
|
|
int[] A_Q28 = new int[2];
|
|
int fac_Q16 = 0;
|
|
int ind = 0;
|
|
Inlines.OpusAssert(this.transition_frame_no >= 0 && this.transition_frame_no <= 256);
|
|
if (this.mode != 0) {
|
|
fac_Q16 = Inlines.silk_LSHIFT(256 - this.transition_frame_no, 10);
|
|
ind = Inlines.silk_RSHIFT(fac_Q16, 16);
|
|
Inlines.OpusAssert(ind >= 0);
|
|
Inlines.OpusAssert(ind < 5);
|
|
Filters.silk_LP_interpolate_filter_taps(B_Q28, A_Q28, ind, fac_Q16 -= Inlines.silk_LSHIFT(ind, 16));
|
|
this.transition_frame_no = Inlines.silk_LIMIT(this.transition_frame_no + this.mode, 0, 256);
|
|
Inlines.OpusAssert(true);
|
|
Filters.silk_biquad_alt(frame, frame_ptr, B_Q28, A_Q28, this.In_LP_State, frame, frame_ptr, frame_length, 1);
|
|
}
|
|
}
|
|
}
|
|
|