houxiao
2017-04-12 a338cd531c460c0b3e829217f1f91f0156bcc6a7
new getFaceImages api

git-svn-id: http://192.168.1.226/svn/proxy@425 454eff88-639b-444f-9e54-f578c98de674
1个文件已添加
18个文件已修改
457 ■■■■■ 已修改文件
VisitFace/RtspNativeCodec/.gradle/3.3/taskArtifacts/fileHashes.bin 补丁 | 查看 | 原始文档 | blame | 历史
VisitFace/RtspNativeCodec/.gradle/3.3/taskArtifacts/fileSnapshots.bin 补丁 | 查看 | 原始文档 | blame | 历史
VisitFace/RtspNativeCodec/.gradle/3.3/taskArtifacts/taskArtifacts.bin 补丁 | 查看 | 原始文档 | blame | 历史
VisitFace/RtspNativeCodec/.gradle/3.3/taskArtifacts/taskArtifacts.lock 补丁 | 查看 | 原始文档 | blame | 历史
VisitFace/RtspNativeCodec/.gradle/3.3/tasks/_app_compileDebugJavaWithJavac/localClassSetAnalysis/localClassSetAnalysis.bin 补丁 | 查看 | 原始文档 | blame | 历史
VisitFace/RtspNativeCodec/.gradle/3.3/tasks/_app_compileDebugJavaWithJavac/localClassSetAnalysis/localClassSetAnalysis.lock 补丁 | 查看 | 原始文档 | blame | 历史
VisitFace/RtspNativeCodec/.gradle/3.3/tasks/_app_compileDebugJavaWithJavac/localJarClasspathSnapshot/localJarClasspathSnapshot.lock 补丁 | 查看 | 原始文档 | blame | 历史
VisitFace/RtspNativeCodec/.idea/workspace.xml 286 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
VisitFace/RtspNativeCodec/app/.externalNativeBuild/cmake/debug/armeabi-v7a/.ninja_deps 补丁 | 查看 | 原始文档 | blame | 历史
VisitFace/RtspNativeCodec/app/.externalNativeBuild/cmake/debug/armeabi-v7a/.ninja_log 22 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
VisitFace/RtspNativeCodec/app/app.iml 16 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
VisitFace/RtspNativeCodec/app/build/intermediates/incremental/mergeDebugAndroidTestResources/compile-file-map.properties 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
VisitFace/RtspNativeCodec/app/build/intermediates/incremental/mergeDebugResources/compile-file-map.properties 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
VisitFace/RtspNativeCodec/app/src/main/cpp/FaceCache.cpp 43 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
VisitFace/RtspNativeCodec/app/src/main/cpp/FaceCache.h 12 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
VisitFace/RtspNativeCodec/app/src/main/cpp/RtspNativeCodecJNI.cpp 50 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
VisitFace/RtspNativeCodec/app/src/main/cpp/RtspNativeCodecJNI.h 3 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
VisitFace/RtspNativeCodec/app/src/main/java/cn/com/basic/face/util/NativeImgIdx.java 13 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
VisitFace/RtspNativeCodec/app/src/main/java/cn/com/basic/face/util/RtspFaceNative.java 8 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
VisitFace/RtspNativeCodec/.gradle/3.3/taskArtifacts/fileHashes.bin
Binary files differ
VisitFace/RtspNativeCodec/.gradle/3.3/taskArtifacts/fileSnapshots.bin
Binary files differ
VisitFace/RtspNativeCodec/.gradle/3.3/taskArtifacts/taskArtifacts.bin
Binary files differ
VisitFace/RtspNativeCodec/.gradle/3.3/taskArtifacts/taskArtifacts.lock
Binary files differ
VisitFace/RtspNativeCodec/.gradle/3.3/tasks/_app_compileDebugJavaWithJavac/localClassSetAnalysis/localClassSetAnalysis.bin
Binary files differ
VisitFace/RtspNativeCodec/.gradle/3.3/tasks/_app_compileDebugJavaWithJavac/localClassSetAnalysis/localClassSetAnalysis.lock
Binary files differ
VisitFace/RtspNativeCodec/.gradle/3.3/tasks/_app_compileDebugJavaWithJavac/localJarClasspathSnapshot/localJarClasspathSnapshot.lock
Binary files differ
VisitFace/RtspNativeCodec/.idea/workspace.xml
@@ -10,11 +10,7 @@
  </component>
  <component name="ChangeListManager">
    <list default="true" readonly="true" id="791a1ca7-972c-421c-af50-d8f452f0c589" name="Default" comment="">
      <change type="DELETED" beforePath="$PROJECT_DIR$/app/src/main/java/com/bsk/zhangbo/demoforbsk/util/RtspFaceNative.java" afterPath="" />
      <change type="DELETED" beforePath="$PROJECT_DIR$/app/src/main/java/com/bsk" afterPath="" />
      <change type="DELETED" beforePath="$PROJECT_DIR$/app/src/main/java/com/bsk/zhangbo" afterPath="" />
      <change type="DELETED" beforePath="$PROJECT_DIR$/app/src/main/java/com/bsk/zhangbo/demoforbsk" afterPath="" />
      <change type="DELETED" beforePath="$PROJECT_DIR$/app/src/main/java/com/bsk/zhangbo/demoforbsk/util" afterPath="" />
      <change type="NEW" beforePath="" afterPath="$PROJECT_DIR$/app/src/main/java/cn/com/basic/face/util/NativeImgIdx.java" />
      <change type="MODIFICATION" beforePath="$PROJECT_DIR$/.gradle/3.3/taskArtifacts/fileHashes.bin" afterPath="$PROJECT_DIR$/.gradle/3.3/taskArtifacts/fileHashes.bin" />
      <change type="MODIFICATION" beforePath="$PROJECT_DIR$/.gradle/3.3/taskArtifacts/fileSnapshots.bin" afterPath="$PROJECT_DIR$/.gradle/3.3/taskArtifacts/fileSnapshots.bin" />
      <change type="MODIFICATION" beforePath="$PROJECT_DIR$/.gradle/3.3/taskArtifacts/taskArtifacts.bin" afterPath="$PROJECT_DIR$/.gradle/3.3/taskArtifacts/taskArtifacts.bin" />
