package androidx.media3.exoplayer.audio;

import a.AbstractC0872a;
import androidx.media3.common.util.UnstableApi;
import androidx.media3.common.util.Util;
import androidx.media3.exoplayer.audio.DefaultAudioSink;
import androidx.media3.extractor.AacUtil;
import androidx.media3.extractor.Ac3Util;
import androidx.media3.extractor.Ac4Util;
import androidx.media3.extractor.DtsUtil;
import androidx.media3.extractor.OpusUtil;
import e4.C;
import java.math.RoundingMode;

/* JADX INFO: loaded from: classes.dex */
@UnstableApi
public class DefaultAudioTrackBufferSizeProvider implements DefaultAudioSink.AudioTrackBufferSizeProvider {
    private static final int AC3_BUFFER_MULTIPLICATION_FACTOR = 2;
    private static final int DTSHD_BUFFER_MULTIPLICATION_FACTOR = 4;
    private static final int MAX_PCM_BUFFER_DURATION_US = 750000;
    private static final int MIN_PCM_BUFFER_DURATION_US = 250000;
    private static final int OFFLOAD_BUFFER_DURATION_US = 50000000;
    private static final int PASSTHROUGH_BUFFER_DURATION_US = 250000;
    private static final int PCM_BUFFER_MULTIPLICATION_FACTOR = 4;
    public final int ac3BufferMultiplicationFactor;
    public final int dtshdBufferMultiplicationFactor;
    protected final int maxPcmBufferDurationUs;
    protected final int minPcmBufferDurationUs;
    protected final int offloadBufferDurationUs;
    protected final int passthroughBufferDurationUs;
    protected final int pcmBufferMultiplicationFactor;

    public static class Builder {
        private int minPcmBufferDurationUs = 250000;
        private int maxPcmBufferDurationUs = DefaultAudioTrackBufferSizeProvider.MAX_PCM_BUFFER_DURATION_US;
        private int pcmBufferMultiplicationFactor = 4;
        private int passthroughBufferDurationUs = 250000;
        private int offloadBufferDurationUs = DefaultAudioTrackBufferSizeProvider.OFFLOAD_BUFFER_DURATION_US;
        private int ac3BufferMultiplicationFactor = 2;
        private int dtshdBufferMultiplicationFactor = 4;

        public DefaultAudioTrackBufferSizeProvider build() {
            return new DefaultAudioTrackBufferSizeProvider(this);
        }

        public Builder setAc3BufferMultiplicationFactor(int i6) {
            this.ac3BufferMultiplicationFactor = i6;
            return this;
        }

        public Builder setDtshdBufferMultiplicationFactor(int i6) {
            this.dtshdBufferMultiplicationFactor = i6;
            return this;
        }

        public Builder setMaxPcmBufferDurationUs(int i6) {
            this.maxPcmBufferDurationUs = i6;
            return this;
        }

        public Builder setMinPcmBufferDurationUs(int i6) {
            this.minPcmBufferDurationUs = i6;
            return this;
        }

        public Builder setOffloadBufferDurationUs(int i6) {
            this.offloadBufferDurationUs = i6;
            return this;
        }

        public Builder setPassthroughBufferDurationUs(int i6) {
            this.passthroughBufferDurationUs = i6;
            return this;
        }

        public Builder setPcmBufferMultiplicationFactor(int i6) {
            this.pcmBufferMultiplicationFactor = i6;
            return this;
        }
    }

    public DefaultAudioTrackBufferSizeProvider(Builder builder) {
        this.minPcmBufferDurationUs = builder.minPcmBufferDurationUs;
        this.maxPcmBufferDurationUs = builder.maxPcmBufferDurationUs;
        this.pcmBufferMultiplicationFactor = builder.pcmBufferMultiplicationFactor;
        this.passthroughBufferDurationUs = builder.passthroughBufferDurationUs;
        this.offloadBufferDurationUs = builder.offloadBufferDurationUs;
        this.ac3BufferMultiplicationFactor = builder.ac3BufferMultiplicationFactor;
        this.dtshdBufferMultiplicationFactor = builder.dtshdBufferMultiplicationFactor;
    }

    public static int durationUsToBytes(int i6, int i7, int i8) {
        return AbstractC0872a.x(((((long) i6) * ((long) i7)) * ((long) i8)) / 1000000);
    }

