package io.github.anilbeesetti.nextlib.media3ext.ffdecoder;

import android.annotation.SuppressLint;
import androidx.annotation.Keep;
import androidx.annotation.Nullable;
import androidx.media3.common.util.Assertions;
import androidx.media3.common.util.ParsableByteArray;
import androidx.media3.common.util.Util;
import androidx.media3.decoder.DecoderInputBuffer;
import androidx.media3.decoder.DecoderOutputBuffer;
import androidx.media3.decoder.SimpleDecoder;
import androidx.media3.decoder.SimpleDecoderOutputBuffer;
import java.nio.ByteBuffer;

/* JADX INFO: loaded from: classes.dex */
@SuppressLint({"UnsafeOptInUsageError"})
final class FfmpegAudioDecoder extends SimpleDecoder<DecoderInputBuffer, SimpleDecoderOutputBuffer, FfmpegDecoderException> {

    /* JADX INFO: renamed from: a, reason: collision with root package name */
    private final String f4493a;

    /* JADX INFO: renamed from: b, reason: collision with root package name */
    private final byte[] f4494b;

    /* JADX INFO: renamed from: c, reason: collision with root package name */
    private int f4495c;

    /* JADX INFO: renamed from: d, reason: collision with root package name */
    private long f4496d;

    /* JADX INFO: renamed from: e, reason: collision with root package name */
    private boolean f4497e;

    /* JADX INFO: renamed from: f, reason: collision with root package name */
    private volatile int f4498f;

    /* JADX INFO: renamed from: g, reason: collision with root package name */
    private volatile int f4499g;

    private native int ffmpegDecode(long j2, ByteBuffer byteBuffer, int i2, SimpleDecoderOutputBuffer simpleDecoderOutputBuffer, ByteBuffer byteBuffer2, int i3);

    private native int ffmpegGetChannelCount(long j2);

    private native int ffmpegGetSampleRate(long j2);

    private native void ffmpegRelease(long j2);

    private native long ffmpegReset(long j2, @Nullable byte[] bArr);

    @Keep
    private ByteBuffer growOutputBuffer(SimpleDecoderOutputBuffer simpleDecoderOutputBuffer, int i2) {
        this.f4495c = i2;
        return simpleDecoderOutputBuffer.grow(i2);
    }

    /* JADX INFO: Access modifiers changed from: protected */
    @Override // androidx.media3.decoder.SimpleDecoder
    /* JADX INFO: renamed from: b, reason: merged with bridge method [inline-methods] */
    public FfmpegDecoderException createUnexpectedDecodeException(Throwable th) {
        return new FfmpegDecoderException("Unexpected decode error", th);
    }

    /* JADX INFO: Access modifiers changed from: protected */
    @Override // androidx.media3.decoder.SimpleDecoder
    /* JADX INFO: renamed from: c, reason: merged with bridge method [inline-methods] */
    public FfmpegDecoderException decode(DecoderInputBuffer decoderInputBuffer, SimpleDecoderOutputBuffer simpleDecoderOutputBuffer, boolean z2) {
        if (z2) {
            long jFfmpegReset = ffmpegReset(this.f4496d, this.f4494b);
            this.f4496d = jFfmpegReset;
            if (jFfmpegReset == 0) {
                return new FfmpegDecoderException("Error resetting (see logcat).");
            }
        }
        ByteBuffer byteBuffer = (ByteBuffer) Util.castNonNull(decoderInputBuffer.data);
        int iFfmpegDecode = ffmpegDecode(this.f4496d, byteBuffer, byteBuffer.limit(), simpleDecoderOutputBuffer, simpleDecoderOutputBuffer.init(decoderInputBuffer.timeUs, this.f4495c), this.f4495c);
        if (iFfmpegDecode == -2) {
            return new FfmpegDecoderException("Error decoding (see logcat).");
        }
        if (iFfmpegDecode == -1) {
            simpleDecoderOutputBuffer.shouldBeSkipped = true;
            return null;
        }
        if (iFfmpegDecode == 0) {
            simpleDecoderOutputBuffer.shouldBeSkipped = true;
            return null;
        }
        if (!this.f4497e) {
            this.f4498f = ffmpegGetChannelCount(this.f4496d);
            this.f4499g = ffmpegGetSampleRate(this.f4496d);
            if (this.f4499g == 0 && "alac".equals(this.f4493a)) {
                Assertions.checkNotNull(this.f4494b);
                ParsableByteArray parsableByteArray = new ParsableByteArray(this.f4494b);
                parsableByteArray.setPosition(this.f4494b.length - 4);
                this.f4499g = parsableByteArray.readUnsignedIntToInt();
            }
            this.f4497e = true;
        }
        ByteBuffer byteBuffer2 = (ByteBuffer) Assertions.checkNotNull(simpleDecoderOutputBuffer.data);
        byteBuffer2.position(0);
        byteBuffer2.limit(iFfmpegDecode);
        return null;
    }

    @Override // androidx.media3.decoder.SimpleDecoder
    protected DecoderInputBuffer createInputBuffer() {
        return new DecoderInputBuffer(2, FfmpegLibrary.a());
    }

    @Override // androidx.media3.decoder.Decoder
    public String getName() {
        return "ffmpeg" + FfmpegLibrary.b() + "-" + this.f4493a;
    }

    @Override // androidx.media3.decoder.SimpleDecoder, androidx.media3.decoder.Decoder
    public void release() {
        super.release();
        ffmpegRelease(this.f4496d);
        this.f4496d = 0L;
    }

    /* JADX INFO: Access modifiers changed from: protected */
    @Override // androidx.media3.decoder.SimpleDecoder
    public SimpleDecoderOutputBuffer createOutputBuffer() {
        return new SimpleDecoderOutputBuffer(new DecoderOutputBuffer.Owner() { // from class: io.github.anilbeesetti.nextlib.media3ext.ffdecoder.a
            @Override // androidx.media3.decoder.DecoderOutputBuffer.Owner
            public final void releaseOutputBuffer(DecoderOutputBuffer decoderOutputBuffer) {
                this.f4503a.releaseOutputBuffer((SimpleDecoderOutputBuffer) decoderOutputBuffer);
            }
        });
    }
}
