package h2;

import androidx.emoji2.text.l0;
import androidx.media3.common.Metadata;
import androidx.media3.common.util.ParsableBitArray;
import androidx.media3.common.util.ParsableByteArray;
import androidx.media3.common.util.TimestampAdjuster;
import java.nio.ByteBuffer;
import java.util.ArrayList;
import java.util.Collections;
import java.util.List;

/* JADX INFO: loaded from: classes.dex */
public final class c extends a2.c {

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

    /* JADX INFO: renamed from: b, reason: collision with root package name */
    public final ParsableBitArray f26399b = new ParsableBitArray();

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

    @Override // a2.c
    public final Metadata decode(a2.b bVar, ByteBuffer byteBuffer) {
        Metadata.Entry eVar;
        List list;
        long j10;
        ParsableByteArray parsableByteArray;
        TimestampAdjuster timestampAdjuster = this.f26400c;
        if (timestampAdjuster == null || bVar.f237a != timestampAdjuster.getTimestampOffsetUs()) {
            TimestampAdjuster timestampAdjuster2 = new TimestampAdjuster(bVar.timeUs);
            this.f26400c = timestampAdjuster2;
            timestampAdjuster2.adjustSampleTimestamp(bVar.timeUs - bVar.f237a);
        }
        byte[] bArrArray = byteBuffer.array();
        int iLimit = byteBuffer.limit();
        ParsableByteArray parsableByteArray2 = this.f26398a;
        parsableByteArray2.reset(bArrArray, iLimit);
        ParsableBitArray parsableBitArray = this.f26399b;
        parsableBitArray.reset(bArrArray, iLimit);
        parsableBitArray.skipBits(39);
        long bits = (((long) parsableBitArray.readBits(1)) << 32) | ((long) parsableBitArray.readBits(32));
        parsableBitArray.skipBits(20);
        int bits2 = parsableBitArray.readBits(12);
        int bits3 = parsableBitArray.readBits(8);
        parsableByteArray2.skipBytes(14);
        if (bits3 == 0) {
            eVar = new e();
        } else if (bits3 == 255) {
            long unsignedInt = parsableByteArray2.readUnsignedInt();
            int i10 = bits2 - 4;
            parsableByteArray2.readBytes(new byte[i10], 0, i10);
            eVar = new a(unsignedInt, bits);
        } else if (bits3 == 4) {
            int unsignedByte = parsableByteArray2.readUnsignedByte();
            ArrayList arrayList = new ArrayList(unsignedByte);
            for (int i11 = 0; i11 < unsignedByte; i11++) {
                parsableByteArray2.readUnsignedInt();
                boolean z10 = (parsableByteArray2.readUnsignedByte() & 128) != 0;
                ArrayList arrayList2 = new ArrayList();
                if (!z10) {
                    int unsignedByte2 = parsableByteArray2.readUnsignedByte();
                    boolean z11 = (unsignedByte2 & 64) != 0;
                    boolean z12 = (unsignedByte2 & 32) != 0;
                    if (z11) {
                        parsableByteArray2.readUnsignedInt();
                    }
                    if (!z11) {
                        int unsignedByte3 = parsableByteArray2.readUnsignedByte();
                        ArrayList arrayList3 = new ArrayList(unsignedByte3);
                        for (int i12 = 0; i12 < unsignedByte3; i12++) {
                            arrayList3.add(new f(parsableByteArray2.readUnsignedByte(), parsableByteArray2.readUnsignedInt()));
                        }
                        arrayList2 = arrayList3;
                    }
                    if (z12) {
                        long unsignedByte4 = ((((((long) parsableByteArray2.readUnsignedByte()) & 1) << 32) | parsableByteArray2.readUnsignedInt()) * 1000) / 90;
                    }
                    parsableByteArray2.readUnsignedShort();
                    parsableByteArray2.readUnsignedByte();
                    parsableByteArray2.readUnsignedByte();
                }
                arrayList.add(new g(arrayList2));
            }
            eVar = new h(arrayList);
        } else if (bits3 == 5) {
            TimestampAdjuster timestampAdjuster3 = this.f26400c;
            parsableByteArray2.readUnsignedInt();
            boolean z13 = (parsableByteArray2.readUnsignedByte() & 128) != 0;
            List listEmptyList = Collections.emptyList();
            if (z13) {
                list = listEmptyList;
                j10 = -9223372036854775807L;
            } else {
                int unsignedByte5 = parsableByteArray2.readUnsignedByte();
                boolean z14 = (unsignedByte5 & 64) != 0;
                boolean z15 = (unsignedByte5 & 32) != 0;
                boolean z16 = (unsignedByte5 & 16) != 0;
                long jA = (!z14 || z16) ? -9223372036854775807L : i.a(parsableByteArray2, bits);
                if (z14) {
                    parsableByteArray = parsableByteArray2;
                } else {
                    int unsignedByte6 = parsableByteArray2.readUnsignedByte();
                    ArrayList arrayList4 = new ArrayList(unsignedByte6);
                    int i13 = 0;
                    while (i13 < unsignedByte6) {
                        int unsignedByte7 = parsableByteArray2.readUnsignedByte();
                        long jA2 = !z16 ? i.a(parsableByteArray2, bits) : -9223372036854775807L;
                        long jAdjustTsTimestamp = timestampAdjuster3.adjustTsTimestamp(jA2);
                        l0 l0Var = new l0();
                        l0Var.f2246a = unsignedByte7;
                        l0Var.f2247b = jA2;
                        l0Var.f2248c = jAdjustTsTimestamp;
                        arrayList4.add(l0Var);
                        i13++;
                        parsableByteArray2 = parsableByteArray2;
                    }
                    parsableByteArray = parsableByteArray2;
                    listEmptyList = arrayList4;
                }
                if (z15) {
                    long unsignedByte8 = ((((((long) parsableByteArray.readUnsignedByte()) & 1) << 32) | parsableByteArray.readUnsignedInt()) * 1000) / 90;
                }
                parsableByteArray.readUnsignedShort();
                parsableByteArray.readUnsignedByte();
                parsableByteArray.readUnsignedByte();
                list = listEmptyList;
                j10 = jA;
            }
            eVar = new d(j10, timestampAdjuster3.adjustTsTimestamp(j10), list);
        } else if (bits3 != 6) {
            eVar = null;
        } else {
            TimestampAdjuster timestampAdjuster4 = this.f26400c;
            long jA3 = i.a(parsableByteArray2, bits);
            eVar = new i(jA3, timestampAdjuster4.adjustTsTimestamp(jA3));
        }
        return eVar == null ? new Metadata(new Metadata.Entry[0]) : new Metadata(eVar);
    }
}
