xuxiuxi
2017-05-04 15d0c49e85159b9e27870aff5280c0cd95b103c4
VisitFace/RtspNativeCodec/app/src/main/cpp/RtspNativeCodecJNI.cpp
@@ -58,7 +58,7 @@
    env->ReleaseStringUTFChars(ipaddr, utf8);
}
void createHiddenSurface(JNIEnv *env, int cameraIdx)
static void createHiddenSurface(JNIEnv *env, int cameraIdx)
{
    CameraWrapper& cameraWrapper(g_CameraWrappers[cameraIdx]);
@@ -70,10 +70,16 @@
    jclass jcOutputSurface = env->FindClass("com/example/nativecodec/OutputSurface");
    jmethodID jmOutputSurface_ctor = env->GetMethodID(jcOutputSurface, "<init>", "(II)V");
    jmethodID jmOutputSurface_getSurface = env->GetMethodID(jcOutputSurface, "getSurface", "()Landroid/view/Surface;");
    jmethodID jmOutputSurface_readPixels = env->GetMethodID(jcOutputSurface, "readPixels", "()Ljava/nio/Buffer;");
    jobject jobjOutputSurface = env->NewObject(jcOutputSurface , jmOutputSurface_ctor, 1920, 1088);
    jobject jobjSurface = env->CallObjectMethod(jobjOutputSurface, jmOutputSurface_getSurface);
    cameraWrapper.windowDecode = ANativeWindow_fromSurface(env, jobjSurface);
}
void readPixels(uint8_t* buf, size_t& maxSize)
{
}
// set the surface
@@ -122,8 +128,8 @@
      cameraWrapper.amcdConfig.ak_mime = "video/avc";
      cameraWrapper.amcdConfig.ak_width = 640;
      cameraWrapper.amcdConfig.ak_height = 480;
        cameraWrapper.amcdConfig.windowSurfaceDecode = nullptr; //cameraWrapper.windowDecode;
        cameraWrapper.amcdConfig.windowSurfaceRender = nullptr;
        cameraWrapper.amcdConfig.windowSurfaceDecode = cameraWrapper.windowDecode; //cameraWrapper.windowDecode;
        cameraWrapper.amcdConfig.windowSurfaceRender = nullptr;//cameraWrapper.windowRender;
        cameraWrapper.amcdConfig.releaseOutputBuffIdx = true;
        cameraWrapper.amcdConfig.releaseOutputBuffIdxInPay = false;
        cameraWrapper.amcdConfig.generateDecodedDataPerFrame = 1;