discord-jadx/app/src/main/java/c/i/a/c/e2/t/a.java

179 lines
6.6 KiB
Java

package c.i.a.c.e2.t;
import android.text.SpannableStringBuilder;
import android.text.style.ForegroundColorSpan;
import android.text.style.StyleSpan;
import android.text.style.TypefaceSpan;
import android.text.style.UnderlineSpan;
import android.util.Log;
import androidx.core.view.ViewCompat;
import androidx.recyclerview.widget.ItemTouchHelper;
import c.i.a.c.e2.d;
import c.i.a.c.e2.f;
import c.i.a.c.i2.f0;
import c.i.a.c.i2.w;
import c.i.b.a.c;
import com.google.android.exoplayer2.text.SubtitleDecoderException;
import java.util.List;
/* compiled from: Tx3gDecoder */
public final class a extends d {
public final w n = new w();
public final boolean o;
public final int p;
public final int q;
public final String r;
/* renamed from: s reason: collision with root package name */
public final float f861s;
public final int t;
public a(List<byte[]> list) {
super("Tx3gDecoder");
String str = "sans-serif";
boolean z2 = true;
if (list.size() == 1 && (list.get(0).length == 48 || list.get(0).length == 53)) {
byte[] bArr = list.get(0);
this.p = bArr[24];
this.q = ((bArr[26] & 255) << 24) | ((bArr[27] & 255) << 16) | ((bArr[28] & 255) << 8) | (bArr[29] & 255);
this.r = "Serif".equals(f0.m(bArr, 43, bArr.length - 43)) ? "serif" : str;
int i = bArr[25] * 20;
this.t = i;
z2 = (bArr[0] & 32) == 0 ? false : z2;
this.o = z2;
if (z2) {
this.f861s = f0.g(((float) ((bArr[11] & 255) | ((bArr[10] & 255) << 8))) / ((float) i), 0.0f, 0.95f);
} else {
this.f861s = 0.85f;
}
} else {
this.p = 0;
this.q = -1;
this.r = str;
this.o = false;
this.f861s = 0.85f;
this.t = -1;
}
}
public static void k(boolean z2) throws SubtitleDecoderException {
if (!z2) {
throw new SubtitleDecoderException("Unexpected subtitle format.");
}
}
public static void l(SpannableStringBuilder spannableStringBuilder, int i, int i2, int i3, int i4, int i5) {
if (i != i2) {
int i6 = i5 | 33;
boolean z2 = true;
boolean z3 = (i & 1) != 0;
boolean z4 = (i & 2) != 0;
if (z3) {
if (z4) {
spannableStringBuilder.setSpan(new StyleSpan(3), i3, i4, i6);
} else {
spannableStringBuilder.setSpan(new StyleSpan(1), i3, i4, i6);
}
} else if (z4) {
spannableStringBuilder.setSpan(new StyleSpan(2), i3, i4, i6);
}
if ((i & 4) == 0) {
z2 = false;
}
if (z2) {
spannableStringBuilder.setSpan(new UnderlineSpan(), i3, i4, i6);
}
if (!z2 && !z3 && !z4) {
spannableStringBuilder.setSpan(new StyleSpan(0), i3, i4, i6);
}
}
}
@Override // c.i.a.c.e2.d
public f j(byte[] bArr, int i, boolean z2) throws SubtitleDecoderException {
String str;
w wVar = this.n;
wVar.a = bArr;
wVar.f922c = i;
wVar.b = 0;
int i2 = 2;
int i3 = 1;
k(wVar.a() >= 2);
int x2 = wVar.x();
if (x2 == 0) {
str = "";
} else {
if (wVar.a() >= 2) {
byte[] bArr2 = wVar.a;
int i4 = wVar.b;
char c2 = (char) ((bArr2[i4 + 1] & 255) | ((bArr2[i4] & 255) << 8));
if (c2 == 65279 || c2 == 65534) {
str = wVar.q(x2, c.e);
}
}
str = wVar.q(x2, c.f1278c);
}
if (str.isEmpty()) {
return b.i;
}
SpannableStringBuilder spannableStringBuilder = new SpannableStringBuilder(str);
l(spannableStringBuilder, this.p, 0, 0, spannableStringBuilder.length(), ItemTouchHelper.ACTION_MODE_DRAG_MASK);
int i5 = this.q;
int length = spannableStringBuilder.length();
if (i5 != -1) {
spannableStringBuilder.setSpan(new ForegroundColorSpan((i5 >>> 8) | ((i5 & 255) << 24)), 0, length, 16711713);
}
String str2 = this.r;
int length2 = spannableStringBuilder.length();
if (str2 != "sans-serif") {
spannableStringBuilder.setSpan(new TypefaceSpan(str2), 0, length2, 16711713);
}
float f = this.f861s;
for (int i6 = 8; this.n.a() >= i6; i6 = 8) {
w wVar2 = this.n;
int i7 = wVar2.b;
int f2 = wVar2.f();
int f3 = this.n.f();
if (f3 == 1937013100) {
k(this.n.a() >= i2);
int x3 = this.n.x();
int i8 = 0;
while (i8 < x3) {
w wVar3 = this.n;
k(wVar3.a() >= 12);
int x4 = wVar3.x();
int x5 = wVar3.x();
wVar3.E(i2);
int s2 = wVar3.s();
wVar3.E(i3);
int f4 = wVar3.f();
if (x5 > spannableStringBuilder.length()) {
StringBuilder Q = c.d.b.a.a.Q("Truncating styl end (", x5, ") to cueText.length() (");
Q.append(spannableStringBuilder.length());
Q.append(").");
Log.w("Tx3gDecoder", Q.toString());
x5 = spannableStringBuilder.length();
}
if (x4 >= x5) {
Log.w("Tx3gDecoder", c.d.b.a.a.p("Ignoring styl with start (", x4, ") >= end (", x5, ")."));
} else {
l(spannableStringBuilder, s2, this.p, x4, x5, 0);
if (f4 != this.q) {
spannableStringBuilder.setSpan(new ForegroundColorSpan(((f4 & 255) << 24) | (f4 >>> 8)), x4, x5, 33);
}
}
i8++;
i2 = 2;
i3 = 1;
}
} else if (f3 == 1952608120 && this.o) {
k(this.n.a() >= 2);
f = f0.g(((float) this.n.x()) / ((float) this.t), 0.0f, 0.95f);
}
this.n.D(i7 + f2);
i2 = 2;
i3 = 1;
}
return new b(new c.i.a.c.e2.c(spannableStringBuilder, null, null, f, 0, 0, -3.4028235E38f, Integer.MIN_VALUE, Integer.MIN_VALUE, -3.4028235E38f, -3.4028235E38f, -3.4028235E38f, false, ViewCompat.MEASURED_STATE_MASK, Integer.MIN_VALUE, 0.0f, null));
}
}