diff --git a/examples/androidnativeapi/BUILD.gn b/examples/androidnativeapi/BUILD.gn
index cbb1de47d2..3897a3300d 100644
--- a/examples/androidnativeapi/BUILD.gn
+++ b/examples/androidnativeapi/BUILD.gn
@@ -28,6 +28,7 @@ generate_jni("generated_jni") {
"java/org/webrtc/examples/androidnativeapi/CallClient.java",
]
jni_package = ""
+ namespace = "webrtc_examples"
jni_generator_include = "//sdk/android/src/jni/jni_generator_helper.h"
}
diff --git a/examples/androidnativeapi/java/org/webrtc/examples/androidnativeapi/CallClient.java b/examples/androidnativeapi/java/org/webrtc/examples/androidnativeapi/CallClient.java
index 439665cd68..b95e29bd01 100644
--- a/examples/androidnativeapi/java/org/webrtc/examples/androidnativeapi/CallClient.java
+++ b/examples/androidnativeapi/java/org/webrtc/examples/androidnativeapi/CallClient.java
@@ -13,13 +13,10 @@ package org.webrtc.examples.androidnativeapi;
import android.content.Context;
import android.os.Handler;
import android.os.HandlerThread;
-import org.webrtc.JNINamespace;
-import org.webrtc.NativeClassQualifiedName;
import org.webrtc.SurfaceTextureHelper;
import org.webrtc.VideoCapturer;
import org.webrtc.VideoSink;
-@JNINamespace("webrtc_examples")
public class CallClient {
private static final String TAG = "CallClient";
private static final int CAPTURE_WIDTH = 640;
@@ -65,13 +62,10 @@ public class CallClient {
}
private static native long nativeCreateClient();
- @NativeClassQualifiedName("webrtc_examples::AndroidCallClient")
- private static native void nativeCall(long nativePtr, VideoSink localSink, VideoSink remoteSink);
- @NativeClassQualifiedName("webrtc_examples::AndroidCallClient")
- private static native void nativeHangup(long nativePtr);
- @NativeClassQualifiedName("webrtc_examples::AndroidCallClient")
- private static native void nativeDelete(long nativePtr);
- @NativeClassQualifiedName("webrtc_examples::AndroidCallClient")
+ private static native void nativeCall(
+ long nativeAndroidCallClient, VideoSink localSink, VideoSink remoteSink);
+ private static native void nativeHangup(long nativeAndroidCallClient);
+ private static native void nativeDelete(long nativeAndroidCallClient);
private static native VideoCapturer.CapturerObserver nativeGetJavaVideoCapturerObserver(
- long nativePtr);
+ long nativeAndroidCallClient);
}
diff --git a/sdk/android/BUILD.gn b/sdk/android/BUILD.gn
index 62cb141d92..4286ef71fe 100644
--- a/sdk/android/BUILD.gn
+++ b/sdk/android/BUILD.gn
@@ -42,6 +42,7 @@ generate_jni("generated_base_jni") {
"src/java/org/webrtc/JniCommon.java",
]
jni_package = ""
+ namespace = "webrtc::jni"
jni_generator_include = "//sdk/android/src/jni/jni_generator_helper.h"
}
@@ -252,6 +253,7 @@ generate_jni("generated_audio_device_module_base_jni") {
"src/java/org/webrtc/audio/WebRtcAudioManager.java",
]
jni_package = ""
+ namespace = "webrtc::jni"
jni_generator_include = "//sdk/android/src/jni/jni_generator_helper.h"
}
@@ -261,6 +263,7 @@ generate_jni("generated_java_audio_device_module_native_jni") {
"src/java/org/webrtc/audio/WebRtcAudioTrack.java",
]
jni_package = ""
+ namespace = "webrtc::jni"
jni_generator_include = "//sdk/android/src/jni/jni_generator_helper.h"
}
@@ -297,6 +300,7 @@ generate_jni("generated_video_jni") {
sources += [ "api/org/webrtc/HardwareVideoEncoderFactory.java" ] # TODO(andersc): This currently depends on SoftwareVideoEncoderFactory
}
jni_package = ""
+ namespace = "webrtc::jni"
jni_generator_include = "//sdk/android/src/jni/jni_generator_helper.h"
}
@@ -418,6 +422,7 @@ generate_jni("generated_vp8_jni") {
]
jni_package = ""
+ namespace = "webrtc::jni"
jni_generator_include = "//sdk/android/src/jni/jni_generator_helper.h"
}
@@ -440,6 +445,7 @@ generate_jni("generated_vp9_jni") {
]
jni_package = ""
+ namespace = "webrtc::jni"
jni_generator_include = "//sdk/android/src/jni/jni_generator_helper.h"
}
@@ -509,6 +515,7 @@ generate_jni("generated_peerconnection_jni") {
"api/org/webrtc/TurnCustomizer.java",
]
jni_package = ""
+ namespace = "webrtc::jni"
jni_generator_include = "//sdk/android/src/jni/jni_generator_helper.h"
}
@@ -628,6 +635,7 @@ generate_jni("generated_metrics_jni") {
"api/org/webrtc/Metrics.java",
]
jni_package = ""
+ namespace = "webrtc::jni"
jni_generator_include = "//sdk/android/src/jni/jni_generator_helper.h"
}
@@ -734,8 +742,6 @@ rtc_android_library("base_java") {
"src/java/org/webrtc/Histogram.java",
"src/java/org/webrtc/JniCommon.java",
"src/java/org/webrtc/JniHelper.java",
- "src/java/org/webrtc/JNINamespace.java",
- "src/java/org/webrtc/NativeClassQualifiedName.java",
"src/java/org/webrtc/RefCountDelegate.java",
"src/java/org/webrtc/WebRtcClassLoader.java",
]
@@ -827,6 +833,7 @@ generate_jni("generated_java_audio_jni") {
"api/org/webrtc/audio/JavaAudioDeviceModule.java",
]
jni_package = ""
+ namespace = "webrtc::jni"
jni_generator_include = "//sdk/android/src/jni/jni_generator_helper.h"
}
@@ -1138,6 +1145,7 @@ generate_jni("generated_native_api_jni") {
"src/java/org/webrtc/WebRtcClassLoader.java",
]
jni_package = ""
+ namespace = "webrtc::jni"
jni_generator_include = "//sdk/android/src/jni/jni_generator_helper.h"
}
@@ -1252,6 +1260,7 @@ generate_jni("generated_native_unittests_jni") {
"native_unittests/org/webrtc/PeerConnectionFactoryInitializationHelper.java",
]
jni_package = ""
+ namespace = "webrtc::jni"
jni_generator_include = "//sdk/android/src/jni/jni_generator_helper.h"
}
diff --git a/sdk/android/api/org/webrtc/AudioTrack.java b/sdk/android/api/org/webrtc/AudioTrack.java
index 6663666b40..828e89c5e5 100644
--- a/sdk/android/api/org/webrtc/AudioTrack.java
+++ b/sdk/android/api/org/webrtc/AudioTrack.java
@@ -11,7 +11,6 @@
package org.webrtc;
/** Java wrapper for a C++ AudioTrackInterface */
-@JNINamespace("webrtc::jni")
public class AudioTrack extends MediaStreamTrack {
public AudioTrack(long nativeTrack) {
super(nativeTrack);
diff --git a/sdk/android/api/org/webrtc/CallSessionFileRotatingLogSink.java b/sdk/android/api/org/webrtc/CallSessionFileRotatingLogSink.java
index b55c042ed3..c6b9e97e7d 100644
--- a/sdk/android/api/org/webrtc/CallSessionFileRotatingLogSink.java
+++ b/sdk/android/api/org/webrtc/CallSessionFileRotatingLogSink.java
@@ -10,7 +10,6 @@
package org.webrtc;
-@JNINamespace("webrtc::jni")
public class CallSessionFileRotatingLogSink {
private long nativeSink;
diff --git a/sdk/android/api/org/webrtc/DataChannel.java b/sdk/android/api/org/webrtc/DataChannel.java
index 21873df2a0..6b034096dc 100644
--- a/sdk/android/api/org/webrtc/DataChannel.java
+++ b/sdk/android/api/org/webrtc/DataChannel.java
@@ -13,7 +13,6 @@ package org.webrtc;
import java.nio.ByteBuffer;
/** Java wrapper for a C++ DataChannelInterface. */
-@JNINamespace("webrtc::jni")
public class DataChannel {
/** Java wrapper for WebIDL RTCDataChannel. */
public static class Init {
diff --git a/sdk/android/api/org/webrtc/DtmfSender.java b/sdk/android/api/org/webrtc/DtmfSender.java
index 4dcb794405..9f203f390e 100644
--- a/sdk/android/api/org/webrtc/DtmfSender.java
+++ b/sdk/android/api/org/webrtc/DtmfSender.java
@@ -11,7 +11,6 @@
package org.webrtc;
/** Java wrapper for a C++ DtmfSenderInterface. */
-@JNINamespace("webrtc::jni")
public class DtmfSender {
final long nativeDtmfSender;
diff --git a/sdk/android/api/org/webrtc/HardwareVideoEncoderFactory.java b/sdk/android/api/org/webrtc/HardwareVideoEncoderFactory.java
index 70b7ebb6bc..19c641b89a 100644
--- a/sdk/android/api/org/webrtc/HardwareVideoEncoderFactory.java
+++ b/sdk/android/api/org/webrtc/HardwareVideoEncoderFactory.java
@@ -26,7 +26,6 @@ import javax.annotation.Nullable;
/** Factory for android hardware video encoders. */
@SuppressWarnings("deprecation") // API 16 requires the use of deprecated methods.
-@JNINamespace("webrtc::jni")
public class HardwareVideoEncoderFactory implements VideoEncoderFactory {
private static final String TAG = "HardwareVideoEncoderFactory";
diff --git a/sdk/android/api/org/webrtc/MediaCodecVideoEncoder.java b/sdk/android/api/org/webrtc/MediaCodecVideoEncoder.java
index e4eb90c5cf..2858c6c6e9 100644
--- a/sdk/android/api/org/webrtc/MediaCodecVideoEncoder.java
+++ b/sdk/android/api/org/webrtc/MediaCodecVideoEncoder.java
@@ -37,7 +37,6 @@ import org.webrtc.VideoFrame;
// This class is an implementation detail of the Java PeerConnection API.
@TargetApi(19)
@SuppressWarnings("deprecation")
-@JNINamespace("webrtc::jni")
public class MediaCodecVideoEncoder {
// This class is constructed, operated, and destroyed by its C++ incarnation,
// so the class and its methods have non-public visibility. The API this
diff --git a/sdk/android/api/org/webrtc/MediaSource.java b/sdk/android/api/org/webrtc/MediaSource.java
index 8e6da176cf..3f20dd7353 100644
--- a/sdk/android/api/org/webrtc/MediaSource.java
+++ b/sdk/android/api/org/webrtc/MediaSource.java
@@ -11,7 +11,6 @@
package org.webrtc;
/** Java wrapper for a C++ MediaSourceInterface. */
-@JNINamespace("webrtc::jni")
public class MediaSource {
/** Tracks MediaSourceInterface.SourceState */
public enum State {
diff --git a/sdk/android/api/org/webrtc/MediaStream.java b/sdk/android/api/org/webrtc/MediaStream.java
index 459c128a9b..7f4a43402d 100644
--- a/sdk/android/api/org/webrtc/MediaStream.java
+++ b/sdk/android/api/org/webrtc/MediaStream.java
@@ -15,7 +15,6 @@ import java.util.List;
import java.util.Iterator;
/** Java wrapper for a C++ MediaStreamInterface. */
-@JNINamespace("webrtc::jni")
public class MediaStream {
private static final String TAG = "MediaStream";
diff --git a/sdk/android/api/org/webrtc/MediaStreamTrack.java b/sdk/android/api/org/webrtc/MediaStreamTrack.java
index 65da734ee5..198da1e3e8 100644
--- a/sdk/android/api/org/webrtc/MediaStreamTrack.java
+++ b/sdk/android/api/org/webrtc/MediaStreamTrack.java
@@ -13,7 +13,6 @@ package org.webrtc;
import javax.annotation.Nullable;
/** Java wrapper for a C++ MediaStreamTrackInterface. */
-@JNINamespace("webrtc::jni")
public class MediaStreamTrack {
public static final String AUDIO_TRACK_KIND = "audio";
public static final String VIDEO_TRACK_KIND = "video";
diff --git a/sdk/android/api/org/webrtc/Metrics.java b/sdk/android/api/org/webrtc/Metrics.java
index 43cf439c0b..3098f7265c 100644
--- a/sdk/android/api/org/webrtc/Metrics.java
+++ b/sdk/android/api/org/webrtc/Metrics.java
@@ -28,7 +28,6 @@ import java.util.Map;
// Most histograms are not updated frequently (e.g. most video metrics are an
// average over the call and recorded when a stream is removed).
// The metrics can for example be retrieved when a peer connection is closed.
-@JNINamespace("webrtc::jni")
public class Metrics {
private static final String TAG = "Metrics";
diff --git a/sdk/android/api/org/webrtc/NetworkMonitor.java b/sdk/android/api/org/webrtc/NetworkMonitor.java
index ff3ea15903..ba6bae0ed8 100644
--- a/sdk/android/api/org/webrtc/NetworkMonitor.java
+++ b/sdk/android/api/org/webrtc/NetworkMonitor.java
@@ -278,18 +278,13 @@ public class NetworkMonitor {
return connectionType != ConnectionType.CONNECTION_NONE;
}
- @NativeClassQualifiedName("webrtc::jni::AndroidNetworkMonitor")
- private native void nativeNotifyConnectionTypeChanged(long nativePtr);
-
- @NativeClassQualifiedName("webrtc::jni::AndroidNetworkMonitor")
- private native void nativeNotifyOfNetworkConnect(long nativePtr, NetworkInformation networkInfo);
-
- @NativeClassQualifiedName("webrtc::jni::AndroidNetworkMonitor")
- private native void nativeNotifyOfNetworkDisconnect(long nativePtr, long networkHandle);
-
- @NativeClassQualifiedName("webrtc::jni::AndroidNetworkMonitor")
+ private native void nativeNotifyConnectionTypeChanged(long nativeAndroidNetworkMonitor);
+ private native void nativeNotifyOfNetworkConnect(
+ long nativeAndroidNetworkMonitor, NetworkInformation networkInfo);
+ private native void nativeNotifyOfNetworkDisconnect(
+ long nativeAndroidNetworkMonitor, long networkHandle);
private native void nativeNotifyOfActiveNetworkList(
- long nativePtr, NetworkInformation[] networkInfos);
+ long nativeAndroidNetworkMonitor, NetworkInformation[] networkInfos);
// For testing only.
@Nullable
diff --git a/sdk/android/api/org/webrtc/PeerConnection.java b/sdk/android/api/org/webrtc/PeerConnection.java
index 71a258e6c0..b9e31e1e6b 100644
--- a/sdk/android/api/org/webrtc/PeerConnection.java
+++ b/sdk/android/api/org/webrtc/PeerConnection.java
@@ -21,7 +21,6 @@ import javax.annotation.Nullable;
* JS APIs: http://dev.w3.org/2011/webrtc/editor/webrtc.html and
* http://www.w3.org/TR/mediacapture-streams/
*/
-@JNINamespace("webrtc::jni")
public class PeerConnection {
/** Tracks PeerConnectionInterface::IceGatheringState */
public enum IceGatheringState {
diff --git a/sdk/android/api/org/webrtc/PeerConnectionFactory.java b/sdk/android/api/org/webrtc/PeerConnectionFactory.java
index 04806b868b..07afac68f6 100644
--- a/sdk/android/api/org/webrtc/PeerConnectionFactory.java
+++ b/sdk/android/api/org/webrtc/PeerConnectionFactory.java
@@ -20,7 +20,6 @@ import org.webrtc.audio.LegacyAudioDeviceModule;
* Java wrapper for a C++ PeerConnectionFactoryInterface. Main entry point to
* the PeerConnection API for clients.
*/
-@JNINamespace("webrtc::jni")
public class PeerConnectionFactory {
public static final String TRIAL_ENABLED = "Enabled";
@Deprecated public static final String VIDEO_FRAME_EMIT_TRIAL = "VideoFrameEmit";
diff --git a/sdk/android/api/org/webrtc/RtpReceiver.java b/sdk/android/api/org/webrtc/RtpReceiver.java
index b77051919a..193820b5ac 100644
--- a/sdk/android/api/org/webrtc/RtpReceiver.java
+++ b/sdk/android/api/org/webrtc/RtpReceiver.java
@@ -14,7 +14,6 @@ import javax.annotation.Nullable;
import org.webrtc.MediaStreamTrack;
/** Java wrapper for a C++ RtpReceiverInterface. */
-@JNINamespace("webrtc::jni")
public class RtpReceiver {
/** Java wrapper for a C++ RtpReceiverObserverInterface*/
public static interface Observer {
diff --git a/sdk/android/api/org/webrtc/RtpSender.java b/sdk/android/api/org/webrtc/RtpSender.java
index e20352b381..4e268f3361 100644
--- a/sdk/android/api/org/webrtc/RtpSender.java
+++ b/sdk/android/api/org/webrtc/RtpSender.java
@@ -13,7 +13,6 @@ package org.webrtc;
import javax.annotation.Nullable;
/** Java wrapper for a C++ RtpSenderInterface. */
-@JNINamespace("webrtc::jni")
public class RtpSender {
final long nativeRtpSender;
diff --git a/sdk/android/api/org/webrtc/RtpTransceiver.java b/sdk/android/api/org/webrtc/RtpTransceiver.java
index 3086950dc3..93326a41a3 100644
--- a/sdk/android/api/org/webrtc/RtpTransceiver.java
+++ b/sdk/android/api/org/webrtc/RtpTransceiver.java
@@ -31,7 +31,6 @@ import org.webrtc.RtpParameters.Encoding;
*
WebRTC specification for RTCRtpTransceiver, the JavaScript analog:
* https://w3c.github.io/webrtc-pc/#dom-rtcrtptransceiver
*/
-@JNINamespace("webrtc::jni")
public class RtpTransceiver {
/** Java version of webrtc::RtpTransceiverDirection - the ordering must be kept in sync. */
public enum RtpTransceiverDirection {
diff --git a/sdk/android/api/org/webrtc/TurnCustomizer.java b/sdk/android/api/org/webrtc/TurnCustomizer.java
index 1c2b080db6..bfc72ea2d0 100644
--- a/sdk/android/api/org/webrtc/TurnCustomizer.java
+++ b/sdk/android/api/org/webrtc/TurnCustomizer.java
@@ -11,7 +11,6 @@
package org.webrtc;
/** Java wrapper for a C++ TurnCustomizer. */
-@JNINamespace("webrtc::jni")
public class TurnCustomizer {
final long nativeTurnCustomizer;
diff --git a/sdk/android/api/org/webrtc/VideoDecoderFallback.java b/sdk/android/api/org/webrtc/VideoDecoderFallback.java
index f748da78b2..743a614621 100644
--- a/sdk/android/api/org/webrtc/VideoDecoderFallback.java
+++ b/sdk/android/api/org/webrtc/VideoDecoderFallback.java
@@ -13,7 +13,6 @@ package org.webrtc;
/**
* A combined video decoder that falls back on a secondary decoder if the primary decoder fails.
*/
-@JNINamespace("webrtc::jni")
public class VideoDecoderFallback extends WrappedNativeVideoDecoder {
private final VideoDecoder fallback;
private final VideoDecoder primary;
diff --git a/sdk/android/api/org/webrtc/VideoEncoderFallback.java b/sdk/android/api/org/webrtc/VideoEncoderFallback.java
index 59e7ffc271..cd45eb7520 100644
--- a/sdk/android/api/org/webrtc/VideoEncoderFallback.java
+++ b/sdk/android/api/org/webrtc/VideoEncoderFallback.java
@@ -13,7 +13,6 @@ package org.webrtc;
/**
* A combined video encoder that falls back on a secondary encoder if the primary encoder fails.
*/
-@JNINamespace("webrtc::jni")
public class VideoEncoderFallback extends WrappedNativeVideoEncoder {
private final VideoEncoder fallback;
private final VideoEncoder primary;
diff --git a/sdk/android/api/org/webrtc/VideoFileRenderer.java b/sdk/android/api/org/webrtc/VideoFileRenderer.java
index c599491f04..adfd6eec13 100644
--- a/sdk/android/api/org/webrtc/VideoFileRenderer.java
+++ b/sdk/android/api/org/webrtc/VideoFileRenderer.java
@@ -24,7 +24,6 @@ import java.util.concurrent.LinkedBlockingQueue;
/**
* Can be used to save the video frames to file.
*/
-@JNINamespace("webrtc::jni")
public class VideoFileRenderer implements VideoSink {
private static final String TAG = "VideoFileRenderer";
diff --git a/sdk/android/api/org/webrtc/VideoFrame.java b/sdk/android/api/org/webrtc/VideoFrame.java
index 91c596c01c..b496f00910 100644
--- a/sdk/android/api/org/webrtc/VideoFrame.java
+++ b/sdk/android/api/org/webrtc/VideoFrame.java
@@ -26,7 +26,6 @@ import javax.annotation.Nullable;
* format and serves as a fallback for video sinks that can only handle I420, e.g. the internal
* WebRTC software encoders.
*/
-@JNINamespace("webrtc::jni")
public class VideoFrame implements RefCounted {
/**
* Implements image storage medium. Might be for example an OpenGL texture or a memory region
diff --git a/sdk/android/api/org/webrtc/VideoFrameDrawer.java b/sdk/android/api/org/webrtc/VideoFrameDrawer.java
index 9909f378bf..1e8a04d3f3 100644
--- a/sdk/android/api/org/webrtc/VideoFrameDrawer.java
+++ b/sdk/android/api/org/webrtc/VideoFrameDrawer.java
@@ -21,7 +21,6 @@ import javax.annotation.Nullable;
* drawer.drawYuv depending on the type of the buffer. The frame will be rendered with rotation
* taken into account. You can supply an additional render matrix for custom transformations.
*/
-@JNINamespace("webrtc::jni")
public class VideoFrameDrawer {
/**
* Draws a VideoFrame.TextureBuffer. Calls either drawer.drawOes or drawer.drawRgb
diff --git a/sdk/android/api/org/webrtc/VideoRenderer.java b/sdk/android/api/org/webrtc/VideoRenderer.java
index 7b289b0f7d..f781679b3c 100644
--- a/sdk/android/api/org/webrtc/VideoRenderer.java
+++ b/sdk/android/api/org/webrtc/VideoRenderer.java
@@ -20,7 +20,6 @@ import org.webrtc.VideoFrame;
* class also provides a createGui() method for creating a GUI-rendering window
* on various platforms.
*/
-@JNINamespace("webrtc::jni")
public class VideoRenderer {
/**
* Java version of webrtc::VideoFrame. Frames are only constructed from native code and test
diff --git a/sdk/android/api/org/webrtc/VideoSource.java b/sdk/android/api/org/webrtc/VideoSource.java
index a326a2c884..3a290e3895 100644
--- a/sdk/android/api/org/webrtc/VideoSource.java
+++ b/sdk/android/api/org/webrtc/VideoSource.java
@@ -15,7 +15,6 @@ import javax.annotation.Nullable;
/**
* Java wrapper of native AndroidVideoTrackSource.
*/
-@JNINamespace("webrtc::jni")
public class VideoSource extends MediaSource {
private final NativeCapturerObserver capturerObserver;
diff --git a/sdk/android/api/org/webrtc/VideoTrack.java b/sdk/android/api/org/webrtc/VideoTrack.java
index e0eebeda0d..214078b2ca 100644
--- a/sdk/android/api/org/webrtc/VideoTrack.java
+++ b/sdk/android/api/org/webrtc/VideoTrack.java
@@ -15,7 +15,6 @@ import java.util.ArrayList;
import java.util.List;
/** Java version of VideoTrackInterface. */
-@JNINamespace("webrtc::jni")
public class VideoTrack extends MediaStreamTrack {
private final List renderers = new ArrayList<>();
private final IdentityHashMap sinks = new IdentityHashMap();
diff --git a/sdk/android/api/org/webrtc/YuvHelper.java b/sdk/android/api/org/webrtc/YuvHelper.java
index da94fec4bc..f82fde880a 100644
--- a/sdk/android/api/org/webrtc/YuvHelper.java
+++ b/sdk/android/api/org/webrtc/YuvHelper.java
@@ -13,7 +13,6 @@ package org.webrtc;
import java.nio.ByteBuffer;
/** Wraps libyuv methods to Java. All passed byte buffers must be direct byte buffers. */
-@JNINamespace("webrtc::jni")
public class YuvHelper {
/** Helper method for copying I420 to tightly packed destination buffer. */
public static void I420Copy(ByteBuffer srcY, int srcStrideY, ByteBuffer srcU, int srcStrideU,
diff --git a/sdk/android/api/org/webrtc/audio/JavaAudioDeviceModule.java b/sdk/android/api/org/webrtc/audio/JavaAudioDeviceModule.java
index 93e8ba550e..4daa5f0648 100644
--- a/sdk/android/api/org/webrtc/audio/JavaAudioDeviceModule.java
+++ b/sdk/android/api/org/webrtc/audio/JavaAudioDeviceModule.java
@@ -12,7 +12,6 @@ package org.webrtc.audio;
import android.media.AudioManager;
import android.content.Context;
-import org.webrtc.JNINamespace;
import org.webrtc.JniCommon;
import org.webrtc.Logging;
@@ -20,7 +19,6 @@ import org.webrtc.Logging;
* AudioDeviceModule implemented using android.media.AudioRecord as input and
* android.media.AudioTrack as output.
*/
-@JNINamespace("webrtc::jni")
public class JavaAudioDeviceModule implements AudioDeviceModule {
private static final String TAG = "JavaAudioDeviceModule";
diff --git a/sdk/android/native_api/audio_device_module/audio_device_android.cc b/sdk/android/native_api/audio_device_module/audio_device_android.cc
index cf738d01ee..8a426a611d 100644
--- a/sdk/android/native_api/audio_device_module/audio_device_android.cc
+++ b/sdk/android/native_api/audio_device_module/audio_device_android.cc
@@ -36,13 +36,12 @@ void GetDefaultAudioParameters(JNIEnv* env,
AudioParameters* output_parameters) {
const JavaParamRef j_context(application_context);
const ScopedJavaLocalRef j_audio_manager =
- android_adm::GetAudioManager(env, j_context);
- const int sample_rate =
- android_adm::GetDefaultSampleRate(env, j_audio_manager);
- android_adm::GetAudioParameters(env, j_context, j_audio_manager, sample_rate,
- false /* use_stereo_input */,
- false /* use_stereo_output */,
- input_parameters, output_parameters);
+ jni::GetAudioManager(env, j_context);
+ const int sample_rate = jni::GetDefaultSampleRate(env, j_audio_manager);
+ jni::GetAudioParameters(env, j_context, j_audio_manager, sample_rate,
+ false /* use_stereo_input */,
+ false /* use_stereo_output */, input_parameters,
+ output_parameters);
}
} // namespace
@@ -61,9 +60,9 @@ rtc::scoped_refptr CreateAAudioAudioDeviceModule(
return CreateAudioDeviceModuleFromInputAndOutput(
AudioDeviceModule::kAndroidAAudioAudio, false /* use_stereo_input */,
false /* use_stereo_output */,
- android_adm::kLowLatencyModeDelayEstimateInMilliseconds,
- rtc::MakeUnique(input_parameters),
- rtc::MakeUnique(output_parameters));
+ jni::kLowLatencyModeDelayEstimateInMilliseconds,
+ rtc::MakeUnique(input_parameters),
+ rtc::MakeUnique(output_parameters));
}
#endif
@@ -74,26 +73,25 @@ rtc::scoped_refptr CreateJavaAudioDeviceModule(
// Get default audio input/output parameters.
const JavaParamRef j_context(application_context);
const ScopedJavaLocalRef j_audio_manager =
- android_adm::GetAudioManager(env, j_context);
+ jni::GetAudioManager(env, j_context);
AudioParameters input_parameters;
AudioParameters output_parameters;
GetDefaultAudioParameters(env, application_context, &input_parameters,
&output_parameters);
// Create ADM from AudioRecord and AudioTrack.
- auto audio_input = rtc::MakeUnique(
- env, input_parameters,
- android_adm::kHighLatencyModeDelayEstimateInMilliseconds,
- android_adm::AudioRecordJni::CreateJavaWebRtcAudioRecord(
- env, j_context, j_audio_manager));
- auto audio_output = rtc::MakeUnique(
+ auto audio_input = rtc::MakeUnique(
+ env, input_parameters, jni::kHighLatencyModeDelayEstimateInMilliseconds,
+ jni::AudioRecordJni::CreateJavaWebRtcAudioRecord(env, j_context,
+ j_audio_manager));
+ auto audio_output = rtc::MakeUnique(
env, output_parameters,
- android_adm::AudioTrackJni::CreateJavaWebRtcAudioTrack(env, j_context,
- j_audio_manager));
+ jni::AudioTrackJni::CreateJavaWebRtcAudioTrack(env, j_context,
+ j_audio_manager));
return CreateAudioDeviceModuleFromInputAndOutput(
AudioDeviceModule::kAndroidJavaAudio, false /* use_stereo_input */,
false /* use_stereo_output */,
- android_adm::kHighLatencyModeDelayEstimateInMilliseconds,
- std::move(audio_input), std::move(audio_output));
+ jni::kHighLatencyModeDelayEstimateInMilliseconds, std::move(audio_input),
+ std::move(audio_output));
}
rtc::scoped_refptr CreateOpenSLESAudioDeviceModule(
@@ -106,16 +104,16 @@ rtc::scoped_refptr CreateOpenSLESAudioDeviceModule(
GetDefaultAudioParameters(env, application_context, &input_parameters,
&output_parameters);
// Create ADM from OpenSLESRecorder and OpenSLESPlayer.
- auto engine_manager = rtc::MakeUnique();
- auto audio_input = rtc::MakeUnique(
+ auto engine_manager = rtc::MakeUnique();
+ auto audio_input = rtc::MakeUnique(
input_parameters, engine_manager.get());
- auto audio_output = rtc::MakeUnique(
+ auto audio_output = rtc::MakeUnique(
output_parameters, std::move(engine_manager));
return CreateAudioDeviceModuleFromInputAndOutput(
AudioDeviceModule::kAndroidOpenSLESAudio, false /* use_stereo_input */,
false /* use_stereo_output */,
- android_adm::kLowLatencyModeDelayEstimateInMilliseconds,
- std::move(audio_input), std::move(audio_output));
+ jni::kLowLatencyModeDelayEstimateInMilliseconds, std::move(audio_input),
+ std::move(audio_output));
}
rtc::scoped_refptr
@@ -125,24 +123,23 @@ CreateJavaInputAndOpenSLESOutputAudioDeviceModule(JNIEnv* env,
// Get default audio input/output parameters.
const JavaParamRef j_context(application_context);
const ScopedJavaLocalRef j_audio_manager =
- android_adm::GetAudioManager(env, j_context);
+ jni::GetAudioManager(env, j_context);
AudioParameters input_parameters;
AudioParameters output_parameters;
GetDefaultAudioParameters(env, application_context, &input_parameters,
&output_parameters);
// Create ADM from AudioRecord and OpenSLESPlayer.
- auto audio_input = rtc::MakeUnique(
- env, input_parameters,
- android_adm::kLowLatencyModeDelayEstimateInMilliseconds,
- android_adm::AudioRecordJni::CreateJavaWebRtcAudioRecord(
- env, j_context, j_audio_manager));
- auto audio_output = rtc::MakeUnique(
- output_parameters, rtc::MakeUnique());
+ auto audio_input = rtc::MakeUnique(
+ env, input_parameters, jni::kLowLatencyModeDelayEstimateInMilliseconds,
+ jni::AudioRecordJni::CreateJavaWebRtcAudioRecord(env, j_context,
+ j_audio_manager));
+ auto audio_output = rtc::MakeUnique(
+ output_parameters, rtc::MakeUnique());
return CreateAudioDeviceModuleFromInputAndOutput(
AudioDeviceModule::kAndroidJavaInputAndOpenSLESOutputAudio,
false /* use_stereo_input */, false /* use_stereo_output */,
- android_adm::kLowLatencyModeDelayEstimateInMilliseconds,
- std::move(audio_input), std::move(audio_output));
+ jni::kLowLatencyModeDelayEstimateInMilliseconds, std::move(audio_input),
+ std::move(audio_output));
}
} // namespace webrtc
diff --git a/sdk/android/native_api/jni/class_loader.cc b/sdk/android/native_api/jni/class_loader.cc
index 0b5a87fbb3..2c06460f9e 100644
--- a/sdk/android/native_api/jni/class_loader.cc
+++ b/sdk/android/native_api/jni/class_loader.cc
@@ -32,7 +32,7 @@ namespace {
class ClassLoader {
public:
explicit ClassLoader(JNIEnv* env)
- : class_loader_(Java_WebRtcClassLoader_getClassLoader(env)) {
+ : class_loader_(jni::Java_WebRtcClassLoader_getClassLoader(env)) {
class_loader_class_ = reinterpret_cast(
env->NewGlobalRef(env->FindClass("java/lang/ClassLoader")));
CHECK_EXCEPTION(env);
diff --git a/sdk/android/native_api/jni/java_types.cc b/sdk/android/native_api/jni/java_types.cc
index fd383d59e5..fbc35aae5c 100644
--- a/sdk/android/native_api/jni/java_types.cc
+++ b/sdk/android/native_api/jni/java_types.cc
@@ -112,13 +112,13 @@ Iterable GetJavaMapEntrySet(JNIEnv* jni, const JavaRef& j_map) {
ScopedJavaLocalRef GetJavaMapEntryKey(
JNIEnv* jni,
const JavaRef& j_entry) {
- return Java_JniHelper_getKey(jni, j_entry);
+ return jni::Java_JniHelper_getKey(jni, j_entry);
}
ScopedJavaLocalRef GetJavaMapEntryValue(
JNIEnv* jni,
const JavaRef& j_entry) {
- return Java_JniHelper_getValue(jni, j_entry);
+ return jni::Java_JniHelper_getValue(jni, j_entry);
}
int64_t JavaToNativeLong(JNIEnv* env, const JavaRef& j_long) {
@@ -143,7 +143,7 @@ rtc::Optional JavaToNativeOptionalInt(
// Given a jstring, reinterprets it to a new native string.
std::string JavaToNativeString(JNIEnv* jni, const JavaRef& j_string) {
const ScopedJavaLocalRef j_byte_array =
- Java_JniHelper_getStringBytes(jni, j_string);
+ jni::Java_JniHelper_getStringBytes(jni, j_string);
const size_t len = jni->GetArrayLength(j_byte_array.obj());
CHECK_EXCEPTION(jni) << "error during GetArrayLength";
@@ -243,7 +243,8 @@ ScopedJavaLocalRef NativeToJavaStringArray(
&NativeToJavaString;
return NativeToJavaObjectArray(
env, container,
- static_cast(Java_JniHelper_getStringClass(env).obj()), convert);
+ static_cast(jni::Java_JniHelper_getStringClass(env).obj()),
+ convert);
}
JavaListBuilder::JavaListBuilder(JNIEnv* env)
diff --git a/sdk/android/native_unittests/audio_device/audio_device_unittest.cc b/sdk/android/native_unittests/audio_device/audio_device_unittest.cc
index 3b3f254ef1..4181094e68 100644
--- a/sdk/android/native_unittests/audio_device/audio_device_unittest.cc
+++ b/sdk/android/native_unittests/audio_device/audio_device_unittest.cc
@@ -50,7 +50,7 @@ using ::testing::Return;
namespace webrtc {
-namespace android_adm {
+namespace jni {
// Number of callbacks (input or output) the tests waits for before we set
// an event indicating that the test was OK.
@@ -1135,6 +1135,6 @@ TEST_F(AudioDeviceTest, DISABLED_MeasureLoopbackLatency) {
latency_audio_stream->PrintResults();
}
-} // namespace android_adm
+} // namespace jni
} // namespace webrtc
diff --git a/sdk/android/native_unittests/java_types_unittest.cc b/sdk/android/native_unittests/java_types_unittest.cc
index a549e03ca4..bd769e6eed 100644
--- a/sdk/android/native_unittests/java_types_unittest.cc
+++ b/sdk/android/native_unittests/java_types_unittest.cc
@@ -21,7 +21,7 @@ namespace {
TEST(JavaTypesTest, TestJavaToNativeStringMap) {
JNIEnv* env = AttachCurrentThreadIfNeeded();
ScopedJavaLocalRef j_map =
- Java_JavaTypesTestHelper_createTestStringMap(env);
+ jni::Java_JavaTypesTestHelper_createTestStringMap(env);
std::map output = JavaToNativeStringMap(env, j_map);
diff --git a/sdk/android/native_unittests/peerconnection/peerconnectionfactory_unittest.cc b/sdk/android/native_unittests/peerconnection/peerconnectionfactory_unittest.cc
index 97f6497794..b06290f6ae 100644
--- a/sdk/android/native_unittests/peerconnection/peerconnectionfactory_unittest.cc
+++ b/sdk/android/native_unittests/peerconnection/peerconnectionfactory_unittest.cc
@@ -61,7 +61,8 @@ TEST(PeerConnectionFactoryTest, NativeToJavaPeerConnectionFactory) {
JNIEnv* jni = AttachCurrentThreadIfNeeded();
RTC_LOG(INFO) << "Initializing java peer connection factory.";
- Java_PeerConnectionFactoryInitializationHelper_initializeFactoryForTests(jni);
+ jni::Java_PeerConnectionFactoryInitializationHelper_initializeFactoryForTests(
+ jni);
RTC_LOG(INFO) << "Java peer connection factory initialized.";
// Create threads.
diff --git a/sdk/android/native_unittests/video/videosource_unittest.cc b/sdk/android/native_unittests/video/videosource_unittest.cc
index 1db049288d..5365ababf6 100644
--- a/sdk/android/native_unittests/video/videosource_unittest.cc
+++ b/sdk/android/native_unittests/video/videosource_unittest.cc
@@ -62,10 +62,10 @@ TEST(JavaVideoSourceTest, OnFrameCapturedFrameIsDeliveredToSink) {
false /* is_screencast */);
video_track_source->AddOrUpdateSink(&test_video_sink, rtc::VideoSinkWants());
- Java_JavaVideoSourceTestHelper_startCapture(
+ jni::Java_JavaVideoSourceTestHelper_startCapture(
env, video_track_source->GetJavaVideoCapturerObserver(env),
true /* success */);
- Java_JavaVideoSourceTestHelper_deliverFrame(
+ jni::Java_JavaVideoSourceTestHelper_deliverFrame(
env, video_track_source->GetJavaVideoCapturerObserver(env));
std::vector frames = test_video_sink.GetFrames();
@@ -86,7 +86,7 @@ TEST(JavaVideoSourceTest, CapturerStartedSuccessStateBecomesLive) {
rtc::ThreadManager::Instance()->CurrentThread(),
false /* is_screencast */);
- Java_JavaVideoSourceTestHelper_startCapture(
+ jni::Java_JavaVideoSourceTestHelper_startCapture(
env, video_track_source->GetJavaVideoCapturerObserver(env),
true /* success */);
@@ -104,7 +104,7 @@ TEST(JavaVideoSourceTest, CapturerStartedFailureStateBecomesEnded) {
rtc::ThreadManager::Instance()->CurrentThread(),
false /* is_screencast */);
- Java_JavaVideoSourceTestHelper_startCapture(
+ jni::Java_JavaVideoSourceTestHelper_startCapture(
env, video_track_source->GetJavaVideoCapturerObserver(env),
false /* success */);
@@ -122,10 +122,10 @@ TEST(JavaVideoSourceTest, CapturerStoppedStateBecomesEnded) {
rtc::ThreadManager::Instance()->CurrentThread(),
false /* is_screencast */);
- Java_JavaVideoSourceTestHelper_startCapture(
+ jni::Java_JavaVideoSourceTestHelper_startCapture(
env, video_track_source->GetJavaVideoCapturerObserver(env),
true /* success */);
- Java_JavaVideoSourceTestHelper_stopCapture(
+ jni::Java_JavaVideoSourceTestHelper_stopCapture(
env, video_track_source->GetJavaVideoCapturerObserver(env));
EXPECT_EQ(VideoTrackSourceInterface::SourceState::kEnded,
diff --git a/sdk/android/src/java/org/webrtc/Histogram.java b/sdk/android/src/java/org/webrtc/Histogram.java
index 9043e4b0c8..877986134a 100644
--- a/sdk/android/src/java/org/webrtc/Histogram.java
+++ b/sdk/android/src/java/org/webrtc/Histogram.java
@@ -19,7 +19,6 @@ package org.webrtc;
* Histogram.createCounts("WebRTC.Video.SomeMetric", 1, 10000, 50);
* someMetricHistogram.addSample(someVariable);
*/
-@JNINamespace("webrtc::jni")
class Histogram {
private final long handle;
diff --git a/sdk/android/src/java/org/webrtc/JNINamespace.java b/sdk/android/src/java/org/webrtc/JNINamespace.java
deleted file mode 100644
index f0fe20f157..0000000000
--- a/sdk/android/src/java/org/webrtc/JNINamespace.java
+++ /dev/null
@@ -1,26 +0,0 @@
-/*
- * Copyright 2017 The WebRTC project authors. All Rights Reserved.
- *
- * Use of this source code is governed by a BSD-style license
- * that can be found in the LICENSE file in the root of the source
- * tree. An additional intellectual property rights grant can be found
- * in the file PATENTS. All contributing project authors may
- * be found in the AUTHORS file in the root of the source tree.
- */
-
-package org.webrtc;
-
-import java.lang.annotation.ElementType;
-import java.lang.annotation.Retention;
-import java.lang.annotation.RetentionPolicy;
-import java.lang.annotation.Target;
-
-/**
- * @JNINamespace is used by the JNI generator to create the necessary JNI
- * bindings and expose this method to native code using the specified namespace.
- */
-@Target(ElementType.TYPE)
-@Retention(RetentionPolicy.RUNTIME)
-public @interface JNINamespace {
- public String value();
-}
diff --git a/sdk/android/src/java/org/webrtc/JniCommon.java b/sdk/android/src/java/org/webrtc/JniCommon.java
index 0b0790f818..e1b2e513d7 100644
--- a/sdk/android/src/java/org/webrtc/JniCommon.java
+++ b/sdk/android/src/java/org/webrtc/JniCommon.java
@@ -13,7 +13,6 @@ package org.webrtc;
import java.nio.ByteBuffer;
/** Class with static JNI helper functions that are used in many places. */
-@JNINamespace("webrtc::jni")
public class JniCommon {
/** Functions to increment/decrement an rtc::RefCountInterface pointer. */
public static native void nativeAddRef(long refCountedPointer);
diff --git a/sdk/android/src/java/org/webrtc/NV12Buffer.java b/sdk/android/src/java/org/webrtc/NV12Buffer.java
index 0a85d7f51c..7fe7f587af 100644
--- a/sdk/android/src/java/org/webrtc/NV12Buffer.java
+++ b/sdk/android/src/java/org/webrtc/NV12Buffer.java
@@ -13,7 +13,6 @@ package org.webrtc;
import java.nio.ByteBuffer;
import javax.annotation.Nullable;
-@JNINamespace("webrtc::jni")
public class NV12Buffer implements VideoFrame.Buffer {
private final int width;
private final int height;
diff --git a/sdk/android/src/java/org/webrtc/NV21Buffer.java b/sdk/android/src/java/org/webrtc/NV21Buffer.java
index a2c47b93e4..a2a7743485 100644
--- a/sdk/android/src/java/org/webrtc/NV21Buffer.java
+++ b/sdk/android/src/java/org/webrtc/NV21Buffer.java
@@ -14,7 +14,6 @@ import java.nio.ByteBuffer;
import java.util.concurrent.atomic.AtomicInteger;
import javax.annotation.Nullable;
-@JNINamespace("webrtc::jni")
public class NV21Buffer implements VideoFrame.Buffer {
private final byte[] data;
private final int width;
diff --git a/sdk/android/src/java/org/webrtc/NativeCapturerObserver.java b/sdk/android/src/java/org/webrtc/NativeCapturerObserver.java
index ba5d6a7f05..63a46b8804 100644
--- a/sdk/android/src/java/org/webrtc/NativeCapturerObserver.java
+++ b/sdk/android/src/java/org/webrtc/NativeCapturerObserver.java
@@ -16,7 +16,6 @@ import javax.annotation.Nullable;
* Implements VideoCapturer.CapturerObserver and feeds frames to
* webrtc::jni::AndroidVideoTrackSource.
*/
-@JNINamespace("webrtc::jni")
class NativeCapturerObserver implements VideoCapturer.CapturerObserver {
// Pointer to webrtc::jni::AndroidVideoTrackSource.
private final long nativeSource;
diff --git a/sdk/android/src/java/org/webrtc/NativeClassQualifiedName.java b/sdk/android/src/java/org/webrtc/NativeClassQualifiedName.java
deleted file mode 100644
index 5adce75ce5..0000000000
--- a/sdk/android/src/java/org/webrtc/NativeClassQualifiedName.java
+++ /dev/null
@@ -1,31 +0,0 @@
-/*
- * Copyright 2017 The WebRTC project authors. All Rights Reserved.
- *
- * Use of this source code is governed by a BSD-style license
- * that can be found in the LICENSE file in the root of the source
- * tree. An additional intellectual property rights grant can be found
- * in the file PATENTS. All contributing project authors may
- * be found in the AUTHORS file in the root of the source tree.
- */
-
-package org.webrtc;
-
-import java.lang.annotation.ElementType;
-import java.lang.annotation.Retention;
-import java.lang.annotation.RetentionPolicy;
-import java.lang.annotation.Target;
-
-/**
- * @NativeClassQualifiedName is used by the JNI generator to create the necessary JNI
- * bindings to call into the specified native class name.
- */
-@Target(ElementType.METHOD)
-@Retention(RetentionPolicy.RUNTIME)
-public @interface NativeClassQualifiedName {
- /*
- * Tells which native class the method is going to be bound to.
- * The first parameter of the annotated method must be an int nativePtr pointing to
- * an instance of this class.
- */
- public String value();
-}
diff --git a/sdk/android/src/java/org/webrtc/VP8Decoder.java b/sdk/android/src/java/org/webrtc/VP8Decoder.java
index f9d5165212..c307edcf26 100644
--- a/sdk/android/src/java/org/webrtc/VP8Decoder.java
+++ b/sdk/android/src/java/org/webrtc/VP8Decoder.java
@@ -10,7 +10,6 @@
package org.webrtc;
-@JNINamespace("webrtc::jni")
class VP8Decoder extends WrappedNativeVideoDecoder {
@Override
long createNativeDecoder() {
diff --git a/sdk/android/src/java/org/webrtc/VP8Encoder.java b/sdk/android/src/java/org/webrtc/VP8Encoder.java
index f9967426f6..f04c079566 100644
--- a/sdk/android/src/java/org/webrtc/VP8Encoder.java
+++ b/sdk/android/src/java/org/webrtc/VP8Encoder.java
@@ -10,7 +10,6 @@
package org.webrtc;
-@JNINamespace("webrtc::jni")
class VP8Encoder extends WrappedNativeVideoEncoder {
@Override
long createNativeEncoder() {
diff --git a/sdk/android/src/java/org/webrtc/VP9Decoder.java b/sdk/android/src/java/org/webrtc/VP9Decoder.java
index 52d8f02c00..5c7dc969eb 100644
--- a/sdk/android/src/java/org/webrtc/VP9Decoder.java
+++ b/sdk/android/src/java/org/webrtc/VP9Decoder.java
@@ -10,7 +10,6 @@
package org.webrtc;
-@JNINamespace("webrtc::jni")
class VP9Decoder extends WrappedNativeVideoDecoder {
@Override
long createNativeDecoder() {
diff --git a/sdk/android/src/java/org/webrtc/VP9Encoder.java b/sdk/android/src/java/org/webrtc/VP9Encoder.java
index ca9398ebf9..449eb7eb53 100644
--- a/sdk/android/src/java/org/webrtc/VP9Encoder.java
+++ b/sdk/android/src/java/org/webrtc/VP9Encoder.java
@@ -10,7 +10,6 @@
package org.webrtc;
-@JNINamespace("webrtc::jni")
class VP9Encoder extends WrappedNativeVideoEncoder {
@Override
long createNativeEncoder() {
diff --git a/sdk/android/src/java/org/webrtc/VideoDecoderWrapper.java b/sdk/android/src/java/org/webrtc/VideoDecoderWrapper.java
index 93e74e05e4..2aae041640 100644
--- a/sdk/android/src/java/org/webrtc/VideoDecoderWrapper.java
+++ b/sdk/android/src/java/org/webrtc/VideoDecoderWrapper.java
@@ -22,7 +22,6 @@ class VideoDecoderWrapper {
Integer qp) -> nativeOnDecodedFrame(nativeDecoder, frame, decodeTimeMs, qp);
}
- @NativeClassQualifiedName("webrtc::jni::VideoDecoderWrapper")
private static native void nativeOnDecodedFrame(
- long nativeDecoder, VideoFrame frame, Integer decodeTimeMs, Integer qp);
+ long nativeVideoDecoderWrapper, VideoFrame frame, Integer decodeTimeMs, Integer qp);
}
diff --git a/sdk/android/src/java/org/webrtc/VideoEncoderWrapper.java b/sdk/android/src/java/org/webrtc/VideoEncoderWrapper.java
index c8a48ff920..207d7d09c9 100644
--- a/sdk/android/src/java/org/webrtc/VideoEncoderWrapper.java
+++ b/sdk/android/src/java/org/webrtc/VideoEncoderWrapper.java
@@ -44,8 +44,7 @@ class VideoEncoderWrapper {
frame.rotation, frame.completeFrame, frame.qp);
}
- @NativeClassQualifiedName("webrtc::jni::VideoEncoderWrapper")
- private static native void nativeOnEncodedFrame(long nativeEncoder, ByteBuffer buffer,
+ private static native void nativeOnEncodedFrame(long nativeVideoEncoderWrapper, ByteBuffer buffer,
int encodedWidth, int encodedHeight, long captureTimeNs, int frameType, int rotation,
boolean completeFrame, Integer qp);
}
diff --git a/sdk/android/src/java/org/webrtc/audio/WebRtcAudioRecord.java b/sdk/android/src/java/org/webrtc/audio/WebRtcAudioRecord.java
index 5ae94d6991..66f619dfbf 100644
--- a/sdk/android/src/java/org/webrtc/audio/WebRtcAudioRecord.java
+++ b/sdk/android/src/java/org/webrtc/audio/WebRtcAudioRecord.java
@@ -24,7 +24,6 @@ import java.util.concurrent.TimeUnit;
import javax.annotation.Nullable;
import org.webrtc.CalledByNative;
import org.webrtc.Logging;
-import org.webrtc.NativeClassQualifiedName;
import org.webrtc.ThreadUtils;
import org.webrtc.audio.JavaAudioDeviceModule.AudioRecordErrorCallback;
import org.webrtc.audio.JavaAudioDeviceModule.AudioRecordStartErrorCode;
@@ -321,11 +320,9 @@ class WebRtcAudioRecord {
return (channels == 1 ? AudioFormat.CHANNEL_IN_MONO : AudioFormat.CHANNEL_IN_STEREO);
}
- @NativeClassQualifiedName("webrtc::android_adm::AudioRecordJni")
- private native void nativeCacheDirectBufferAddress(long nativeAudioRecord, ByteBuffer byteBuffer);
-
- @NativeClassQualifiedName("webrtc::android_adm::AudioRecordJni")
- private native void nativeDataIsRecorded(long nativeAudioRecord, int bytes);
+ private native void nativeCacheDirectBufferAddress(
+ long nativeAudioRecordJni, ByteBuffer byteBuffer);
+ private native void nativeDataIsRecorded(long nativeAudioRecordJni, int bytes);
// Sets all recorded samples to zero if |mute| is true, i.e., ensures that
// the microphone is muted.
diff --git a/sdk/android/src/java/org/webrtc/audio/WebRtcAudioTrack.java b/sdk/android/src/java/org/webrtc/audio/WebRtcAudioTrack.java
index a52a50b328..f3a38f0c23 100644
--- a/sdk/android/src/java/org/webrtc/audio/WebRtcAudioTrack.java
+++ b/sdk/android/src/java/org/webrtc/audio/WebRtcAudioTrack.java
@@ -26,7 +26,6 @@ import org.webrtc.ThreadUtils;
import org.webrtc.audio.JavaAudioDeviceModule.AudioTrackErrorCallback;
import org.webrtc.audio.JavaAudioDeviceModule.AudioTrackStartErrorCode;
import org.webrtc.CalledByNative;
-import org.webrtc.NativeClassQualifiedName;
class WebRtcAudioTrack {
private static final String TAG = "WebRtcAudioTrackExternal";
@@ -443,12 +442,9 @@ class WebRtcAudioTrack {
return (channels == 1 ? AudioFormat.CHANNEL_OUT_MONO : AudioFormat.CHANNEL_OUT_STEREO);
}
- @NativeClassQualifiedName("webrtc::android_adm::AudioTrackJni")
private static native void nativeCacheDirectBufferAddress(
- long nativeAudioRecord, ByteBuffer byteBuffer);
-
- @NativeClassQualifiedName("webrtc::android_adm::AudioTrackJni")
- private static native void nativeGetPlayoutData(long nativeAudioRecord, int bytes);
+ long nativeAudioTrackJni, ByteBuffer byteBuffer);
+ private static native void nativeGetPlayoutData(long nativeAudioTrackJni, int bytes);
// Sets all samples to be played out to zero if |mute| is true, i.e.,
// ensures that the speaker is muted.
diff --git a/sdk/android/src/jni/audio_device/aaudio_player.cc b/sdk/android/src/jni/audio_device/aaudio_player.cc
index c0f715f9f1..e6bcddd8f6 100644
--- a/sdk/android/src/jni/audio_device/aaudio_player.cc
+++ b/sdk/android/src/jni/audio_device/aaudio_player.cc
@@ -18,7 +18,7 @@
namespace webrtc {
-namespace android_adm {
+namespace jni {
enum AudioDeviceMessageType : uint32_t {
kMessageOutputStreamDisconnected,
@@ -241,6 +241,6 @@ void AAudioPlayer::HandleStreamDisconnected() {
StartPlayout();
}
-} // namespace android_adm
+} // namespace jni
} // namespace webrtc
diff --git a/sdk/android/src/jni/audio_device/aaudio_player.h b/sdk/android/src/jni/audio_device/aaudio_player.h
index b3b8840b7d..92d18003f2 100644
--- a/sdk/android/src/jni/audio_device/aaudio_player.h
+++ b/sdk/android/src/jni/audio_device/aaudio_player.h
@@ -29,7 +29,7 @@ namespace webrtc {
class AudioDeviceBuffer;
class FineAudioBuffer;
-namespace android_adm {
+namespace jni {
// Implements low-latency 16-bit mono PCM audio output support for Android
// using the C based AAudio API.
@@ -146,7 +146,7 @@ class AAudioPlayer final : public AudioOutput,
double latency_millis_ RTC_GUARDED_BY(thread_checker_aaudio_) = 0;
};
-} // namespace android_adm
+} // namespace jni
} // namespace webrtc
diff --git a/sdk/android/src/jni/audio_device/aaudio_recorder.cc b/sdk/android/src/jni/audio_device/aaudio_recorder.cc
index 0da5ba350c..7235e187d8 100644
--- a/sdk/android/src/jni/audio_device/aaudio_recorder.cc
+++ b/sdk/android/src/jni/audio_device/aaudio_recorder.cc
@@ -21,7 +21,7 @@
namespace webrtc {
-namespace android_adm {
+namespace jni {
enum AudioDeviceMessageType : uint32_t {
kMessageInputStreamDisconnected,
@@ -230,6 +230,6 @@ void AAudioRecorder::HandleStreamDisconnected() {
StartRecording();
}
-} // namespace android_adm
+} // namespace jni
} // namespace webrtc
diff --git a/sdk/android/src/jni/audio_device/aaudio_recorder.h b/sdk/android/src/jni/audio_device/aaudio_recorder.h
index 32f2aea647..ec380830af 100644
--- a/sdk/android/src/jni/audio_device/aaudio_recorder.h
+++ b/sdk/android/src/jni/audio_device/aaudio_recorder.h
@@ -27,7 +27,7 @@ namespace webrtc {
class FineAudioBuffer;
class AudioDeviceBuffer;
-namespace android_adm {
+namespace jni {
// Implements low-latency 16-bit mono PCM audio input support for Android
// using the C based AAudio API.
@@ -126,7 +126,7 @@ class AAudioRecorder : public AudioInput,
bool first_data_callback_ = true;
};
-} // namespace android_adm
+} // namespace jni
} // namespace webrtc
diff --git a/sdk/android/src/jni/audio_device/aaudio_wrapper.cc b/sdk/android/src/jni/audio_device/aaudio_wrapper.cc
index 54aead7de9..a9d647f69a 100644
--- a/sdk/android/src/jni/audio_device/aaudio_wrapper.cc
+++ b/sdk/android/src/jni/audio_device/aaudio_wrapper.cc
@@ -33,7 +33,7 @@
namespace webrtc {
-namespace android_adm {
+namespace jni {
namespace {
@@ -496,6 +496,6 @@ bool AAudioWrapper::OptimizeBuffers() {
return true;
}
-} // namespace android_adm
+} // namespace jni
} // namespace webrtc
diff --git a/sdk/android/src/jni/audio_device/aaudio_wrapper.h b/sdk/android/src/jni/audio_device/aaudio_wrapper.h
index f9e7b85fa6..1900ab988c 100644
--- a/sdk/android/src/jni/audio_device/aaudio_wrapper.h
+++ b/sdk/android/src/jni/audio_device/aaudio_wrapper.h
@@ -18,7 +18,7 @@
namespace webrtc {
-namespace android_adm {
+namespace jni {
// AAudio callback interface for audio transport to/from the AAudio stream.
// The interface also contains an error callback method for notifications of
@@ -122,7 +122,7 @@ class AAudioWrapper {
int32_t frames_per_burst_ = 0;
};
-} // namespace android_adm
+} // namespace jni
} // namespace webrtc
diff --git a/sdk/android/src/jni/audio_device/audio_common.h b/sdk/android/src/jni/audio_device/audio_common.h
index 868af590bd..fdecf384c9 100644
--- a/sdk/android/src/jni/audio_device/audio_common.h
+++ b/sdk/android/src/jni/audio_device/audio_common.h
@@ -13,7 +13,7 @@
namespace webrtc {
-namespace android_adm {
+namespace jni {
const int kDefaultSampleRate = 44100;
// Delay estimates for the two different supported modes. These values are based
@@ -25,7 +25,7 @@ const int kDefaultSampleRate = 44100;
const int kLowLatencyModeDelayEstimateInMilliseconds = 50;
const int kHighLatencyModeDelayEstimateInMilliseconds = 150;
-} // namespace android_adm
+} // namespace jni
} // namespace webrtc
diff --git a/sdk/android/src/jni/audio_device/audio_device_module.cc b/sdk/android/src/jni/audio_device/audio_device_module.cc
index b3ea0d79a3..dd08a86405 100644
--- a/sdk/android/src/jni/audio_device/audio_device_module.cc
+++ b/sdk/android/src/jni/audio_device/audio_device_module.cc
@@ -20,8 +20,7 @@
#include "system_wrappers/include/metrics.h"
namespace webrtc {
-
-namespace android_adm {
+namespace jni {
namespace {
@@ -632,6 +631,5 @@ rtc::scoped_refptr CreateAudioDeviceModuleFromInputAndOutput(
playout_delay_ms, std::move(audio_input), std::move(audio_output));
}
-} // namespace android_adm
-
+} // namespace jni
} // namespace webrtc
diff --git a/sdk/android/src/jni/audio_device/audio_device_module.h b/sdk/android/src/jni/audio_device/audio_device_module.h
index 27de3a0fcc..c8fdfc3d6c 100644
--- a/sdk/android/src/jni/audio_device/audio_device_module.h
+++ b/sdk/android/src/jni/audio_device/audio_device_module.h
@@ -18,8 +18,7 @@
#include "sdk/android/native_api/jni/scoped_java_ref.h"
namespace webrtc {
-
-namespace android_adm {
+namespace jni {
class AudioInput {
public:
@@ -91,7 +90,7 @@ rtc::scoped_refptr CreateAudioDeviceModuleFromInputAndOutput(
std::unique_ptr audio_input,
std::unique_ptr audio_output);
-} // namespace android_adm
+} // namespace jni
} // namespace webrtc
diff --git a/sdk/android/src/jni/audio_device/audio_record_jni.cc b/sdk/android/src/jni/audio_device/audio_record_jni.cc
index b2bd5f7121..dfe19558d9 100644
--- a/sdk/android/src/jni/audio_device/audio_record_jni.cc
+++ b/sdk/android/src/jni/audio_device/audio_record_jni.cc
@@ -26,7 +26,7 @@
namespace webrtc {
-namespace android_adm {
+namespace jni {
namespace {
// Scoped class which logs its time of life as a UMA statistic. It generates
@@ -243,6 +243,6 @@ void AudioRecordJni::DataIsRecorded(JNIEnv* env,
}
}
-} // namespace android_adm
+} // namespace jni
} // namespace webrtc
diff --git a/sdk/android/src/jni/audio_device/audio_record_jni.h b/sdk/android/src/jni/audio_device/audio_record_jni.h
index 23ae51b93f..7578f83948 100644
--- a/sdk/android/src/jni/audio_device/audio_record_jni.h
+++ b/sdk/android/src/jni/audio_device/audio_record_jni.h
@@ -21,7 +21,7 @@
namespace webrtc {
-namespace android_adm {
+namespace jni {
// Implements 16-bit mono PCM audio input support for Android using the Java
// AudioRecord interface. Most of the work is done by its Java counterpart in
@@ -131,7 +131,7 @@ class AudioRecordJni : public AudioInput {
AudioDeviceBuffer* audio_device_buffer_;
};
-} // namespace android_adm
+} // namespace jni
} // namespace webrtc
diff --git a/sdk/android/src/jni/audio_device/audio_track_jni.cc b/sdk/android/src/jni/audio_device/audio_track_jni.cc
index e1718c1c01..1b49de6c0e 100644
--- a/sdk/android/src/jni/audio_device/audio_track_jni.cc
+++ b/sdk/android/src/jni/audio_device/audio_track_jni.cc
@@ -22,7 +22,7 @@
namespace webrtc {
-namespace android_adm {
+namespace jni {
ScopedJavaLocalRef AudioTrackJni::CreateJavaWebRtcAudioTrack(
JNIEnv* env,
@@ -216,6 +216,6 @@ void AudioTrackJni::GetPlayoutData(JNIEnv* env,
RTC_DCHECK_EQ(length, bytes_per_frame * samples);
}
-} // namespace android_adm
+} // namespace jni
} // namespace webrtc
diff --git a/sdk/android/src/jni/audio_device/audio_track_jni.h b/sdk/android/src/jni/audio_device/audio_track_jni.h
index e93b35a442..1225caf515 100644
--- a/sdk/android/src/jni/audio_device/audio_track_jni.h
+++ b/sdk/android/src/jni/audio_device/audio_track_jni.h
@@ -23,7 +23,7 @@
namespace webrtc {
-namespace android_adm {
+namespace jni {
// Implements 16-bit mono PCM audio output support for Android using the Java
// AudioTrack interface. Most of the work is done by its Java counterpart in
@@ -123,7 +123,7 @@ class AudioTrackJni : public AudioOutput {
AudioDeviceBuffer* audio_device_buffer_;
};
-} // namespace android_adm
+} // namespace jni
} // namespace webrtc
diff --git a/sdk/android/src/jni/audio_device/java_audio_device_module.cc b/sdk/android/src/jni/audio_device/java_audio_device_module.cc
index 267058f317..50c02913b9 100644
--- a/sdk/android/src/jni/audio_device/java_audio_device_module.cc
+++ b/sdk/android/src/jni/audio_device/java_audio_device_module.cc
@@ -28,22 +28,20 @@ static jlong JNI_JavaAudioDeviceModule_CreateAudioDeviceModule(
jboolean j_use_stereo_output) {
AudioParameters input_parameters;
AudioParameters output_parameters;
- android_adm::GetAudioParameters(env, j_context, j_audio_manager, sample_rate,
- j_use_stereo_input, j_use_stereo_output,
- &input_parameters, &output_parameters);
- auto audio_input = rtc::MakeUnique(
- env, input_parameters,
- android_adm::kHighLatencyModeDelayEstimateInMilliseconds,
+ GetAudioParameters(env, j_context, j_audio_manager, sample_rate,
+ j_use_stereo_input, j_use_stereo_output, &input_parameters,
+ &output_parameters);
+ auto audio_input = rtc::MakeUnique(
+ env, input_parameters, kHighLatencyModeDelayEstimateInMilliseconds,
j_webrtc_audio_record);
- auto audio_output = rtc::MakeUnique(
- env, output_parameters, j_webrtc_audio_track);
- return jlongFromPointer(
- CreateAudioDeviceModuleFromInputAndOutput(
- AudioDeviceModule::kAndroidJavaAudio, j_use_stereo_input,
- j_use_stereo_output,
- android_adm::kHighLatencyModeDelayEstimateInMilliseconds,
- std::move(audio_input), std::move(audio_output))
- .release());
+ auto audio_output = rtc::MakeUnique(env, output_parameters,
+ j_webrtc_audio_track);
+ return jlongFromPointer(CreateAudioDeviceModuleFromInputAndOutput(
+ AudioDeviceModule::kAndroidJavaAudio,
+ j_use_stereo_input, j_use_stereo_output,
+ kHighLatencyModeDelayEstimateInMilliseconds,
+ std::move(audio_input), std::move(audio_output))
+ .release());
}
} // namespace jni
diff --git a/sdk/android/src/jni/audio_device/opensles_common.cc b/sdk/android/src/jni/audio_device/opensles_common.cc
index e21b7bfb35..ba0713116c 100644
--- a/sdk/android/src/jni/audio_device/opensles_common.cc
+++ b/sdk/android/src/jni/audio_device/opensles_common.cc
@@ -17,7 +17,7 @@
namespace webrtc {
-namespace android_adm {
+namespace jni {
// Returns a string representation given an integer SL_RESULT_XXX code.
// The mapping can be found in .
@@ -140,6 +140,6 @@ SLObjectItf OpenSLEngineManager::GetOpenSLEngine() {
return engine_object_.Get();
}
-} // namespace android_adm
+} // namespace jni
} // namespace webrtc
diff --git a/sdk/android/src/jni/audio_device/opensles_common.h b/sdk/android/src/jni/audio_device/opensles_common.h
index a498aec584..0a8c115acc 100644
--- a/sdk/android/src/jni/audio_device/opensles_common.h
+++ b/sdk/android/src/jni/audio_device/opensles_common.h
@@ -20,7 +20,7 @@
namespace webrtc {
-namespace android_adm {
+namespace jni {
// Returns a string representation given an integer SL_RESULT_XXX code.
// The mapping can be found in .
@@ -83,7 +83,7 @@ class OpenSLEngineManager {
ScopedSLObjectItf engine_object_;
};
-} // namespace android_adm
+} // namespace jni
} // namespace webrtc
diff --git a/sdk/android/src/jni/audio_device/opensles_player.cc b/sdk/android/src/jni/audio_device/opensles_player.cc
index 7af3fa4fe3..f5f56bf112 100644
--- a/sdk/android/src/jni/audio_device/opensles_player.cc
+++ b/sdk/android/src/jni/audio_device/opensles_player.cc
@@ -40,7 +40,7 @@
namespace webrtc {
-namespace android_adm {
+namespace jni {
OpenSLESPlayer::OpenSLESPlayer(
const AudioParameters& audio_parameters,
@@ -441,6 +441,6 @@ SLuint32 OpenSLESPlayer::GetPlayState() const {
return state;
}
-} // namespace android_adm
+} // namespace jni
} // namespace webrtc
diff --git a/sdk/android/src/jni/audio_device/opensles_player.h b/sdk/android/src/jni/audio_device/opensles_player.h
index fe110a6ef2..d5f4a68749 100644
--- a/sdk/android/src/jni/audio_device/opensles_player.h
+++ b/sdk/android/src/jni/audio_device/opensles_player.h
@@ -29,7 +29,7 @@ namespace webrtc {
class FineAudioBuffer;
-namespace android_adm {
+namespace jni {
// Implements 16-bit mono PCM audio output support for Android using the
// C based OpenSL ES API. No calls from C/C++ to Java using JNI is done.
@@ -188,7 +188,7 @@ class OpenSLESPlayer : public AudioOutput {
uint32_t last_play_time_;
};
-} // namespace android_adm
+} // namespace jni
} // namespace webrtc
diff --git a/sdk/android/src/jni/audio_device/opensles_recorder.cc b/sdk/android/src/jni/audio_device/opensles_recorder.cc
index b8be33f8c0..4c51d387b0 100644
--- a/sdk/android/src/jni/audio_device/opensles_recorder.cc
+++ b/sdk/android/src/jni/audio_device/opensles_recorder.cc
@@ -41,7 +41,7 @@
namespace webrtc {
-namespace android_adm {
+namespace jni {
OpenSLESRecorder::OpenSLESRecorder(const AudioParameters& audio_parameters,
OpenSLEngineManager* engine_manager)
@@ -441,6 +441,6 @@ SLuint32 OpenSLESRecorder::GetBufferCount() {
return state.count;
}
-} // namespace android_adm
+} // namespace jni
} // namespace webrtc
diff --git a/sdk/android/src/jni/audio_device/opensles_recorder.h b/sdk/android/src/jni/audio_device/opensles_recorder.h
index cb109c34cd..6408be0f56 100644
--- a/sdk/android/src/jni/audio_device/opensles_recorder.h
+++ b/sdk/android/src/jni/audio_device/opensles_recorder.h
@@ -29,7 +29,7 @@ namespace webrtc {
class FineAudioBuffer;
-namespace android_adm {
+namespace jni {
// Implements 16-bit mono PCM audio input support for Android using the
// C based OpenSL ES API. No calls from C/C++ to Java using JNI is done.
@@ -185,7 +185,7 @@ class OpenSLESRecorder : public AudioInput {
uint32_t last_rec_time_;
};
-} // namespace android_adm
+} // namespace jni
} // namespace webrtc