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

Unified Diff: content/renderer/media/video_capture_impl.cc

Issue 2428263004: 16 bpp video stream capture, render and createImageBitmap(video) using (CPU) shared memory buffers (Closed)
Patch Set: Split webrtc_depth_capture_browsertest. Thanks phoglund@, Created 4 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/renderer/media/video_capture_impl.cc
diff --git a/content/renderer/media/video_capture_impl.cc b/content/renderer/media/video_capture_impl.cc
index 20d5d921fe483fe41c37bcef49429f3b784c9b8b..669cba33b45253b8e771d197eee10346a46d5c27 100644
--- a/content/renderer/media/video_capture_impl.cc
+++ b/content/renderer/media/video_capture_impl.cc
@@ -258,12 +258,17 @@ void VideoCaptureImpl::OnBufferReady(int32_t buffer_id,
mojom::VideoFrameInfoPtr info) {
DVLOG(1) << __func__ << " buffer_id: " << buffer_id;
DCHECK(io_thread_checker_.CalledOnValidThread());
- DCHECK_EQ(media::PIXEL_FORMAT_I420, info->pixel_format);
- DCHECK_EQ(media::PIXEL_STORAGE_CPU, info->storage_type);
- if (state_ != VIDEO_CAPTURE_STATE_STARTED ||
- info->pixel_format != media::PIXEL_FORMAT_I420 ||
+ bool consume_buffer = state_ == VIDEO_CAPTURE_STATE_STARTED;
+ if ((info->pixel_format != media::PIXEL_FORMAT_I420 &&
+ info->pixel_format != media::PIXEL_FORMAT_Y16) ||
info->storage_type != media::PIXEL_STORAGE_CPU) {
+ consume_buffer = false;
+ LOG(DFATAL) << "Wrong pixel format or storage, got pixel format:"
+ << VideoPixelFormatToString(info->pixel_format)
+ << ", storage:" << info->storage_type;
+ }
+ if (!consume_buffer) {
GetVideoCaptureHost()->ReleaseBuffer(device_id_, buffer_id,
gpu::SyncToken(), -1.0);
return;

Powered by Google App Engine
This is Rietveld 408576698