From 9e5babf9db52e64bdae60137be7696e56241fca6 Mon Sep 17 00:00:00 2001 From: xingzilong <xingzilong@454eff88-639b-444f-9e54-f578c98de674> Date: 星期五, 18 八月 2017 18:12:17 +0800 Subject: [PATCH] H264 NALU解析 并在RTSPServer判断 --- VisitFace/RtspNativeCodec/app/src/main/cpp/CMakeLists.txt | 240 +++++++++++++++++++++++++++++++++++++++++++----------------- 1 files changed, 172 insertions(+), 68 deletions(-) diff --git a/VisitFace/RtspNativeCodec/app/src/main/cpp/CMakeLists.txt b/VisitFace/RtspNativeCodec/app/src/main/cpp/CMakeLists.txt index c9c27b9..f733384 100644 --- a/VisitFace/RtspNativeCodec/app/src/main/cpp/CMakeLists.txt +++ b/VisitFace/RtspNativeCodec/app/src/main/cpp/CMakeLists.txt @@ -6,94 +6,198 @@ #set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -g -O0 -std=c++11 -fno-rtti -Wall -UNDEBUG") #set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -g -O0 -std=c++11 -DANDROID_PLATFORM=android-22 -DANDROID_TOOLCHAIN=gcc -DANDROID_STL=gnustl_static -Wall -UNDEBUG") -add_library(rtspface SHARED - RtspNativeCodecJNI.cpp - CameraWrapper.cpp - FaceCache.cpp - FaceCacheForPLBG.cpp - DebugNetwork.cpp - CaptureCamera.cpp - serial.c +set(WORKSPACE_PATH "D:/workspace/proxy") +set(ARCH "armeabi-v7a") - "D:/workspace/proxy/RtspFace/PipeLine.cpp" - "D:/workspace/proxy/RtspFace/Logger/src/logger.cc" - "D:/workspace/proxy/RtspFace/MediaHelper.cpp" - "D:/workspace/proxy/RtspFace/PL_RTSPClient.cpp" - "D:/workspace/proxy/RtspFace/PL_AndroidMediaCodecDecoder_ndk.cpp" - "D:/workspace/proxy/RtspFace/PL_AndroidSurfaceViewRender.cpp" - "D:/workspace/proxy/RtspFace/PL_SensetimeFaceTrack.cpp" - "D:/workspace/proxy/RtspFace/PL_Gainer.cpp" - "D:/workspace/proxy/RtspFace/PL_Paint.cpp" - "D:/workspace/proxy/RtspFace/PL_V4L2Source.cpp" - "D:/workspace/proxy/RtspFace/PL_BlockGrouping.cpp" - "D:/workspace/proxy/RtspFace/PL_Queue.cpp" +include_directories( + "${WORKSPACE_PATH}/RtspFace" + "${WORKSPACE_PATH}/FaceServer" - "D:/workspace/proxy/FaceServer/proto_hton_ntoh.cpp" - "D:/workspace/proxy/FaceServer/PbFaceList.pb.cc" + #"D:/workspace/libhardware-android-5.1.1_r38/include" + #"D:/workspace/core-android-5.1.1_r38/include" + #"D:/workspace/native-android-5.1.1_r38/include" + #"D:/workspace/core-android-5.1.1_r38/libsync/include" + #"D:/workspace/native-android-5.1.1_r38/opengl/include" - "D:/workspace/proxy/RtspFace/libv4l2cpp/src/V4l2Capture.cpp" - "D:/workspace/proxy/RtspFace/libv4l2cpp/src/V4l2Device.cpp" - "D:/workspace/proxy/RtspFace/libv4l2cpp/src/V4l2MmapDevice.cpp" - "D:/workspace/proxy/RtspFace/libv4l2cpp/src/V4l2Output.cpp" + "${WORKSPACE_PATH}/VisitFace/RtspNativeCodec/app/libs/live555/include" + "${WORKSPACE_PATH}/VisitFace/RtspNativeCodec/app/libs/live555/include/BasicUsageEnvironment" + "${WORKSPACE_PATH}/VisitFace/RtspNativeCodec/app/libs/live555/include/groupsock" + "${WORKSPACE_PATH}/VisitFace/RtspNativeCodec/app/libs/live555/include/liveMedia" + "${WORKSPACE_PATH}/VisitFace/RtspNativeCodec/app/libs/live555/include/UsageEnvironment" + "${WORKSPACE_PATH}/VisitFace/RtspNativeCodec/app/libs/jsoncpp/include/json" - ) + "${WORKSPACE_PATH}/VisitFace/RtspNativeCodec/app/libs/libyuv/include" + + "${WORKSPACE_PATH}/VisitFace/RtspNativeCodec/app/libs/opencv/include" + + "${WORKSPACE_PATH}/VisitFace/RtspNativeCodec/app/libs/protobuf/include" + + "${WORKSPACE_PATH}/VisitFace/RtspNativeCodec/app/libs/st_face/include" + + "${WORKSPACE_PATH}/VisitFace/RtspNativeCodec/app/libs/capnproto/include" + + "${WORKSPACE_PATH}/VisitFace/RtspNativeCodec/app/libs/freetype/include/freetype2" + ) + +add_library(rtspface_server SHARED + RtspNativeCodecJNIServer.cpp + RemoteMethod.capnp.cpp + RemoteFuncServer.cpp + RemoteFunc.cpp + CameraWrapperServer.cpp + FaceCache.cpp + FaceCacheForPLBG.cpp + DebugNetwork.cpp + CaptureCamera.cpp + cpu_sched_test.cpp + serial.c + TeleWrapper.cpp + AppConfig.cpp + + "${WORKSPACE_PATH}/RtspFace/PipeLine.cpp" + "${WORKSPACE_PATH}/RtspFace/Logger/src/logger.cc" + "${WORKSPACE_PATH}/RtspFace/MediaHelper.cpp" + "${WORKSPACE_PATH}/RtspFace/PreAllocBufferQueue.cpp" + "${WORKSPACE_PATH}/RtspFace/GraphicHelper.cpp" + "${WORKSPACE_PATH}/RtspFace/PL_RTSPClient.cpp" + "${WORKSPACE_PATH}/RtspFace/PL_AndroidMediaCodecDecoder_ndk.cpp" + "${WORKSPACE_PATH}/RtspFace/PL_AndroidSurfaceViewRender.cpp" + "${WORKSPACE_PATH}/RtspFace/PL_SensetimeFaceTrack.cpp" + "${WORKSPACE_PATH}/RtspFace/PL_SensetimeFaceTrackMultiTrd.cpp" + "${WORKSPACE_PATH}/RtspFace/PL_SensetimeFaceTrack.cpp" + "${WORKSPACE_PATH}/RtspFace/PL_Gainer.cpp" + "${WORKSPACE_PATH}/RtspFace/PL_Scale.cpp" + "${WORKSPACE_PATH}/RtspFace/PL_ColorConv.cpp" + "${WORKSPACE_PATH}/RtspFace/PL_Paint.cpp" + "${WORKSPACE_PATH}/RtspFace/PL_BlockGrouping.cpp" + #"${WORKSPACE_PATH}/RtspFace/PL_Queue.cpp" + #"${WORKSPACE_PATH}/RtspFace/PL_Fork2.cpp" + "${WORKSPACE_PATH}/RtspFace/PL_AndroidMediaCodecEncoder.cpp" + "${WORKSPACE_PATH}/RtspFace/PL_RTSPServer2.cpp" + + "${WORKSPACE_PATH}/FaceServer/proto_hton_ntoh.cpp" + "${WORKSPACE_PATH}/FaceServer/PbFaceList.pb.cc" + + "${WORKSPACE_PATH}/RtspFace/CvUtil/CvxText.cpp" + + "${WORKSPACE_PATH}/RtspFace/FFmpegRTSPServer/LiveServerMediaSubsession.cpp" + "${WORKSPACE_PATH}/RtspFace/FFmpegRTSPServer/LiveRTSPServer.cpp" + "${WORKSPACE_PATH}/RtspFace/FFmpegRTSPServer/FFmpegH264Source.cpp" + "${WORKSPACE_PATH}/RtspFace/FFmpegRTSPServer/H264FramedSource.cpp" + ) # Include libraries needed for native-codec-jni lib -target_link_libraries(rtspface - android - log - #ui - mediandk - #OpenMAXAL +target_link_libraries(rtspface_server + android + log + #ui + mediandk + #OpenMAXAL #jnigraphics #EGL #GLESv2 #GLESv3 + + "${WORKSPACE_PATH}/VisitFace/RtspNativeCodec/app/libs/live555/lib/${ARCH}/libliveMedia.a" + "${WORKSPACE_PATH}/VisitFace/RtspNativeCodec/app/libs/live555/lib/${ARCH}/libgroupsock.a" + "${WORKSPACE_PATH}/VisitFace/RtspNativeCodec/app/libs/live555/lib/${ARCH}/libBasicUsageEnvironment.a" + "${WORKSPACE_PATH}/VisitFace/RtspNativeCodec/app/libs/live555/lib/${ARCH}/libUsageEnvironment.a" + + "${WORKSPACE_PATH}/VisitFace/RtspNativeCodec/app/libs/libyuv/lib/${ARCH}/libyuv_static.a" + "${WORKSPACE_PATH}/VisitFace/RtspNativeCodec/app/libs/opencv/lib/${ARCH}/libopencv_java3.so" + "${WORKSPACE_PATH}/VisitFace/RtspNativeCodec/app/libs/protobuf/lib/${ARCH}/libprotobuf.so" + "${WORKSPACE_PATH}/VisitFace/RtspNativeCodec/app/libs/st_face/lib/${ARCH}/libcvface_api.so" + "${WORKSPACE_PATH}/VisitFace/RtspNativeCodec/app/libs/freetype/lib/${ARCH}/libfreetype.so" + "${WORKSPACE_PATH}/VisitFace/RtspNativeCodec/app/libs/jsoncpp/lib/${ARCH}/libjsoncpp.so" + + "${WORKSPACE_PATH}/VisitFace/RtspNativeCodec/app/libs/capnproto/lib/${ARCH}/libcapnp-0.7-dev.so" + "${WORKSPACE_PATH}/VisitFace/RtspNativeCodec/app/libs/capnproto/lib/${ARCH}/libcapnp-json-0.7-dev.so" + "${WORKSPACE_PATH}/VisitFace/RtspNativeCodec/app/libs/capnproto/lib/${ARCH}/libcapnp-rpc-0.7-dev.so" + "${WORKSPACE_PATH}/VisitFace/RtspNativeCodec/app/libs/capnproto/lib/${ARCH}/libcapnpc-0.7-dev.so" + "${WORKSPACE_PATH}/VisitFace/RtspNativeCodec/app/libs/capnproto/lib/${ARCH}/libkj-0.7-dev.so" + "${WORKSPACE_PATH}/VisitFace/RtspNativeCodec/app/libs/capnproto/lib/${ARCH}/libkj-async-0.7-dev.so" + + #"${WORKSPACE_PATH}/VisitFace/RtspNativeCodec/app/libs/android_sys/libgui.so" + #"${WORKSPACE_PATH}/VisitFace/RtspNativeCodec/app/libs/android_sys/libui.so" + #"${WORKSPACE_PATH}/VisitFace/RtspNativeCodec/app/libs/android_sys/libEGL.so" + #"${WORKSPACE_PATH}/VisitFace/RtspNativeCodec/app/libs/android_sys/libGLESv3.so" ) -include_directories( - "D:/workspace/proxy/RtspFace" - "D:/workspace/proxy/FaceServer" - #"D:/workspace/libhardware-android-5.1.1_r38/include" - #"D:/workspace/core-android-5.1.1_r38/include" - #"D:/workspace/native-android-5.1.1_r38/include" - #"D:/workspace/core-android-5.1.1_r38/libsync/include" - #"D:/workspace/native-android-5.1.1_r38/opengl/include" +add_library(rtspface_client SHARED + RtspNativeCodecJNIClient.cpp + RemoteMethod.capnp.cpp + RemoteFuncClient.cpp + RemoteFunc.cpp + CameraWrapperClient.cpp + FaceCache.cpp + FaceCacheForPLBG.cpp + DebugNetwork.cpp + CaptureCamera.cpp + cpu_sched_test.cpp + serial.c + TeleWrapper.cpp + AppConfig.cpp - "D:/workspace/proxy/VisitFace/RtspNativeCodec/app/libs/live555/include" - "D:/workspace/proxy/VisitFace/RtspNativeCodec/app/libs/live555/include/BasicUsageEnvironment" - "D:/workspace/proxy/VisitFace/RtspNativeCodec/app/libs/live555/include/groupsock" - "D:/workspace/proxy/VisitFace/RtspNativeCodec/app/libs/live555/include/liveMedia" - "D:/workspace/proxy/VisitFace/RtspNativeCodec/app/libs/live555/include/UsageEnvironment" + "${WORKSPACE_PATH}/RtspFace/PipeLine.cpp" + "${WORKSPACE_PATH}/RtspFace/Logger/src/logger.cc" + "${WORKSPACE_PATH}/RtspFace/MediaHelper.cpp" + "${WORKSPACE_PATH}/RtspFace/GraphicHelper.cpp" + "${WORKSPACE_PATH}/RtspFace/PL_RTSPClient.cpp" + "${WORKSPACE_PATH}/RtspFace/PL_AndroidMediaCodecDecoder_ndk.cpp" + "${WORKSPACE_PATH}/RtspFace/PL_AndroidSurfaceViewRender.cpp" + "${WORKSPACE_PATH}/RtspFace/PL_SensetimeFaceTrack.cpp" + "${WORKSPACE_PATH}/RtspFace/PL_SensetimeFaceTrackMultiTrd.cpp" + "${WORKSPACE_PATH}/RtspFace/PL_Gainer.cpp" + "${WORKSPACE_PATH}/RtspFace/PL_Scale.cpp" + "${WORKSPACE_PATH}/RtspFace/PL_ColorConv.cpp" + "${WORKSPACE_PATH}/RtspFace/PL_Paint.cpp" + "${WORKSPACE_PATH}/RtspFace/PL_BlockGrouping.cpp" + #"${WORKSPACE_PATH}/RtspFace/PL_Queue.cpp" + #"${WORKSPACE_PATH}/RtspFace/PL_Fork2.cpp" + #"${WORKSPACE_PATH}/RtspFace/PL_AndroidMediaCodecEncoder.cpp" - "D:/workspace/proxy/VisitFace/RtspNativeCodec/app/libs/libyuv/include" + "${WORKSPACE_PATH}/FaceServer/proto_hton_ntoh.cpp" + "${WORKSPACE_PATH}/FaceServer/PbFaceList.pb.cc" - "D:/workspace/proxy/VisitFace/RtspNativeCodec/app/libs/opencv/include" + "${WORKSPACE_PATH}/RtspFace/CvUtil/CvxText.cpp" - "D:/workspace/proxy/VisitFace/RtspNativeCodec/app/libs/protobuf/include" + ) - "D:/workspace/proxy/VisitFace/RtspNativeCodec/app/libs/st_face/include" +# Include libraries needed for native-codec-jni lib +target_link_libraries(rtspface_client + android + log + #ui + mediandk + #OpenMAXAL + #jnigraphics + #EGL + #GLESv2 + #GLESv3 - "D:/workspace/proxy/RtspFace/libv4l2cpp/inc" - #"D:/workspace/proxy/VisitFace/RtspNativeCodec/app/libs/libv4l2wrapper/include" - ) + "${WORKSPACE_PATH}/VisitFace/RtspNativeCodec/app/libs/live555/lib/${ARCH}/libliveMedia.a" + "${WORKSPACE_PATH}/VisitFace/RtspNativeCodec/app/libs/live555/lib/${ARCH}/libgroupsock.a" + "${WORKSPACE_PATH}/VisitFace/RtspNativeCodec/app/libs/live555/lib/${ARCH}/libBasicUsageEnvironment.a" + "${WORKSPACE_PATH}/VisitFace/RtspNativeCodec/app/libs/live555/lib/${ARCH}/libUsageEnvironment.a" -target_link_libraries(rtspface - "D:/workspace/proxy/VisitFace/RtspNativeCodec/app/libs/live555/lib/armeabi-v7a/libliveMedia.a" - "D:/workspace/proxy/VisitFace/RtspNativeCodec/app/libs/live555/lib/armeabi-v7a/libgroupsock.a" - "D:/workspace/proxy/VisitFace/RtspNativeCodec/app/libs/live555/lib/armeabi-v7a/libBasicUsageEnvironment.a" - "D:/workspace/proxy/VisitFace/RtspNativeCodec/app/libs/live555/lib/armeabi-v7a/libUsageEnvironment.a" + "${WORKSPACE_PATH}/VisitFace/RtspNativeCodec/app/libs/libyuv/lib/${ARCH}/libyuv_static.a" + "${WORKSPACE_PATH}/VisitFace/RtspNativeCodec/app/libs/opencv/lib/${ARCH}/libopencv_java3.so" + "${WORKSPACE_PATH}/VisitFace/RtspNativeCodec/app/libs/protobuf/lib/${ARCH}/libprotobuf.so" + "${WORKSPACE_PATH}/VisitFace/RtspNativeCodec/app/libs/st_face/lib/${ARCH}/libcvface_api.so" + "${WORKSPACE_PATH}/VisitFace/RtspNativeCodec/app/libs/freetype/lib/${ARCH}/libfreetype.so" - "D:/workspace/proxy/VisitFace/RtspNativeCodec/app/libs/libyuv/lib/armeabi-v7a/libyuv_static.a" - "D:/workspace/proxy/VisitFace/RtspNativeCodec/app/libs/opencv/lib/armeabi-v7a/libopencv_java3.so" - "D:/workspace/proxy/VisitFace/RtspNativeCodec/app/libs/protobuf/lib/armeabi-v7a/libprotobuf.so" - "D:/workspace/proxy/VisitFace/RtspNativeCodec/app/libs/st_face/lib/armeabi-v7a/libcvface_api.so" + "${WORKSPACE_PATH}/VisitFace/RtspNativeCodec/app/libs/jsoncpp/lib/${ARCH}/libjsoncpp.so" - #"D:/workspace/proxy/VisitFace/RtspNativeCodec/app/libs/libv4l2wrapper/lib/armeabi-v7a/libv4l2wrapper.a" + "${WORKSPACE_PATH}/VisitFace/RtspNativeCodec/app/libs/capnproto/lib/${ARCH}/libcapnp-0.7-dev.so" + "${WORKSPACE_PATH}/VisitFace/RtspNativeCodec/app/libs/capnproto/lib/${ARCH}/libcapnp-json-0.7-dev.so" + "${WORKSPACE_PATH}/VisitFace/RtspNativeCodec/app/libs/capnproto/lib/${ARCH}/libcapnp-rpc-0.7-dev.so" + "${WORKSPACE_PATH}/VisitFace/RtspNativeCodec/app/libs/capnproto/lib/${ARCH}/libcapnpc-0.7-dev.so" + "${WORKSPACE_PATH}/VisitFace/RtspNativeCodec/app/libs/capnproto/lib/${ARCH}/libkj-0.7-dev.so" + "${WORKSPACE_PATH}/VisitFace/RtspNativeCodec/app/libs/capnproto/lib/${ARCH}/libkj-async-0.7-dev.so" - #"D:/workspace/proxy/VisitFace/RtspNativeCodec/app/libs/android_sys/libgui.so" - #"D:/workspace/proxy/VisitFace/RtspNativeCodec/app/libs/android_sys/libui.so" - #"D:/workspace/proxy/VisitFace/RtspNativeCodec/app/libs/android_sys/libEGL.so" - #"D:/workspace/proxy/VisitFace/RtspNativeCodec/app/libs/android_sys/libGLESv3.so" - ) + #"${WORKSPACE_PATH}/VisitFace/RtspNativeCodec/app/libs/android_sys/libgui.so" + #"${WORKSPACE_PATH}/VisitFace/RtspNativeCodec/app/libs/android_sys/libui.so" + #"${WORKSPACE_PATH}/VisitFace/RtspNativeCodec/app/libs/android_sys/libEGL.so" + #"${WORKSPACE_PATH}/VisitFace/RtspNativeCodec/app/libs/android_sys/libGLESv3.so" + ) -- Gitblit v1.8.0