package I0;

import C3.D;
import C3.G;
import C3.W;
import android.media.MediaCodecInfo;
import android.os.Build;
import android.util.Pair;
import d5.AbstractC0844a;
import java.util.ArrayList;
import java.util.Collections;
import java.util.HashMap;
import java.util.List;
import java.util.regex.Matcher;
import n4.u0;
import u0.C1570f;
import u0.C1579o;
import u0.E;
import x0.AbstractC1709a;

/* JADX INFO: loaded from: classes.dex */
public abstract class z {

    /* JADX INFO: renamed from: a, reason: collision with root package name */
    public static final HashMap f3314a = new HashMap();

    public static void a(String str, ArrayList arrayList) {
        if ("audio/raw".equals(str)) {
            if (x0.v.f18553a < 26 && Build.DEVICE.equals("R9") && arrayList.size() == 1 && ((q) arrayList.get(0)).f3234a.equals("OMX.MTK.AUDIO.DECODER.RAW")) {
                arrayList.add(q.i("OMX.google.raw.decoder", "audio/raw", "audio/raw", null, false, true, false, false));
            }
            Collections.sort(arrayList, new u(new l()));
        }
        if (x0.v.f18553a >= 32 || arrayList.size() <= 1 || !"OMX.qti.audio.decoder.flac".equals(((q) arrayList.get(0)).f3234a)) {
            return;
        }
        arrayList.add((q) arrayList.remove(0));
    }

    public static String b(C1579o c1579o) {
        Pair pairD;
        if ("audio/eac3-joc".equals(c1579o.f17358n)) {
            return "audio/eac3";
        }
        String str = c1579o.f17358n;
        if ("video/dolby-vision".equals(str) && (pairD = d(c1579o)) != null) {
            int iIntValue = ((Integer) pairD.first).intValue();
            if (iIntValue == 16 || iIntValue == 256) {
                return "video/hevc";
            }
            if (iIntValue == 512) {
                return "video/avc";
            }
            if (iIntValue == 1024) {
                return "video/av01";
            }
        }
        if ("video/mv-hevc".equals(str)) {
            return "video/hevc";
        }
        return null;
    }

    public static String c(MediaCodecInfo mediaCodecInfo, String str, String str2) {
        for (String str3 : mediaCodecInfo.getSupportedTypes()) {
            if (str3.equalsIgnoreCase(str2)) {
                return str3;
            }
        }
        if (str2.equals("video/dolby-vision")) {
            if ("OMX.MS.HEVCDV.Decoder".equals(str)) {
                return "video/hevcdv";
            }
            if ("OMX.RTK.video.decoder".equals(str) || "OMX.realtek.video.decoder.tunneled".equals(str)) {
                return "video/dv_hevc";
            }
            return null;
        }
        if (str2.equals("video/mv-hevc")) {
            if ("c2.qti.mvhevc.decoder".equals(str) || "c2.qti.mvhevc.decoder.secure".equals(str)) {
                return "video/x-mvhevc";
            }
            return null;
        }
        if (str2.equals("audio/alac") && "OMX.lge.alac.decoder".equals(str)) {
            return "audio/x-lg-alac";
        }
        if (str2.equals("audio/flac") && "OMX.lge.flac.decoder".equals(str)) {
            return "audio/x-lg-flac";
        }
        if (str2.equals("audio/ac3") && "OMX.lge.ac3.decoder".equals(str)) {
            return "audio/lg-ac3";
        }
        return null;
    }

