From 34271f0af0982b4fc930e7c079c87b45de2d943d Mon Sep 17 00:00:00 2001 From: xuxiuxi <xuxiuxi@454eff88-639b-444f-9e54-f578c98de674> Date: 星期一, 17 七月 2017 16:49:57 +0800 Subject: [PATCH] --- VisitFace/DemoForBsk/app/src/main/java/cn/com/basic/face/util/RtspFaceNative.java | 51 +++++++++++++++++++++++++++++++++++++-------------- 1 files changed, 37 insertions(+), 14 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 8a8b662..fa3c18a 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,27 +1,29 @@ package cn.com.basic.face.util; -import android.graphics.Bitmap; -import android.util.Base64; +import android.graphics.Canvas; +import android.graphics.drawable.Drawable; import android.util.Log; import android.view.Surface; - -import java.io.ByteArrayInputStream; -import java.io.InputStream; -import java.nio.ByteBuffer; -import java.util.ArrayList; +import android.view.SurfaceHolder; +import android.widget.ImageButton; +import android.graphics.Bitmap; +import android.widget.ImageView; import java.util.List; import cn.com.basic.face.base.BaseApplication; -import cn.com.basic.face.base.MainActivity; import cn.com.basic.face.discern.query.item.SurveillanceQueryItem; -import cn.com.basic.face.fragment.RegisterFragment; import cn.com.basic.face.service.SurveillanceMng; + +import java.nio.ByteBuffer; + +import java.util.ArrayList; /** * Created by houxiao on 2017/3/21 0021. */ class NativeImgIdx { + public int st_track_id; public int offset; public int size; public int type; @@ -42,7 +44,7 @@ public static native void init(); public static native void setLocalIP(String ipaddr); - public static native void setSurface(int cameraIdx, Surface surface); + public static native void setSurface(int cameraIdx, Surface surfaceRender); public static native boolean createPlayer(int cameraIdx, String uri); public static native void shutdown(int cameraIdx); // typedef void (* Java_com_example_nativecodec_NativeCodec_FaceCallback_func)(int cameraIdx, int count); @@ -55,7 +57,18 @@ public static native void dbgFaceAdd(NativeImg faceImage); public static native String dbgGetLog(); + public static native void dbgSetStfaceLicense(String lic); + //public static native void dbgReadTexture(); + + public static native void setCaptureSurface(Surface surfaceCapture); + public static native void startCapturePlayer(String uri); + public static native void stopCapturePlayer(); + public static native ArrayList<NativeImg> getCaptureImages(); + public static native void teleCall(String phoneNumber); + public static native void teleHang(); + + public static native void setFaceLabel(int cameraIdx, int stTrackId, String label); public static int COMPANY_ID = 1001; @@ -71,11 +84,13 @@ RefByteArray faceListPb = new RefByteArray(); + try { - COMPANY_ID = Integer.parseInt(BaseApplication.getInstance().getDevice().getDeviceCompanyId()); + COMPANY_ID = Integer.parseInt(BaseApplication.getInstance().getAndroidDevice().getCompanyId()); } catch (Exception e) { COMPANY_ID = 0; } + int s = getFaceList(cameraIdx, COMPANY_ID, faceListPb); Log.i("@@@", "RtspFaceNative.faceCallBack, getFaceList, cameraIdx=" + cameraIdx + ", size=" + s); @@ -97,6 +112,7 @@ { Log.i("@@@", "cameraIdx=" + cameraIdx + ", i=" + i + + ", st_track_id=" + faceImages.get(i).st_track_id+ ", size=" + faceImages.get(i).size+ ", w=" + faceImages.get(i).width + ", h=" + faceImages.get(i).height + @@ -115,22 +131,29 @@ } try{ + List<SurveillanceQueryItem> bitmapList = new ArrayList(); for (int i = 0; i < faceImages.size(); i++) { NativeImg item = faceImages.get(i); SurveillanceQueryItem surveillanceQueryItem = new SurveillanceQueryItem(); + surveillanceQueryItem.setStTrackId(item.st_track_id); int offset = 0; int size = item.size; - Bitmap bitmap = Bitmap.createBitmap(item.width,item.height, Bitmap.Config.ARGB_8888); + Bitmap bitmap = Bitmap.createBitmap(item.width,item.height, Bitmap.Config.RGB_565); ByteBuffer byteBuffer = ByteBuffer.wrap(item.image, offset, size); + //byteBuffer.rewind(); bitmap.copyPixelsFromBuffer(byteBuffer); -// surveillanceQueryItem.setBase64Image(Base64.encodeToString(item.image, offset, size, Base64.DEFAULT)); +// String str = Base64.encodeToString(item.image, offset, size, Base64.DEFAULT); +// System.out.println(str.length()); +// System.out.println(str); +// surveillanceQueryItem.setBase64Image(str); + surveillanceQueryItem.setNativeImg(item); surveillanceQueryItem.setBitmap(bitmap); surveillanceQueryItem.setWidth(item.width+""); surveillanceQueryItem.setHeight(item.height+""); bitmapList.add(surveillanceQueryItem); } - SurveillanceMng.getInstance().addBitmap(bitmapList, faceListPb.arr, s, cameraIdx+""); + SurveillanceMng.getInstance().addBitmap(bitmapList, faceListPb.arr, s, cameraIdx+"", new byte[]{}); }catch(Exception e){ e.printStackTrace(); -- Gitblit v1.8.0