| Index: webrtc/api/android/java/src/org/webrtc/PeerConnectionFactory.java
|
| diff --git a/webrtc/api/android/java/src/org/webrtc/PeerConnectionFactory.java b/webrtc/api/android/java/src/org/webrtc/PeerConnectionFactory.java
|
| index 860c5a8d6012a44ddf5e69ff76c26d96ebc1f100..8e3e11d9b93b8bdb0fcec74a77e9110f1ce0dead 100644
|
| --- a/webrtc/api/android/java/src/org/webrtc/PeerConnectionFactory.java
|
| +++ b/webrtc/api/android/java/src/org/webrtc/PeerConnectionFactory.java
|
| @@ -111,10 +111,21 @@
|
| nativeCreateLocalMediaStream(nativeFactory, label));
|
| }
|
|
|
| + // The VideoSource takes ownership of |capturer|, so capturer.dispose() should not be called
|
| + // manually after this. Video capturer is automatically started so there is no need to call
|
| + // startCapture after this method.
|
| + public VideoSource createVideoSource(
|
| + VideoCapturer capturer, MediaConstraints constraints) {
|
| + final EglBase.Context eglContext =
|
| + localEglbase == null ? null : localEglbase.getEglBaseContext();
|
| + return new VideoSource(nativeCreateVideoSource(nativeFactory,
|
| + eglContext, capturer, constraints));
|
| + }
|
| +
|
| public VideoSource createVideoSource(VideoCapturer capturer) {
|
| final EglBase.Context eglContext =
|
| localEglbase == null ? null : localEglbase.getEglBaseContext();
|
| - long nativeAndroidVideoTrackSource = nativeCreateVideoSource(nativeFactory, eglContext);
|
| + long nativeAndroidVideoTrackSource = nativeCreateVideoSource2(nativeFactory, eglContext);
|
| VideoCapturer.CapturerObserver capturerObserver
|
| = new VideoCapturer.AndroidVideoTrackSourceObserver(nativeAndroidVideoTrackSource);
|
| nativeInitializeVideoCapturer(nativeFactory, capturer, nativeAndroidVideoTrackSource,
|
| @@ -237,6 +248,10 @@
|
| long nativeFactory, String label);
|
|
|
| private static native long nativeCreateVideoSource(
|
| + long nativeFactory, EglBase.Context eglContext, VideoCapturer videoCapturer,
|
| + MediaConstraints constraints);
|
| +
|
| + private static native long nativeCreateVideoSource2(
|
| long nativeFactory, EglBase.Context eglContext);
|
|
|
| private static native void nativeInitializeVideoCapturer(
|
|
|