webrtc/sdk/android
Magnus Jedvert 2ed62b3c9b Android: Allow construction of GlTextureFrameBuffer from non-OpenGL thread
This CL makes it possible to create a GlTextureFrameBuffer from any
thread. The actual GL resources will be allocated the first time
setSize() is called. The purpose is to be able to use 'final' variables
more often for this class and avoid @Nullable annotations.

Bug: None
Change-Id: I350304bcd33fd674990254df37a615995972f322
Reviewed-on: https://webrtc-review.googlesource.com/69241
Commit-Queue: Magnus Jedvert <magjed@webrtc.org>
Reviewed-by: Sami Kalliomäki <sakal@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#22835}
2018-04-12 07:19:46 +00:00
..
api/org/webrtc Android: Allow construction of GlTextureFrameBuffer from non-OpenGL thread 2018-04-12 07:19:46 +00:00
instrumentationtests Annotate rest of WebRTC with @Nullable. 2018-03-28 08:30:06 +00:00
native_api Android: Add AudioDeviceModule interface and clean up implementation code 2018-04-06 10:13:02 +00:00
native_unittests Add support for creating java PCF from native one. 2018-03-22 13:37:24 +00:00
src Small cleanup in sdk/android ADM 2018-04-11 13:44:56 +00:00
tests/src/org/webrtc Moving src/webrtc into src/. 2017-09-15 04:25:06 +00:00
AndroidManifest.xml Moving src/webrtc into src/. 2017-09-15 04:25:06 +00:00
BUILD.gn Make VideoFrame.Buffer implementations lock-free. 2018-04-09 16:29:59 +00:00
OWNERS Android: Add henrika@ as owner of audio code 2018-03-21 09:59:18 +00:00
PRESUBMIT.py Moving src/webrtc into src/. 2017-09-15 04:25:06 +00:00
README Updating android/README. 2018-03-01 20:22:48 +00:00

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, make sure you have a WebRTC checkout
with Android specific parts. This can be used for linux development as well by
configuring gn appropriately, as it is a superset of the webrtc checkout:
fetch --nohooks webrtc_android
gclient sync

You also must generate GN projects with:
--args='target_os="android" target_cpu="arm"'

More information on getting the code, compiling and running the AppRTCMobile
app can be found at:
https://webrtc.org/native-code/android/

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 src/jni/pc/.