Android: Make VideoCapturer an interface for all VideoCapturers to implement

This CL factors out the interface that AndroidVideoCapturerJni is using to communicate with the Java counterpart. This interface is moved into VideoCapturer. The interface is not touched in this CL, and a follow-up CL is planned to simplify and improve it.

Another change is that the native part of VideoCapturer is created in PeerConnectionFactory.createVideoSource() instead of doing it immediately in the ctor.

BUG=webrtc:5519
R=perkj@webrtc.org

Review URL: https://codereview.webrtc.org/1696553003 .

Cr-Commit-Position: refs/heads/master@{#11606}
This commit is contained in:
Magnus Jedvert
2016-02-12 17:05:29 +01:00
parent e78765bd4b
commit 5e7834e151
10 changed files with 149 additions and 185 deletions

View File

@ -42,7 +42,7 @@ class AndroidVideoCapturerJni : public webrtc::AndroidVideoCapturerDelegate {
std::string GetSupportedFormats() override;
// Called from VideoCapturerAndroid::NativeObserver on a Java thread.
// Called from VideoCapturer::NativeObserver on a Java thread.
void OnCapturerStarted(bool success);
void OnMemoryBufferFrame(void* video_frame, int length, int width,
int height, int rotation, int64_t timestamp_ns);