package androidx.media3.extractor;

import androidx.annotation.Nullable;
import androidx.media3.common.DrmInitData;
import androidx.media3.common.Format;
import androidx.media3.common.MimeTypes;
import androidx.media3.common.ParserException;
import androidx.media3.common.PlaybackException;
import androidx.media3.common.util.Log;
import androidx.media3.common.util.ParsableBitArray;
import androidx.media3.common.util.ParsableByteArray;
import androidx.media3.common.util.Util;
import tv.danmaku.ijk.media.player.IjkEventListener;

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

    /* JADX INFO: renamed from: a, reason: collision with root package name */
    public static final int[] f3367a = {PlaybackException.ERROR_CODE_IO_NETWORK_CONNECTION_TIMEOUT, 2000, 1920, 1601, 1600, 1001, 1000, 960, 800, 800, 480, IjkEventListener.VIDEO_SIZE_CHANGED, IjkEventListener.VIDEO_SIZE_CHANGED, 2048};

    public static void a(int i10, ParsableByteArray parsableByteArray) {
        parsableByteArray.reset(7);
        byte[] data = parsableByteArray.getData();
        data[0] = -84;
        data[1] = 64;
        data[2] = -1;
        data[3] = -1;
        data[4] = (byte) ((i10 >> 16) & 255);
        data[5] = (byte) ((i10 >> 8) & 255);
        data[6] = (byte) (i10 & 255);
    }

    /* JADX WARN: Removed duplicated region for block: B:43:0x008e  */
    /* JADX WARN: Removed duplicated region for block: B:47:0x0096  */
    /*
        Code decompiled incorrectly, please refer to instructions dump.
    */
    public static f b(ParsableBitArray parsableBitArray) {
        int i10;
        int bits;
        int bits2 = parsableBitArray.readBits(16);
        int bits3 = parsableBitArray.readBits(16);
        if (bits3 == 65535) {
            bits3 = parsableBitArray.readBits(24);
            i10 = 7;
        } else {
            i10 = 4;
        }
        int i11 = bits3 + i10;
        if (bits2 == 44097) {
            i11 += 2;
        }
        int bits4 = parsableBitArray.readBits(2);
        int i12 = 0;
        if (bits4 == 3) {
            int i13 = 0;
            while (true) {
                bits = parsableBitArray.readBits(2) + i13;
                if (!parsableBitArray.readBit()) {
                    break;
                }
                i13 = (bits + 1) << 2;
            }
            bits4 += bits;
        }
        int bits5 = parsableBitArray.readBits(10);
        if (parsableBitArray.readBit() && parsableBitArray.readBits(3) > 0) {
            parsableBitArray.skipBits(2);
        }
        int i14 = parsableBitArray.readBit() ? 48000 : 44100;
        int bits6 = parsableBitArray.readBits(4);
        int[] iArr = f3367a;
        if (i14 == 44100 && bits6 == 13) {
            i12 = iArr[bits6];
        } else if (i14 == 48000 && bits6 < 14) {
            i12 = iArr[bits6];
            int i15 = bits5 % 5;
            if (i15 == 1) {
                if (bits6 == 3 || bits6 == 8) {
                    i12++;
                }
            } else if (i15 != 2) {
                if (i15 != 3) {
                    if (i15 == 4 && (bits6 == 3 || bits6 == 8 || bits6 == 11)) {
                    }
                }
            } else if (bits6 == 8 || bits6 == 11) {
            }
        }
        return new f(bits4, i14, i11, i12);
    }

    public static void c(ParsableBitArray parsableBitArray, e eVar) throws ParserException {
        int bits = parsableBitArray.readBits(5);
        parsableBitArray.skipBits(2);
        if (parsableBitArray.readBit()) {
            parsableBitArray.skipBits(5);
        }
        if (bits >= 7 && bits <= 10) {
            parsableBitArray.skipBit();
        }
        if (parsableBitArray.readBit()) {
            int bits2 = parsableBitArray.readBits(3);
            if (eVar.f3346b == -1 && bits >= 0 && bits <= 15 && (bits2 == 0 || bits2 == 1)) {
                eVar.f3346b = bits;
            }
            if (parsableBitArray.readBit()) {
                e(parsableBitArray);
            }
        }
    }

    public static void d(ParsableBitArray parsableBitArray, e eVar) throws ParserException {
        parsableBitArray.skipBits(2);
        boolean bit = parsableBitArray.readBit();
        int bits = parsableBitArray.readBits(8);
        for (int i10 = 0; i10 < bits; i10++) {
            parsableBitArray.skipBits(2);
            if (parsableBitArray.readBit()) {
                parsableBitArray.skipBits(5);
            }
            if (bit) {
                parsableBitArray.skipBits(24);
            } else {
                if (parsableBitArray.readBit()) {
                    if (!parsableBitArray.readBit()) {
                        parsableBitArray.skipBits(4);
                    }
                    eVar.f3347c = parsableBitArray.readBits(6) + 1;
                }
                parsableBitArray.skipBits(4);
            }
        }
        if (parsableBitArray.readBit()) {
            parsableBitArray.skipBits(3);
            if (parsableBitArray.readBit()) {
                e(parsableBitArray);
            }
        }
    }

    public static void e(ParsableBitArray parsableBitArray) throws ParserException {
        int bits = parsableBitArray.readBits(6);
        if (bits < 2 || bits > 42) {
            throw ParserException.createForUnsupportedContainerFeature(String.format("Invalid language tag bytes number: %d. Must be between 2 and 42.", Integer.valueOf(bits)));
        }
        parsableBitArray.skipBits(bits * 8);
    }

    /* JADX WARN: Removed duplicated region for block: B:152:0x0258  */
    /* JADX WARN: Removed duplicated region for block: B:155:0x0260  */
    /* JADX WARN: Removed duplicated region for block: B:162:0x0279  */
    /* JADX WARN: Removed duplicated region for block: B:167:0x0292  */
    /* JADX WARN: Removed duplicated region for block: B:44:0x00e8  */
    /* JADX WARN: Removed duplicated region for block: B:64:0x0128  */
    /*
        Code decompiled incorrectly, please refer to instructions dump.
    */
    public static Format parseAc4AnnexEFormat(ParsableByteArray parsableByteArray, String str, @Nullable String str2, @Nullable DrmInitData drmInitData) throws ParserException {
        int i10;
        int i11;
        int i12;
        int i13;
        int i14;
        int i15;
        int i16;
        int i17;
        boolean bit;
        int bits;
        int bits2;
        int iBitsLeft;
        int bits3;
        boolean z10;
        int i18;
        ParsableBitArray parsableBitArray = new ParsableBitArray();
        parsableBitArray.reset(parsableByteArray);
        int iBitsLeft2 = parsableBitArray.bitsLeft();
        int bits4 = parsableBitArray.readBits(3);
        if (bits4 > 1) {
            throw ParserException.createForUnsupportedContainerFeature("Unsupported AC-4 DSI version: " + bits4);
        }
        int bits5 = parsableBitArray.readBits(7);
        int i19 = parsableBitArray.readBit() ? 48000 : 44100;
        parsableBitArray.skipBits(4);
        int bits6 = parsableBitArray.readBits(9);
        if (bits5 > 1) {
            if (bits4 == 0) {
                throw ParserException.createForUnsupportedContainerFeature("Invalid AC-4 DSI version: " + bits4);
            }
            if (parsableBitArray.readBit()) {
                parsableBitArray.skipBits(16);
                if (parsableBitArray.readBit()) {
                    parsableBitArray.skipBits(128);
                }
            }
        }
        if (bits4 == 1) {
            if (parsableBitArray.bitsLeft() < 66) {
                throw ParserException.createForUnsupportedContainerFeature("Invalid AC-4 DSI bitrate.");
            }
            parsableBitArray.skipBits(66);
            parsableBitArray.byteAlign();
        }
        e eVar = new e();
        eVar.f3345a = true;
        eVar.f3346b = -1;
        eVar.f3347c = -1;
        eVar.f3348d = true;
        eVar.f3349e = 2;
        eVar.f3350f = 1;
        int i20 = 0;
        eVar.f3351g = 0;
        while (true) {
            i10 = 5;
            if (i20 >= bits6) {
                i11 = 8;
                i12 = -1;
                i13 = 7;
                break;
            }
            if (bits4 == 0) {
                bit = parsableBitArray.readBit();
                bits = parsableBitArray.readBits(5);
                bits2 = parsableBitArray.readBits(5);
                iBitsLeft = 0;
                bits3 = 0;
                z10 = false;
                break;
            }
            int bits7 = parsableBitArray.readBits(8);
            bits3 = parsableBitArray.readBits(8);
            if (bits3 == 255) {
                bits3 += parsableBitArray.readBits(16);
            }
            if (bits7 > 2) {
                parsableBitArray.skipBits(bits3 * 8);
                i20++;
            } else {
                iBitsLeft = (iBitsLeft2 - parsableBitArray.bitsLeft()) / 8;
                int bits8 = parsableBitArray.readBits(5);
                z10 = bits8 == 31;
                bits2 = bits7;
                bits = bits8;
                bit = false;
            }
        }
        eVar.f3350f = bits2;
        if (bit || z10 || bits != 6) {
            eVar.f3351g = parsableBitArray.readBits(3);
            if (parsableBitArray.readBit()) {
                parsableBitArray.skipBits(5);
            }
            parsableBitArray.skipBits(2);
            if (bits4 == 1 && (bits2 == 1 || bits2 == 2)) {
                parsableBitArray.skipBits(2);
            }
            parsableBitArray.skipBits(5);
            parsableBitArray.skipBits(10);
            if (bits4 == 1) {
                if (bits2 > 0) {
                    eVar.f3345a = parsableBitArray.readBit();
                }
                if (!eVar.f3345a) {
                    i18 = 2;
                } else if (bits2 != 1) {
                    i18 = 2;
                    if (bits2 == 2) {
                        int bits9 = parsableBitArray.readBits(5);
                        if (bits9 >= 0 && bits9 <= 15) {
                            eVar.f3346b = bits9;
                        }
                        if (bits9 < 11 || bits9 > 14) {
                            i18 = 2;
                        } else {
                            eVar.f3348d = parsableBitArray.readBit();
                            i18 = 2;
                            eVar.f3349e = parsableBitArray.readBits(2);
                        }
                    }
                    parsableBitArray.skipBits(24);
                }
                if (bits2 == 1 || bits2 == i18) {
                    if (parsableBitArray.readBit() && parsableBitArray.readBit()) {
                        parsableBitArray.skipBits(i18);
                    }
                    if (parsableBitArray.readBit()) {
                        parsableBitArray.skipBit();
                        int i21 = 8;
                        int bits10 = parsableBitArray.readBits(8);
                        int i22 = 0;
                        while (i22 < bits10) {
                            parsableBitArray.skipBits(i21);
                            i22++;
                            i21 = 8;
                        }
                    }
                }
            }
            if (!bit && !z10) {
                parsableBitArray.skipBit();
                if (bits == 0 || bits == 1 || bits == 2) {
                    if (bits2 == 0) {
                        for (int i23 = 0; i23 < 2; i23++) {
                            c(parsableBitArray, eVar);
                        }
                    } else {
                        int i24 = 0;
                        for (int i25 = 2; i24 < i25; i25 = 2) {
                            d(parsableBitArray, eVar);
                            i24++;
                        }
                    }
                } else if (bits == 3 || bits == 4) {
                    if (bits2 == 0) {
                        for (int i26 = 0; i26 < 3; i26++) {
                            c(parsableBitArray, eVar);
                        }
                    } else {
                        int i27 = 0;
                        for (int i28 = 3; i27 < i28; i28 = 3) {
                            d(parsableBitArray, eVar);
                            i27++;
                        }
                    }
                } else if (bits != 5) {
                    int bits11 = parsableBitArray.readBits(7);
                    for (int i29 = 0; i29 < bits11; i29++) {
                        parsableBitArray.skipBits(8);
                    }
                } else if (bits2 == 0) {
                    c(parsableBitArray, eVar);
                } else {
                    int bits12 = parsableBitArray.readBits(3);
                    for (int i30 = 0; i30 < bits12 + 2; i30++) {
                        d(parsableBitArray, eVar);
                    }
                }
            } else if (bits2 == 0) {
                c(parsableBitArray, eVar);
            } else {
                d(parsableBitArray, eVar);
            }
            parsableBitArray.skipBit();
            if (parsableBitArray.readBit()) {
                i13 = 7;
                int bits13 = parsableBitArray.readBits(7);
                for (int i31 = 0; i31 < bits13; i31++) {
                    parsableBitArray.skipBits(15);
                }
            } else {
                i13 = 7;
            }
            if (bits2 <= 0) {
                i10 = 5;
                i11 = 8;
                parsableBitArray.byteAlign();
                if (bits4 == 1) {
                    int iBitsLeft3 = ((iBitsLeft2 - parsableBitArray.bitsLeft()) / 8) - iBitsLeft;
                    if (bits3 < iBitsLeft3) {
                        throw ParserException.createForUnsupportedContainerFeature("pres_bytes is smaller than presentation bytes read.");
                    }
                    parsableBitArray.skipBytes(bits3 - iBitsLeft3);
                }
                if (eVar.f3345a) {
                    i12 = -1;
                } else {
                    i12 = -1;
                    if (eVar.f3346b == -1) {
                        throw ParserException.createForUnsupportedContainerFeature("Can't determine channel mode of presentation " + i20);
                    }
                }
            } else {
                if (parsableBitArray.readBit()) {
                    if (parsableBitArray.bitsLeft() < 66) {
                        throw ParserException.createForUnsupportedContainerFeature("Can't parse bitrate DSI.");
                    }
                    parsableBitArray.skipBits(66);
                }
                if (parsableBitArray.readBit()) {
                    parsableBitArray.byteAlign();
                    parsableBitArray.skipBytes(parsableBitArray.readBits(16));
                    i10 = 5;
                    int bits14 = parsableBitArray.readBits(5);
                    for (int i32 = 0; i32 < bits14; i32++) {
                        parsableBitArray.skipBits(3);
                        parsableBitArray.skipBits(8);
                    }
                }
                i11 = 8;
                parsableBitArray.byteAlign();
                if (bits4 == 1) {
                }
                if (eVar.f3345a) {
                }
            }
        }
        if (eVar.f3345a) {
            int i33 = eVar.f3346b;
            boolean z11 = eVar.f3348d;
            int i34 = eVar.f3349e;
            switch (i33) {
                case 0:
                    i16 = 11;
                    i17 = 1;
                    break;
                case 1:
                    i16 = 11;
                    i17 = 2;
                    break;
                case 2:
                    i16 = 11;
                    i17 = 3;
                    break;
                case 3:
                    i17 = i10;
                    i16 = 11;
                    break;
                case 4:
                    i16 = 11;
                    i17 = 6;
                    break;
                case 5:
                case 7:
                case 9:
                    i17 = i13;
                    i16 = 11;
                    break;
                case 6:
                case 8:
                case 10:
                    i17 = i11;
                    i16 = 11;
                    break;
                case 11:
                    i16 = 11;
                    i17 = 11;
                    break;
                case 12:
                    i17 = 12;
                    i16 = 11;
                    break;
                case 13:
                    i17 = 13;
                    i16 = 11;
                    break;
                case 14:
                    i16 = 11;
                    i17 = 14;
                    break;
                case 15:
                    i16 = 11;
                    i17 = 24;
                    break;
                default:
                    i17 = i12;
                    i16 = 11;
                    break;
            }
            if (i33 == i16 || i33 == 12 || i33 == 13 || i33 == 14) {
                if (!z11) {
                    i17 -= 2;
                }
                if (i34 == 0) {
                    i17 -= 4;
                } else if (i34 == 1) {
                    i17 -= 2;
                }
            }
            i15 = i17;
        } else {
            int i35 = eVar.f3347c;
            if (i35 > 0) {
                i14 = i35 + 1;
                if (eVar.f3351g == 4 && i14 == 17) {
                    i14 = 21;
                }
            } else {
                int i36 = eVar.f3351g;
                if (i36 == 0) {
                    i14 = 2;
                } else if (i36 != 1) {
                    i14 = 2;
                    if (i36 == 2) {
                        i15 = i11;
                    } else if (i36 == 3) {
                        i15 = 10;
                    } else if (i36 != 4) {
                        Log.w("Ac4Util", "AC-4 level " + eVar.f3351g + " has not been defined.");
                    } else {
                        i15 = 12;
                    }
                } else {
                    i15 = 6;
                }
            }
            i15 = i14;
        }
        if (i15 > 0) {
            return new Format.Builder().setId(str).setSampleMimeType(MimeTypes.AUDIO_AC4).setChannelCount(i15).setSampleRate(i19).setDrmInitData(drmInitData).setLanguage(str2).setCodecs(Util.formatInvariant("ac-4.%02d.%02d.%02d", Integer.valueOf(bits5), Integer.valueOf(eVar.f3350f), Integer.valueOf(eVar.f3351g))).build();
        }
        throw ParserException.createForUnsupportedContainerFeature("Cannot determine channel count of presentation.");
    }
}
