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

106 lines
3.5 KiB
Java

package com.google.android.gms.internal.ads;
import android.content.Context;
import android.media.AudioFormat;
import android.media.AudioManager;
import android.media.Spatializer;
import android.media.Spatializer$OnSpatializerStateChangedListener;
import android.os.Handler;
import android.os.Looper;
import androidx.annotation.Nullable;
import androidx.annotation.RequiresApi;
import com.mbridge.msdk.playercommon.exoplayer2.util.MimeTypes;
import java.util.Objects;
import java.util.concurrent.Executor;
@RequiresApi(32)
/* loaded from: classes3.dex */
final class zzxl {
private final Spatializer zza;
private final boolean zzb;
@Nullable
private Handler zzc;
@Nullable
private Spatializer$OnSpatializerStateChangedListener zzd;
private zzxl(Spatializer spatializer) {
int immersiveAudioLevel;
this.zza = spatializer;
immersiveAudioLevel = spatializer.getImmersiveAudioLevel();
this.zzb = immersiveAudioLevel != 0;
}
@Nullable
public static zzxl zza(Context context) {
Spatializer spatializer;
AudioManager audioManager = (AudioManager) context.getSystemService("audio");
if (audioManager == null) {
return null;
}
spatializer = audioManager.getSpatializer();
return new zzxl(spatializer);
}
public final void zzb(zzxt zzxtVar, Looper looper) {
if (this.zzd == null && this.zzc == null) {
this.zzd = new zzxk(this, zzxtVar);
final Handler handler = new Handler(looper);
this.zzc = handler;
Spatializer spatializer = this.zza;
Objects.requireNonNull(handler);
spatializer.addOnSpatializerStateChangedListener(new Executor() { // from class: com.google.android.gms.internal.ads.zzxj
@Override // java.util.concurrent.Executor
public final void execute(Runnable runnable) {
handler.post(runnable);
}
}, this.zzd);
}
}
public final void zzc() {
Spatializer$OnSpatializerStateChangedListener spatializer$OnSpatializerStateChangedListener = this.zzd;
if (spatializer$OnSpatializerStateChangedListener == null || this.zzc == null) {
return;
}
this.zza.removeOnSpatializerStateChangedListener(spatializer$OnSpatializerStateChangedListener);
Handler handler = this.zzc;
int i = zzei.zza;
handler.removeCallbacksAndMessages(null);
this.zzc = null;
this.zzd = null;
}
public final boolean zzd(zze zzeVar, zzab zzabVar) {
boolean canBeSpatialized;
int zzi = zzei.zzi((Objects.equals(zzabVar.zzo, MimeTypes.AUDIO_E_AC3_JOC) && zzabVar.zzD == 16) ? 12 : (Objects.equals(zzabVar.zzo, "audio/iamf") && zzabVar.zzD == -1) ? 6 : zzabVar.zzD);
if (zzi == 0) {
return false;
}
AudioFormat.Builder channelMask = new AudioFormat.Builder().setEncoding(2).setChannelMask(zzi);
int i = zzabVar.zzE;
if (i != -1) {
channelMask.setSampleRate(i);
}
canBeSpatialized = this.zza.canBeSpatialized(zzeVar.zza().zza, channelMask.build());
return canBeSpatialized;
}
public final boolean zze() {
boolean isAvailable;
isAvailable = this.zza.isAvailable();
return isAvailable;
}
public final boolean zzf() {
boolean isEnabled;
isEnabled = this.zza.isEnabled();
return isEnabled;
}
public final boolean zzg() {
return this.zzb;
}
}