package u1;

import androidx.annotation.Nullable;
import androidx.media3.common.DataReader;
import androidx.media3.common.Format;
import androidx.media3.common.MimeTypes;
import androidx.media3.common.ParserException;
import androidx.media3.common.util.Assertions;
import androidx.media3.common.util.Log;
import androidx.media3.common.util.ParsableByteArray;
import androidx.media3.common.util.Util;
import androidx.media3.extractor.a0;
import androidx.media3.extractor.b0;
import androidx.media3.extractor.i0;
import androidx.media3.extractor.r0;
import androidx.media3.extractor.y;
import androidx.media3.extractor.z;
import androidx.media3.extractor.z0;
import com.google.android.gms.internal.ads.q0;
import com.google.common.collect.n0;
import java.util.ArrayList;
import java.util.Arrays;
import n2.n;
import n2.q;

/* JADX INFO: loaded from: classes.dex */
public final class b implements y {

    /* JADX INFO: renamed from: a, reason: collision with root package name */
    public final ParsableByteArray f33199a;

    /* JADX INFO: renamed from: b, reason: collision with root package name */
    public final q0 f33200b;

    /* JADX INFO: renamed from: c, reason: collision with root package name */
    public final boolean f33201c;

    @Nullable
    private e currentChunkReader;

    /* JADX INFO: renamed from: d, reason: collision with root package name */
    public final n f33202d;

    /* JADX INFO: renamed from: e, reason: collision with root package name */
    public int f33203e;

    /* JADX INFO: renamed from: f, reason: collision with root package name */
    public b0 f33204f;

    /* JADX INFO: renamed from: g, reason: collision with root package name */
    public c f33205g;

    /* JADX INFO: renamed from: h, reason: collision with root package name */
    public long f33206h;

    /* JADX INFO: renamed from: i, reason: collision with root package name */
    public e[] f33207i;

    /* JADX INFO: renamed from: j, reason: collision with root package name */
    public long f33208j;

    /* JADX INFO: renamed from: k, reason: collision with root package name */
    public int f33209k;

    /* JADX INFO: renamed from: l, reason: collision with root package name */
    public long f33210l;

    /* JADX INFO: renamed from: m, reason: collision with root package name */
    public long f33211m;

    /* JADX INFO: renamed from: n, reason: collision with root package name */
    public int f33212n;

    /* JADX INFO: renamed from: o, reason: collision with root package name */
    public boolean f33213o;

    public b(int i10, n nVar) {
        this.f33202d = nVar;
        this.f33201c = (i10 & 1) == 0;
        this.f33199a = new ParsableByteArray(12);
        this.f33200b = new q0(0);
        this.f33204f = new a0(1);
        this.f33207i = new e[0];
        this.f33210l = -1L;
        this.f33211m = -1L;
        this.f33209k = -1;
        this.f33206h = -9223372036854775807L;
    }

    @Nullable
    private e getChunkReader(int i10) {
        for (e eVar : this.f33207i) {
            if (eVar.f33225c == i10 || eVar.f33226d == i10) {
                return eVar;
            }
        }
        return null;
    }

    @Nullable
    private e processStreamList(f fVar, int i10) {
        d dVar = (d) fVar.getChild(d.class);
        g gVar = (g) fVar.getChild(g.class);
        if (dVar == null) {
            Log.w("AviExtractor", "Missing Stream Header");
            return null;
        }
        if (gVar == null) {
            Log.w("AviExtractor", "Missing Stream Format");
            return null;
        }
        long jScaleLargeTimestamp = Util.scaleLargeTimestamp(dVar.f33220d, ((long) dVar.f33218b) * 1000000, dVar.f33219c);
        Format format = gVar.f33239a;
        Format.Builder builderBuildUpon = format.buildUpon();
        builderBuildUpon.setId(i10);
        int i11 = dVar.f33221e;
        if (i11 != 0) {
            builderBuildUpon.setMaxInputSize(i11);
        }
        h hVar = (h) fVar.getChild(h.class);
        if (hVar != null) {
            builderBuildUpon.setLabel(hVar.f33240a);
        }
        int trackType = MimeTypes.getTrackType(format.sampleMimeType);
        if (trackType != 1 && trackType != 2) {
            return null;
        }
        z0 z0VarTrack = this.f33204f.track(i10, trackType);
        z0VarTrack.format(builderBuildUpon.build());
        z0VarTrack.durationUs(jScaleLargeTimestamp);
        this.f33206h = Math.max(this.f33206h, jScaleLargeTimestamp);
        return new e(i10, dVar, z0VarTrack);
    }

