package androidx.media3.exoplayer.hls.playlist;

import F3.AbstractC0220u;
import F3.M;
import F3.O;
import F3.T;
import F3.p0;
import android.net.Uri;
import androidx.media3.common.C;
import androidx.media3.common.DrmInitData;
import androidx.media3.common.StreamKey;
import androidx.media3.common.util.UnstableApi;
import java.lang.annotation.Documented;
import java.lang.annotation.ElementType;
import java.lang.annotation.Retention;
import java.lang.annotation.RetentionPolicy;
import java.lang.annotation.Target;
import java.util.ArrayList;
import java.util.List;
import java.util.Map;

/* JADX INFO: loaded from: classes.dex */
@UnstableApi
public final class HlsMediaPlaylist extends HlsPlaylist {
    public static final int PLAYLIST_TYPE_EVENT = 2;
    public static final int PLAYLIST_TYPE_UNKNOWN = 0;
    public static final int PLAYLIST_TYPE_VOD = 1;
    public final int discontinuitySequence;
    public final long durationUs;
    public final boolean hasDiscontinuitySequence;
    public final boolean hasEndTag;
    public final boolean hasPositiveStartOffset;
    public final boolean hasProgramDateTime;
    public final long mediaSequence;
    public final long partTargetDurationUs;
    public final int playlistType;
    public final boolean preciseStart;
    public final DrmInitData protectionSchemes;
    public final Map<Uri, RenditionReport> renditionReports;
    public final List<Segment> segments;
    public final ServerControl serverControl;
    public final long startOffsetUs;
    public final long startTimeUs;
    public final long targetDurationUs;
    public final List<Part> trailingParts;
    public final int version;

    public static final class Part extends SegmentBase {
        public final boolean isIndependent;
        public final boolean isPreload;

        public Part(String str, Segment segment, long j4, int i6, long j6, DrmInitData drmInitData, String str2, String str3, long j7, long j8, boolean z6, boolean z7, boolean z8) {
            super(str, segment, j4, i6, j6, drmInitData, str2, str3, j7, j8, z6);
            this.isIndependent = z7;
            this.isPreload = z8;
        }

        public Part copyWith(long j4, int i6) {
            return new Part(this.url, this.initializationSegment, this.durationUs, i6, j4, this.drmInitData, this.fullSegmentEncryptionKeyUri, this.encryptionIV, this.byteRangeOffset, this.byteRangeLength, this.hasGapTag, this.isIndependent, this.isPreload);
        }
    }

    @Target({ElementType.TYPE_USE})
    @Documented
    @Retention(RetentionPolicy.SOURCE)
    public @interface PlaylistType {
    }

    public static final class RenditionReport {
        public final long lastMediaSequence;
        public final int lastPartIndex;
        public final Uri playlistUri;

        public RenditionReport(Uri uri, long j4, int i6) {
            this.playlistUri = uri;
            this.lastMediaSequence = j4;
            this.lastPartIndex = i6;
        }
    }

    public static class SegmentBase implements Comparable<Long> {
        public final long byteRangeLength;
        public final long byteRangeOffset;
        public final DrmInitData drmInitData;
        public final long durationUs;
        public final String encryptionIV;
        public final String fullSegmentEncryptionKeyUri;
        public final boolean hasGapTag;
        public final Segment initializationSegment;
        public final int relativeDiscontinuitySequence;
        public final long relativeStartTimeUs;
        public final String url;

        private SegmentBase(String str, Segment segment, long j4, int i6, long j6, DrmInitData drmInitData, String str2, String str3, long j7, long j8, boolean z6) {
            this.url = str;
            this.initializationSegment = segment;
            this.durationUs = j4;
            this.relativeDiscontinuitySequence = i6;
            this.relativeStartTimeUs = j6;
            this.drmInitData = drmInitData;
            this.fullSegmentEncryptionKeyUri = str2;
            this.encryptionIV = str3;
            this.byteRangeOffset = j7;
            this.byteRangeLength = j8;
            this.hasGapTag = z6;
        }

        @Override // java.lang.Comparable
        public int compareTo(Long l) {
            if (this.relativeStartTimeUs > l.longValue()) {
                return 1;
            }
            return this.relativeStartTimeUs < l.longValue() ? -1 : 0;
        }
    }

    public static final class ServerControl {
        public final boolean canBlockReload;
        public final boolean canSkipDateRanges;
        public final long holdBackUs;
        public final long partHoldBackUs;
        public final long skipUntilUs;

        public ServerControl(long j4, boolean z6, long j6, long j7, boolean z7) {
            this.skipUntilUs = j4;
            this.canSkipDateRanges = z6;
            this.holdBackUs = j6;
            this.partHoldBackUs = j7;
            this.canBlockReload = z7;
        }
    }

