package androidx.media3.common.util;

import androidx.media3.common.C;

/* JADX INFO: loaded from: classes.dex */
@UnstableApi
public final class ConstantRateTimestampIterator implements TimestampIterator {
    private final long endPositionUs;
    private final float frameRate;
    private int framesAdded;
    private final double framesDurationUs;
    private final long startPositionUs;
    private final int totalNumberOfFramesToAdd;

    public ConstantRateTimestampIterator(long j4, float f6) {
        this(0L, j4, f6);
    }

    private long getTimestampUsAfter(int i6) {
        long jRound = Math.round(this.framesDurationUs * ((double) i6)) + this.startPositionUs;
        Assertions.checkState(jRound >= 0);
        return jRound;
    }

    @Override // androidx.media3.common.util.TimestampIterator
    public long getLastTimestampUs() {
        int i6 = this.totalNumberOfFramesToAdd;
        return i6 == 0 ? C.TIME_UNSET : getTimestampUsAfter(i6 - 1);
    }

    @Override // androidx.media3.common.util.TimestampIterator
    public boolean hasNext() {
        return this.framesAdded < this.totalNumberOfFramesToAdd;
    }

    @Override // androidx.media3.common.util.TimestampIterator
    public long next() {
        Assertions.checkState(hasNext());
        int i6 = this.framesAdded;
        this.framesAdded = i6 + 1;
        return getTimestampUsAfter(i6);
    }

    public ConstantRateTimestampIterator(long j4, long j6, float f6) {
        boolean z6 = false;
        Assertions.checkArgument(j6 > 0);
        Assertions.checkArgument(f6 > 0.0f);
        if (0 <= j4 && j4 < j6) {
            z6 = true;
        }
        Assertions.checkArgument(z6);
        this.startPositionUs = j4;
        this.endPositionUs = j6;
        this.frameRate = f6;
        this.totalNumberOfFramesToAdd = Math.round(((j6 - j4) / 1000000.0f) * f6);
        this.framesDurationUs = 1000000.0f / f6;
    }

    @Override // androidx.media3.common.util.TimestampIterator
    public ConstantRateTimestampIterator copyOf() {
        return new ConstantRateTimestampIterator(this.startPositionUs, this.endPositionUs, this.frameRate);
    }
}
