OLD | NEW |
1 /* | 1 /* |
2 * Copyright (c) 2016 The WebRTC project authors. All Rights Reserved. | 2 * Copyright (c) 2016 The WebRTC project authors. All Rights Reserved. |
3 * | 3 * |
4 * Use of this source code is governed by a BSD-style license | 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 | 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 | 6 * tree. An additional intellectual property rights grant can be found |
7 * in the file PATENTS. All contributing project authors may | 7 * in the file PATENTS. All contributing project authors may |
8 * be found in the AUTHORS file in the root of the source tree. | 8 * be found in the AUTHORS file in the root of the source tree. |
9 */ | 9 */ |
10 | 10 |
11 #include "webrtc/sdk/android/src/jni/androidvideotracksource.h" | 11 #include "webrtc/sdk/android/src/jni/androidvideotracksource.h" |
12 | 12 |
13 #include <utility> | 13 #include <utility> |
14 | 14 |
15 namespace { | |
16 // MediaCodec wants resolution to be divisible by 2. | |
17 const int kRequiredResolutionAlignment = 2; | |
18 } | |
19 | |
20 namespace webrtc { | 15 namespace webrtc { |
21 | 16 |
22 AndroidVideoTrackSource::AndroidVideoTrackSource(rtc::Thread* signaling_thread, | 17 AndroidVideoTrackSource::AndroidVideoTrackSource(rtc::Thread* signaling_thread, |
23 JNIEnv* jni, | 18 JNIEnv* jni, |
24 jobject j_egl_context, | 19 jobject j_egl_context, |
25 bool is_screencast) | 20 bool is_screencast) |
26 : AdaptedVideoTrackSource(kRequiredResolutionAlignment), | 21 : signaling_thread_(signaling_thread), |
27 signaling_thread_(signaling_thread), | |
28 surface_texture_helper_(webrtc_jni::SurfaceTextureHelper::create( | 22 surface_texture_helper_(webrtc_jni::SurfaceTextureHelper::create( |
29 jni, | 23 jni, |
30 "Camera SurfaceTextureHelper", | 24 "Camera SurfaceTextureHelper", |
31 j_egl_context)), | 25 j_egl_context)), |
32 is_screencast_(is_screencast) { | 26 is_screencast_(is_screencast) { |
33 LOG(LS_INFO) << "AndroidVideoTrackSource ctor"; | 27 LOG(LS_INFO) << "AndroidVideoTrackSource ctor"; |
34 camera_thread_checker_.DetachFromThread(); | 28 camera_thread_checker_.DetachFromThread(); |
35 } | 29 } |
36 | 30 |
37 void AndroidVideoTrackSource::SetState(SourceState state) { | 31 void AndroidVideoTrackSource::SetState(SourceState state) { |
(...skipping 122 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
160 | 154 |
161 void AndroidVideoTrackSource::OnOutputFormatRequest(int width, | 155 void AndroidVideoTrackSource::OnOutputFormatRequest(int width, |
162 int height, | 156 int height, |
163 int fps) { | 157 int fps) { |
164 cricket::VideoFormat format(width, height, | 158 cricket::VideoFormat format(width, height, |
165 cricket::VideoFormat::FpsToInterval(fps), 0); | 159 cricket::VideoFormat::FpsToInterval(fps), 0); |
166 video_adapter()->OnOutputFormatRequest(format); | 160 video_adapter()->OnOutputFormatRequest(format); |
167 } | 161 } |
168 | 162 |
169 } // namespace webrtc | 163 } // namespace webrtc |
OLD | NEW |