    public HlsMediaPlaylist(int i6, String str, List<String> list, long j4, boolean z6, long j6, boolean z7, int i7, long j7, int i8, long j8, long j9, boolean z8, boolean z9, boolean z10, DrmInitData drmInitData, List<Segment> list2, List<Part> list3, ServerControl serverControl, Map<Uri, RenditionReport> map) {
        super(str, list, z8);
        this.playlistType = i6;
        this.startTimeUs = j6;
        this.preciseStart = z6;
        this.hasDiscontinuitySequence = z7;
        this.discontinuitySequence = i7;
        this.mediaSequence = j7;
        this.version = i8;
        this.targetDurationUs = j8;
        this.partTargetDurationUs = j9;
        this.hasEndTag = z9;
        this.hasProgramDateTime = z10;
        this.protectionSchemes = drmInitData;
        this.segments = O.p(list2);
        this.trailingParts = O.p(list3);
        this.renditionReports = T.a(map);
        if (!list3.isEmpty()) {
            Part part = (Part) AbstractC0220u.k(list3);
            this.durationUs = part.relativeStartTimeUs + part.durationUs;
        } else if (list2.isEmpty()) {
            this.durationUs = 0L;
        } else {
            Segment segment = (Segment) AbstractC0220u.k(list2);
            this.durationUs = segment.relativeStartTimeUs + segment.durationUs;
        }
        this.startOffsetUs = j4 != C.TIME_UNSET ? j4 >= 0 ? Math.min(this.durationUs, j4) : Math.max(0L, this.durationUs + j4) : C.TIME_UNSET;
        this.hasPositiveStartOffset = j4 >= 0;
        this.serverControl = serverControl;
    }

    @Override // androidx.media3.exoplayer.offline.FilterableManifest
    public HlsPlaylist copy(List<StreamKey> list) {
        return this;
    }

    public HlsMediaPlaylist copyWith(long j4, int i6) {
        return new HlsMediaPlaylist(this.playlistType, this.baseUri, this.tags, this.startOffsetUs, this.preciseStart, j4, true, i6, this.mediaSequence, this.version, this.targetDurationUs, this.partTargetDurationUs, this.hasIndependentSegments, this.hasEndTag, this.hasProgramDateTime, this.protectionSchemes, this.segments, this.trailingParts, this.serverControl, this.renditionReports);
    }

    public HlsMediaPlaylist copyWithEndTag() {
        return this.hasEndTag ? this : new HlsMediaPlaylist(this.playlistType, this.baseUri, this.tags, this.startOffsetUs, this.preciseStart, this.startTimeUs, this.hasDiscontinuitySequence, this.discontinuitySequence, this.mediaSequence, this.version, this.targetDurationUs, this.partTargetDurationUs, this.hasIndependentSegments, true, this.hasProgramDateTime, this.protectionSchemes, this.segments, this.trailingParts, this.serverControl, this.renditionReports);
    }

    public long getEndTimeUs() {
        return this.startTimeUs + this.durationUs;
    }

    public boolean isNewerThan(HlsMediaPlaylist hlsMediaPlaylist) {
        if (hlsMediaPlaylist != null) {
            long j4 = this.mediaSequence;
            long j6 = hlsMediaPlaylist.mediaSequence;
            if (j4 <= j6) {
                if (j4 < j6) {
                    return false;
                }
                int size = this.segments.size() - hlsMediaPlaylist.segments.size();
                if (size != 0) {
                    return size > 0;
                }
                int size2 = this.trailingParts.size();
                int size3 = hlsMediaPlaylist.trailingParts.size();
                if (size2 <= size3 && (size2 != size3 || !this.hasEndTag || hlsMediaPlaylist.hasEndTag)) {
                    return false;
                }
            }
        }
        return true;
    }

    @Override // androidx.media3.exoplayer.offline.FilterableManifest
    /* JADX INFO: renamed from: copy, reason: avoid collision after fix types in other method */
    public /* bridge */ /* synthetic */ HlsPlaylist copy2(List list) {
        return copy((List<StreamKey>) list);
    }

    public static final class Segment extends SegmentBase {
        public final List<Part> parts;
        public final String title;

        /* JADX WARN: 'this' call moved to the top of the method (can break code semantics) */
        public Segment(String str, long j4, long j6, String str2, String str3) {
            this(str, null, "", 0L, -1, C.TIME_UNSET, null, str2, str3, j4, j6, false, p0.f1586e);
            M m6 = O.f1509b;
        }

        public Segment copyWith(long j4, int i6) {
            ArrayList arrayList = new ArrayList();
            long j6 = j4;
            for (int i7 = 0; i7 < this.parts.size(); i7++) {
                Part part = this.parts.get(i7);
                arrayList.add(part.copyWith(j6, i6));
                j6 += part.durationUs;
            }
            return new Segment(this.url, this.initializationSegment, this.title, this.durationUs, i6, j4, this.drmInitData, this.fullSegmentEncryptionKeyUri, this.encryptionIV, this.byteRangeOffset, this.byteRangeLength, this.hasGapTag, arrayList);
        }

        public Segment(String str, Segment segment, String str2, long j4, int i6, long j6, DrmInitData drmInitData, String str3, String str4, long j7, long j8, boolean z6, List<Part> list) {
            super(str, segment, j4, i6, j6, drmInitData, str3, str4, j7, j8, z6);
            this.title = str2;
            this.parts = O.p(list);
        }
    }
}