    /* JADX WARN: Can't fix incorrect switch cases order, some code will duplicate */
    /* JADX WARN: Failed to restore switch over string. Please report as a decompilation issue */
    /* JADX WARN: Removed duplicated region for block: B:162:0x0244  */
    /* JADX WARN: Removed duplicated region for block: B:17:0x0076  */
    /* JADX WARN: Removed duplicated region for block: B:20:0x0081  */
    /* JADX WARN: Removed duplicated region for block: B:83:0x0139  */
    /* JADX WARN: Removed duplicated region for block: B:86:0x0144  */
    /*
        Code decompiled incorrectly, please refer to instructions dump.
    */
    public static Pair d(C1579o c1579o) {
        C1570f c1570f;
        int i;
        int i5;
        int i8;
        int i9;
        int i10;
        int i11;
        int i12;
        int i13;
        int i14;
        int i15;
        int i16;
        Integer num;
        byte b8;
        byte b9;
        Integer num2;
        byte[] bArr = x0.b.f18499a;
        String str = c1579o.f17355k;
        if (str != null) {
            String[] strArrSplit = str.split("\\.");
            boolean zEquals = "video/dolby-vision".equals(c1579o.f17358n);
            String str2 = c1579o.f17355k;
            if (zEquals) {
                if (strArrSplit.length < 3) {
                    AbstractC0844a.v("Ignoring malformed Dolby Vision codec string: ", str2, "CodecSpecificDataUtil");
                    return null;
                }
                Matcher matcher = x0.b.f18501c.matcher(strArrSplit[1]);
                if (!matcher.matches()) {
                    AbstractC0844a.v("Ignoring malformed Dolby Vision codec string: ", str2, "CodecSpecificDataUtil");
                    return null;
                }
                String strGroup = matcher.group(1);
                if (strGroup != null) {
                    switch (strGroup) {
                        case "00":
                            num = 1;
                            break;
                        case "01":
                            num = 2;
                            break;
                        case "02":
                            num = 4;
                            break;
                        case "03":
                            num = 8;
                            break;
                        case "04":
                            num = 16;
                            break;
                        case "05":
                            num = 32;
                            break;
                        case "06":
                            num = 64;
                            break;
                        case "07":
                            num = 128;
                            break;
                        case "08":
                            num = 256;
                            break;
                        case "09":
                            num = 512;
                            break;
                        case "10":
                            num = 1024;
                            break;
                    }
                } else {
                    num = null;
                }
                if (num == null) {
                    AbstractC0844a.v("Unknown Dolby Vision profile string: ", strGroup, "CodecSpecificDataUtil");
                    return null;
                }
                String str3 = strArrSplit[2];
                if (str3 != null) {
                    switch (str3.hashCode()) {
                        case 1537:
                            b8 = !str3.equals("01") ? (byte) -1 : (byte) 0;
                            break;
                        case 1538:
                            if (str3.equals("02")) {
                                b8 = 1;
                                break;
                            }
                            break;
                        case 1539:
                            if (str3.equals("03")) {
                                b8 = 2;
                                break;
                            }
                            break;
                        case 1540:
                            if (str3.equals("04")) {
                                b8 = 3;
                                break;
                            }
                            break;
                        case 1541:
                            if (str3.equals("05")) {
                                b8 = 4;
                                break;
                            }
                            break;
                        case 1542:
                            if (str3.equals("06")) {
                                b8 = 5;
                                break;
                            }
                            break;
                        case 1543:
                            if (str3.equals("07")) {
                                b8 = 6;
                                break;
                            }
                            break;
                        case 1544:
                            if (str3.equals("08")) {
                                b8 = 7;
                                break;
                            }
                            break;
                        case 1545:
                            if (str3.equals("09")) {
                                b8 = 8;
                                break;
                            }
                            break;
                        case 1567:
                            if (str3.equals("10")) {
                                b8 = 9;
                                break;
                            }
                            break;
                        case 1568:
                            if (str3.equals("11")) {
                                b8 = 10;
                                break;
                            }
                            break;
                        case 1569:
                            if (str3.equals("12")) {
                                b9 = 11;
                                b8 = b9;
                            }
                            break;
                        case 1570:
                            if (str3.equals("13")) {
                                b9 = 12;
                                b8 = b9;
                            }
                            break;
                    }
                    switch (b8) {
                        case u0.f15495q /* 0 */:
                            num2 = 1;
                            break;
                        case 1:
                            num2 = 2;
                            break;
                        case 2:
                            num2 = 4;
                            break;
                        case 3:
                            num2 = 8;
                            break;
                        case 4:
                            num2 = 16;
                            break;
                        case 5:
                            num2 = 32;
                            break;
                        case Z.g.STRING_SET_FIELD_NUMBER /* 6 */:
                            num2 = 64;
                            break;
                        case Z.g.DOUBLE_FIELD_NUMBER /* 7 */:
                            num2 = 128;
                            break;
                        case Z.g.BYTES_FIELD_NUMBER /* 8 */:
                            num2 = 256;
                            break;
                        case 9:
                            num2 = 512;
                            break;
                        case 10:
                            num2 = 1024;
                            break;
                        case 11:
                            num2 = 2048;
                            break;
                        case 12:
                            num2 = 4096;
                            break;
                    }
                } else {
                    num2 = null;
                }
                if (num2 != null) {
                    return new Pair(num, num2);
                }
                AbstractC0844a.v("Unknown Dolby Vision level string: ", str3, "CodecSpecificDataUtil");
                return null;
            }
            String str4 = strArrSplit[0];
            str4.getClass();
            c1570f = c1579o.f17335B;
            switch (str4) {
                case "av01":
                    if (strArrSplit.length >= 4) {
                        try {
                            int i17 = Integer.parseInt(strArrSplit[1]);
                            int i18 = Integer.parseInt(strArrSplit[2].substring(0, 2));
                            int i19 = Integer.parseInt(strArrSplit[3]);
                            if (i17 != 0) {
                                AbstractC0844a.s(i17, "Unknown AV1 profile: ", "CodecSpecificDataUtil");
                            } else if (i19 == 8 || i19 == 10) {
                                int i20 = i19 == 8 ? 1 : (c1570f == null || !(c1570f.f17281d != null || (i = c1570f.f17280c) == 7 || i == 6)) ? 2 : 4096;
                                switch (i18) {
                                    case u0.f15495q /* 0 */:
                                        i5 = 1;
                                        i8 = -1;
                                        break;
                                    case 1:
                                        i5 = 2;
                                        i8 = -1;
                                        break;
                                    case 2:
                                        i5 = 4;
                                        i8 = -1;
                                        break;
                                    case 3:
                                        i5 = 8;
                                        i8 = -1;
                                        break;
                                    case 4:
                                        i5 = 16;
                                        i8 = -1;
                                        break;
                                    case 5:
                                        i5 = 32;
                                        i8 = -1;
                                        break;
                                    case Z.g.STRING_SET_FIELD_NUMBER /* 6 */:
                                        i5 = 64;
                                        i8 = -1;
                                        break;
                                    case Z.g.DOUBLE_FIELD_NUMBER /* 7 */:
                                        i5 = 128;
                                        i8 = -1;
                                        break;
                                    case Z.g.BYTES_FIELD_NUMBER /* 8 */:
                                        i5 = 256;
                                        i8 = -1;
                                        break;
                                    case 9:
                                        i5 = 512;
                                        i8 = -1;
                                        break;
                                    case 10:
                                        i5 = 1024;
                                        i8 = -1;
                                        break;
                                    case 11:
                                        i5 = 2048;
                                        i8 = -1;
                                        break;
                                    case 12:
                                        i5 = 4096;
                                        i8 = -1;
                                        break;
                                    case 13:
                                        i5 = 8192;
                                        i8 = -1;
                                        break;
                                    case 14:
                                        i5 = 16384;
                                        i8 = -1;
                                        break;
                                    case 15:
                                        i5 = 32768;
                                        i8 = -1;
                                        break;
                                    case 16:
                                        i5 = 65536;
                                        i8 = -1;
                                        break;
                                    case 17:
                                        i5 = 131072;
                                        i8 = -1;
                                        break;
                                    case 18:
                                        i5 = 262144;
                                        i8 = -1;
                                        break;
                                    case 19:
                                        i5 = 524288;
                                        i8 = -1;
                                        break;
                                    case 20:
                                        i5 = 1048576;
                                        i8 = -1;
                                        break;
                                    case 21:
                                        i5 = 2097152;
                                        i8 = -1;
                                        break;
                                    case 22:
                                        i5 = 4194304;
                                        i8 = -1;
                                        break;
                                    case 23:
                                        i5 = 8388608;
                                        i8 = -1;
                                        break;
                                    default:
                                        i8 = -1;
                                        i5 = -1;
                                        break;
                                }
                                if (i5 == i8) {
                                    AbstractC0844a.s(i18, "Unknown AV1 level: ", "CodecSpecificDataUtil");
                                }
                            } else {
                                AbstractC0844a.s(i19, "Unknown AV1 bit depth: ", "CodecSpecificDataUtil");
                            }
                        } catch (NumberFormatException unused) {
                            AbstractC0844a.v("Ignoring malformed AV1 codec string: ", str2, "CodecSpecificDataUtil");
                            return null;
                        }
                        break;
                    } else {
                        AbstractC0844a.v("Ignoring malformed AV1 codec string: ", str2, "CodecSpecificDataUtil");
                        break;
                    }
                    break;
                case "avc1":
                case "avc2":
                    if (strArrSplit.length >= 2) {
                        try {
                            if (strArrSplit[1].length() != 6) {
                                i9 = 16;
                                if (strArrSplit.length < 3) {
                                    AbstractC1709a.B("CodecSpecificDataUtil", "Ignoring malformed AVC codec string: " + str2);
                                } else {
                                    i10 = Integer.parseInt(strArrSplit[1]);
                                    i11 = Integer.parseInt(strArrSplit[2]);
                                }
                            } else {
                                i9 = 16;
                                i10 = Integer.parseInt(strArrSplit[1].substring(0, 2), 16);
                                i11 = Integer.parseInt(strArrSplit[1].substring(4), 16);
                            }
                            int i21 = i10 != 66 ? i10 != 77 ? i10 != 88 ? i10 != 100 ? i10 != 110 ? i10 != 122 ? i10 != 244 ? -1 : 64 : 32 : i9 : 8 : 4 : 2 : 1;
                            if (i21 != -1) {
                                switch (i11) {
                                    case 10:
                                        i12 = -1;
                                        i13 = 1;
                                        break;
                                    case 11:
                                        i12 = -1;
                                        i13 = 4;
                                        break;
                                    case 12:
                                        i13 = 8;
                                        i12 = -1;
                                        break;
                                    case 13:
                                        i13 = i9;
                                        i12 = -1;
                                        break;
                                    default:
                                        switch (i11) {
                                            case 20:
                                                i13 = 32;
                                                i12 = -1;
                                                break;
                                            case 21:
                                                i13 = 64;
                                                i12 = -1;
                                                break;
                                            case 22:
                                                i13 = 128;
                                                i12 = -1;
                                                break;
                                            default:
                                                switch (i11) {
                                                    case 30:
                                                        i13 = 256;
                                                        i12 = -1;
                                                        break;
                                                    case 31:
                                                        i13 = 512;
                                                        i12 = -1;
                                                        break;
                                                    case 32:
                                                        i13 = 1024;
                                                        i12 = -1;
                                                        break;
                                                    default:
                                                        switch (i11) {
                                                            case 40:
                                                                i13 = 2048;
                                                                i12 = -1;
                                                                break;
                                                            case 41:
                                                                i13 = 4096;
                                                                i12 = -1;
                                                                break;
                                                            case 42:
                                                                i13 = 8192;
                                                                i12 = -1;
                                                                break;
                                                            default:
                                                                switch (i11) {
                                                                    case 50:
                                                                        i13 = 16384;
                                                                        i12 = -1;
                                                                        break;
                                                                    case 51:
                                                                        i13 = 32768;
                                                                        i12 = -1;
                                                                        break;
                                                                    case 52:
                                                                        i13 = 65536;
                                                                        i12 = -1;
                                                                        break;
                                                                    default:
                                                                        i12 = -1;
                                                                        i13 = -1;
                                                                        break;
                                                                }
                                                                break;
                                                        }
                                                        break;
                                                }
                                                break;
                                        }
                                        break;
                                }
                                if (i13 == i12) {
                                    AbstractC0844a.s(i11, "Unknown AVC level: ", "CodecSpecificDataUtil");
                                }
                            } else {
                                AbstractC0844a.s(i10, "Unknown AVC profile: ", "CodecSpecificDataUtil");
                            }
                        } catch (NumberFormatException unused2) {
                            AbstractC0844a.v("Ignoring malformed AVC codec string: ", str2, "CodecSpecificDataUtil");
                            return null;
                        }
                        break;
                    } else {
                        AbstractC0844a.v("Ignoring malformed AVC codec string: ", str2, "CodecSpecificDataUtil");
                        break;
                    }
                    break;
                case "mp4a":
                    if (strArrSplit.length == 3) {
                        try {
                            if ("audio/mp4a-latm".equals(E.e(Integer.parseInt(strArrSplit[1], 16)))) {
                                int i22 = Integer.parseInt(strArrSplit[2]);
                                int i23 = 17;
                                if (i22 == 17) {
                                    i14 = -1;
                                } else {
                                    if (i22 != 20) {
                                        i23 = 23;
                                        if (i22 != 23) {
                                            i23 = 29;
                                            if (i22 != 29) {
                                                i23 = 39;
                                                if (i22 != 39) {
                                                    i23 = 42;
                                                    if (i22 != 42) {
                                                        switch (i22) {
                                                            case 1:
                                                                i14 = -1;
                                                                i23 = 1;
                                                                break;
                                                            case 2:
                                                                i14 = -1;
                                                                i23 = 2;
                                                                break;
                                                            case 3:
                                                                i14 = -1;
                                                                i23 = 3;
                                                                break;
                                                            case 4:
                                                                i23 = 4;
                                                                break;
                                                            case 5:
                                                                i23 = 5;
                                                                break;
                                                            case Z.g.STRING_SET_FIELD_NUMBER /* 6 */:
                                                                i14 = -1;
                                                                i23 = 6;
                                                                break;
                                                            default:
                                                                i14 = -1;
                                                                i23 = -1;
                                                                break;
                                                        }
                                                    }
                                                }
                                            }
                                        }
                                    } else {
                                        i23 = 20;
                                    }
                                    i14 = -1;
                                }
                                if (i23 != i14) {
                                }
                            }
                        } catch (NumberFormatException unused3) {
                            AbstractC0844a.v("Ignoring malformed MP4A codec string: ", str2, "CodecSpecificDataUtil");
                            return null;
                        }
                        break;
                    } else {
                        AbstractC0844a.v("Ignoring malformed MP4A codec string: ", str2, "CodecSpecificDataUtil");
                        break;
                    }
                    break;
                case "s263":
                    Pair pair = new Pair(1, 1);
                    if (strArrSplit.length >= 3) {
                        try {
                        } catch (NumberFormatException unused4) {
                            AbstractC0844a.v("Ignoring malformed H263 codec string: ", str2, "CodecSpecificDataUtil");
                            return pair;
                        }
                        break;
                    } else {
                        AbstractC0844a.v("Ignoring malformed H263 codec string: ", str2, "CodecSpecificDataUtil");
                        break;
                    }
                    break;
                case "vp09":
                    if (strArrSplit.length >= 3) {
                        try {
                            int i24 = Integer.parseInt(strArrSplit[1]);
                            int i25 = Integer.parseInt(strArrSplit[2]);
                            int i26 = i24 != 0 ? i24 != 1 ? i24 != 2 ? i24 != 3 ? -1 : 8 : 4 : 2 : 1;
                            if (i26 != -1) {
                                if (i25 == 10) {
                                    i15 = -1;
                                    i16 = 1;
                                } else if (i25 != 11) {
                                    if (i25 == 20) {
                                        i16 = 4;
                                    } else if (i25 == 21) {
                                        i16 = 8;
                                    } else if (i25 == 30) {
                                        i16 = 16;
                                    } else if (i25 == 31) {
                                        i16 = 32;
                                    } else if (i25 == 40) {
                                        i16 = 64;
                                    } else if (i25 == 41) {
                                        i16 = 128;
                                    } else if (i25 == 50) {
                                        i16 = 256;
                                    } else if (i25 != 51) {
                                        switch (i25) {
                                            case 60:
                                                i16 = 2048;
                                                break;
                                            case 61:
                                                i16 = 4096;
                                                break;
                                            case 62:
                                                i16 = 8192;
                                                break;
                                            default:
                                                i15 = -1;
                                                i16 = -1;
                                                break;
                                        }
                                    } else {
                                        i16 = 512;
                                    }
                                    i15 = -1;
                                } else {
                                    i15 = -1;
                                    i16 = 2;
                                }
                                if (i16 == i15) {
                                    AbstractC0844a.s(i25, "Unknown VP9 level: ", "CodecSpecificDataUtil");
                                }
                            } else {
                                AbstractC0844a.s(i24, "Unknown VP9 profile: ", "CodecSpecificDataUtil");
                            }
                        } catch (NumberFormatException unused5) {
                            AbstractC0844a.v("Ignoring malformed VP9 codec string: ", str2, "CodecSpecificDataUtil");
                            return null;
                        }
                        break;
                    } else {
                        AbstractC0844a.v("Ignoring malformed VP9 codec string: ", str2, "CodecSpecificDataUtil");
                        break;
                    }
                    break;
            }
            return null;
        }
        return null;
    }

