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

Side by Side Diff: content/browser/renderer_host/media/video_capture_controller.cc

Issue 2810723002: Refactor VideoCaptureManager::GetDeviceFormatsInUse() (Closed)
Patch Set: Created 3 years, 8 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 (c) 2012 The Chromium Authors. All rights reserved. 1 // Copyright (c) 2012 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/browser/renderer_host/media/video_capture_controller.h" 5 #include "content/browser/renderer_host/media/video_capture_controller.h"
6 6
7 #include <stddef.h> 7 #include <stddef.h>
8 #include <stdint.h> 8 #include <stdint.h>
9 9
10 #include <map> 10 #include <map>
(...skipping 353 matching lines...) Expand 10 before | Expand all | Expand 10 after
364 if (buffers_in_use_entry_iter == std::end(client->buffers_in_use)) { 364 if (buffers_in_use_entry_iter == std::end(client->buffers_in_use)) {
365 NOTREACHED(); 365 NOTREACHED();
366 return; 366 return;
367 } 367 }
368 client->buffers_in_use.erase(buffers_in_use_entry_iter); 368 client->buffers_in_use.erase(buffers_in_use_entry_iter);
369 369
370 OnClientFinishedConsumingBuffer(client, buffer_id, 370 OnClientFinishedConsumingBuffer(client, buffer_id,
371 consumer_resource_utilization); 371 consumer_resource_utilization);
372 } 372 }
373 373
374 const media::VideoCaptureFormat& VideoCaptureController::GetVideoCaptureFormat() 374 const base::Optional<media::VideoCaptureFormat>
375 const { 375 VideoCaptureController::GetVideoCaptureFormat() const {
376 DCHECK_CURRENTLY_ON(BrowserThread::IO); 376 DCHECK_CURRENTLY_ON(BrowserThread::IO);
377 return video_capture_format_; 377 return video_capture_format_;
378 } 378 }
379 379
380 void VideoCaptureController::OnNewBufferHandle( 380 void VideoCaptureController::OnNewBufferHandle(
381 int buffer_id, 381 int buffer_id,
382 std::unique_ptr<media::VideoCaptureDevice::Client::Buffer::HandleProvider> 382 std::unique_ptr<media::VideoCaptureDevice::Client::Buffer::HandleProvider>
383 handle_provider) { 383 handle_provider) {
384 DCHECK_CURRENTLY_ON(BrowserThread::IO); 384 DCHECK_CURRENTLY_ON(BrowserThread::IO);
385 DCHECK(FindUnretiredBufferContextFromBufferId(buffer_id) == 385 DCHECK(FindUnretiredBufferContextFromBufferId(buffer_id) ==
(...skipping 59 matching lines...) Expand 10 before | Expand all | Expand 10 after
445 frame_info->coded_size.width()); 445 frame_info->coded_size.width());
446 UMA_HISTOGRAM_COUNTS("Media.VideoCapture.Height", 446 UMA_HISTOGRAM_COUNTS("Media.VideoCapture.Height",
447 frame_info->coded_size.height()); 447 frame_info->coded_size.height());
448 UMA_HISTOGRAM_ASPECT_RATIO("Media.VideoCapture.AspectRatio", 448 UMA_HISTOGRAM_ASPECT_RATIO("Media.VideoCapture.AspectRatio",
449 frame_info->coded_size.width(), 449 frame_info->coded_size.width(),
450 frame_info->coded_size.height()); 450 frame_info->coded_size.height());
451 double frame_rate = 0.0f; 451 double frame_rate = 0.0f;
452 media::VideoFrameMetadata metadata; 452 media::VideoFrameMetadata metadata;
453 metadata.MergeInternalValuesFrom(*frame_info->metadata); 453 metadata.MergeInternalValuesFrom(*frame_info->metadata);
454 if (!metadata.GetDouble(VideoFrameMetadata::FRAME_RATE, &frame_rate)) { 454 if (!metadata.GetDouble(VideoFrameMetadata::FRAME_RATE, &frame_rate)) {
455 frame_rate = video_capture_format_.frame_rate; 455 frame_rate = video_capture_format_->frame_rate;
chfremer 2017/04/10 17:24:03 Could it happen that |video_capture_format_| is no
Chandan 2017/04/11 07:45:07 Right, its safe to add a check for video_capture_f
456 } 456 }
457 UMA_HISTOGRAM_COUNTS("Media.VideoCapture.FrameRate", frame_rate); 457 UMA_HISTOGRAM_COUNTS("Media.VideoCapture.FrameRate", frame_rate);
458 has_received_frames_ = true; 458 has_received_frames_ = true;
459 } 459 }
460 } 460 }
461 461
462 void VideoCaptureController::OnBufferRetired(int buffer_id) { 462 void VideoCaptureController::OnBufferRetired(int buffer_id) {
463 DCHECK_CURRENTLY_ON(BrowserThread::IO); 463 DCHECK_CURRENTLY_ON(BrowserThread::IO);
464 464
465 auto buffer_context_iter = FindUnretiredBufferContextFromBufferId(buffer_id); 465 auto buffer_context_iter = FindUnretiredBufferContextFromBufferId(buffer_id);
(...skipping 156 matching lines...) Expand 10 before | Expand all | Expand 10 after
622 EventHandlerAction action) { 622 EventHandlerAction action) {
623 DCHECK_CURRENTLY_ON(BrowserThread::IO); 623 DCHECK_CURRENTLY_ON(BrowserThread::IO);
624 for (const auto& client : controller_clients_) { 624 for (const auto& client : controller_clients_) {
625 if (client->session_closed) 625 if (client->session_closed)
626 continue; 626 continue;
627 action.Run(client->event_handler, client->controller_id); 627 action.Run(client->event_handler, client->controller_id);
628 } 628 }
629 } 629 }
630 630
631 } // namespace content 631 } // namespace content
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698