@@ -34,16 +30,16 @@
      <change type="MODIFICATION" beforePath="$PROJECT_DIR$/../../RtspFace/live555/testProgs/testRTSPClient.hpp" afterPath="$PROJECT_DIR$/../../RtspFace/live555/testProgs/testRTSPClient.hpp" />
      <change type="MODIFICATION" beforePath="$PROJECT_DIR$/../../RtspFace/main.cpp" afterPath="$PROJECT_DIR$/../../RtspFace/main.cpp" />
      <change type="MODIFICATION" beforePath="$PROJECT_DIR$/../../RtspFace/make.sh" afterPath="$PROJECT_DIR$/../../RtspFace/make.sh" />
      <change type="MODIFICATION" beforePath="$PROJECT_DIR$/.idea/misc.xml" afterPath="$PROJECT_DIR$/.idea/misc.xml" />
      <change type="MODIFICATION" beforePath="$PROJECT_DIR$/.idea/workspace.xml" afterPath="$PROJECT_DIR$/.idea/workspace.xml" />
      <change type="MODIFICATION" beforePath="$PROJECT_DIR$/app/.externalNativeBuild/cmake/debug/armeabi-v7a/.ninja_log" afterPath="$PROJECT_DIR$/app/.externalNativeBuild/cmake/debug/armeabi-v7a/.ninja_log" />
      <change type="MODIFICATION" beforePath="$PROJECT_DIR$/app/app.iml" afterPath="$PROJECT_DIR$/app/app.iml" />
      <change type="MODIFICATION" beforePath="$PROJECT_DIR$/app/build/intermediates/incremental/mergeDebugAndroidTestResources/compile-file-map.properties" afterPath="$PROJECT_DIR$/app/build/intermediates/incremental/mergeDebugAndroidTestResources/compile-file-map.properties" />
      <change type="MODIFICATION" beforePath="$PROJECT_DIR$/app/build/intermediates/incremental/mergeDebugResources/compile-file-map.properties" afterPath="$PROJECT_DIR$/app/build/intermediates/incremental/mergeDebugResources/compile-file-map.properties" />
      <change type="MODIFICATION" beforePath="$PROJECT_DIR$/app/src/main/assets/license.lic" afterPath="$PROJECT_DIR$/app/src/main/assets/license.lic" />
      <change type="MODIFICATION" beforePath="$PROJECT_DIR$/app/src/main/cpp/FaceCache.cpp" afterPath="$PROJECT_DIR$/app/src/main/cpp/FaceCache.cpp" />
      <change type="MODIFICATION" beforePath="$PROJECT_DIR$/app/src/main/cpp/FaceCache.h" afterPath="$PROJECT_DIR$/app/src/main/cpp/FaceCache.h" />
      <change type="MODIFICATION" beforePath="$PROJECT_DIR$/app/src/main/cpp/RtspNativeCodecJNI.cpp" afterPath="$PROJECT_DIR$/app/src/main/cpp/RtspNativeCodecJNI.cpp" />
      <change type="MODIFICATION" beforePath="$PROJECT_DIR$/app/src/main/cpp/RtspNativeCodecJNI.h" afterPath="$PROJECT_DIR$/app/src/main/cpp/RtspNativeCodecJNI.h" />
      <change type="MODIFICATION" beforePath="$PROJECT_DIR$/app/src/main/java/com/example/nativecodec/NativeCodec.java" afterPath="$PROJECT_DIR$/app/src/main/java/com/example/nativecodec/NativeCodec.java" />
      <change type="MODIFICATION" beforePath="$PROJECT_DIR$/app/src/main/java/cn/com/basic/face/util/RtspFaceNative.java" afterPath="$PROJECT_DIR$/app/src/main/java/cn/com/basic/face/util/RtspFaceNative.java" />
    </list>
    <ignored path="RtspNativeCodec.iws" />
    <ignored path=".idea/workspace.xml" />
@@ -75,23 +71,12 @@
  </component>
  <component name="FileEditorManager">
    <leaf SIDE_TABS_SIZE_LIMIT_KEY="300">
      <file leaf-file-name="NativeCodec.java" pinned="false" current-in-tab="true">
      <file leaf-file-name="NativeCodec.java" pinned="false" current-in-tab="false">
        <entry file="file://$PROJECT_DIR$/app/src/main/java/com/example/nativecodec/NativeCodec.java">
          <provider selected="true" editor-type-id="text-editor">
            <state relative-caret-position="418">
              <caret line="197" column="43" selection-start-line="197" selection-start-column="43" selection-end-line="197" selection-end-column="43" />
              <folding>
                <element signature="e#4018#5463#0" expanded="true" />
                <element signature="e#5462#5463#0" expanded="true" />
                <element signature="e#5728#5878#0" expanded="true" />
                <element signature="e#5877#5878#0" expanded="true" />
                <element signature="e#5917#6067#0" expanded="true" />
                <element signature="e#6066#6067#0" expanded="true" />
                <element signature="e#6228#7921#0" expanded="true" />
                <element signature="e#7920#7921#0" expanded="true" />
                <element signature="e#8034#8284#0" expanded="true" />
                <element signature="e#8283#8284#0" expanded="true" />
              </folding>
            <state relative-caret-position="931">
              <caret line="201" column="61" selection-start-line="201" selection-start-column="61" selection-end-line="201" selection-end-column="61" />
              <folding />
            </state>
          </provider>
        </entry>
@@ -99,8 +84,8 @@
      <file leaf-file-name="RtspFaceNative.java" pinned="false" current-in-tab="false">
        <entry file="file://$PROJECT_DIR$/app/src/main/java/cn/com/basic/face/util/RtspFaceNative.java">
          <provider selected="true" editor-type-id="text-editor">
            <state relative-caret-position="532">
              <caret line="37" column="63" selection-start-line="37" selection-start-column="63" selection-end-line="37" selection-end-column="63" />
            <state relative-caret-position="114">
              <caret line="6" column="3" selection-start-line="6" selection-start-column="3" selection-end-line="6" selection-end-column="3" />
              <folding>
                <element signature="imports" expanded="true" />
              </folding>
@@ -108,11 +93,21 @@
          </provider>
        </entry>
      </file>
      <file leaf-file-name="RtspNativeCodecJNI.cpp" pinned="false" current-in-tab="false">
      <file leaf-file-name="NativeImgIdx.java" pinned="false" current-in-tab="false">
        <entry file="file://$PROJECT_DIR$/app/src/main/java/cn/com/basic/face/util/NativeImgIdx.java">
          <provider selected="true" editor-type-id="text-editor">
            <state relative-caret-position="114">
              <caret line="6" column="25" selection-start-line="6" selection-start-column="13" selection-end-line="6" selection-end-column="25" />
              <folding />
            </state>
          </provider>
        </entry>
      </file>
      <file leaf-file-name="RtspNativeCodecJNI.cpp" pinned="false" current-in-tab="true">
        <entry file="file://$PROJECT_DIR$/app/src/main/cpp/RtspNativeCodecJNI.cpp">
          <provider selected="true" editor-type-id="text-editor">
            <state relative-caret-position="5054">
              <caret line="266" column="0" selection-start-line="266" selection-start-column="0" selection-end-line="266" selection-end-column="0" />
            <state relative-caret-position="532">
              <caret line="279" column="42" selection-start-line="279" selection-start-column="42" selection-end-line="279" selection-end-column="42" />
              <folding />
            </state>
          </provider>
@@ -121,8 +116,8 @@
      <file leaf-file-name="RtspNativeCodecJNI.h" pinned="false" current-in-tab="false">
        <entry file="file://$PROJECT_DIR$/app/src/main/cpp/RtspNativeCodecJNI.h">
          <provider selected="true" editor-type-id="text-editor">
            <state relative-caret-position="266">
              <caret line="14" column="31" selection-start-line="14" selection-start-column="31" selection-end-line="14" selection-end-column="31" />
            <state relative-caret-position="133">
              <caret line="7" column="10" selection-start-line="7" selection-start-column="10" selection-end-line="7" selection-end-column="10" />
              <folding />
            </state>
          </provider>
