The code that depends on the reverted CL is disabled but not removed. NativeHandleImpl is reverted to the previous implementation, and the new implementation is renamed to NativeTextureHandleImpl. Texture capture can not be used anymore, because it will crash in peerconnection_jni.cc. Reason for revert: Increased HW decoder latency and crashes related to that. Also suspected cause of video tearing. Original issue's description: > This CL should be the last one in a series to finally > unblock camera texture capture. > > The SurfaceTexture.updateTexImage() calls are moved from > the video renderers into MediaCodecVideoDecoder, and the > destructor of the texture frames will signal > MediaCodecVideoDecoder that the frame has returned. This > CL also removes the SurfaceTexture from the native handle > and only exposes the texture matrix instead, because only > the video source should access the SurfaceTexture. > > BUG=webrtc:4993 > R=glaznev@webrtc.org, perkj@webrtc.org > > Committed: https://crrev.com/91b348c7029d843e06868ed12b728a809c53176c > Cr-Commit-Position: refs/heads/master@{#10203} TBR=glaznev BUG=webrtc:4993 Review URL: https://codereview.webrtc.org/1394103005 Cr-Commit-Position: refs/heads/master@{#10288}
This directory holds a Java implementation of the webrtc::PeerConnection API, as
well as the JNI glue C++ code that lets the Java implementation reuse the C++
implementation of the same API.
To build the Java API and related tests, build with
OS=linux or OS=android and include
build_with_libjingle=1 build_with_chromium=0
in $GYP_DEFINES.
To use the Java API, start by looking at the public interface of
org.webrtc.PeerConnection{,Factory} and the org.webrtc.PeerConnectionTest.
To understand the implementation of the API, see the native code in jni/.
An example command-line to build & run the unittest:
cd path/to/trunk
GYP_DEFINES="build_with_libjingle=1 build_with_chromium=0 java_home=path/to/JDK" gclient runhooks && \
ninja -C out/Debug libjingle_peerconnection_java_unittest && \
./out/Debug/libjingle_peerconnection_java_unittest
(where path/to/JDK should contain include/jni.h)
During development it can be helpful to run the JVM with the -Xcheck:jni flag.