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

Unified Diff: content/renderer/media/media_stream_video_capturer_source.cc

Issue 2609863004: Pass camera facing to WebKit (Closed)
Patch Set: address review comment Created 3 years, 11 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 side-by-side diff with in-line comments
Download patch
Index: content/renderer/media/media_stream_video_capturer_source.cc
diff --git a/content/renderer/media/media_stream_video_capturer_source.cc b/content/renderer/media/media_stream_video_capturer_source.cc
index 8734698c46c9f91c78988fa4c8474a0107bc4c38..9e9b618c9a2c848bbf2d9833926268a2436925e4 100644
--- a/content/renderer/media/media_stream_video_capturer_source.cc
+++ b/content/renderer/media/media_stream_video_capturer_source.cc
@@ -216,6 +216,7 @@ class LocalVideoCapturerSource final : public media::VideoCapturerSource {
void MaybeSuspend() override;
void Resume() override;
void StopCapture() override;
+ media::VideoFacingMode GetVideoFacing() const override;
private:
void OnStateUpdate(VideoCaptureState state);
@@ -226,6 +227,8 @@ class LocalVideoCapturerSource final : public media::VideoCapturerSource {
// |session_id_| identifies the capture device used for this capture session.
const media::VideoCaptureSessionId session_id_;
+ const VideoFacingMode facing_;
+
VideoCaptureImplManager* const manager_;
const base::Closure release_device_cb_;
@@ -256,6 +259,7 @@ class LocalVideoCapturerSource final : public media::VideoCapturerSource {
LocalVideoCapturerSource::LocalVideoCapturerSource(
const StreamDeviceInfo& device_info)
: session_id_(device_info.session_id),
+ facing_(device_info.device.video_facing),
manager_(RenderThreadImpl::current()->video_capture_impl_manager()),
release_device_cb_(manager_->UseDevice(session_id_)),
is_content_capture_(IsContentVideoCaptureDevice(device_info)),
@@ -347,6 +351,19 @@ void LocalVideoCapturerSource::StopCapture() {
formats_enumerated_callback_.Reset();
}
+media::VideoFacingMode LocalVideoCapturerSource::GetVideoFacing() const {
+ switch (facing_) {
mcasas 2017/01/11 22:24:58 I'd add here if (is_content_capture_) retur
shenghao 2017/01/12 08:10:48 Done.
+ case VideoFacingMode::MEDIA_VIDEO_FACING_USER:
+ return media::VideoFacingMode::USER;
+ case VideoFacingMode::MEDIA_VIDEO_FACING_ENVIRONMENT:
+ return media::VideoFacingMode::ENVIRONMENT;
+ case VideoFacingMode::MEDIA_VIDEO_FACING_NONE:
+ case VideoFacingMode::NUM_MEDIA_VIDEO_FACING_MODE:
+ return media::VideoFacingMode::USER;
+ }
+ return media::VideoFacingMode::USER;
+}
+
void LocalVideoCapturerSource::OnStateUpdate(VideoCaptureState state) {
DVLOG(3) << __func__ << " state = " << state;
DCHECK(thread_checker_.CalledOnValidThread());
@@ -440,6 +457,10 @@ MediaStreamVideoCapturerSource::MediaStreamVideoCapturerSource(
MediaStreamVideoCapturerSource::~MediaStreamVideoCapturerSource() {
}
+media::VideoFacingMode MediaStreamVideoCapturerSource::GetVideoFacing() {
+ return source_->GetVideoFacing();
+}
+
void MediaStreamVideoCapturerSource::RequestRefreshFrame() {
source_->RequestRefreshFrame();
}

Powered by Google App Engine
This is Rietveld 408576698