@@ -137,16 +132,6 @@
                <element signature="e#131#153#0" expanded="true" />
                <element signature="e#303#341#0" expanded="true" />
              </folding>
            </state>
          </provider>
        </entry>
      </file>
      <file leaf-file-name="jni.h" pinned="false" current-in-tab="false">
        <entry file="file://D:/Android/adk/ndk-bundle/platforms/android-22/arch-arm/usr/include/jni.h">
          <provider selected="true" editor-type-id="text-editor">
            <state relative-caret-position="893">
              <caret line="47" column="28" selection-start-line="47" selection-start-column="24" selection-end-line="47" selection-end-column="28" />
              <folding />
            </state>
          </provider>
        </entry>
@@ -166,8 +151,8 @@
      <file leaf-file-name="FaceCache.cpp" pinned="false" current-in-tab="false">
        <entry file="file://$PROJECT_DIR$/app/src/main/cpp/FaceCache.cpp">
          <provider selected="true" editor-type-id="text-editor">
            <state relative-caret-position="3287">
              <caret line="173" column="16" selection-start-line="173" selection-start-column="16" selection-end-line="173" selection-end-column="16" />
            <state relative-caret-position="931">
              <caret line="206" column="25" selection-start-line="206" selection-start-column="25" selection-end-line="206" selection-end-column="25" />
              <folding>
                <element signature="e#0#22#0" expanded="true" />
              </folding>
@@ -175,17 +160,34 @@
          </provider>
        </entry>
      </file>
      <file leaf-file-name="PbFaceList.pb.h" pinned="false" current-in-tab="false">
        <entry file="file://$PROJECT_DIR$/app/src/main/cpp/PbFaceList.pb.h">
      <file leaf-file-name="jni.h" pinned="false" current-in-tab="false">
        <entry file="file://D:/Android/adk/ndk-bundle/platforms/android-22/arch-arm/usr/include/jni.h">
          <provider selected="true" editor-type-id="text-editor">
            <state relative-caret-position="12388">
              <caret line="652" column="0" selection-start-line="652" selection-start-column="0" selection-end-line="652" selection-end-column="0" />
            <state relative-caret-position="209">
              <caret line="604" column="74" selection-start-line="604" selection-start-column="74" selection-end-line="604" selection-end-column="74" />
              <folding />
            </state>
          </provider>
        </entry>
      </file>
      <file leaf-file-name="MaterialBuffer.h" pinned="false" current-in-tab="false">
        <entry file="file://$PROJECT_DIR$/../../RtspFace/MaterialBuffer.h">
          <provider selected="true" editor-type-id="text-editor">
            <state relative-caret-position="418">
              <caret line="22" column="48" selection-start-line="22" selection-start-column="48" selection-end-line="22" selection-end-column="48" />
              <folding />
            </state>
          </provider>
        </entry>
      </file>
    </leaf>
  </component>
  <component name="FileTemplateManagerImpl">
    <option name="RECENT_TEMPLATES">
      <list>
        <option value="Class" />
      </list>
    </option>
  </component>
  <component name="GradleLocalSettings">
    <option name="myGradleHomes">
@@ -1881,12 +1883,15 @@
        <option value="$PROJECT_DIR$/../../RtspFace/PL_SensetimeFaceTrack.cpp" />
        <option value="$PROJECT_DIR$/app/src/main/cpp/CameraWrapper.h" />
        <option value="$PROJECT_DIR$/app/src/main/cpp/CameraWrapper.cpp" />
        <option value="$PROJECT_DIR$/app/src/main/java/com/bsk/zhangbo/demoforbsk/util/RtspFaceNative.java" />
        <option value="$PROJECT_DIR$/app/src/main/java/com/example/nativecodec/NativeCodec.java" />
        <option value="$PROJECT_DIR$/app/src/main/java/cn/com/basic/face/util/RtspFaceNative.java" />
        <option value="$PROJECT_DIR$/app/src/main/cpp/RtspNativeCodecJNI.h" />
        <option value="$PROJECT_DIR$/app/src/main/cpp/FaceCache.h" />
        <option value="$PROJECT_DIR$/app/src/main/java/cn/com/basic/face/util/NativeImgIdx.java" />
        <option value="$PROJECT_DIR$/../../RtspFace/MaterialBuffer.h" />
        <option value="$PROJECT_DIR$/app/src/main/cpp/FaceCache.cpp" />
        <option value="$PROJECT_DIR$/app/src/main/cpp/RtspNativeCodecJNI.cpp" />
        <option value="$PROJECT_DIR$/app/src/main/java/com/bsk/zhangbo/demoforbsk/util/RtspFaceNative.java" />
        <option value="$PROJECT_DIR$/app/src/main/java/cn/com/basic/face/util/RtspFaceNative.java" />
        <option value="$PROJECT_DIR$/app/src/main/java/com/example/nativecodec/NativeCodec.java" />
      </list>
    </option>
  </component>
@@ -1894,7 +1899,7 @@
  <component name="ProjectFrameBounds">
    <option name="x" value="-8" />
    <option name="y" value="-8" />
    <option name="width" value="1932" />
    <option name="width" value="1924" />
    <option name="height" value="1176" />
  </component>
  <component name="ProjectLevelVcsManager" settingsEditedManually="false">
@@ -1922,8 +1927,8 @@
      <foldersAlwaysOnTop value="true" />
    </navigator>
    <panes>
      <pane id="Scope" />
      <pane id="PackagesPane" />
      <pane id="Scratches" />
      <pane id="ProjectPane">
        <subPane>
          <PATH>
@@ -1968,7 +1973,7 @@
          </PATH>
        </subPane>
      </pane>
      <pane id="Scratches" />
      <pane id="Scope" />
      <pane id="AndroidView" />
    </panes>
  </component>
@@ -1980,7 +1985,7 @@
    <property name="android.project.structure.last.selected" value="app" />
    <property name="android.project.structure.proportion" value="0.15" />
    <property name="show.do.not.ask.upgrade.gradle.plugin" value="2.2.3" />
    <property name="device.picker.selection" value="30bffbe57d22" />
    <property name="device.picker.selection" value="015d2109845c1607" />
  </component>
  <component name="RunManager" selected="Android App.app">
    <configuration default="true" type="AndroidJUnit" factoryName="Android JUnit">
@@ -2361,7 +2366,7 @@
    </todo-panel>
  </component>
  <component name="ToolWindowManager">
    <frame x="-8" y="-8" width="1932" height="1176" extended-state="1" />
    <frame x="-8" y="-8" width="1924" height="1176" extended-state="0" />
    <editor active="true" />
    <layout>
      <window_info id="TODO" active="false" anchor="bottom" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" show_stripe_button="true" weight="0.32940018" sideWeight="0.5" order="6" side_tool="false" content_ui="tabs" />