    public static synchronized List e(String str, boolean z8, boolean z9) {
        try {
            v vVar = new v(str, z8, z9);
            HashMap map = f3314a;
            List list = (List) map.get(vVar);
            if (list != null) {
                return list;
            }
            ArrayList arrayListF = f(vVar, new B7.a(z8, z9, str.equals("video/mv-hevc")));
            if (z8 && arrayListF.isEmpty() && x0.v.f18553a <= 23) {
                arrayListF = f(vVar, new C4.f(6));
                if (!arrayListF.isEmpty()) {
                    AbstractC1709a.B("MediaCodecUtil", "MediaCodecList API didn't list secure decoder for: " + str + ". Assuming: " + ((q) arrayListF.get(0)).f3234a);
                }
            }
            a(str, arrayListF);
            G gK = G.k(arrayListF);
            map.put(vVar, gK);
            return gK;
        } catch (Throwable th) {
            throw th;
        }
    }

    /* JADX WARN: Removed duplicated region for block: B:12:0x003b  */
    /*
        Code decompiled incorrectly, please refer to instructions dump.
    */
    public static ArrayList f(v vVar, x xVar) throws w {
        String strC;
        String str;
        int i;
        String str2;
        MediaCodecInfo.CodecCapabilities codecCapabilities;
        boolean zIsVendor;
        v vVar2 = vVar;
        x xVar2 = xVar;
        try {
            ArrayList arrayList = new ArrayList();
            String str3 = vVar2.f3311a;
            int iB = xVar2.b();
            boolean zM = xVar2.m();
            int i5 = 0;
            while (i5 < iB) {
                MediaCodecInfo mediaCodecInfoE = xVar2.e(i5);
                int i8 = x0.v.f18553a;
                if (i8 < 29 || !mediaCodecInfoE.isAlias()) {
                    int i9 = i5;
                    String name = mediaCodecInfoE.getName();
                    if (h(mediaCodecInfoE, name, zM, str3) && (strC = c(mediaCodecInfoE, name, str3)) != null) {
                        try {
                            MediaCodecInfo.CodecCapabilities capabilitiesForType = mediaCodecInfoE.getCapabilitiesForType(strC);
                            boolean zL = xVar2.l("tunneled-playback", strC, capabilitiesForType);
                            boolean zA = xVar2.a("tunneled-playback", capabilitiesForType);
                            boolean z8 = vVar2.f3313c;
                            if ((z8 || !zA) && (!z8 || zL)) {
                                boolean zL2 = xVar2.l("secure-playback", strC, capabilitiesForType);
                                boolean zA2 = xVar2.a("secure-playback", capabilitiesForType);
                                boolean z9 = vVar2.f3312b;
                                if ((z9 || !zA2) && (!z9 || zL2)) {
                                    boolean zIsHardwareAccelerated = i8 >= 29 ? mediaCodecInfoE.isHardwareAccelerated() : !i(mediaCodecInfoE, str3);
                                    try {
                                        boolean zI = i(mediaCodecInfoE, str3);
                                        if (i8 >= 29) {
                                            zIsVendor = mediaCodecInfoE.isVendor();
                                            codecCapabilities = capabilitiesForType;
                                        } else {
                                            String strF = s7.d.F(mediaCodecInfoE.getName());
                                            if (strF.startsWith("omx.google.") || strF.startsWith("c2.android.") || strF.startsWith("c2.google.")) {
                                                codecCapabilities = capabilitiesForType;
                                                zIsVendor = false;
                                            } else {
                                                codecCapabilities = capabilitiesForType;
                                                zIsVendor = true;
                                            }
                                        }
                                        if (!(zM && z9 == zL2) && (zM || z9)) {
                                            i = i9;
                                            boolean z10 = zIsHardwareAccelerated;
                                            str2 = strC;
                                            if (!zM && zL2) {
                                                str = name;
                                                try {
                                                    arrayList.add(q.i(name + ".secure", str3, str2, codecCapabilities, z10, zI, zIsVendor, true));
                                                    break;
                                                } catch (Exception e8) {
                                                    e = e8;
                                                    if (x0.v.f18553a <= 23 || arrayList.isEmpty()) {
                                                        AbstractC1709a.o("MediaCodecUtil", "Failed to query codec " + str + " (" + str2 + ")");
                                                        throw e;
                                                    }
                                                    AbstractC1709a.o("MediaCodecUtil", "Skipping codec " + str + " (failed to query capabilities)");
                                                    i5 = i + 1;
                                                    vVar2 = vVar;
                                                    xVar2 = xVar;
                                                }
                                            }
                                        } else {
                                            i = i9;
                                            str2 = strC;
                                            try {
                                                arrayList.add(q.i(name, str3, str2, codecCapabilities, zIsHardwareAccelerated, zI, zIsVendor, false));
                                            } catch (Exception e9) {
                                                e = e9;
                                                str = name;
                                                if (x0.v.f18553a <= 23) {
                                                }
                                                AbstractC1709a.o("MediaCodecUtil", "Failed to query codec " + str + " (" + str2 + ")");
                                                throw e;
                                            }
                                        }
                                    } catch (Exception e10) {
                                        e = e10;
                                        str = name;
                                        i = i9;
                                        str2 = strC;
                                    }
                                } else {
                                    i = i9;
                                }
                            }
                        } catch (Exception e11) {
                            e = e11;
                            str = name;
                            i = i9;
                            str2 = strC;
                        }
                    }
                } else {
                    i = i5;
                }
                i5 = i + 1;
                vVar2 = vVar;
                xVar2 = xVar;
            }
            return arrayList;
        } catch (Exception e12) {
            throw new w("Failed to query underlying media codecs", e12);
        }
    }

