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

Side by Side Diff: media/video/capture/video_capture_proxy.cc

Issue 23551011: From Video Capture, abolish OnFrameInfo and enable resolution changes (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: fixes from bbudge Created 7 years, 2 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 | Annotate | Revision Log
« no previous file with comments | « media/video/capture/video_capture_proxy.h ('k') | media/video/capture/video_capture_types.h » ('j') | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
1 // Copyright (c) 2011 The Chromium Authors. All rights reserved. 1 // Copyright (c) 2011 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 "media/video/capture/video_capture_proxy.h" 5 #include "media/video/capture/video_capture_proxy.h"
6 6
7 #include "base/bind.h" 7 #include "base/bind.h"
8 #include "base/location.h" 8 #include "base/location.h"
9 #include "base/message_loop/message_loop_proxy.h" 9 #include "base/message_loop/message_loop_proxy.h"
10 10
11 namespace { 11 namespace {
12 12
13 // Called on VC thread: extracts the state out of the VideoCapture, and 13 // Called on VC thread: extracts the state out of the VideoCapture, and
14 // serialize it into a VideoCaptureState. 14 // serialize it into a VideoCaptureState.
15 media::VideoCaptureHandlerProxy::VideoCaptureState GetState( 15 media::VideoCaptureHandlerProxy::VideoCaptureState GetState(
16 media::VideoCapture* capture) { 16 media::VideoCapture* capture) {
17 media::VideoCaptureHandlerProxy::VideoCaptureState state; 17 media::VideoCaptureHandlerProxy::VideoCaptureState state;
18 state.started = capture->CaptureStarted(); 18 state.started = capture->CaptureStarted();
19 state.width = capture->CaptureWidth();
20 state.height = capture->CaptureHeight();
21 state.frame_rate = capture->CaptureFrameRate(); 19 state.frame_rate = capture->CaptureFrameRate();
22 return state; 20 return state;
23 } 21 }
24 22
25 } // anonymous namespace 23 } // anonymous namespace
26 24
27 namespace media { 25 namespace media {
28 26
29 VideoCaptureHandlerProxy::VideoCaptureHandlerProxy( 27 VideoCaptureHandlerProxy::VideoCaptureHandlerProxy(
30 VideoCapture::EventHandler* proxied, 28 VideoCapture::EventHandler* proxied,
(...skipping 51 matching lines...) Expand 10 before | Expand all | Expand 10 after
82 const scoped_refptr<VideoFrame>& frame) { 80 const scoped_refptr<VideoFrame>& frame) {
83 main_message_loop_->PostTask( 81 main_message_loop_->PostTask(
84 FROM_HERE, 82 FROM_HERE,
85 base::Bind(&VideoCaptureHandlerProxy::OnFrameReadyOnMainThread, 83 base::Bind(&VideoCaptureHandlerProxy::OnFrameReadyOnMainThread,
86 base::Unretained(this), 84 base::Unretained(this),
87 capture, 85 capture,
88 GetState(capture), 86 GetState(capture),
89 frame)); 87 frame));
90 } 88 }
91 89
92 void VideoCaptureHandlerProxy::OnDeviceInfoReceived(
93 VideoCapture* capture,
94 const VideoCaptureParams& device_info) {
95 main_message_loop_->PostTask(FROM_HERE, base::Bind(
96 &VideoCaptureHandlerProxy::OnDeviceInfoReceivedOnMainThread,
97 base::Unretained(this),
98 capture,
99 GetState(capture),
100 device_info));
101 }
102
103 void VideoCaptureHandlerProxy::OnStartedOnMainThread( 90 void VideoCaptureHandlerProxy::OnStartedOnMainThread(
104 VideoCapture* capture, 91 VideoCapture* capture,
105 const VideoCaptureState& state) { 92 const VideoCaptureState& state) {
106 state_ = state; 93 state_ = state;
107 proxied_->OnStarted(capture); 94 proxied_->OnStarted(capture);
108 } 95 }
109 96
110 void VideoCaptureHandlerProxy::OnStoppedOnMainThread( 97 void VideoCaptureHandlerProxy::OnStoppedOnMainThread(
111 VideoCapture* capture, 98 VideoCapture* capture,
112 const VideoCaptureState& state) { 99 const VideoCaptureState& state) {
(...skipping 24 matching lines...) Expand all
137 } 124 }
138 125
139 void VideoCaptureHandlerProxy::OnFrameReadyOnMainThread( 126 void VideoCaptureHandlerProxy::OnFrameReadyOnMainThread(
140 VideoCapture* capture, 127 VideoCapture* capture,
141 const VideoCaptureState& state, 128 const VideoCaptureState& state,
142 const scoped_refptr<VideoFrame>& frame) { 129 const scoped_refptr<VideoFrame>& frame) {
143 state_ = state; 130 state_ = state;
144 proxied_->OnFrameReady(capture, frame); 131 proxied_->OnFrameReady(capture, frame);
145 } 132 }
146 133
147 void VideoCaptureHandlerProxy::OnDeviceInfoReceivedOnMainThread(
148 VideoCapture* capture,
149 const VideoCaptureState& state,
150 const VideoCaptureParams& device_info) {
151 state_ = state;
152 proxied_->OnDeviceInfoReceived(capture, device_info);
153 }
154
155 } // namespace media 134 } // namespace media
OLDNEW
« no previous file with comments | « media/video/capture/video_capture_proxy.h ('k') | media/video/capture/video_capture_types.h » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698