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

Unified Diff: content/browser/renderer_host/media/video_capture_controller.cc

Issue 68503005: Reorganize media::VideoCapture* types (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: a7375761 Rebase. Created 7 years, 1 month 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/browser/renderer_host/media/video_capture_controller.cc
diff --git a/content/browser/renderer_host/media/video_capture_controller.cc b/content/browser/renderer_host/media/video_capture_controller.cc
index 657a3e8fa88cde6b1b5b3c006b4f2e18f3d3cd35..87b299db64dd5d12f1d17da22d868ed0c9e55ddb 100644
--- a/content/browser/renderer_host/media/video_capture_controller.cc
+++ b/content/browser/renderer_host/media/video_capture_controller.cc
@@ -19,7 +19,7 @@
#include "third_party/libyuv/include/libyuv.h"
#endif
-using media::VideoCaptureCapability;
+using media::VideoCaptureFormat;
namespace content {
@@ -112,7 +112,7 @@ class VideoCaptureController::VideoCaptureDeviceClient
int rotation,
bool flip_vert,
bool flip_horiz,
- const VideoCaptureCapability& frame_info)
+ const VideoCaptureFormat& frame_format)
OVERRIDE;
virtual void OnIncomingCapturedBuffer(const scoped_refptr<Buffer>& buffer,
media::VideoFrame::Format format,
@@ -167,8 +167,7 @@ void VideoCaptureController::AddClient(
const media::VideoCaptureParams& params) {
DCHECK(BrowserThread::CurrentlyOn(BrowserThread::IO));
DVLOG(1) << "VideoCaptureController::AddClient, id " << id.device_id
- << ", (" << params.requested_format.width
- << ", " << params.requested_format.height
+ << ", " << params.requested_format.frame_size.ToString()
<< ", " << params.requested_format.frame_rate
<< ", " << params.session_id
<< ")";
@@ -263,24 +262,24 @@ void VideoCaptureController::VideoCaptureDeviceClient::OnIncomingCapturedFrame(
int rotation,
bool flip_vert,
bool flip_horiz,
- const VideoCaptureCapability& frame_info) {
+ const VideoCaptureFormat& frame_format) {
TRACE_EVENT0("video", "VideoCaptureController::OnIncomingCapturedFrame");
- if (!frame_info.IsValid())
+ if (!frame_format.IsValid())
return;
// Chopped pixels in width/height in case video capture device has odd
// numbers for width/height.
int chopped_width = 0;
int chopped_height = 0;
- int new_width = frame_info.width;
- int new_height = frame_info.height;
+ int new_width = frame_format.frame_size.width();
+ int new_height = frame_format.frame_size.height();
- if (frame_info.width & 1) {
+ if (new_width & 1) {
--new_width;
chopped_width = 1;
}
- if (frame_info.height & 1) {
+ if (new_height & 1) {
--new_height;
chopped_height = 1;
}
@@ -321,7 +320,7 @@ void VideoCaptureController::VideoCaptureDeviceClient::OnIncomingCapturedFrame(
else if (new_rotation_angle == 270)
rotation_mode = libyuv::kRotate270;
- switch (frame_info.color) {
+ switch (frame_format.pixel_format) {
case media::PIXEL_FORMAT_UNKNOWN: // Color format not set.
break;
case media::PIXEL_FORMAT_I420:
@@ -361,7 +360,7 @@ void VideoCaptureController::VideoCaptureDeviceClient::OnIncomingCapturedFrame(
#if defined(OS_WIN)
// kRGB24 on Windows start at the bottom line and has a negative stride. This
// is not supported by libyuv, so the media API is used instead.
- if (frame_info.color == media::PIXEL_FORMAT_RGB24) {
+ if (frame_format.pixel_format == media::PIXEL_FORMAT_RGB24) {
// Rotation and flipping is not supported in kRGB24 and OS_WIN case.
DCHECK(!rotation && !flip_vert && !flip_horiz);
need_convert_rgb24_on_win = true;
@@ -431,7 +430,7 @@ void VideoCaptureController::VideoCaptureDeviceClient::OnIncomingCapturedFrame(
controller_,
buffer,
dimensions,
- frame_info.frame_rate,
+ frame_format.frame_rate,
timestamp));
}
@@ -523,11 +522,8 @@ void VideoCaptureController::DoIncomingCapturedI420BufferOnIOThread(
DCHECK(BrowserThread::CurrentlyOn(BrowserThread::IO));
DCHECK_NE(buffer->id(), VideoCaptureBufferPool::kInvalidId);
- media::VideoCaptureFormat frame_format(
- dimensions.width(),
- dimensions.height(),
- frame_rate,
- media::VariableResolutionVideoCaptureDevice);
+ VideoCaptureFormat frame_format(
+ dimensions, frame_rate, media::PIXEL_FORMAT_I420);
int count = 0;
if (state_ == VIDEO_CAPTURE_STATE_STARTED) {

Powered by Google App Engine
This is Rietveld 408576698