@@ -2369,20 +2374,20 @@
      <window_info id="Build Variants" active="false" anchor="left" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" show_stripe_button="true" weight="0.33" sideWeight="0.5" order="3" side_tool="true" content_ui="tabs" />
      <window_info id="Image Layers" active="false" anchor="left" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" show_stripe_button="true" weight="0.33" sideWeight="0.5" order="3" side_tool="false" content_ui="tabs" />
      <window_info id="Capture Analysis" active="false" anchor="right" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" show_stripe_button="true" weight="0.33" sideWeight="0.5" order="3" side_tool="false" content_ui="tabs" />
      <window_info id="Event Log" active="false" anchor="bottom" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="true" show_stripe_button="true" weight="0.29301867" sideWeight="0.23504274" order="7" side_tool="true" content_ui="tabs" />
      <window_info id="Android Monitor" active="false" anchor="bottom" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="true" show_stripe_button="true" weight="0.29301867" sideWeight="0.76495725" order="7" side_tool="false" content_ui="tabs" />
      <window_info id="Event Log" active="false" anchor="bottom" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="true" show_stripe_button="true" weight="0.2979351" sideWeight="0.4753219" order="7" side_tool="true" content_ui="tabs" />
      <window_info id="Android Monitor" active="false" anchor="bottom" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" show_stripe_button="true" weight="0.2920354" sideWeight="0.7392704" order="7" side_tool="false" content_ui="tabs" />
      <window_info id="Run" active="false" anchor="bottom" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" show_stripe_button="true" weight="0.33" sideWeight="0.5" order="2" side_tool="false" content_ui="tabs" />
      <window_info id="Version Control" active="false" anchor="bottom" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" show_stripe_button="true" weight="0.32940018" sideWeight="0.4936034" order="7" side_tool="false" content_ui="tabs" />
      <window_info id="Terminal" active="false" anchor="bottom" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" show_stripe_button="true" weight="0.32940018" sideWeight="0.4978678" order="7" side_tool="false" content_ui="tabs" />
      <window_info id="Captures" active="false" anchor="left" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" show_stripe_button="true" weight="0.25" sideWeight="0.5" order="2" side_tool="false" content_ui="tabs" />
      <window_info id="Capture Tool" active="false" anchor="left" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" show_stripe_button="true" weight="0.33" sideWeight="0.5" order="3" side_tool="false" content_ui="tabs" />
      <window_info id="Gradle Console" active="false" anchor="bottom" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" show_stripe_button="true" weight="0.36479843" sideWeight="0.48933902" order="7" side_tool="true" content_ui="tabs" />
      <window_info id="Project" active="false" anchor="left" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="true" show_stripe_button="true" weight="0.25160256" sideWeight="0.5" order="0" side_tool="false" content_ui="combo" />
      <window_info id="Project" active="false" anchor="left" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="true" show_stripe_button="true" weight="0.25107297" sideWeight="0.5" order="0" side_tool="false" content_ui="combo" />
      <window_info id="Gradle" active="false" anchor="right" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" show_stripe_button="true" weight="0.33" sideWeight="0.5" order="3" side_tool="false" content_ui="tabs" />
      <window_info id="Structure" active="false" anchor="left" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" show_stripe_button="true" weight="0.25" sideWeight="0.5" order="1" side_tool="false" content_ui="tabs" />
      <window_info id="Android Model" active="false" anchor="right" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" show_stripe_button="true" weight="0.33" sideWeight="0.5" order="3" side_tool="true" content_ui="tabs" />
      <window_info id="Theme Preview" active="false" anchor="right" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" show_stripe_button="true" weight="0.33" sideWeight="0.5" order="3" side_tool="false" content_ui="tabs" />
      <window_info id="Debug" active="false" anchor="bottom" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" show_stripe_button="true" weight="0.2979351" sideWeight="0.54220086" order="3" side_tool="false" content_ui="tabs" />
      <window_info id="Debug" active="false" anchor="bottom" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="true" show_stripe_button="true" weight="0.2979351" sideWeight="0.5246781" order="3" side_tool="false" content_ui="tabs" />
      <window_info id="Favorites" active="false" anchor="left" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" show_stripe_button="true" weight="0.33" sideWeight="0.5" order="3" side_tool="true" content_ui="tabs" />
      <window_info id="Cvs" active="false" anchor="bottom" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" show_stripe_button="true" weight="0.25" sideWeight="0.5" order="4" side_tool="false" content_ui="tabs" />
      <window_info id="Nl-Palette" active="false" anchor="left" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" show_stripe_button="true" weight="0.33" sideWeight="0.5" order="3" side_tool="false" content_ui="tabs" />
@@ -2410,25 +2415,11 @@
  </component>
  <component name="XDebuggerManager">
    <breakpoint-manager>
      <option name="time" value="315" />
      <option name="time" value="328" />
    </breakpoint-manager>
    <watches-manager />
  </component>
  <component name="editorHistoryManager">
    <entry file="file://$PROJECT_DIR$/app/libs/live555/include/liveMedia/Media.hh">
      <provider selected="true" editor-type-id="text-editor">
        <state relative-caret-position="1007">
          <caret line="53" column="41" selection-start-line="53" selection-start-column="41" selection-end-line="53" selection-end-column="41" />
        </state>
      </provider>
    </entry>
    <entry file="file://D:/Android/adk/sources/android-22/android/opengl/GLSurfaceView.java">
      <provider selected="true" editor-type-id="text-editor">
        <state relative-caret-position="-10548">
          <caret line="1238" column="0" selection-start-line="1238" selection-start-column="0" selection-end-line="1238" selection-end-column="0" />
        </state>
      </provider>
    </entry>
    <entry file="file://$PROJECT_DIR$/../../RtspFace/PL_SensetimeFaceTrack.h">
      <provider selected="true" editor-type-id="text-editor">
        <state relative-caret-position="-95">
@@ -2493,7 +2484,6 @@
      <provider selected="true" editor-type-id="text-editor">
        <state relative-caret-position="1881">
          <caret line="99" column="0" selection-start-line="99" selection-start-column="0" selection-end-line="99" selection-end-column="0" />
          <folding />
        </state>
      </provider>
    </entry>
@@ -2501,9 +2491,6 @@
      <provider selected="true" editor-type-id="text-editor">
        <state relative-caret-position="142">
          <caret line="85" column="19" selection-start-line="85" selection-start-column="19" selection-end-line="85" selection-end-column="19" />
          <folding>
            <element signature="e#997#1019#0" expanded="false" />
          </folding>
        </state>
      </provider>
    </entry>
@@ -2518,7 +2505,6 @@
      <provider selected="true" editor-type-id="text-editor">
        <state relative-caret-position="38">
          <caret line="8" column="72" selection-start-line="8" selection-start-column="72" selection-end-line="8" selection-end-column="72" />
          <folding />
        </state>
      </provider>
    </entry>
@@ -2575,7 +2561,6 @@
      <provider selected="true" editor-type-id="text-editor">
        <state relative-caret-position="646">
          <caret line="44" column="39" selection-start-line="44" selection-start-column="39" selection-end-line="44" selection-end-column="39" />
          <folding />
        </state>
      </provider>
    </entry>
@@ -2602,14 +2587,6 @@
        </state>
      </provider>
    </entry>
    <entry file="file://$PROJECT_DIR$/app/build.gradle">
      <provider selected="true" editor-type-id="text-editor">
        <state relative-caret-position="133">
          <caret line="7" column="24" selection-start-line="7" selection-start-column="24" selection-end-line="7" selection-end-column="24" />
          <folding />
        </state>
      </provider>
    </entry>
    <entry file="file://D:/Android/adk/ndk-bundle/sources/cxx-stl/gnu-libstdc++/4.9/include/bits/stl_vector.h">
      <provider selected="true" editor-type-id="text-editor">
        <state relative-caret-position="190">
