New issue
Advanced search Search tips
Note: Color blocks (like or ) mean that a user may not be available. Tooltip shows the reason.

Issue 679610 link

Starred by 2 users

Issue metadata

Status: Fixed
Owner:
Closed: Feb 2017
Cc:
Components:
EstimatedDays: ----
NextAction: ----
OS: Linux
Pri: 2
Type: Bug



Sign in to add a comment

canvas.captureStream() using an ImageBitmapRenderingContext

Reported by acmesqua...@gmail.com, Jan 10 2017

Issue description

UserAgent: Mozilla/5.0 (X11; Ubuntu; Linux x86_64; rv:51.0) Gecko/20100101 Firefox/51.0

Steps to reproduce the problem:
Attempt to capture a canvas using MediaRecorder, but draw the frames using transferFromImageBitmap.

What is the expected behavior?
Spec suggests that any change to the canvas should be tracked, regardless of rendering context.

What went wrong?
Outputs a zero byte video

Did this work before? No 

Does this work in other browsers? Yes

Chrome version: Version 57.0.2970.0 dev (64-bit)  Channel: dev
OS Version: 
Flash Version: 

Similar to  Issue 653548 
 
captureStream_bitmap.html
1.7 KB View Download
Labels: Needs-Triage-M57

Comment 2 by mcasas@chromium.org, Jan 10 2017

Cc: emir...@chromium.org mcasas@chromium.org
Components: -Blink>MediaStream Blink>MediaStream>CaptureFromElement
Cc: -emir...@chromium.org
Owner: emir...@chromium.org
Status: Assigned (was: Unconfirmed)
Labels: -Needs-Triage-M57 M-57
Status: Started (was: Assigned)
Cc: junov@chromium.org emir...@chromium.org
 Issue 684008  has been merged into this issue.
Project Member

Comment 6 by bugdroid1@chromium.org, Feb 22 2017

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/8db1658c62cfe49d1be14bc0186d4c20152cfd84

commit 8db1658c62cfe49d1be14bc0186d4c20152cfd84
Author: emircan <emircan@chromium.org>
Date: Wed Feb 22 18:09:28 2017

Notify listeners on OffScreenCanvas changes

This CL adds a hook on commit() calls for OffScreenCanvas so that
the changes are notified to the listeners. setPlaceholderFrame()
calls are used as the hook.

BUG= 679610 
TEST=Added layout test checking for a single frame capture and content_browsertest
for a continuous capture.
Also tested on html demo
https://cdn.rawgit.com/uysalere/js-demos/master/offscreencanvas_user_commit.html

Review-Url: https://codereview.chromium.org/2632593003
Cr-Commit-Position: refs/heads/master@{#452127}

[modify] https://crrev.com/8db1658c62cfe49d1be14bc0186d4c20152cfd84/content/browser/webrtc/webrtc_capture_from_element_browsertest.cc
[modify] https://crrev.com/8db1658c62cfe49d1be14bc0186d4c20152cfd84/content/test/data/media/canvas_capture.html
[add] https://crrev.com/8db1658c62cfe49d1be14bc0186d4c20152cfd84/third_party/WebKit/LayoutTests/fast/mediacapturefromelement/CanvasCaptureMediaStream-offscreencanvas.html
[modify] https://crrev.com/8db1658c62cfe49d1be14bc0186d4c20152cfd84/third_party/WebKit/Source/core/html/HTMLCanvasElement.cpp
[modify] https://crrev.com/8db1658c62cfe49d1be14bc0186d4c20152cfd84/third_party/WebKit/Source/core/html/HTMLCanvasElement.h
[modify] https://crrev.com/8db1658c62cfe49d1be14bc0186d4c20152cfd84/third_party/WebKit/Source/platform/graphics/AcceleratedStaticBitmapImage.cpp
[modify] https://crrev.com/8db1658c62cfe49d1be14bc0186d4c20152cfd84/third_party/WebKit/Source/platform/graphics/OffscreenCanvasPlaceholder.h
[modify] https://crrev.com/8db1658c62cfe49d1be14bc0186d4c20152cfd84/third_party/WebKit/Source/platform/graphics/SkiaTextureHolder.h

Project Member

Comment 7 by bugdroid1@chromium.org, Feb 24 2017

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/fab6dba98d3356e685ffee7ca2cd6acadb2fb4f9

commit fab6dba98d3356e685ffee7ca2cd6acadb2fb4f9
Author: emircan <emircan@chromium.org>
Date: Fri Feb 24 03:46:38 2017

Notify listeners on bitmaprenderer context changes

This CL addresses the bug in HTMLCanvasElement::getSourceImageForCanvas() caused
by the uninitialized value of |status|. With the corrected status, we can send
captured frame to canvas listeners.

BUG= 679610 
TEST=Added layout test checking for a single frame capture and content_browsertest
for a continuous capture.

Review-Url: https://codereview.chromium.org/2683343002
Cr-Commit-Position: refs/heads/master@{#452743}

[modify] https://crrev.com/fab6dba98d3356e685ffee7ca2cd6acadb2fb4f9/content/browser/webrtc/webrtc_capture_from_element_browsertest.cc
[modify] https://crrev.com/fab6dba98d3356e685ffee7ca2cd6acadb2fb4f9/content/test/data/media/canvas_capture.html
[add] https://crrev.com/fab6dba98d3356e685ffee7ca2cd6acadb2fb4f9/third_party/WebKit/LayoutTests/fast/mediacapturefromelement/CanvasCaptureMediaStream-imagebitmaprenderingcontext.html
[modify] https://crrev.com/fab6dba98d3356e685ffee7ca2cd6acadb2fb4f9/third_party/WebKit/Source/core/html/HTMLCanvasElement.cpp
[modify] https://crrev.com/fab6dba98d3356e685ffee7ca2cd6acadb2fb4f9/third_party/WebKit/Source/modules/imagebitmap/ImageBitmapRenderingContext.cpp

Status: Fixed (was: Started)

Sign in to add a comment