    @Override // androidx.media3.extractor.y
    public final void init(b0 b0Var) {
        this.f33203e = 0;
        if (this.f33201c) {
            b0Var = new q(b0Var, this.f33202d);
        }
        this.f33204f = b0Var;
        this.f33208j = -1L;
    }

    @Override // androidx.media3.extractor.y
    public final int read(z zVar, r0 r0Var) throws ParserException {
        boolean z10;
        int i10;
        if (this.f33208j != -1) {
            long position = zVar.getPosition();
            long j10 = this.f33208j;
            if (j10 < position || j10 > 262144 + position) {
                r0Var.f3463a = j10;
                z10 = true;
            } else {
                zVar.k((int) (j10 - position));
                z10 = false;
            }
        } else {
            z10 = false;
        }
        this.f33208j = -1L;
        if (z10) {
            return 1;
        }
        int i11 = this.f33203e;
        int i12 = 16;
        q0 q0Var = this.f33200b;
        ParsableByteArray parsableByteArray = this.f33199a;
        switch (i11) {
            case 0:
                if (!sniff(zVar)) {
                    throw ParserException.createForMalformedContainer("AVI Header List not found", null);
                }
                zVar.k(12);
                this.f33203e = 1;
                return 0;
            case 1:
                zVar.readFully(parsableByteArray.getData(), 0, 12);
                parsableByteArray.setPosition(0);
                q0Var.getClass();
                q0Var.f15558a = parsableByteArray.readLittleEndianInt();
                q0Var.f15559b = parsableByteArray.readLittleEndianInt();
                q0Var.f15560c = 0;
                if (q0Var.f15558a != 1414744396) {
                    throw ParserException.createForMalformedContainer("LIST expected, found: " + q0Var.f15558a, null);
                }
                int littleEndianInt = parsableByteArray.readLittleEndianInt();
                q0Var.f15560c = littleEndianInt;
                if (littleEndianInt == 1819436136) {
                    this.f33209k = q0Var.f15559b;
                    this.f33203e = 2;
                    return 0;
                }
                throw ParserException.createForMalformedContainer("hdrl expected, found: " + q0Var.f15560c, null);
            case 2:
                int i13 = this.f33209k - 4;
                ParsableByteArray parsableByteArray2 = new ParsableByteArray(i13);
                zVar.readFully(parsableByteArray2.getData(), 0, i13);
                f fVarA = f.a(1819436136, parsableByteArray2);
                int i14 = fVarA.f33238b;
                if (i14 != 1819436136) {
                    throw ParserException.createForMalformedContainer("Unexpected header list type " + i14, null);
                }
                c cVar = (c) fVarA.getChild(c.class);
                if (cVar == null) {
                    throw ParserException.createForMalformedContainer("AviHeader not found", null);
                }
                this.f33205g = cVar;
                this.f33206h = ((long) cVar.f33216c) * ((long) cVar.f33214a);
                ArrayList arrayList = new ArrayList();
                n0 n0VarListIterator = fVarA.f33237a.listIterator(0);
                int i15 = 0;
                while (n0VarListIterator.hasNext()) {
                    a aVar = (a) n0VarListIterator.next();
                    if (aVar.getType() == 1819440243) {
                        int i16 = i15 + 1;
                        e eVarProcessStreamList = processStreamList((f) aVar, i15);
                        if (eVarProcessStreamList != null) {
                            arrayList.add(eVarProcessStreamList);
                        }
                        i15 = i16;
                    }
                }
                this.f33207i = (e[]) arrayList.toArray(new e[0]);
                this.f33204f.endTracks();
                this.f33203e = 3;
                return 0;
            case 3:
                if (this.f33210l != -1) {
                    long position2 = zVar.getPosition();
                    long j11 = this.f33210l;
                    if (position2 != j11) {
                        this.f33208j = j11;
                        return 0;
                    }
                }
                zVar.a(0, 12, parsableByteArray.getData());
                zVar.j();
                parsableByteArray.setPosition(0);
                q0Var.getClass();
                q0Var.f15558a = parsableByteArray.readLittleEndianInt();
                q0Var.f15559b = parsableByteArray.readLittleEndianInt();
                q0Var.f15560c = 0;
                int littleEndianInt2 = parsableByteArray.readLittleEndianInt();
                int i17 = q0Var.f15558a;
                if (i17 == 1179011410) {
                    zVar.k(12);
                    return 0;
                }
                if (i17 != 1414744396 || littleEndianInt2 != 1769369453) {
                    this.f33208j = zVar.getPosition() + ((long) q0Var.f15559b) + 8;
                    return 0;
                }
                long position3 = zVar.getPosition();
                this.f33210l = position3;
                this.f33211m = position3 + ((long) q0Var.f15559b) + 8;
                if (!this.f33213o) {
                    if ((((c) Assertions.checkNotNull(this.f33205g)).f33215b & 16) == 16) {
                        this.f33203e = 4;
                        this.f33208j = this.f33211m;
                        return 0;
                    }
                    this.f33204f.seekMap(new i0(this.f33206h));
                    this.f33213o = true;
                }
                this.f33208j = zVar.getPosition() + 12;
                this.f33203e = 6;
                return 0;
            case 4:
                zVar.readFully(parsableByteArray.getData(), 0, 8);
                parsableByteArray.setPosition(0);
                int littleEndianInt3 = parsableByteArray.readLittleEndianInt();
                int littleEndianInt4 = parsableByteArray.readLittleEndianInt();
                if (littleEndianInt3 == 829973609) {
                    this.f33203e = 5;
                    this.f33212n = littleEndianInt4;
                } else {
                    this.f33208j = zVar.getPosition() + ((long) littleEndianInt4);
                }
                return 0;
            case 5:
                ParsableByteArray parsableByteArray3 = new ParsableByteArray(this.f33212n);
                zVar.readFully(parsableByteArray3.getData(), 0, this.f33212n);
                if (parsableByteArray3.bytesLeft() >= 16) {
                    int position4 = parsableByteArray3.getPosition();
                    parsableByteArray3.skipBytes(8);
                    long littleEndianInt5 = parsableByteArray3.readLittleEndianInt();
                    long j12 = this.f33210l;
                    j = littleEndianInt5 <= j12 ? j12 + 8 : 0L;
                    parsableByteArray3.setPosition(position4);
                }
                while (parsableByteArray3.bytesLeft() >= i12) {
                    int littleEndianInt6 = parsableByteArray3.readLittleEndianInt();
                    int littleEndianInt7 = parsableByteArray3.readLittleEndianInt();
                    long littleEndianInt8 = ((long) parsableByteArray3.readLittleEndianInt()) + j;
                    parsableByteArray3.skipBytes(4);
                    e chunkReader = getChunkReader(littleEndianInt6);
                    if (chunkReader != null) {
                        boolean z11 = (littleEndianInt7 & i12) == i12;
                        if (chunkReader.f33234l == -1) {
                            chunkReader.f33234l = littleEndianInt8;
                        }
                        if (z11) {
                            if (chunkReader.f33233k == chunkReader.f33236n.length) {
                                long[] jArr = chunkReader.f33235m;
                                chunkReader.f33235m = Arrays.copyOf(jArr, (jArr.length * 3) / 2);
                                int[] iArr = chunkReader.f33236n;
                                chunkReader.f33236n = Arrays.copyOf(iArr, (iArr.length * 3) / 2);
                            }
                            long[] jArr2 = chunkReader.f33235m;
                            int i18 = chunkReader.f33233k;
                            jArr2[i18] = littleEndianInt8;
                            chunkReader.f33236n[i18] = chunkReader.f33232j;
                            chunkReader.f33233k = i18 + 1;
                        }
                        chunkReader.f33232j++;
                        i12 = 16;
                    }
                }
                for (e eVar : this.f33207i) {
                    eVar.f33235m = Arrays.copyOf(eVar.f33235m, eVar.f33233k);
                    eVar.f33236n = Arrays.copyOf(eVar.f33236n, eVar.f33233k);
                    if ((eVar.f33225c & 1651965952) == 1651965952 && eVar.f33223a.f33222f != 0 && (i10 = eVar.f33233k) > 0) {
                        eVar.f33228f = i10;
                    }
                }
                this.f33213o = true;
                if (this.f33207i.length == 0) {
                    this.f33204f.seekMap(new i0(this.f33206h));
                } else {
                    this.f33204f.seekMap(new i0(this, this.f33206h, 2));
                }
                this.f33203e = 6;
                this.f33208j = this.f33210l;
                return 0;
            case 6:
                if (zVar.getPosition() >= this.f33211m) {
                    return -1;
                }
                e eVar2 = this.currentChunkReader;
                if (eVar2 != null) {
                    int i19 = eVar2.f33230h;
                    int iSampleData = i19 - eVar2.f33224b.sampleData((DataReader) zVar, i19, false);
                    eVar2.f33230h = iSampleData;
                    boolean z12 = iSampleData == 0;
                    if (z12) {
                        if (eVar2.f33229g > 0) {
                            z0 z0Var = eVar2.f33224b;
                            int i20 = eVar2.f33231i;
                            z0Var.sampleMetadata((eVar2.f33227e * ((long) i20)) / ((long) eVar2.f33228f), Arrays.binarySearch(eVar2.f33236n, i20) >= 0 ? 1 : 0, eVar2.f33229g, 0, null);
                        }
                        eVar2.f33231i++;
                    }
                    if (!z12) {
                        return 0;
                    }
                    this.currentChunkReader = null;
                    return 0;
                }
                if ((zVar.getPosition() & 1) == 1) {
                    zVar.k(1);
                }
                zVar.a(0, 12, parsableByteArray.getData());
                parsableByteArray.setPosition(0);
                int littleEndianInt9 = parsableByteArray.readLittleEndianInt();
                if (littleEndianInt9 == 1414744396) {
                    parsableByteArray.setPosition(8);
                    zVar.k(parsableByteArray.readLittleEndianInt() == 1769369453 ? 12 : 8);
                    zVar.j();
                    return 0;
                }
                int littleEndianInt10 = parsableByteArray.readLittleEndianInt();
                if (littleEndianInt9 == 1263424842) {
                    this.f33208j = zVar.getPosition() + ((long) littleEndianInt10) + 8;
                    return 0;
                }
                zVar.k(8);
                zVar.j();
                e chunkReader2 = getChunkReader(littleEndianInt9);
                if (chunkReader2 == null) {
                    this.f33208j = zVar.getPosition() + ((long) littleEndianInt10);
                    return 0;
                }
                chunkReader2.f33229g = littleEndianInt10;
                chunkReader2.f33230h = littleEndianInt10;
                this.currentChunkReader = chunkReader2;
                return 0;
            default:
                throw new AssertionError();
        }
    }

    @Override // androidx.media3.extractor.y
    public final void release() {
    }

    @Override // androidx.media3.extractor.y
    public final void seek(long j10, long j11) {
        this.f33208j = -1L;
        this.currentChunkReader = null;
        for (e eVar : this.f33207i) {
            if (eVar.f33233k == 0) {
                eVar.f33231i = 0;
            } else {
                eVar.f33231i = eVar.f33236n[Util.binarySearchFloor(eVar.f33235m, j10, true, true)];
            }
        }
        if (j10 != 0) {
            this.f33203e = 6;
        } else if (this.f33207i.length == 0) {
            this.f33203e = 0;
        } else {
            this.f33203e = 3;
        }
    }

    @Override // androidx.media3.extractor.y
    public final boolean sniff(z zVar) {
        ParsableByteArray parsableByteArray = this.f33199a;
        zVar.a(0, 12, parsableByteArray.getData());
        parsableByteArray.setPosition(0);
        if (parsableByteArray.readLittleEndianInt() != 1179011410) {
            return false;
        }
        parsableByteArray.skipBytes(4);
        return parsableByteArray.readLittleEndianInt() == 541677121;
    }
}
