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

Side by Side Diff: content/renderer/media/media_stream_video_track.cc

Issue 2664673002: Media Capture Depth Stream Extensions API: videoKind settings and constraint. (Closed)
Patch Set: Created 3 years, 10 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
OLDNEW
1 // Copyright 2013 The Chromium Authors. All rights reserved. 1 // Copyright 2013 The Chromium Authors. All rights reserved.
2 // Use of this source code is governed by a BSD-style license that can be 2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file. 3 // found in the LICENSE file.
4 4
5 #include "content/renderer/media/media_stream_video_track.h" 5 #include "content/renderer/media/media_stream_video_track.h"
6 6
7 #include <utility> 7 #include <utility>
8 8
9 #include "base/bind.h" 9 #include "base/bind.h"
10 #include "base/location.h" 10 #include "base/location.h"
(...skipping 283 matching lines...) Expand 10 before | Expand all | Expand 10 after
294 DCHECK(main_render_thread_checker_.CalledOnValidThread()); 294 DCHECK(main_render_thread_checker_.CalledOnValidThread());
295 if (source_) { 295 if (source_) {
296 source_->RemoveTrack(this); 296 source_->RemoveTrack(this);
297 source_ = NULL; 297 source_ = NULL;
298 } 298 }
299 OnReadyStateChanged(blink::WebMediaStreamSource::ReadyStateEnded); 299 OnReadyStateChanged(blink::WebMediaStreamSource::ReadyStateEnded);
300 } 300 }
301 301
302 void MediaStreamVideoTrack::getSettings( 302 void MediaStreamVideoTrack::getSettings(
303 blink::WebMediaStreamTrack::Settings& settings) { 303 blink::WebMediaStreamTrack::Settings& settings) {
304 if (source_) {
305 const media::VideoCaptureFormat* format = source_->GetCurrentFormat();
306 if (format) {
307 settings.frameRate = format->frame_rate;
308 settings.width = format->frame_size.width();
309 settings.height = format->frame_size.height();
310 }
311 switch (source_->device_info().device.video_facing) {
312 case media::MEDIA_VIDEO_FACING_NONE:
313 settings.facingMode = blink::WebMediaStreamTrack::FacingMode::None;
314 break;
315 case media::MEDIA_VIDEO_FACING_USER:
316 settings.facingMode = blink::WebMediaStreamTrack::FacingMode::User;
317 break;
318 case media::MEDIA_VIDEO_FACING_ENVIRONMENT:
319 settings.facingMode =
320 blink::WebMediaStreamTrack::FacingMode::Environment;
321 break;
322 default:
323 settings.facingMode = blink::WebMediaStreamTrack::FacingMode::None;
324 break;
325 }
326 }
327 // TODO(hta): Extract the real value. 304 // TODO(hta): Extract the real value.
328 settings.deviceId = blink::WebString("video device ID"); 305 settings.deviceId = blink::WebString("video device ID");
306 if (!source_)
307 return;
308
309 const media::VideoCaptureFormat* format = source_->GetCurrentFormat();
310 if (format) {
311 settings.frameRate = format->frame_rate;
312 settings.width = format->frame_size.width();
313 settings.height = format->frame_size.height();
314 settings.videoKind = blink::WebString::fromUTF8(
315 (format->pixel_format == media::PIXEL_FORMAT_Y16) ? "depth" : "color");
316 }
317 switch (source_->device_info().device.video_facing) {
318 case media::MEDIA_VIDEO_FACING_NONE:
319 settings.facingMode = blink::WebMediaStreamTrack::FacingMode::None;
320 break;
321 case media::MEDIA_VIDEO_FACING_USER:
322 settings.facingMode = blink::WebMediaStreamTrack::FacingMode::User;
323 break;
324 case media::MEDIA_VIDEO_FACING_ENVIRONMENT:
325 settings.facingMode = blink::WebMediaStreamTrack::FacingMode::Environment;
326 break;
327 default:
328 settings.facingMode = blink::WebMediaStreamTrack::FacingMode::None;
329 break;
330 }
329 } 331 }
330 332
331 void MediaStreamVideoTrack::OnReadyStateChanged( 333 void MediaStreamVideoTrack::OnReadyStateChanged(
332 blink::WebMediaStreamSource::ReadyState state) { 334 blink::WebMediaStreamSource::ReadyState state) {
333 DCHECK(main_render_thread_checker_.CalledOnValidThread()); 335 DCHECK(main_render_thread_checker_.CalledOnValidThread());
334 for (auto* sink : sinks_) 336 for (auto* sink : sinks_)
335 sink->OnReadyStateChanged(state); 337 sink->OnReadyStateChanged(state);
336 } 338 }
337 339
338 } // namespace content 340 } // namespace content
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698