@@ -2628,7 +2605,6 @@
      <provider selected="true" editor-type-id="text-editor">
        <state relative-caret-position="248">
          <caret line="96" column="81" selection-start-line="96" selection-start-column="81" selection-end-line="96" selection-end-column="81" />
          <folding />
        </state>
      </provider>
    </entry>
@@ -2668,17 +2644,11 @@
        </state>
      </provider>
    </entry>
    <entry file="file://$PROJECT_DIR$/../../RtspFace/MaterialBuffer.h">
      <provider selected="true" editor-type-id="text-editor">
        <state relative-caret-position="532">
          <caret line="28" column="8" selection-start-line="28" selection-start-column="8" selection-end-line="28" selection-end-column="8" />
        </state>
      </provider>
    </entry>
    <entry file="file://$PROJECT_DIR$/../../RtspFace/Logger/src/logger.hpp">
      <provider selected="true" editor-type-id="text-editor">
        <state relative-caret-position="228">
          <caret line="53" column="0" selection-start-line="53" selection-start-column="0" selection-end-line="53" selection-end-column="0" />
          <folding />
        </state>
      </provider>
    </entry>
@@ -2686,7 +2656,6 @@
      <provider selected="true" editor-type-id="text-editor">
        <state relative-caret-position="57">
          <caret line="54" column="0" selection-start-line="54" selection-start-column="0" selection-end-line="54" selection-end-column="0" />
          <folding />
        </state>
      </provider>
    </entry>
@@ -2694,10 +2663,6 @@
      <provider selected="true" editor-type-id="text-editor">
        <state relative-caret-position="-626">
          <caret line="108" column="22" selection-start-line="108" selection-start-column="22" selection-end-line="108" selection-end-column="22" />
          <folding>
            <element signature="e#3564#3565#0" expanded="false" />
            <element signature="e#3623#3624#0" expanded="false" />
          </folding>
        </state>
      </provider>
    </entry>
@@ -2730,14 +2695,6 @@
        </state>
      </provider>
    </entry>
    <entry file="file://D:/Android/adk/ndk-bundle/platforms/android-22/arch-arm/usr/include/jni.h">
      <provider selected="true" editor-type-id="text-editor">
        <state relative-caret-position="893">
          <caret line="47" column="28" selection-start-line="47" selection-start-column="24" selection-end-line="47" selection-end-column="28" />
          <folding />
        </state>
      </provider>
    </entry>
    <entry file="file://$PROJECT_DIR$/app/libs/libyuv/include/libyuv/convert_from.h">
      <provider selected="true" editor-type-id="text-editor">
        <state relative-caret-position="1768">
@@ -2745,30 +2702,10 @@
        </state>
      </provider>
    </entry>
    <entry file="file://$PROJECT_DIR$/app/src/main/cpp/CameraWrapper.cpp">
    <entry file="file://$PROJECT_DIR$/app/build.gradle">
      <provider selected="true" editor-type-id="text-editor">
        <state relative-caret-position="1349">
          <caret line="71" column="0" selection-start-line="71" selection-start-column="0" selection-end-line="71" selection-end-column="0" />
          <folding>
            <element signature="e#0#26#0" expanded="true" />
          </folding>
        </state>
      </provider>
    </entry>
    <entry file="file://$PROJECT_DIR$/app/src/main/cpp/FaceCache.cpp">
      <provider selected="true" editor-type-id="text-editor">
        <state relative-caret-position="3287">
          <caret line="173" column="16" selection-start-line="173" selection-start-column="16" selection-end-line="173" selection-end-column="16" />
          <folding>
            <element signature="e#0#22#0" expanded="true" />
          </folding>
        </state>
      </provider>
    </entry>
    <entry file="file://$PROJECT_DIR$/app/src/main/cpp/RtspNativeCodecJNI.cpp">
      <provider selected="true" editor-type-id="text-editor">
        <state relative-caret-position="5054">
          <caret line="266" column="0" selection-start-line="266" selection-start-column="0" selection-end-line="266" selection-end-column="0" />
        <state relative-caret-position="684">
          <caret line="36" column="5" selection-start-line="36" selection-start-column="5" selection-end-line="36" selection-end-column="5" />
          <folding />
        </state>
      </provider>
@@ -2784,42 +2721,91 @@
        </state>
      </provider>
    </entry>
    <entry file="file://$PROJECT_DIR$/app/src/main/cpp/RtspNativeCodecJNI.h">
    <entry file="file://$PROJECT_DIR$/app/src/main/cpp/FaceCache.h">
      <provider selected="true" editor-type-id="text-editor">
        <state relative-caret-position="266">
          <caret line="14" column="31" selection-start-line="14" selection-start-column="31" selection-end-line="14" selection-end-column="31" />
        <state relative-caret-position="570">
          <caret line="31" column="62" selection-start-line="31" selection-start-column="26" selection-end-line="31" selection-end-column="62" />
          <folding />
        </state>
      </provider>
    </entry>
    <entry file="file://$PROJECT_DIR$/app/src/main/java/cn/com/basic/face/util/RtspFaceNative.java">
    <entry file="file://$PROJECT_DIR$/app/src/main/cpp/RtspNativeCodecJNI.h">
      <provider selected="true" editor-type-id="text-editor">
        <state relative-caret-position="532">
          <caret line="37" column="63" selection-start-line="37" selection-start-column="63" selection-end-line="37" selection-end-column="63" />
        <state relative-caret-position="133">
          <caret line="7" column="10" selection-start-line="7" selection-start-column="10" selection-end-line="7" selection-end-column="10" />
          <folding />
        </state>
      </provider>
    </entry>
    <entry file="file://$PROJECT_DIR$/../../RtspFace/MaterialBuffer.h">
      <provider selected="true" editor-type-id="text-editor">
        <state relative-caret-position="418">
          <caret line="22" column="48" selection-start-line="22" selection-start-column="48" selection-end-line="22" selection-end-column="48" />
          <folding />
        </state>
      </provider>
    </entry>
    <entry file="file://$PROJECT_DIR$/app/src/main/java/cn/com/basic/face/util/NativeImgIdx.java">
      <provider selected="true" editor-type-id="text-editor">
        <state relative-caret-position="114">
          <caret line="6" column="25" selection-start-line="6" selection-start-column="13" selection-end-line="6" selection-end-column="25" />
          <folding />
        </state>
      </provider>
    </entry>
    <entry file="file://$PROJECT_DIR$/app/src/main/cpp/CameraWrapper.cpp">
      <provider selected="true" editor-type-id="text-editor">
        <state relative-caret-position="1349">
          <caret line="71" column="0" selection-start-line="71" selection-start-column="0" selection-end-line="71" selection-end-column="0" />
          <folding>
            <element signature="imports" expanded="true" />
            <element signature="e#0#26#0" expanded="true" />
          </folding>
        </state>
      </provider>
    </entry>
    <entry file="file://$PROJECT_DIR$/app/src/main/java/com/example/nativecodec/NativeCodec.java">
      <provider selected="true" editor-type-id="text-editor">
        <state relative-caret-position="418">
          <caret line="197" column="43" selection-start-line="197" selection-start-column="43" selection-end-line="197" selection-end-column="43" />
        <state relative-caret-position="931">
          <caret line="201" column="61" selection-start-line="201" selection-start-column="61" selection-end-line="201" selection-end-column="61" />
          <folding />
        </state>
      </provider>
    </entry>
    <entry file="file://$PROJECT_DIR$/app/src/main/java/cn/com/basic/face/util/RtspFaceNative.java">
      <provider selected="true" editor-type-id="text-editor">
        <state relative-caret-position="114">
          <caret line="6" column="3" selection-start-line="6" selection-start-column="3" selection-end-line="6" selection-end-column="3" />
          <folding>
            <element signature="e#4018#5463#0" expanded="true" />
            <element signature="e#5462#5463#0" expanded="true" />
            <element signature="e#5728#5878#0" expanded="true" />
            <element signature="e#5877#5878#0" expanded="true" />
            <element signature="e#5917#6067#0" expanded="true" />
            <element signature="e#6066#6067#0" expanded="true" />
            <element signature="e#6228#7921#0" expanded="true" />
            <element signature="e#7920#7921#0" expanded="true" />
            <element signature="e#8034#8284#0" expanded="true" />
            <element signature="e#8283#8284#0" expanded="true" />
            <element signature="imports" expanded="true" />
          </folding>
        </state>
      </provider>
    </entry>
    <entry file="file://$PROJECT_DIR$/app/src/main/cpp/FaceCache.cpp">
      <provider selected="true" editor-type-id="text-editor">
        <state relative-caret-position="931">
          <caret line="206" column="25" selection-start-line="206" selection-start-column="25" selection-end-line="206" selection-end-column="25" />
          <folding>
            <element signature="e#0#22#0" expanded="true" />
          </folding>
        </state>
      </provider>
    </entry>
    <entry file="file://D:/Android/adk/ndk-bundle/platforms/android-22/arch-arm/usr/include/jni.h">
      <provider selected="true" editor-type-id="text-editor">
        <state relative-caret-position="209">
          <caret line="604" column="74" selection-start-line="604" selection-start-column="74" selection-end-line="604" selection-end-column="74" />
          <folding />
        </state>
      </provider>
    </entry>
    <entry file="file://$PROJECT_DIR$/app/src/main/cpp/RtspNativeCodecJNI.cpp">
      <provider selected="true" editor-type-id="text-editor">
        <state relative-caret-position="532">
          <caret line="279" column="42" selection-start-line="279" selection-start-column="42" selection-end-line="279" selection-end-column="42" />
          <folding />
        </state>
      </provider>
    </entry>
  </component>
