Files
rr3-apk/decompiled-community/sources/com/google/android/gms/internal/ads/zzhy.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

198 lines
5.9 KiB
Java

package com.google.android.gms.internal.ads;
import androidx.annotation.VisibleForTesting;
import com.mbridge.msdk.playercommon.exoplayer2.C;
import java.util.HashMap;
import java.util.Iterator;
/* loaded from: classes3.dex */
public final class zzhy implements zzkg {
private final zzyk zza;
private final long zzb;
private final long zzc;
private final long zzd;
private final long zze;
private final long zzf;
private final HashMap zzg;
private long zzh;
public zzhy() {
zzyk zzykVar = new zzyk(true, 65536);
zzl(2500, 0, "bufferForPlaybackMs", "0");
zzl(5000, 0, "bufferForPlaybackAfterRebufferMs", "0");
zzl(50000, 2500, "minBufferMs", "bufferForPlaybackMs");
zzl(50000, 5000, "minBufferMs", "bufferForPlaybackAfterRebufferMs");
zzl(50000, 50000, "maxBufferMs", "minBufferMs");
zzl(0, 0, "backBufferDurationMs", "0");
this.zza = zzykVar;
this.zzb = zzei.zzs(50000L);
this.zzc = zzei.zzs(50000L);
this.zzd = zzei.zzs(2500L);
this.zze = zzei.zzs(5000L);
this.zzf = zzei.zzs(0L);
this.zzg = new HashMap();
this.zzh = -1L;
}
private static void zzl(int i, int i2, String str, String str2) {
zzcw.zze(i >= i2, str + " cannot be less than " + str2);
}
private final void zzm(zzog zzogVar) {
if (this.zzg.remove(zzogVar) != null) {
zzn();
}
}
private final void zzn() {
if (this.zzg.isEmpty()) {
this.zza.zze();
} else {
this.zza.zzf(zza());
}
}
@VisibleForTesting
public final int zza() {
Iterator it = this.zzg.values().iterator();
int i = 0;
while (it.hasNext()) {
i += ((zzhw) it.next()).zzb;
}
return i;
}
@Override // com.google.android.gms.internal.ads.zzkg
public final long zzb(zzog zzogVar) {
return this.zzf;
}
@Override // com.google.android.gms.internal.ads.zzkg
public final void zzc(zzog zzogVar) {
long id = Thread.currentThread().getId();
long j = this.zzh;
boolean z = true;
if (j != -1 && j != id) {
z = false;
}
zzcw.zzg(z, "Players that share the same LoadControl must share the same playback thread. See ExoPlayer.Builder.setPlaybackLooper(Looper).");
this.zzh = id;
if (!this.zzg.containsKey(zzogVar)) {
this.zzg.put(zzogVar, new zzhw(null));
}
zzhw zzhwVar = (zzhw) this.zzg.get(zzogVar);
zzhwVar.getClass();
zzhwVar.zzb = C.DEFAULT_VIDEO_BUFFER_SIZE;
zzhwVar.zza = false;
}
@Override // com.google.android.gms.internal.ads.zzkg
public final void zzd(zzog zzogVar) {
zzm(zzogVar);
if (this.zzg.isEmpty()) {
this.zzh = -1L;
}
}
@Override // com.google.android.gms.internal.ads.zzkg
public final void zze(zzog zzogVar) {
zzm(zzogVar);
}
@Override // com.google.android.gms.internal.ads.zzkg
public final void zzf(zzkf zzkfVar, zzwj zzwjVar, zzxv[] zzxvVarArr) {
zzhw zzhwVar = (zzhw) this.zzg.get(zzkfVar.zza);
zzhwVar.getClass();
int length = zzxvVarArr.length;
int i = 0;
int i2 = 0;
while (true) {
int i3 = C.DEFAULT_VIDEO_BUFFER_SIZE;
if (i >= length) {
zzhwVar.zzb = Math.max(C.DEFAULT_VIDEO_BUFFER_SIZE, i2);
zzn();
return;
}
zzxv zzxvVar = zzxvVarArr[i];
if (zzxvVar != null) {
switch (zzxvVar.zzg().zzc) {
case -1:
case 1:
break;
case 0:
i3 = 144310272;
break;
case 2:
i3 = 131072000;
break;
case 3:
case 4:
case 5:
default:
i3 = 131072;
break;
}
i2 += i3;
}
i++;
}
}
@Override // com.google.android.gms.internal.ads.zzkg
public final boolean zzg(zzog zzogVar) {
return false;
}
@Override // com.google.android.gms.internal.ads.zzkg
public final boolean zzh(zzkf zzkfVar) {
zzhw zzhwVar = (zzhw) this.zzg.get(zzkfVar.zza);
zzhwVar.getClass();
int zza = this.zza.zza();
int zza2 = zza();
long j = this.zzb;
float f = zzkfVar.zzc;
if (f > 1.0f) {
j = Math.min(zzei.zzq(j, f), this.zzc);
}
long j2 = zzkfVar.zzb;
if (j2 < Math.max(j, 500000L)) {
boolean z = zza < zza2;
zzhwVar.zza = z;
if (!z && j2 < 500000) {
zzdo.zzf("DefaultLoadControl", "Target buffer size reached with less than 500ms of buffered media data.");
}
} else if (j2 >= this.zzc || zza >= zza2) {
zzhwVar.zza = false;
}
return zzhwVar.zza;
}
@Override // com.google.android.gms.internal.ads.zzkg
public final boolean zzi(zzbq zzbqVar, zzug zzugVar, long j) {
Iterator it = this.zzg.values().iterator();
while (it.hasNext()) {
if (((zzhw) it.next()).zza) {
return false;
}
}
return true;
}
@Override // com.google.android.gms.internal.ads.zzkg
public final boolean zzj(zzkf zzkfVar) {
boolean z = zzkfVar.zzd;
long zzr = zzei.zzr(zzkfVar.zzb, zzkfVar.zzc);
long j = z ? this.zze : this.zzd;
long j2 = zzkfVar.zze;
if (j2 != C.TIME_UNSET) {
j = Math.min(j2 / 2, j);
}
return j <= 0 || zzr >= j || this.zza.zza() >= zza();
}
@Override // com.google.android.gms.internal.ads.zzkg
public final zzyk zzk() {
return this.zza;
}
}