package com.droidlogic.app;

import android.content.Context;
import android.os.IHwBinder;
import android.util.Log;
import java.lang.ref.WeakReference;

/* JADX INFO: loaded from: classes.dex */
public class ScreenControlManager_V2 {
    static final int MSG_DATA_OVER = 1;
    static final int MSG_DATA_RECEIVE = 0;
    static final int MSG_DATA_TYPE_YUV = 0;
    static final int MSG_DATA_type_AVC = 1;
    public static final int REMOTE_EXCEPTION = -65535;
    private static final int SCREEN_CONTROL_DEATH_COOKIE = 1001;
    private static final String TAG = "ScreenControlManager_V2";
    public static boolean isLoadLibrary = false;
    private static ScreenControlManager_V2 mInstance;
    private AvcCallbackListener mAvcCbl;
    private Context mContext;
    private final Object mLock;
    private YuvCallbackListener mYuvCbl;

    public interface AvcCallbackListener {
        void onAvcAvailable(byte[] bArr, int i2, long j2);

        void onAvcReceiveOver();
    }

    final class DeathRecipient implements IHwBinder.DeathRecipient {
        DeathRecipient() {
        }

        @Override // android.os.IHwBinder.DeathRecipient
        public void serviceDied(long j2) {
            if (1001 == j2) {
                Log.e(ScreenControlManager_V2.TAG, "screen control service died cookie: " + j2);
            }
        }
    }

    public interface YuvCallbackListener {
        void onYuvAvailable(byte[] bArr);

        void onYuvReceiveOver();
    }

    static {
        try {
            System.loadLibrary("screencontrol_jni");
            Log.d(TAG, "static initializer: isLoad");
            isLoadLibrary = true;
        } catch (UnsatisfiedLinkError e2) {
            Log.e(TAG, "Failed to load screencontrol_jni library: " + e2);
            isLoadLibrary = false;
        }
    }

    public ScreenControlManager_V2(Context context) {
        this.mYuvCbl = null;
        this.mAvcCbl = null;
        this.mLock = new Object();
        this.mContext = context;
    }

    public static ScreenControlManager_V2 getInstance() {
        if (mInstance == null) {
            mInstance = new ScreenControlManager_V2();
        }
        return mInstance;
    }

    private native void native_ForceStop_V2();

    private native void native_StartAvcReceiver_V2(WeakReference<ScreenControlManager_V2> weakReference);

    private native void native_StartYuvReceiver_V2(WeakReference<ScreenControlManager_V2> weakReference);

    static int native_proc(Object obj, int i2, int i3, int i4, long j2, Object obj2) {
        if (obj == null) {
            return 0;
        }
        try {
            ScreenControlManager_V2 screenControlManager_V2 = (ScreenControlManager_V2) ((WeakReference) obj).get();
            if (screenControlManager_V2 == null) {
                return 0;
            }
            return screenControlManager_V2.onMessage(i2, i3, i4, j2, obj2);
        } catch (Throwable th) {
            th.printStackTrace();
            return 0;
        }
    }

    private native int native_startAvcRecord_V2(int i2, int i3, int i4, int i5, int i6);

    private native int native_startYuvRecord_V2(int i2, int i3, int i4, int i5);

    private int onMessage(int i2, int i3, int i4, long j2, Object obj) {
        YuvCallbackListener yuvCallbackListener = this.mYuvCbl;
        AvcCallbackListener avcCallbackListener = this.mAvcCbl;
        if (i2 == 0 && yuvCallbackListener != null) {
            if (i3 == 0) {
                yuvCallbackListener.onYuvAvailable((byte[]) obj);
                return 0;
            }
            if (i3 != 1) {
                return 0;
            }
            yuvCallbackListener.onYuvReceiveOver();
            return 0;
        }
        if (i2 != 1 || avcCallbackListener == null) {
            return 0;
        }
        if (i3 == 0) {
            avcCallbackListener.onAvcAvailable((byte[]) obj, i4, j2);
            return 0;
        }
        if (i3 != 1) {
            return 0;
        }
        avcCallbackListener.onAvcReceiveOver();
        return 0;
    }

    public void setAvcCallbackListener(AvcCallbackListener avcCallbackListener) {
        this.mAvcCbl = avcCallbackListener;
    }

    public void setYuvCallbackListener(YuvCallbackListener yuvCallbackListener) {
        this.mYuvCbl = yuvCallbackListener;
    }

    public int startAvcScreenRecord(int i2, int i3, int i4, int i5, int i6) {
        Log.d(TAG, "startAvcScreenRecord width:" + i2 + ",height:" + i3 + ",frameRate:" + i4 + ",bitRate:" + i5 + ",sourceType:" + i6);
        synchronized (this.mLock) {
            try {
                if (this.mAvcCbl == null) {
                    return -65535;
                }
                native_StartAvcReceiver_V2(new WeakReference<>(this));
                return native_startAvcRecord_V2(i2, i3, i4, i5, i6);
            } catch (Exception e2) {
                Log.e(TAG, "startAvcScreenRecord: ScreenControlService is dead!:" + e2);
                return -65535;
            }
        }
    }

    public int startYuvScreenRecord(int i2, int i3, int i4, int i5) {
        Log.d(TAG, "startYuvScreenRecord width:" + i2 + ",height:" + i3 + ",sourceType:" + i5);
        synchronized (this.mLock) {
            try {
                if (this.mYuvCbl == null) {
                    return -65535;
                }
                native_StartYuvReceiver_V2(new WeakReference<>(this));
                return native_startYuvRecord_V2(i2, i3, i4, i5);
            } catch (Exception e2) {
                Log.e(TAG, "startYuvScreenRecord: ScreenControlService is dead!:" + e2);
                return -65535;
            }
        }
    }

    public void stopScreenRecord() {
        synchronized (this.mLock) {
            try {
                native_ForceStop_V2();
            } catch (Exception e2) {
                Log.e(TAG, "stopScreenRecord: ScreenControlService is dead!:" + e2);
            }
        }
    }

    public static ScreenControlManager_V2 getInstance(Context context) {
        if (mInstance == null) {
            mInstance = new ScreenControlManager_V2(context);
        }
        return mInstance;
    }

    public ScreenControlManager_V2() {
        this.mContext = null;
        this.mYuvCbl = null;
        this.mAvcCbl = null;
        this.mLock = new Object();
    }
}
