package pl.droidsonroids.gif;

import android.content.Context;
import android.content.res.AssetFileDescriptor;
import android.graphics.Bitmap;
import android.os.Build;
import android.system.Os;
import android.view.Surface;
import java.io.FileDescriptor;
import java.io.IOException;
import kotlinx.coroutines.y;

/* JADX INFO: Access modifiers changed from: package-private */
/* JADX INFO: loaded from: classes3.dex */
public final class GifInfoHandle {

    /* JADX INFO: renamed from: b, reason: collision with root package name */
    public static final /* synthetic */ int f32010b = 0;

    /* JADX INFO: renamed from: a, reason: collision with root package name */
    public volatile long f32011a;

    static {
        try {
            System.loadLibrary("pl_droidsonroids_gif");
        } catch (UnsatisfiedLinkError unused) {
            if (y.f29592s == null) {
                try {
                    y.f29592s = (Context) Class.forName("android.app.ActivityThread").getDeclaredMethod("currentApplication", new Class[0]).invoke(null, new Object[0]);
                } catch (Exception e10) {
                    throw new IllegalStateException("LibraryLoader not initialized. Call LibraryLoader.initialize() before using library classes.", e10);
                }
            }
            new s6.b().b(y.f29592s, "pl_droidsonroids_gif");
        }
    }

    public GifInfoHandle(AssetFileDescriptor assetFileDescriptor) {
        int iCreateTempNativeFileDescriptor;
        try {
            FileDescriptor fileDescriptor = assetFileDescriptor.getFileDescriptor();
            long startOffset = assetFileDescriptor.getStartOffset();
            if (Build.VERSION.SDK_INT > 27) {
                try {
                    iCreateTempNativeFileDescriptor = createTempNativeFileDescriptor();
                    Os.dup2(fileDescriptor, iCreateTempNativeFileDescriptor);
                } finally {
                }
            } else {
                iCreateTempNativeFileDescriptor = extractNativeFileDescriptor(fileDescriptor, false);
            }
            this.f32011a = openNativeFileDescriptor(iCreateTempNativeFileDescriptor, startOffset);
        } finally {
            try {
                assetFileDescriptor.close();
            } catch (IOException unused) {
            }
        }
    }

    private static native void bindSurface(long j10, Surface surface, long[] jArr);

    public static native int createTempNativeFileDescriptor() throws GifIOException;

    public static native int extractNativeFileDescriptor(FileDescriptor fileDescriptor, boolean z10) throws GifIOException;

    private static native void free(long j10);

    private static native String getComment(long j10);

    private static native int getCurrentFrameIndex(long j10);

    private static native int getCurrentLoop(long j10);

    private static native int getCurrentPosition(long j10);

    private static native int getDuration(long j10);

    private static native int getHeight(long j10);

    private static native int getLoopCount(long j10);

    private static native int getNativeErrorCode(long j10);

    private static native int getNumberOfFrames(long j10);

    private static native long[] getSavedState(long j10);

    private static native int getWidth(long j10);

    private static native boolean isOpaque(long j10);

    public static native long openFile(String str) throws GifIOException;

    public static native long openNativeFileDescriptor(int i10, long j10) throws GifIOException;

    private static native void postUnbindSurface(long j10);

    private static native long renderFrame(long j10, Bitmap bitmap);

    private static native boolean reset(long j10);

    private static native long restoreRemainder(long j10);

    private static native int restoreSavedState(long j10, long[] jArr, Bitmap bitmap);

    private static native void saveRemainder(long j10);

    private static native void seekToTime(long j10, int i10, Bitmap bitmap);

    private static native void setLoopCount(long j10, char c6);

    private static native void setOptions(long j10, char c6, boolean z10);

    private static native void setSpeedFactor(long j10, float f10);

    public final void a(Surface surface, long[] jArr) {
        bindSurface(this.f32011a, surface, jArr);
    }

    public final synchronized String b() {
        return getComment(this.f32011a);
    }

    public final synchronized int c() {
        return getCurrentFrameIndex(this.f32011a);
    }

    public final synchronized int d() {
        return getCurrentLoop(this.f32011a);
    }

    public final synchronized int e() {
        return getCurrentPosition(this.f32011a);
    }

    public final synchronized int f() {
        return getDuration(this.f32011a);
    }

    public final void finalize() throws Throwable {
        try {
            o();
        } finally {
            super.finalize();
        }
    }

    public final synchronized int g() {
        return getHeight(this.f32011a);
    }

    public final synchronized int h() {
        return getLoopCount(this.f32011a);
    }

    public final synchronized int i() {
        return getNativeErrorCode(this.f32011a);
    }

    public final synchronized int j() {
        return getNumberOfFrames(this.f32011a);
    }

    public final synchronized long[] k() {
        return getSavedState(this.f32011a);
    }

    public final synchronized int l() {
        return getWidth(this.f32011a);
    }

    public final synchronized boolean m() {
        return isOpaque(this.f32011a);
    }

    public final synchronized void n() {
        postUnbindSurface(this.f32011a);
    }

    public final synchronized void o() {
        free(this.f32011a);
        this.f32011a = 0L;
    }

    public final synchronized long p(Bitmap bitmap) {
        return renderFrame(this.f32011a, bitmap);
    }

    public final synchronized boolean q() {
        return reset(this.f32011a);
    }

    public final synchronized long r() {
        return restoreRemainder(this.f32011a);
    }

    public final synchronized int s(long[] jArr, Bitmap bitmap) {
        return restoreSavedState(this.f32011a, jArr, bitmap);
    }

    public final synchronized void t() {
        saveRemainder(this.f32011a);
    }

    public final synchronized void u(int i10, Bitmap bitmap) {
        seekToTime(this.f32011a, i10, bitmap);
    }

    public final void v(int i10) {
        if (i10 < 0 || i10 > 65535) {
            throw new IllegalArgumentException("Loop count of range <0, 65535>");
        }
        synchronized (this) {
            setLoopCount(this.f32011a, (char) i10);
        }
    }

    public final void w(boolean z10) {
        setOptions(this.f32011a, (char) 1, z10);
    }

    public final void x(float f10) {
        if (f10 <= 0.0f || Float.isNaN(f10)) {
            throw new IllegalArgumentException("Speed factor is not positive");
        }
        if (f10 < 4.656613E-10f) {
            f10 = 4.656613E-10f;
        }
        synchronized (this) {
            setSpeedFactor(this.f32011a, f10);
        }
    }
}