</project>
VisitFace/RtspNativeCodec/app/.externalNativeBuild/cmake/debug/armeabi-v7a/.ninja_deps
Binary files differ
VisitFace/RtspNativeCodec/app/.externalNativeBuild/cmake/debug/armeabi-v7a/.ninja_log
@@ -72,3 +72,25 @@
18    1692    0    CMakeFiles/rtspface.dir/FaceCache.cpp.o    29bbc5d44de1c4c
772    2984    0    CMakeFiles/rtspface.dir/D_/workspace/proxy/RtspFace/PL_SensetimeFaceTrack.cpp.o    c6ac00204ba57dc6
2984    3480    0    D:/workspace/proxy/VisitFace/RtspNativeCodec/app/build/intermediates/cmake/debug/obj/armeabi-v7a/librtspface.so    268359c47689b5cb
21    1178    0    CMakeFiles/rtspface.dir/CameraWrapper.cpp.o    d92dd1d04b5c0345
39    1204    0    CMakeFiles/rtspface.dir/RtspNativeCodecJNI.cpp.o    8a466329a73b562b
42    1225    0    CMakeFiles/rtspface.dir/D_/workspace/proxy/RtspFace/Logger/src/logger.cc.o    a3171a496028d438
35    1688    0    CMakeFiles/rtspface.dir/D_/workspace/proxy/RtspFace/PipeLine.cpp.o    1249e538330ec634
1225    2015    0    CMakeFiles/rtspface.dir/D_/workspace/proxy/RtspFace/PL_AndroidMediaCodecDecoder.cpp.o    ca99d0cff4f6b717
56    2024    0    CMakeFiles/rtspface.dir/PbFaceList.pb.cc.o    a4c0dfab93cb91a0
1204    2147    0    CMakeFiles/rtspface.dir/D_/workspace/proxy/RtspFace/PL_RTSPClient.cpp.o    6a2338c361fc9c0b
52    2221    0    CMakeFiles/rtspface.dir/FaceCache.cpp.o    29bbc5d44de1c4c
1178    3478    0    CMakeFiles/rtspface.dir/D_/workspace/proxy/RtspFace/PL_SensetimeFaceTrack.cpp.o    c6ac00204ba57dc6
3478    4084    0    D:/workspace/proxy/VisitFace/RtspNativeCodec/app/build/intermediates/cmake/debug/obj/armeabi-v7a/librtspface.so    268359c47689b5cb
4    747    0    CMakeFiles/rtspface.dir/RtspNativeCodecJNI.cpp.o    8a466329a73b562b
747    1331    0    D:/workspace/proxy/VisitFace/RtspNativeCodec/app/build/intermediates/cmake/debug/obj/armeabi-v7a/librtspface.so    268359c47689b5cb
4    485    0    CMakeFiles/rtspface.dir/RtspNativeCodecJNI.cpp.o    8a466329a73b562b
485    869    0    D:/workspace/proxy/VisitFace/RtspNativeCodec/app/build/intermediates/cmake/debug/obj/armeabi-v7a/librtspface.so    268359c47689b5cb
4    465    0    CMakeFiles/rtspface.dir/RtspNativeCodecJNI.cpp.o    8a466329a73b562b
465    863    0    D:/workspace/proxy/VisitFace/RtspNativeCodec/app/build/intermediates/cmake/debug/obj/armeabi-v7a/librtspface.so    268359c47689b5cb
4    506    0    CMakeFiles/rtspface.dir/RtspNativeCodecJNI.cpp.o    8a466329a73b562b
506    905    0    D:/workspace/proxy/VisitFace/RtspNativeCodec/app/build/intermediates/cmake/debug/obj/armeabi-v7a/librtspface.so    268359c47689b5cb
4    463    0    CMakeFiles/rtspface.dir/RtspNativeCodecJNI.cpp.o    8a466329a73b562b
463    864    0    D:/workspace/proxy/VisitFace/RtspNativeCodec/app/build/intermediates/cmake/debug/obj/armeabi-v7a/librtspface.so    268359c47689b5cb
5    716    0    CMakeFiles/rtspface.dir/D_/workspace/proxy/RtspFace/PL_RTSPClient.cpp.o    6a2338c361fc9c0b
716    1120    0    D:/workspace/proxy/VisitFace/RtspNativeCodec/app/build/intermediates/cmake/debug/obj/armeabi-v7a/librtspface.so    268359c47689b5cb
VisitFace/RtspNativeCodec/app/app.iml
@@ -77,14 +77,6 @@
      <sourceFolder url="file://$MODULE_DIR$/src/main/jni" isTestSource="false" />
      <sourceFolder url="file://$MODULE_DIR$/src/main/rs" isTestSource="false" />
      <sourceFolder url="file://$MODULE_DIR$/src/main/shaders" isTestSource="false" />
      <sourceFolder url="file://$MODULE_DIR$/src/test/res" type="java-test-resource" />
      <sourceFolder url="file://$MODULE_DIR$/src/test/resources" type="java-test-resource" />
      <sourceFolder url="file://$MODULE_DIR$/src/test/assets" type="java-test-resource" />
      <sourceFolder url="file://$MODULE_DIR$/src/test/aidl" isTestSource="true" />
      <sourceFolder url="file://$MODULE_DIR$/src/test/java" isTestSource="true" />
      <sourceFolder url="file://$MODULE_DIR$/src/test/jni" isTestSource="true" />
      <sourceFolder url="file://$MODULE_DIR$/src/test/rs" isTestSource="true" />
      <sourceFolder url="file://$MODULE_DIR$/src/test/shaders" isTestSource="true" />
      <sourceFolder url="file://$MODULE_DIR$/src/androidTest/res" type="java-test-resource" />
      <sourceFolder url="file://$MODULE_DIR$/src/androidTest/resources" type="java-test-resource" />
      <sourceFolder url="file://$MODULE_DIR$/src/androidTest/assets" type="java-test-resource" />
