#ifndef __RTSPNATIVECODECJNI_H__ #define __RTSPNATIVECODECJNI_H__ #include #define CAMERA_COUNT 2 extern "C" { //com_example_nativecodec_NativeCodec void Java_com_bsk_zhangbo_demoforbsk_util_RtspFaceNative_init(JNIEnv *env, jclass clazz); // set the surface void Java_com_bsk_zhangbo_demoforbsk_util_RtspFaceNative_setSurface(JNIEnv *env, jclass clazz, jint cameraIdx, jobject surface); jboolean Java_com_bsk_zhangbo_demoforbsk_util_RtspFaceNative_createPlayer(JNIEnv* env, jclass clazz, jint cameraIdx, jstring uri); // shut down the native media system void Java_com_bsk_zhangbo_demoforbsk_util_RtspFaceNative_shutdown(JNIEnv* env, jclass clazz, jint cameraIdx); typedef void (* Java_com_bsk_zhangbo_demoforbsk_util_RtspFaceNative_FaceCallback_func)(int cameraIdx, int count); jboolean Java_com_bsk_zhangbo_demoforbsk_util_RtspFaceNative_setFaceCallback(JNIEnv* env, jclass clazz, jint cameraIdx, jstring func); void Java_com_bsk_zhangbo_demoforbsk_util_RtspFaceNative_lockFace(JNIEnv* env, jclass clazz, jint cameraIdx); void Java_com_bsk_zhangbo_demoforbsk_util_RtspFaceNative_releaseFace(JNIEnv* env, jclass clazz, jint cameraIdx); // get face list protobuf jboolean Java_com_bsk_zhangbo_demoforbsk_util_RtspFaceNative_getFaceList(JNIEnv* env, jclass clazz, jint cameraIdx, jbyteArray faceListPb); // get 2-dimension byte array of ARGB images jboolean Java_com_bsk_zhangbo_demoforbsk_util_RtspFaceNative_getFaceImages(JNIEnv* env, jclass clazz, jint cameraIdx, jintArray faceImagesIdx, jbyteArray faceImages); } #endif