Files
rr3-apk/decompiled-community/sources/com/google/android/gms/internal/ads/zzrr.java
Daniel Elliott c080f0d97f Add Discord community version (64-bit only)
- Added realracing3-community.apk (71.57 MB)
- Removed 32-bit support (armeabi-v7a)
- Only includes arm64-v8a libraries
- Decompiled source code included
- Added README-community.md with analysis
2026-02-18 15:48:36 -08:00

260 lines
9.3 KiB
Java

package com.google.android.gms.internal.ads;
import android.media.MediaCodec;
import android.os.Bundle;
import android.os.Handler;
import android.os.HandlerThread;
import androidx.annotation.GuardedBy;
import androidx.annotation.Nullable;
import androidx.annotation.RequiresApi;
import java.util.ArrayDeque;
import java.util.Arrays;
import java.util.concurrent.atomic.AtomicReference;
@RequiresApi(23)
/* loaded from: classes3.dex */
final class zzrr implements zzse {
@GuardedBy("MESSAGE_PARAMS_INSTANCE_POOL")
private static final ArrayDeque zza = new ArrayDeque();
private static final Object zzb = new Object();
private final MediaCodec zzc;
private final HandlerThread zzd;
private Handler zze;
private final AtomicReference zzf;
private final zzda zzg;
private boolean zzh;
public zzrr(MediaCodec mediaCodec, HandlerThread handlerThread) {
zzda zzdaVar = new zzda(zzcx.zza);
this.zzc = mediaCodec;
this.zzd = handlerThread;
this.zzg = zzdaVar;
this.zzf = new AtomicReference();
}
/* JADX WARN: Removed duplicated region for block: B:11:0x0075 */
/* JADX WARN: Removed duplicated region for block: B:22:0x0080 A[RETURN] */
/*
Code decompiled incorrectly, please refer to instructions dump.
To view partially-correct add '--show-bad-code' argument
*/
public static /* bridge */ /* synthetic */ void zza(com.google.android.gms.internal.ads.zzrr r10, android.os.Message r11) {
/*
int r0 = r11.what
r1 = 1
r2 = 0
if (r0 == r1) goto L59
r1 = 2
if (r0 == r1) goto L37
r1 = 3
if (r0 == r1) goto L31
r1 = 4
if (r0 == r1) goto L20
java.util.concurrent.atomic.AtomicReference r10 = r10.zzf
java.lang.IllegalStateException r0 = new java.lang.IllegalStateException
int r11 = r11.what
java.lang.String r11 = java.lang.String.valueOf(r11)
r0.<init>(r11)
com.google.android.gms.internal.ads.zzro.zza(r10, r2, r0)
goto L73
L20:
java.lang.Object r11 = r11.obj
android.os.Bundle r11 = (android.os.Bundle) r11
android.media.MediaCodec r0 = r10.zzc // Catch: java.lang.RuntimeException -> L2a
r0.setParameters(r11) // Catch: java.lang.RuntimeException -> L2a
goto L73
L2a:
r11 = move-exception
java.util.concurrent.atomic.AtomicReference r10 = r10.zzf
com.google.android.gms.internal.ads.zzro.zza(r10, r2, r11)
goto L73
L31:
com.google.android.gms.internal.ads.zzda r10 = r10.zzg
r10.zze()
goto L73
L37:
java.lang.Object r11 = r11.obj
com.google.android.gms.internal.ads.zzrq r11 = (com.google.android.gms.internal.ads.zzrq) r11
int r4 = r11.zza
android.media.MediaCodec$CryptoInfo r6 = r11.zzd
long r7 = r11.zze
int r9 = r11.zzf
java.lang.Object r0 = com.google.android.gms.internal.ads.zzrr.zzb // Catch: java.lang.RuntimeException -> L51
monitor-enter(r0) // Catch: java.lang.RuntimeException -> L51
android.media.MediaCodec r3 = r10.zzc // Catch: java.lang.Throwable -> L4e
r5 = 0
r3.queueSecureInputBuffer(r4, r5, r6, r7, r9) // Catch: java.lang.Throwable -> L4e
monitor-exit(r0) // Catch: java.lang.Throwable -> L4e
goto L57
L4e:
r1 = move-exception
monitor-exit(r0) // Catch: java.lang.Throwable -> L4e
throw r1 // Catch: java.lang.RuntimeException -> L51
L51:
r0 = move-exception
java.util.concurrent.atomic.AtomicReference r10 = r10.zzf
com.google.android.gms.internal.ads.zzro.zza(r10, r2, r0)
L57:
r2 = r11
goto L73
L59:
java.lang.Object r11 = r11.obj
com.google.android.gms.internal.ads.zzrq r11 = (com.google.android.gms.internal.ads.zzrq) r11
int r4 = r11.zza
int r6 = r11.zzc
long r7 = r11.zze
int r9 = r11.zzf
android.media.MediaCodec r3 = r10.zzc // Catch: java.lang.RuntimeException -> L6c
r5 = 0
r3.queueInputBuffer(r4, r5, r6, r7, r9) // Catch: java.lang.RuntimeException -> L6c
goto L57
L6c:
r0 = move-exception
java.util.concurrent.atomic.AtomicReference r10 = r10.zzf
com.google.android.gms.internal.ads.zzro.zza(r10, r2, r0)
goto L57
L73:
if (r2 == 0) goto L80
java.util.ArrayDeque r10 = com.google.android.gms.internal.ads.zzrr.zza
monitor-enter(r10)
r10.add(r2) // Catch: java.lang.Throwable -> L7d
monitor-exit(r10) // Catch: java.lang.Throwable -> L7d
return
L7d:
r11 = move-exception
monitor-exit(r10) // Catch: java.lang.Throwable -> L7d
throw r11
L80:
return
*/
throw new UnsupportedOperationException("Method not decompiled: com.google.android.gms.internal.ads.zzrr.zza(com.google.android.gms.internal.ads.zzrr, android.os.Message):void");
}
private static zzrq zzi() {
ArrayDeque arrayDeque = zza;
synchronized (arrayDeque) {
try {
if (arrayDeque.isEmpty()) {
return new zzrq();
}
return (zzrq) arrayDeque.removeFirst();
} catch (Throwable th) {
throw th;
}
}
}
@Override // com.google.android.gms.internal.ads.zzse
public final void zzc() {
RuntimeException runtimeException = (RuntimeException) this.zzf.getAndSet(null);
if (runtimeException != null) {
throw runtimeException;
}
}
@Override // com.google.android.gms.internal.ads.zzse
public final void zzd(int i, int i2, int i3, long j, int i4) {
zzc();
zzrq zzi = zzi();
zzi.zza(i, 0, i3, j, i4);
Handler handler = this.zze;
int i5 = zzei.zza;
handler.obtainMessage(1, zzi).sendToTarget();
}
@Override // com.google.android.gms.internal.ads.zzse
public final void zze(int i, int i2, zzhe zzheVar, long j, int i3) {
zzc();
zzrq zzi = zzi();
zzi.zza(i, 0, 0, j, 0);
MediaCodec.CryptoInfo cryptoInfo = zzi.zzd;
cryptoInfo.numSubSamples = zzheVar.zzf;
cryptoInfo.numBytesOfClearData = zzk(zzheVar.zzd, cryptoInfo.numBytesOfClearData);
cryptoInfo.numBytesOfEncryptedData = zzk(zzheVar.zze, cryptoInfo.numBytesOfEncryptedData);
byte[] zzj = zzj(zzheVar.zzb, cryptoInfo.key);
zzj.getClass();
cryptoInfo.key = zzj;
byte[] zzj2 = zzj(zzheVar.zza, cryptoInfo.iv);
zzj2.getClass();
cryptoInfo.iv = zzj2;
cryptoInfo.mode = zzheVar.zzc;
if (zzei.zza >= 24) {
cryptoInfo.setPattern(new MediaCodec.CryptoInfo.Pattern(zzheVar.zzg, zzheVar.zzh));
}
this.zze.obtainMessage(2, zzi).sendToTarget();
}
@Override // com.google.android.gms.internal.ads.zzse
public final void zzf(Bundle bundle) {
zzc();
Handler handler = this.zze;
int i = zzei.zza;
handler.obtainMessage(4, bundle).sendToTarget();
}
@Override // com.google.android.gms.internal.ads.zzse
public final void zzg() {
if (this.zzh) {
zzb();
this.zzd.quit();
}
this.zzh = false;
}
@Override // com.google.android.gms.internal.ads.zzse
public final void zzh() {
if (this.zzh) {
return;
}
this.zzd.start();
this.zze = new zzrp(this, this.zzd.getLooper());
this.zzh = true;
}
@Nullable
private static byte[] zzj(@Nullable byte[] bArr, @Nullable byte[] bArr2) {
int length;
if (bArr == null) {
return bArr2;
}
if (bArr2 == null || bArr2.length < (length = bArr.length)) {
return Arrays.copyOf(bArr, bArr.length);
}
System.arraycopy(bArr, 0, bArr2, 0, length);
return bArr2;
}
@Nullable
private static int[] zzk(@Nullable int[] iArr, @Nullable int[] iArr2) {
int length;
if (iArr == null) {
return iArr2;
}
if (iArr2 == null || iArr2.length < (length = iArr.length)) {
return Arrays.copyOf(iArr, iArr.length);
}
System.arraycopy(iArr, 0, iArr2, 0, length);
return iArr2;
}
@Override // com.google.android.gms.internal.ads.zzse
public final void zzb() {
if (this.zzh) {
try {
Handler handler = this.zze;
handler.getClass();
handler.removeCallbacksAndMessages(null);
this.zzg.zzc();
Handler handler2 = this.zze;
handler2.getClass();
handler2.obtainMessage(3).sendToTarget();
this.zzg.zza();
} catch (InterruptedException e) {
Thread.currentThread().interrupt();
throw new IllegalStateException(e);
}
}
}
}