@@ -93,6 +85,14 @@
      <sourceFolder url="file://$MODULE_DIR$/src/androidTest/jni" isTestSource="true" />
      <sourceFolder url="file://$MODULE_DIR$/src/androidTest/rs" isTestSource="true" />
      <sourceFolder url="file://$MODULE_DIR$/src/androidTest/shaders" isTestSource="true" />
      <sourceFolder url="file://$MODULE_DIR$/src/test/res" type="java-test-resource" />
      <sourceFolder url="file://$MODULE_DIR$/src/test/resources" type="java-test-resource" />
      <sourceFolder url="file://$MODULE_DIR$/src/test/assets" type="java-test-resource" />
      <sourceFolder url="file://$MODULE_DIR$/src/test/aidl" isTestSource="true" />
      <sourceFolder url="file://$MODULE_DIR$/src/test/java" isTestSource="true" />
      <sourceFolder url="file://$MODULE_DIR$/src/test/jni" isTestSource="true" />
      <sourceFolder url="file://$MODULE_DIR$/src/test/rs" isTestSource="true" />
      <sourceFolder url="file://$MODULE_DIR$/src/test/shaders" isTestSource="true" />
      <excludeFolder url="file://$MODULE_DIR$/build/intermediates/assets" />
      <excludeFolder url="file://$MODULE_DIR$/build/intermediates/blame" />
      <excludeFolder url="file://$MODULE_DIR$/build/intermediates/classes" />
VisitFace/RtspNativeCodec/app/build/intermediates/incremental/mergeDebugAndroidTestResources/compile-file-map.properties
@@ -1 +1 @@
#Tue Apr 11 16:56:40 CST 2017
#Wed Apr 12 12:10:41 CST 2017
VisitFace/RtspNativeCodec/app/build/intermediates/incremental/mergeDebugResources/compile-file-map.properties
@@ -1,4 +1,4 @@
#Tue Apr 11 16:56:40 CST 2017
#Wed Apr 12 12:10:41 CST 2017
D\:\\workspace\\proxy\\VisitFace\\RtspNativeCodec\\app\\src\\main\\res\\mipmap-xxhdpi\\ic_launcher.png=D\:\\workspace\\proxy\\VisitFace\\RtspNativeCodec\\app\\build\\intermediates\\res\\merged\\debug\\mipmap-xxhdpi\\ic_launcher.png
D\:\\workspace\\proxy\\VisitFace\\RtspNativeCodec\\app\\src\\main\\res\\mipmap-hdpi\\ic_launcher.png=D\:\\workspace\\proxy\\VisitFace\\RtspNativeCodec\\app\\build\\intermediates\\res\\merged\\debug\\mipmap-hdpi\\ic_launcher.png
D\:\\workspace\\proxy\\VisitFace\\RtspNativeCodec\\app\\src\\main\\res\\mipmap-mdpi\\ic_launcher.png=D\:\\workspace\\proxy\\VisitFace\\RtspNativeCodec\\app\\build\\intermediates\\res\\merged\\debug\\mipmap-mdpi\\ic_launcher.png
VisitFace/RtspNativeCodec/app/src/main/cpp/FaceCache.cpp
@@ -171,7 +171,7 @@
    return buffMaxSize > 0;
}
bool FaceCache::getFaceListImage(int* buffIdx, size_t& count, uint8_t* buffImg, size_t& buffImgMaxSize)
bool FaceCache::getFaceListImage(std::vector<NativeImgIdx>& imgIdxes, uint8_t* buffImg, size_t& buffImgMaxSize)
{
    FcPmBreackerContext& ctx(*(FcPmBreackerContext*)_ctx);
@@ -181,31 +181,36 @@
        if (! ctx.convertYUV420ToRGB())
            return false;
    }
    count = 0;
    uint8_t* pBuff = buffImg;
    size_t totalSize = 0;
    imgIdxes.clear();
    size_t offset = 0;
    cv::Mat rgbMat(cv::Size(ctx.width, ctx.height), CV_8UC3, ctx.frameRGB);
    for (st_ff_vect_t::const_iterator ffiter = ctx.faceFeatures.begin(); ffiter != ctx.faceFeatures.end(); ++ffiter)
    {
        const FaceRect& faceRect(ffiter->rect);
        cv::Mat roiMat(rgbMat, cv::Rect(faceRect.leftTop.x, faceRect.leftTop.y, faceRect.rightBottom.x - faceRect.leftTop.x, faceRect.rightBottom.y - faceRect.leftTop.y));
        NativeImgIdx imgidx;
        imgidx.offset = offset;
        imgidx.size = roiMat.total() * roiMat.elemSize();
        imgidx.type = MB_Frame::MBFT_RGB;
        imgidx.width = roiMat.cols;
        imgidx.height = roiMat.rows;
        const size_t newSize = imgidx.offset + imgidx.size;
        //isContinuous
        size_t s = roiMat.total() * roiMat.elemSize();
        if (totalSize + s <= buffImgMaxSize)
        {
            memcpy(pBuff, roiMat.ptr(), s);
            *buffIdx = int(totalSize);
            pBuff += s;
            totalSize += s;
            count++;
            buffIdx++;
        }
        if (newSize > buffImgMaxSize)
        {
            LOG_ERROR << "FaceCache::getFaceListImage buffImgMaxSize truncated" << LOG_ENDL;
            return false;
        }
        memcpy(buffImg + imgidx.offset, roiMat.ptr(), imgidx.size);
        imgIdxes.push_back(imgidx);
        offset = newSize;
    }
    buffImgMaxSize = totalSize;
    return (count != 0);
    return true;
}
VisitFace/RtspNativeCodec/app/src/main/cpp/FaceCache.h
@@ -2,6 +2,16 @@
#define __FaceCache_H__
#include <PipeLine.h>
#include <vector>
struct NativeImgIdx
{
    int offset;
    int size;
    int type;
    int width;
    int height;
};
class FaceCache
{
@@ -20,7 +30,7 @@
    
    bool getFaceListPb(uint8_t* buffer, size_t& buffMaxSize);
    
