Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(105)

Side by Side Diff: webrtc/api/androidvideocapturer.cc

Issue 2235893003: Remove the old AndroidVideoCapturer stack code. (Closed) Base URL: https://chromium.googlesource.com/external/webrtc.git@master
Patch Set: Rebase. Created 4 years, 3 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch
« no previous file with comments | « webrtc/api/androidvideocapturer.h ('k') | webrtc/api/api.gyp » ('j') | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
(Empty)
1 /*
2 * Copyright 2015 The WebRTC project authors. All Rights Reserved.
3 *
4 * Use of this source code is governed by a BSD-style license
5 * that can be found in the LICENSE file in the root of the source
6 * tree. An additional intellectual property rights grant can be found
7 * in the file PATENTS. All contributing project authors may
8 * be found in the AUTHORS file in the root of the source tree.
9 */
10
11 #include "webrtc/api/androidvideocapturer.h"
12
13 #include <memory>
14
15 #include "webrtc/api/android/jni/native_handle_impl.h"
16 #include "webrtc/base/common.h"
17 #include "webrtc/base/timeutils.h"
18 #include "webrtc/media/engine/webrtcvideoframe.h"
19
20 namespace webrtc {
21
22 AndroidVideoCapturer::AndroidVideoCapturer(
23 const rtc::scoped_refptr<AndroidVideoCapturerDelegate>& delegate)
24 : running_(false),
25 delegate_(delegate) {
26 thread_checker_.DetachFromThread();
27 SetSupportedFormats(delegate_->GetSupportedFormats());
28 }
29
30 AndroidVideoCapturer::~AndroidVideoCapturer() {
31 RTC_CHECK(!running_);
32 }
33
34 cricket::CaptureState AndroidVideoCapturer::Start(
35 const cricket::VideoFormat& capture_format) {
36 RTC_CHECK(thread_checker_.CalledOnValidThread());
37 RTC_CHECK(!running_);
38 const int fps = cricket::VideoFormat::IntervalToFps(capture_format.interval);
39 LOG(LS_INFO) << " AndroidVideoCapturer::Start " << capture_format.width << "x"
40 << capture_format.height << "@" << fps;
41
42 running_ = true;
43 delegate_->Start(capture_format.width, capture_format.height, fps, this);
44 SetCaptureFormat(&capture_format);
45 return cricket::CS_STARTING;
46 }
47
48 void AndroidVideoCapturer::Stop() {
49 LOG(LS_INFO) << " AndroidVideoCapturer::Stop ";
50 RTC_CHECK(thread_checker_.CalledOnValidThread());
51 RTC_CHECK(running_);
52 running_ = false;
53 SetCaptureFormat(NULL);
54
55 delegate_->Stop();
56 SetCaptureState(cricket::CS_STOPPED);
57 }
58
59 bool AndroidVideoCapturer::IsRunning() {
60 RTC_CHECK(thread_checker_.CalledOnValidThread());
61 return running_;
62 }
63
64 bool AndroidVideoCapturer::GetPreferredFourccs(std::vector<uint32_t>* fourccs) {
65 RTC_CHECK(thread_checker_.CalledOnValidThread());
66 fourccs->push_back(cricket::FOURCC_YV12);
67 return true;
68 }
69
70 void AndroidVideoCapturer::OnCapturerStarted(bool success) {
71 RTC_CHECK(thread_checker_.CalledOnValidThread());
72 const cricket::CaptureState new_state =
73 success ? cricket::CS_RUNNING : cricket::CS_FAILED;
74 SetCaptureState(new_state);
75 }
76
77 void AndroidVideoCapturer::OnOutputFormatRequest(
78 int width, int height, int fps) {
79 RTC_CHECK(thread_checker_.CalledOnValidThread());
80 cricket::VideoFormat format(width, height,
81 cricket::VideoFormat::FpsToInterval(fps), 0);
82 video_adapter()->OnOutputFormatRequest(format);
83 }
84
85 bool AndroidVideoCapturer::GetBestCaptureFormat(
86 const cricket::VideoFormat& desired,
87 cricket::VideoFormat* best_format) {
88 // Delegate this choice to VideoCapturer.startCapture().
89 *best_format = desired;
90 return true;
91 }
92
93 } // namespace webrtc
OLDNEW
« no previous file with comments | « webrtc/api/androidvideocapturer.h ('k') | webrtc/api/api.gyp » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698