    public static int getMaximumEncodedRateBytesPerSecond(int i6) {
        if (i6 == 20) {
            return OpusUtil.MAX_BYTES_PER_SECOND;
        }
        if (i6 == 30) {
            return DtsUtil.DTS_HD_MAX_RATE_BYTES_PER_SECOND;
        }
        switch (i6) {
            case 5:
                return Ac3Util.AC3_MAX_RATE_BYTES_PER_SECOND;
            case 6:
                return 768000;
            case 7:
                return DtsUtil.DTS_MAX_RATE_BYTES_PER_SECOND;
            case 8:
                return DtsUtil.DTS_HD_MAX_RATE_BYTES_PER_SECOND;
            case 9:
                return 40000;
            case 10:
                return AacUtil.AAC_LC_MAX_RATE_BYTES_PER_SECOND;
            case 11:
                return AacUtil.AAC_HE_V1_MAX_RATE_BYTES_PER_SECOND;
            case 12:
                return 7000;
            default:
                switch (i6) {
                    case 14:
                        return Ac3Util.TRUEHD_MAX_RATE_BYTES_PER_SECOND;
                    case 15:
                        return 8000;
                    case 16:
                        return AacUtil.AAC_XHE_MAX_RATE_BYTES_PER_SECOND;
                    case 17:
                        return Ac4Util.MAX_RATE_BYTES_PER_SECOND;
                    case 18:
                        return 768000;
                    default:
                        throw new IllegalArgumentException();
                }
        }
    }

    public int get1xBufferSizeInBytes(int i6, int i7, int i8, int i9, int i10, int i11) {
        if (i8 == 0) {
            return getPcmBufferSizeInBytes(i6, i10, i9);
        }
        if (i8 == 1) {
            return getOffloadBufferSizeInBytes(i7);
        }
        if (i8 == 2) {
            return getPassthroughBufferSizeInBytes(i7, i11);
        }
        throw new IllegalArgumentException();
    }

    @Override // androidx.media3.exoplayer.audio.DefaultAudioSink.AudioTrackBufferSizeProvider
    public int getBufferSizeInBytes(int i6, int i7, int i8, int i9, int i10, int i11, double d6) {
        return (((Math.max(i6, (int) (((double) get1xBufferSizeInBytes(i6, i7, i8, i9, i10, i11)) * d6)) + i9) - 1) / i9) * i9;
    }

    public int getOffloadBufferSizeInBytes(int i6) {
        return AbstractC0872a.x((((long) this.offloadBufferDurationUs) * ((long) getMaximumEncodedRateBytesPerSecond(i6))) / 1000000);
    }

    /* JADX WARN: Removed duplicated region for block: B:10:0x0013  */
    /* JADX WARN: Removed duplicated region for block: B:11:0x001a  */
    /*
        Code decompiled incorrectly, please refer to instructions dump.
    */
    public int getPassthroughBufferSizeInBytes(int i6, int i7) {
        int i8;
        int maximumEncodedRateBytesPerSecond;
        int i9 = this.passthroughBufferDurationUs;
        if (i6 != 5) {
            if (i6 == 8) {
                i8 = this.dtshdBufferMultiplicationFactor;
            }
            if (i7 == -1) {
                RoundingMode roundingMode = RoundingMode.CEILING;
                maximumEncodedRateBytesPerSecond = C.v(i7, 8);
            } else {
                maximumEncodedRateBytesPerSecond = getMaximumEncodedRateBytesPerSecond(i6);
            }
            return AbstractC0872a.x((((long) i9) * ((long) maximumEncodedRateBytesPerSecond)) / 1000000);
        }
        i8 = this.ac3BufferMultiplicationFactor;
        i9 *= i8;
        if (i7 == -1) {
        }
        return AbstractC0872a.x((((long) i9) * ((long) maximumEncodedRateBytesPerSecond)) / 1000000);
    }

    public int getPcmBufferSizeInBytes(int i6, int i7, int i8) {
        return Util.constrainValue(i6 * this.pcmBufferMultiplicationFactor, durationUsToBytes(this.minPcmBufferDurationUs, i7, i8), durationUsToBytes(this.maxPcmBufferDurationUs, i7, i8));
    }
}
