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

Unified Diff: content/browser/media/capture/content_video_capture_device_core.cc

Issue 83793004: Implement IPCs and VideoCapture::Client interfaces for texture capture (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: e296ac98 Win32 bits. Created 6 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 side-by-side diff with in-line comments
Download patch
Index: content/browser/media/capture/content_video_capture_device_core.cc
diff --git a/content/browser/media/capture/content_video_capture_device_core.cc b/content/browser/media/capture/content_video_capture_device_core.cc
index 52dfd385a190eb3f1b56c5913235a08ddb6c4b6d..b8fbe8d1b6ce80edf3c559732c8e49558b07341e 100644
--- a/content/browser/media/capture/content_video_capture_device_core.cc
+++ b/content/browser/media/capture/content_video_capture_device_core.cc
@@ -110,10 +110,6 @@ bool ThreadSafeCaptureOracle::ObserveEventAndDecideCapture(
TRACE_EVENT_ASYNC_BEGIN2("mirroring", "Capture", output_buffer.get(),
"frame_number", frame_number,
"trigger", event_name);
- *callback = base::Bind(&ThreadSafeCaptureOracle::DidCaptureFrame,
- this,
- output_buffer,
- frame_number);
*storage = media::VideoFrame::WrapExternalPackedMemory(
media::VideoFrame::I420,
capture_size_,
@@ -124,6 +120,11 @@ bool ThreadSafeCaptureOracle::ObserveEventAndDecideCapture(
base::SharedMemory::NULLHandle(),
base::TimeDelta(),
base::Closure());
+ *callback = base::Bind(&ThreadSafeCaptureOracle::DidCaptureFrame,
+ this,
+ output_buffer,
+ *storage,
+ frame_number);
return true;
}
@@ -167,7 +168,8 @@ void ThreadSafeCaptureOracle::ReportError(const std::string& reason) {
}
void ThreadSafeCaptureOracle::DidCaptureFrame(
- scoped_refptr<media::VideoCaptureDevice::Client::Buffer> buffer,
+ const scoped_refptr<media::VideoCaptureDevice::Client::Buffer>& buffer,
+ const scoped_refptr<media::VideoFrame>& frame,
int frame_number,
base::TimeTicks timestamp,
bool success) {
@@ -181,11 +183,12 @@ void ThreadSafeCaptureOracle::DidCaptureFrame(
if (success) {
if (oracle_->CompleteCapture(frame_number, timestamp)) {
- client_->OnIncomingCapturedBuffer(buffer,
- media::VideoFrame::I420,
- capture_size_,
- timestamp,
- frame_rate_);
+ client_->OnIncomingCapturedVideoFrame(
+ buffer,
+ media::VideoCaptureFormat(
+ capture_size_, frame_rate_, media::PIXEL_FORMAT_I420),
+ frame,
+ timestamp);
}
}
}

Powered by Google App Engine
This is Rietveld 408576698