    public static W g(l lVar, C1579o c1579o, boolean z8, boolean z9) {
        String str = c1579o.f17358n;
        lVar.getClass();
        List listE = e(str, z8, z9);
        String strB = b(c1579o);
        List listE2 = strB == null ? W.f1225u : e(strB, z8, z9);
        D dJ = G.j();
        dJ.d(listE);
        dJ.d(listE2);
        return dJ.g();
    }

    public static boolean h(MediaCodecInfo mediaCodecInfo, String str, boolean z8, String str2) {
        if (mediaCodecInfo.isEncoder()) {
            return false;
        }
        if (!z8 && str.endsWith(".secure")) {
            return false;
        }
        int i = x0.v.f18553a;
        if (i < 24 && (("OMX.SEC.aac.dec".equals(str) || "OMX.Exynos.AAC.Decoder".equals(str)) && "samsung".equals(Build.MANUFACTURER))) {
            String str3 = Build.DEVICE;
            if (str3.startsWith("zeroflte") || str3.startsWith("zerolte") || str3.startsWith("zenlte") || "SC-05G".equals(str3) || "marinelteatt".equals(str3) || "404SC".equals(str3) || "SC-04G".equals(str3) || "SCV31".equals(str3)) {
                return false;
            }
        }
        return (i <= 23 && "audio/eac3-joc".equals(str2) && "OMX.MTK.AUDIO.DECODER.DSPAC3".equals(str)) ? false : true;
    }

    public static boolean i(MediaCodecInfo mediaCodecInfo, String str) {
        if (x0.v.f18553a >= 29) {
            return mediaCodecInfo.isSoftwareOnly();
        }
        if (E.i(str)) {
            return true;
        }
        String strF = s7.d.F(mediaCodecInfo.getName());
        if (strF.startsWith("arc.")) {
            return false;
        }
        if (strF.startsWith("omx.google.") || strF.startsWith("omx.ffmpeg.")) {
            return true;
        }
        if ((strF.startsWith("omx.sec.") && strF.contains(".sw.")) || strF.equals("omx.qcom.video.decoder.hevcswvdec") || strF.startsWith("c2.android.") || strF.startsWith("c2.google.")) {
            return true;
        }
        return (strF.startsWith("omx.") || strF.startsWith("c2.")) ? false : true;
    }
}
