webrtc/sdk/android
Sergey Silkin 89facfc421 Fix potential null pointer access in HardwareVideoEncoder
There was no check for null in the code that prepends config buffer to key frame buffer. It is not a requirement for codec to deliver config buffer. Some codecs probably do not do that.

Bug: none
Change-Id: Id9c57efc5d1de5f569fa773313da4db3cd8b074c
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/299900
Reviewed-by: Erik Språng <sprang@webrtc.org>
Commit-Queue: Sergey Silkin <ssilkin@webrtc.org>
Cr-Commit-Position: refs/heads/main@{#39807}
2023-04-11 13:50:41 +00:00
..
api/org/webrtc Add H265 to VideoCodecMimeType 2023-03-17 15:28:11 +00:00
instrumentationtests Revert "Replace BuiltinVideo{Encoder,Decoder}Factory with Video{Encoder,Decoder}FactoryTemplate." 2023-04-06 14:21:30 +00:00
native_api Add support for JavaToNativeFloatArray 2023-03-29 11:03:30 +00:00
native_unittests AndroidNetworkMonitor - loosen assumptions even more 2022-12-05 10:01:01 +00:00
src Fix potential null pointer access in HardwareVideoEncoder 2023-04-11 13:50:41 +00:00
tests Fix potential null pointer access in HardwareVideoEncoder 2023-04-11 13:50:41 +00:00
AndroidManifest.xml Roll chromium_revision 4d95e6c77b..71a0e1904e (776481:782339) 2020-06-26 05:33:14 +00:00
BUILD.gn Revert "Replace BuiltinVideo{Encoder,Decoder}Factory with Video{Encoder,Decoder}FactoryTemplate." 2023-04-06 14:21:30 +00:00
OWNERS Remove redundant PRESUBMIT.py files. 2022-03-31 10:48:31 +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/.