    bool getFaceListImage(int* buffIdx, size_t& count, uint8_t* buffImg, size_t& buffImgMaxSize);
    bool getFaceListImage(std::vector<NativeImgIdx>& imgIdxes, uint8_t* buffImg, size_t& buffImgMaxSize);
    
private:
    void* _ctx;
VisitFace/RtspNativeCodec/app/src/main/cpp/RtspNativeCodecJNI.cpp
@@ -233,39 +233,59 @@
    }
}
jint Java_cn_com_basic_face_util_RtspFaceNative_getFaceImages(JNIEnv* env, jclass clazz, jint cameraIdx, jintArray faceImagesIdx, jbyteArray faceImages)
jobject Java_cn_com_basic_face_util_RtspFaceNative_getFaceImages(JNIEnv* env, jclass clazz, jint cameraIdx, jbyteArray faceImages)
{
    LOG_DEBUG << "@@@ Java_cn_com_basic_face_util_RtspFaceNative_getFaceImages" << LOG_ENDL;
    assert(cameraIdx > 0 && cameraIdx <= CAMERA_COUNT);
    cameraIdx -= 1;
    CameraWrapper& cameraWrapper(g_CameraWrappers[cameraIdx]);
    size_t count = 0;
    int _faceImagesIdx[MAX_FACE] = {-1};
    std::vector<NativeImgIdx> imgIdxes;
    uint8_t _faceImages[MAX_FACE * MAX_FACE_WIDTH * MAX_FACE_HEIGHT];
    size_t _faceImagesSize = sizeof(_faceImages);
    size_t _faceImagesSize = std::min(sizeof(_faceImages), size_t(env->GetArrayLength(faceImages)));
    bool ret = false;
    const size_t faceImagesIdxArrSize = env->GetArrayLength(faceImagesIdx); // count of int
    const size_t faceImagesArrSize = env->GetArrayLength(faceImages);
#ifdef USE_ST_SDK
    ret = cameraWrapper.faceCache.getFaceListImage(_faceImagesIdx, count, _faceImages, _faceImagesSize);
    //bool getFaceListImage(std::vector<NativeImgIdx>& imgIdxes, uint8_t* buffImg, size_t& buffImgMaxSize);
    ret = cameraWrapper.faceCache.getFaceListImage(imgIdxes, _faceImages, _faceImagesSize);
#endif
    if (!ret && count > 0)
    if (imgIdxes.size() < 0)
    {
        LOG_INFO << "No face image captured" << LOG_ENDL;
        return 0;
        return nullptr;
    }
    int _faceImagesIdxCount = std::min(count, faceImagesIdxArrSize);
    env->SetIntArrayRegion(faceImagesIdx, 0, _faceImagesIdxCount, (const jint*)_faceImagesIdx);
    _faceImagesSize = std::min(_faceImagesSize, faceImagesArrSize);
    env->SetByteArrayRegion(faceImages, 0, _faceImagesSize, (const jbyte*)_faceImages);
    return  count;
    jclass jcArrayList = env->FindClass("java/util/ArrayList");
    jmethodID jmArrayList_ctor = env->GetMethodID(jcArrayList, "<init>", "()V");
    jmethodID jmArrayList_add  = env->GetMethodID(jcArrayList, "add", "(Ljava/lang/Object;)Z");
    jclass jcNativeImgIdx = env->FindClass("cn/com/basic/face/util/NativeImgIdx");
    jmethodID jmNativeImgIdx_ctor = env->GetMethodID(jcNativeImgIdx, "<init>", "()V");
    jfieldID jfNativeImgIdx_offset = env->GetFieldID(jcNativeImgIdx, "offset","I");
    jfieldID jfNativeImgIdx_size = env->GetFieldID(jcNativeImgIdx, "size","I");
    jfieldID jfNativeImgIdx_type = env->GetFieldID(jcNativeImgIdx, "type","I");
    jfieldID jfNativeImgIdx_width = env->GetFieldID(jcNativeImgIdx, "width","I");
    jfieldID jfNativeImgIdx_height = env->GetFieldID(jcNativeImgIdx, "height","I");
    jobject jobjArrayList_ImgIdxes = env->NewObject(jcArrayList , jmArrayList_ctor);
    for(size_t i = 0 ; i < imgIdxes.size(); i++)
    {
        jobject jobjNativeImgIdx = env->NewObject(jcNativeImgIdx , jmNativeImgIdx_ctor);
        env->SetIntField(jobjNativeImgIdx, jfNativeImgIdx_offset, imgIdxes[i].offset);
        env->SetIntField(jobjNativeImgIdx, jfNativeImgIdx_size, imgIdxes[i].size);
        env->SetIntField(jobjNativeImgIdx, jfNativeImgIdx_type, imgIdxes[i].type);
        env->SetIntField(jobjNativeImgIdx, jfNativeImgIdx_width, imgIdxes[i].width);
        env->SetIntField(jobjNativeImgIdx, jfNativeImgIdx_height, imgIdxes[i].height);
        env->CallBooleanMethod(jobjArrayList_ImgIdxes , jmArrayList_add , jobjNativeImgIdx);
    }
    return jobjArrayList_ImgIdxes;
}
VisitFace/RtspNativeCodec/app/src/main/cpp/RtspNativeCodecJNI.h
@@ -31,7 +31,8 @@
jint Java_cn_com_basic_face_util_RtspFaceNative_getFaceList(JNIEnv* env, jclass clazz, jint cameraIdx, jbyteArray faceListPb);
// get 2-dimension byte array of ARGB images
jint Java_cn_com_basic_face_util_RtspFaceNative_getFaceImages(JNIEnv* env, jclass clazz, jint cameraIdx, jintArray faceImagesIdx, jbyteArray faceImages);
// returns ArrayList<NativeImgIdx>
jobject Java_cn_com_basic_face_util_RtspFaceNative_getFaceImages(JNIEnv* env, jclass clazz, jint cameraIdx, jbyteArray faceImages);
}
VisitFace/RtspNativeCodec/app/src/main/java/cn/com/basic/face/util/NativeImgIdx.java
New file
@@ -0,0 +1,13 @@
package cn.com.basic.face.util;
/**
 * Created by houxiao on 2017/4/12.
 */
public class NativeImgIdx {
    public int offset;
    public int size;
    public int type;
    public int width;
    public int height;
}
VisitFace/RtspNativeCodec/app/src/main/java/cn/com/basic/face/util/RtspFaceNative.java
@@ -2,6 +2,7 @@
import android.util.Log;
import android.view.Surface;
import java.util.ArrayList;
/**
 * Created by houxiao on 2017/3/21 0021.
@@ -10,7 +11,6 @@
public class RtspFaceNative {
    //cn.com.basic.face.util.RtspFaceNative
    public static native void init();
    public static native void setSurface(int cameraIdx, Surface surface);
@@ -21,7 +21,7 @@
    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 ArrayList<NativeImgIdx> getFaceImages(int cameraIdx, byte[] faceImages);
    public static void faceCallBack(int cameraIdx, int count)
    {
@@ -33,9 +33,9 @@
        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);
        ArrayList<NativeImgIdx> faceImagesIdx = getFaceImages(cameraIdx, faceImages);
        int c = faceImagesIdx.size();
        Log.i("@@@", "RtspFaceNative.faceCallBack, getFaceImages, cameraIdx=" + cameraIdx + ", count=" + c);
        releaseFace(cameraIdx);