mirror of
https://github.com/mollyim/webrtc.git
synced 2025-05-19 08:37:54 +01:00
![]() Scaling settings is a static property of the encoder wrapper. It has no any dependencies on underlaying HW codec and can be fetched from any thread. getScalingSettings is called from VideoEncoderWrapper ctor [1]. Presence of checkIsOnValidThread() in getScalingSettings caused capturing of thread [2]. That required all following codec calls to be done from the thread that created the codec. [1] https://source.chromium.org/chromium/chromium/src/+/main:third_party/webrtc/sdk/android/src/jni/video_encoder_wrapper.cc;drc=c05a1be5b49f5c03b6955b05bcbf47609e1b0381;l=41 [2] https://source.chromium.org/chromium/chromium/src/+/main:third_party/webrtc/rtc_base/java/src/org/webrtc/ThreadUtils.java;l=30 Bug: b/261160916, webrtc:14852 Change-Id: I7bb18bc8e3b371d83ccd44d4a5a096f716c0a0e2 Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/291807 Reviewed-by: Rasmus Brandt <brandtr@webrtc.org> Commit-Queue: Sergey Silkin <ssilkin@webrtc.org> Cr-Commit-Position: refs/heads/main@{#39303} |
||
---|---|---|
.. | ||
api/org/webrtc | ||
instrumentationtests | ||
native_api | ||
native_unittests | ||
src | ||
tests | ||
AndroidManifest.xml | ||
BUILD.gn | ||
OWNERS | ||
README |
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/.