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

Issue 777136 link

Starred by 1 user

Issue metadata

Status: WontFix
Owner: ----
Closed: Oct 2017
Cc:
Components:
EstimatedDays: ----
NextAction: ----
OS: Mac
Pri: 2
Type: Bug-Regression



Sign in to add a comment

tabCapture stop sending frame when tab becomes inactive (not selected)

Reported by kra...@gmail.com, Oct 21 2017

Issue description

UserAgent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10_13_0) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/64.0.3246.0 Safari/537.36

Steps to reproduce the problem:
1. Start capturing video in tab using chrome.tabCapture (using MediaRecorder to get Blob)
2. Switch to another tab
3. Stop capture after some time (e.g. 10 seconds).

What is the expected behavior?
I expect to get 10 seconds long video

What went wrong?
I get very short video (some milliseconds). Everything works fine when keeping tab active (interacting with it).

Did this work before? Yes 

Does this work in other browsers? N/A

Chrome version: 64.0.3246.0  Channel: canary
OS Version: OS X 10.13.0
Flash Version: 

It seems like this issue is related to background tab throttling. Doing so breaks my extension, which expects to get frames regardless of the tab activity.
 
Labels: Needs-Bisect Needs-Triage-M64
Components: -Blink>Media Blink>MediaRecording
Cc: sc00335...@techmahindra.com
Labels: Triaged-ET Needs-Feedback
Unable to reproduce this issue with below steps on reported version 64.0.3246.0 and latest canary 64.0.3247.0 using Mac 10.12.6.

Test URL: https://chrome.google.com/webstore/detail/bugreplay/ffcpppmcclefacgmplnmghljcomeiobd?utm_source=chrome-ntp-icon extension 

On adding above extension on Mac 10.12.6 error "BugrReplay is blocked by administrator" message is seen.

But on adding in Ubuntu 14.04 and Windows 10 and following steps below worked fine.

1.Added above extension and captured tab for 25 seconds and 
2. Now video with 25 seconds is seen without any missing

@Reporter: Could you please let us know the test URL through which you captured tab recording.

Thanks!

Comment 4 by mcasas@chromium.org, Oct 23 2017

Cc: m...@chromium.org
Components: Internals>Media>Capture>Tab>v2
Adding Tab capture Component (seems more related to the source than
to the Recorder itself FWIW).

Comment 5 by kra...@gmail.com, Oct 24 2017

Attached minimal extension to reproduce an issue. Steps:
1. Add/install extension
2. Navigate somewhere
3. Start recording and after couple seconds switch to another tab
4. Do not return and wait till new tab is open with captured video

I set 10 seconds delay in code, but video will be much shorter. If I get it right, length equals tab activity time.
tabCaptureTest.zip
10.6 KB Download
Project Member

Comment 6 by sheriffbot@chromium.org, Oct 24 2017

Labels: -Needs-Feedback
Thank you for providing more feedback. Adding requester "sc00335628@techmahindra.com" to the cc list and removing "Needs-Feedback" label.

For more details visit https://www.chromium.org/issue-tracking/autotriage - Your friendly Sheriffbot

Comment 7 by kra...@gmail.com, Oct 24 2017

It works properly, however, if you stop recording with another click on extension button.
Cc: jmukthavaram@chromium.org
Labels: Needs-Feedback
Tested this issue on mac 10.12.6 using chrome reported version-64.0.3246.0  & latest Canary-64.0.3249.0  as per steps & Zip file mentioned in C#5 .

After step 3 & 4 in C#5, observed new tab opened with captured video which is exactly 10 secs duration.

If we want to stop before 10 sec's also we can stop by clicking on extension button at the right side of omnibox.

Seems it is working as intended.

krassx@, Could you please check & let us know your observations on the same (or confirm to close the issue).

Thanks..!

Comment 9 by kra...@gmail.com, Oct 25 2017

For me it always generate broken video (much shorter). Primary idea here is to stay switch to another tab and wait there for completion (not at the tab you are capturing). I will try to capture my screen with the issue, so you will have visual confirmation of my words :).
Project Member

Comment 10 by sheriffbot@chromium.org, Oct 25 2017

Labels: -Needs-Feedback
Thank you for providing more feedback. Adding requester "jmukthavaram@chromium.org" to the cc list and removing "Needs-Feedback" label.

For more details visit https://www.chromium.org/issue-tracking/autotriage - Your friendly Sheriffbot

Comment 11 by kra...@gmail.com, Oct 25 2017

Here it is. I started capture and switched to another tab. Then, after 10 secs new tab was created with captured video. And its length is 2 secs, not 10.
c85aa466-9183-4287-y66a-b2641448f4fa.webm
2.8 MB View Download
Status: WontFix (was: Unconfirmed)
Just to clarify, IIRC tab capture will only generate frames as long as there
is content update (e.g. scrolling, a video or an animation).  MediaRecorder
OTOH simply records what is fed to it, so if you're sending an inactive tab
to the background and then collecting the results with a timed MediaRecorder,
then what we get here is what is expected. 

A similar situation happens with <canvas>.captureStream(), which does not
produce frames if the content is not updated.

The best option might be to force new frames from the background tab.
Marking as Wontfix from the MediaRecorder POV beacause it's WAI, please
feel free to reopen if we need more discussion.

Sign in to add a comment