From 575a339f5fcf46106ae43042a422c2c5327ed270 Mon Sep 17 00:00:00 2001
From: houxiao <houxiao@454eff88-639b-444f-9e54-f578c98de674>
Date: 星期一, 17 四月 2017 16:11:50 +0800
Subject: [PATCH] bugfix localip
---
VisitFace/DemoForBsk/app/src/main/java/cn/com/basic/face/util/RtspFaceNative.java | 104 ++++++++++++++++++++++++++++++++++++----------------
1 files changed, 72 insertions(+), 32 deletions(-)
diff --git a/VisitFace/DemoForBsk/app/src/main/java/cn/com/basic/face/util/RtspFaceNative.java b/VisitFace/DemoForBsk/app/src/main/java/cn/com/basic/face/util/RtspFaceNative.java
index 10dbff8..f305f04 100644
--- a/VisitFace/DemoForBsk/app/src/main/java/cn/com/basic/face/util/RtspFaceNative.java
+++ b/VisitFace/DemoForBsk/app/src/main/java/cn/com/basic/face/util/RtspFaceNative.java
@@ -1,17 +1,29 @@
package cn.com.basic.face.util;
-import android.util.Base64;
+import android.util.Log;
import android.view.Surface;
+import java.util.ArrayList;
-import org.xutils.http.RequestParams;
+/**
+ * Created by houxiao on 2017/3/21 0021.
+ */
-import java.io.File;
-import java.io.FileOutputStream;
+class NativeImgIdx {
+ public int offset;
+ public int size;
+ public int type;
+ public int width;
+ public int height;
+}
-import cn.com.basic.face.base.BaseApplication;
-import cn.com.basic.face.service.RegisterMng;
+class RefByteArray
+{
+ public byte[] arr;
+}
public class RtspFaceNative {
+
+ //cn.com.basic.face.util.RtspFaceNative
public static native void init();
public static native void setSurface(int cameraIdx, Surface surface);
@@ -21,40 +33,70 @@
public static native boolean setFaceCallback(int cameraIdx, String className, String funcName);
public static native void lockFace(int cameraIdx);
public static native void releaseFace(int cameraIdx);
- public static native int getFaceList(int cameraIdx, byte[] faceListPb);
- public static native int getFaceImages(int cameraIdx, int[] faceImagesIdx, byte[] faceImages);
+ public static native int getFaceList(int cameraIdx, RefByteArray faceListPb);
+ public static native ArrayList<NativeImgIdx> getFaceImages(int cameraIdx, RefByteArray faceImages);
- static int i = 1;
public static void faceCallBack(int cameraIdx, int count)
{
+ Log.i("@@@", "RtspFaceNative.faceCallBack, cameraIdx=" + cameraIdx + ", count=" + count);
+
+ // something else
+ if (count <= 0)
+ return;
+
lockFace(cameraIdx);
- byte[] faceListPb = new byte[1024 * 1024 * 1];
+ RefByteArray faceListPb = new RefByteArray();
int s = getFaceList(cameraIdx, faceListPb);
+ Log.i("@@@", "RtspFaceNative.faceCallBack, getFaceList, cameraIdx=" + cameraIdx + ", size=" + s);
- int[] faceImagesIdx = new int[10];
- byte[] faceImages = new byte[1024 * 1024 * 1];
- int c = getFaceImages(cameraIdx, faceImagesIdx, faceImages);
-
- try {
- File path = BaseApplication.getInstance().getFilesDir();
- File f1 = new File(path, ""+i);
- if (!f1.exists()) {
- f1.createNewFile();
- }
- FileOutputStream f = new FileOutputStream(f1);
- f.write(faceImages);
- f.close();
- RequestParams params = new RequestParams();
- String encodedImage = Base64.encodeToString(faceImages, Base64.DEFAULT);
- params.addBodyParameter("choosePhoto", encodedImage);
- RegisterMng.getInstance().add(params);
- } catch (Exception e) {
- e.printStackTrace();
- }
+ RefByteArray faceImages = new RefByteArray();
+ ArrayList<NativeImgIdx> faceImagesIdx = getFaceImages(cameraIdx, faceImages);
+ int c = 0;
+ if (faceImagesIdx != null)
+ c = faceImagesIdx.size();
+ Log.i("@@@", "RtspFaceNative.faceCallBack, getFaceImages, cameraIdx=" + cameraIdx + ", count=" + c);
releaseFace(cameraIdx);
}
+
+}
+
+
+// static int i = 1;
+// public static void faceCallBack(int cameraIdx, int count)
+// {
+// lockFace(cameraIdx);
+//
+// byte[] faceListPb = new byte[1024 * 1024 * 1];
+// int s = getFaceList(cameraIdx, faceListPb);
+//
+// //;byte(faceListPb,s)
+//
+//
+// int[] faceImagesIdx = new int[10];
+// byte[] faceImages = new byte[1024 * 1024 * 1];
+// int c = getFaceImages(cameraIdx, faceImagesIdx, faceImages);
+//
+// try {
+// File path = BaseApplication.getInstance().getFilesDir();
+// File f1 = new File(path, ""+i);
+// if (!f1.exists()) {
+// f1.createNewFile();
+// }
+// FileOutputStream f = new FileOutputStream(f1);
+// f.write(faceImages);
+// f.close();
+// RequestParams params = new RequestParams();
+// String encodedImage = Base64.encodeToString(faceImages, Base64.DEFAULT);
+// params.addBodyParameter("choosePhoto", encodedImage);
+// RegisterMng.getInstance().add(params);
+// } catch (Exception e) {
+// e.printStackTrace();
+// }
+//
+// releaseFace(cameraIdx);
+// }
// public static void init() {};
// public static void setSurface(int cameraIdx, Surface surface){};
@@ -66,5 +108,3 @@
// public static void releaseFace(int cameraIdx){};
// public static boolean getFaceList(int cameraIdx, byte[] faceListPb){return true;};//浜岃繘鍒�
// public static boolean getFaceImages(int cameraIdx, byte[] faceImagesIdx, byte[] faceImages){return true;};//鍥剧墖
-
-}
--
Gitblit v1.8.0