package h0;

import Q0.e;
import android.content.Context;
import android.media.AudioAttributes;
import android.media.AudioFormat;
import android.media.AudioManager;
import android.media.AudioRecord;
import android.util.Log;
import f0.C0463a;
import java.lang.reflect.Method;

/* JADX INFO: renamed from: h0.b, reason: case insensitive filesystem */
/* JADX INFO: loaded from: classes.dex */
public final class C0505b {

    /* JADX INFO: renamed from: a, reason: collision with root package name */
    private final boolean f4186a;

    /* JADX INFO: renamed from: b, reason: collision with root package name */
    private Context f4187b;

    public C0505b(Context context, boolean z2) {
        this.f4186a = z2;
        this.f4187b = context;
        Log.d("AudioPlaybackCapture", "AudioPlaybackCapture: isKeepPlayingOnDevice=" + z2);
    }

    public AudioRecord a(int i2, int i3) throws C0504a {
        try {
            Class<?> cls = Class.forName("android.media.audiopolicy.AudioMixingRule");
            Class<?> cls2 = Class.forName("android.media.audiopolicy.AudioMixingRule$Builder");
            Object objNewInstance = cls2.getConstructor(null).newInstance(null);
            int i4 = cls.getField("MIX_ROLE_PLAYERS").getInt(null);
            Class cls3 = Integer.TYPE;
            cls2.getMethod("setTargetMixRole", cls3).invoke(objNewInstance, Integer.valueOf(i4));
            AudioAttributes audioAttributesBuild = new AudioAttributes.Builder().setUsage(1).build();
            AudioAttributes audioAttributesBuild2 = new AudioAttributes.Builder().setUsage(2).build();
            AudioAttributes audioAttributesBuild3 = new AudioAttributes.Builder().setUsage(0).build();
            int i5 = cls.getField("RULE_MATCH_ATTRIBUTE_USAGE").getInt(null);
            Method method = cls2.getMethod("addMixRule", cls3, Object.class);
            method.invoke(objNewInstance, Integer.valueOf(i5), audioAttributesBuild);
            method.invoke(objNewInstance, Integer.valueOf(i5), audioAttributesBuild2);
            method.invoke(objNewInstance, Integer.valueOf(i5), audioAttributesBuild3);
            Object objInvoke = cls2.getMethod("build", null).invoke(objNewInstance, null);
            cls2.getMethod("voiceCommunicationCaptureAllowed", Boolean.TYPE).invoke(objNewInstance, Boolean.TRUE);
            Class<?> cls4 = Class.forName("android.media.audiopolicy.AudioMix");
            Class<?> cls5 = Class.forName("android.media.audiopolicy.AudioMix$Builder");
            Object objNewInstance2 = cls5.getConstructor(cls).newInstance(objInvoke);
            objNewInstance2.getClass().getMethod("setFormat", AudioFormat.class).invoke(objNewInstance2, C0463a.a().b(i2, i3));
            objNewInstance2.getClass().getMethod("setRouteFlags", cls3).invoke(objNewInstance2, Integer.valueOf(cls4.getField(this.f4186a ? "ROUTE_FLAG_LOOP_BACK_RENDER" : "ROUTE_FLAG_LOOP_BACK").getInt(null)));
            Object objInvoke2 = cls5.getMethod("build", null).invoke(objNewInstance2, null);
            Class<?> cls6 = Class.forName("android.media.audiopolicy.AudioPolicy");
            Class<?> cls7 = Class.forName("android.media.audiopolicy.AudioPolicy$Builder");
            Object objNewInstance3 = cls7.getConstructor(Context.class).newInstance(this.f4187b);
            cls7.getMethod("addMix", cls4).invoke(objNewInstance3, objInvoke2);
            Object objInvoke3 = cls7.getMethod("build", null).invoke(objNewInstance3, null);
            Method declaredMethod = AudioManager.class.getDeclaredMethod("registerAudioPolicyStatic", cls6);
            declaredMethod.setAccessible(true);
            int iIntValue = ((Integer) declaredMethod.invoke(null, objInvoke3)).intValue();
            if (iIntValue == 0) {
                return (AudioRecord) cls6.getMethod("createAudioRecordSink", cls4).invoke(objInvoke3, objInvoke2);
            }
            throw new RuntimeException("registerAudioPolicy() returned " + iIntValue);
        } catch (Exception e2) {
            e.c("AudioPlaybackCapture", "Could not capture audio playback", e2);
            throw new C0504a();
        }
    }
}
