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

Issue 642321 link

Starred by 8 users

Issue metadata

Status: Verified
Owner:
Closed: Nov 2016
Cc:
Components:
EstimatedDays: ----
NextAction: ----
OS: Linux , Android , Windows , All , Chrome , Mac
Pri: 2
Type: Bug

Blocked on:
issue 517317



Sign in to add a comment

Audio playback is throttled in a background tab when page is frequently playing very short audio clips

Reported by g...@zoidberg.md, Aug 30 2016

Issue description

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

Example URL:
https://gfv.github.io/chromium-bug-report-1/

Steps to reproduce the problem:
1. Open the attached URL.
2. Switch to the other tab.

What is the expected behavior?
Sound playback continues smoothly.

What went wrong?
Sound is choppy, with a small amount of clips played every second.

Did this work before? N/A 

Is it a problem with Flash or HTML5? HTML5

Does this work in other browsers? N/A 

Chrome version: 52.0.2743.116  Channel: stable
OS Version: OS X 10.11.4
Flash Version: Shockwave Flash 22.0 r0
 
Cc: skyos...@chromium.org altimin@chromium.org alexclarke@chromium.org
Components: -Internals>Media Blink>Scheduling
Labels: -Pri-2 Pri-3
Status: Available (was: Unconfirmed)
This is the result of background timer throttling.

With a lot of short renderer playback sounds renderer changes music playback state dozens of times per second, but tasks do not become unthrottled when RendererSchedulerImpl::OnRendererForegrounded is called.

Proposed solution is to wire information from OnRendererForegrounded to ThrottlingHelper and call PumpThrottledTasks.

Sami, WDYT?
Is the bug here that WebViewSchedulerImpl::setPageVisible is not getting called when audio playback starts? I think that should properly unthrottle tasks.
Components: Blink>WebAudio
This is a known issue for some applications that use Web Audio API with setTimeout() or requestAnimationFrame(). As pointed at #1, the culprit is the background timer throttling.

I am leaving the Blink>WebAudio label for the reference purpose, but this is not a WebAudio problem.
Sami: I've taken another look.

The problem is that OnRendererForegrounded/setPageVisible are called, but task queues do not become unthrottled because they are not pumped (and can't run tasks immediately).

There are a number of solutions to this problem. It seems that removing manual pumping should do the trick (but we should not to forget to handle this case when we add additional throttling logic).


Thanks for looking into this. I'm still a bit confused because when unthrottling a queue ThrottlingHelper sets the pump policy to auto here:

https://cs.chromium.org/chromium/src/third_party/WebKit/Source/platform/scheduler/renderer/throttling_helper.cc?rcl=0&l=108

And doing that causes a pump to happen:

https://cs.chromium.org/chromium/src/third_party/WebKit/Source/platform/scheduler/base/task_queue_impl.cc?rcl=1472628123&l=671
 Issue 646163  has been merged into this issue.
Labels: -Pri-3 OS-Android OS-Chrome OS-iOS OS-Linux OS-Windows OS-All Pri-2
Owner: altimin@chromium.org
Status: Started (was: Available)
Labels: -OS-iOS
Project Member

Comment 10 by bugdroid1@chromium.org, Oct 6 2016

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

commit a7a651d546b76499821b4ba47b8f017d4b8becac
Author: altimin <altimin@chromium.org>
Date: Thu Oct 06 02:40:20 2016

[scheduler] Teach scheduler about audio state

This patch wires information about audio state to renderer scheduler
and stops all throttling (background and offscreen) while
audio is playing and for a short period after audio is stopped.

BUG= 642321 , 616519 
CQ_INCLUDE_TRYBOTS=master.tryserver.blink:linux_precise_blink_rel

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

[modify] https://crrev.com/a7a651d546b76499821b4ba47b8f017d4b8becac/cc/test/ordered_simple_task_runner.cc
[modify] https://crrev.com/a7a651d546b76499821b4ba47b8f017d4b8becac/content/browser/media/audio_stream_monitor.cc
[modify] https://crrev.com/a7a651d546b76499821b4ba47b8f017d4b8becac/content/browser/web_contents/web_contents_impl.cc
[modify] https://crrev.com/a7a651d546b76499821b4ba47b8f017d4b8becac/content/browser/web_contents/web_contents_impl.h
[modify] https://crrev.com/a7a651d546b76499821b4ba47b8f017d4b8becac/content/common/page_messages.h
[modify] https://crrev.com/a7a651d546b76499821b4ba47b8f017d4b8becac/content/public/browser/web_contents.h
[modify] https://crrev.com/a7a651d546b76499821b4ba47b8f017d4b8becac/content/renderer/render_view_impl.cc
[modify] https://crrev.com/a7a651d546b76499821b4ba47b8f017d4b8becac/content/renderer/render_view_impl.h
[modify] https://crrev.com/a7a651d546b76499821b4ba47b8f017d4b8becac/third_party/WebKit/Source/platform/scheduler/renderer/renderer_scheduler_impl.cc
[modify] https://crrev.com/a7a651d546b76499821b4ba47b8f017d4b8becac/third_party/WebKit/Source/platform/scheduler/renderer/renderer_scheduler_impl.h
[modify] https://crrev.com/a7a651d546b76499821b4ba47b8f017d4b8becac/third_party/WebKit/Source/platform/scheduler/renderer/task_queue_throttler.cc
[modify] https://crrev.com/a7a651d546b76499821b4ba47b8f017d4b8becac/third_party/WebKit/Source/platform/scheduler/renderer/task_queue_throttler.h
[modify] https://crrev.com/a7a651d546b76499821b4ba47b8f017d4b8becac/third_party/WebKit/Source/platform/scheduler/renderer/task_queue_throttler_unittest.cc
[modify] https://crrev.com/a7a651d546b76499821b4ba47b8f017d4b8becac/third_party/WebKit/Source/platform/scheduler/renderer/web_view_scheduler_impl.cc
[modify] https://crrev.com/a7a651d546b76499821b4ba47b8f017d4b8becac/third_party/WebKit/Source/platform/scheduler/renderer/web_view_scheduler_impl.h
[modify] https://crrev.com/a7a651d546b76499821b4ba47b8f017d4b8becac/third_party/WebKit/Source/web/WebViewImpl.cpp
[modify] https://crrev.com/a7a651d546b76499821b4ba47b8f017d4b8becac/third_party/WebKit/Source/web/WebViewImpl.h
[modify] https://crrev.com/a7a651d546b76499821b4ba47b8f017d4b8becac/third_party/WebKit/public/platform/WebViewScheduler.h
[modify] https://crrev.com/a7a651d546b76499821b4ba47b8f017d4b8becac/third_party/WebKit/public/web/WebView.h

Fixed, right?
Status: Fixed (was: Started)
I hope so :)
Labels: Merge-Request-55
This fix landed on October 6th, please merge it into M55.

Comment 14 by dimu@chromium.org, Oct 7 2016

Labels: -Merge-Request-55 Merge-Review-55 Hotlist-Merge-Review
[Automated comment] Commit may have occurred before M55 branch point (10/6/2016), needs manual review.
Labels: -Hotlist-Merge-review -Merge-Review-55
M55 Branched Chromium at revision: 423768 so this {#423405} is already in branch. No merge is needed.
Labels: TE-Verified-M55 TE-Verified-55.0.2883.6
Verified this issue on Mac OS 10.12, Ubuntu 14.04 and Windows-10 using chrome latest dev #55.0.2883.6. By opening the link https://gfv.github.io/chromium-bug-report-1/ observed the sound plays continues smoothly even after switching tabs as expected. Hence adding TE-Verified label.
642321.mp4
651 KB View Download
Project Member

Comment 17 by bugdroid1@chromium.org, Oct 11 2016

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

commit ab94f97287e2649a65b633fe8e5d841ff2a65716
Author: erikchen <erikchen@chromium.org>
Date: Tue Oct 11 01:34:58 2016

Revert "[scheduler] Teach scheduler about audio state"

> This patch wires information about audio state to renderer scheduler
> and stops all throttling (background and offscreen) while
> audio is playing and for a short period after audio is stopped.
>
> BUG= 642321 ,  616519 
> CQ_INCLUDE_TRYBOTS=master.tryserver.blink:linux_precise_blink_rel
>
> Committed: https://crrev.com/a7a651d546b76499821b4ba47b8f017d4b8becac
> Cr-Commit-Position: refs/heads/master@{#423405}

BUG=653865,  642321 ,  616519 
CQ_INCLUDE_TRYBOTS=master.tryserver.blink:linux_precise_blink_rel
TBR=clamy@chromium.org, skyostil@chromium.org, dcheng@chromium.org, alexclarke@chromium.org

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

[modify] https://crrev.com/ab94f97287e2649a65b633fe8e5d841ff2a65716/cc/test/ordered_simple_task_runner.cc
[modify] https://crrev.com/ab94f97287e2649a65b633fe8e5d841ff2a65716/content/browser/media/audio_stream_monitor.cc
[modify] https://crrev.com/ab94f97287e2649a65b633fe8e5d841ff2a65716/content/browser/web_contents/web_contents_impl.cc
[modify] https://crrev.com/ab94f97287e2649a65b633fe8e5d841ff2a65716/content/browser/web_contents/web_contents_impl.h
[modify] https://crrev.com/ab94f97287e2649a65b633fe8e5d841ff2a65716/content/common/page_messages.h
[modify] https://crrev.com/ab94f97287e2649a65b633fe8e5d841ff2a65716/content/public/browser/web_contents.h
[modify] https://crrev.com/ab94f97287e2649a65b633fe8e5d841ff2a65716/content/renderer/render_view_impl.cc
[modify] https://crrev.com/ab94f97287e2649a65b633fe8e5d841ff2a65716/content/renderer/render_view_impl.h
[modify] https://crrev.com/ab94f97287e2649a65b633fe8e5d841ff2a65716/third_party/WebKit/Source/platform/scheduler/renderer/renderer_scheduler_impl.cc
[modify] https://crrev.com/ab94f97287e2649a65b633fe8e5d841ff2a65716/third_party/WebKit/Source/platform/scheduler/renderer/renderer_scheduler_impl.h
[modify] https://crrev.com/ab94f97287e2649a65b633fe8e5d841ff2a65716/third_party/WebKit/Source/platform/scheduler/renderer/task_queue_throttler.cc
[modify] https://crrev.com/ab94f97287e2649a65b633fe8e5d841ff2a65716/third_party/WebKit/Source/platform/scheduler/renderer/task_queue_throttler.h
[modify] https://crrev.com/ab94f97287e2649a65b633fe8e5d841ff2a65716/third_party/WebKit/Source/platform/scheduler/renderer/task_queue_throttler_unittest.cc
[modify] https://crrev.com/ab94f97287e2649a65b633fe8e5d841ff2a65716/third_party/WebKit/Source/platform/scheduler/renderer/web_view_scheduler_impl.cc
[modify] https://crrev.com/ab94f97287e2649a65b633fe8e5d841ff2a65716/third_party/WebKit/Source/platform/scheduler/renderer/web_view_scheduler_impl.h
[modify] https://crrev.com/ab94f97287e2649a65b633fe8e5d841ff2a65716/third_party/WebKit/Source/web/WebViewImpl.cpp
[modify] https://crrev.com/ab94f97287e2649a65b633fe8e5d841ff2a65716/third_party/WebKit/Source/web/WebViewImpl.h
[modify] https://crrev.com/ab94f97287e2649a65b633fe8e5d841ff2a65716/third_party/WebKit/public/platform/WebViewScheduler.h
[modify] https://crrev.com/ab94f97287e2649a65b633fe8e5d841ff2a65716/third_party/WebKit/public/web/WebView.h

Project Member

Comment 18 by bugdroid1@chromium.org, Oct 11 2016

Labels: merge-merged-2883
The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/d0175120266fb9eaf5068312e164e21cc1767c6d

commit d0175120266fb9eaf5068312e164e21cc1767c6d
Author: erikchen <erikchen@chromium.org>
Date: Tue Oct 11 01:51:37 2016

[Merge to 2883] Revert "[scheduler] Teach scheduler about audio state"

> > This patch wires information about audio state to renderer scheduler
> > and stops all throttling (background and offscreen) while
> > audio is playing and for a short period after audio is stopped.
> >
> > BUG= 642321 ,  616519 
> > CQ_INCLUDE_TRYBOTS=master.tryserver.blink:linux_precise_blink_rel
> >
> > Committed: https://crrev.com/a7a651d546b76499821b4ba47b8f017d4b8becac
> > Cr-Commit-Position: refs/heads/master@{#423405}
>
> BUG=653865,  642321 ,  616519 
> CQ_INCLUDE_TRYBOTS=master.tryserver.blink:linux_precise_blink_rel
> TBR=clamy@chromium.org, skyostil@chromium.org, dcheng@chromium.org, alexclarke@chromium.org
>
> Review-Url: https://codereview.chromium.org/2408003002
> Cr-Commit-Position: refs/heads/master@{#424334}
> (cherry picked from commit ab94f97287e2649a65b633fe8e5d841ff2a65716)

Review URL: https://codereview.chromium.org/2403363003 .

Cr-Commit-Position: refs/branch-heads/2883@{#30}
Cr-Branched-From: 614d31daee2f61b0180df403a8ad43f20b9f6dd7-refs/heads/master@{#423768}

[modify] https://crrev.com/d0175120266fb9eaf5068312e164e21cc1767c6d/cc/test/ordered_simple_task_runner.cc
[modify] https://crrev.com/d0175120266fb9eaf5068312e164e21cc1767c6d/content/browser/media/audio_stream_monitor.cc
[modify] https://crrev.com/d0175120266fb9eaf5068312e164e21cc1767c6d/content/browser/web_contents/web_contents_impl.cc
[modify] https://crrev.com/d0175120266fb9eaf5068312e164e21cc1767c6d/content/browser/web_contents/web_contents_impl.h
[modify] https://crrev.com/d0175120266fb9eaf5068312e164e21cc1767c6d/content/common/page_messages.h
[modify] https://crrev.com/d0175120266fb9eaf5068312e164e21cc1767c6d/content/public/browser/web_contents.h
[modify] https://crrev.com/d0175120266fb9eaf5068312e164e21cc1767c6d/content/renderer/render_view_impl.cc
[modify] https://crrev.com/d0175120266fb9eaf5068312e164e21cc1767c6d/content/renderer/render_view_impl.h
[modify] https://crrev.com/d0175120266fb9eaf5068312e164e21cc1767c6d/third_party/WebKit/Source/platform/scheduler/renderer/renderer_scheduler_impl.cc
[modify] https://crrev.com/d0175120266fb9eaf5068312e164e21cc1767c6d/third_party/WebKit/Source/platform/scheduler/renderer/renderer_scheduler_impl.h
[modify] https://crrev.com/d0175120266fb9eaf5068312e164e21cc1767c6d/third_party/WebKit/Source/platform/scheduler/renderer/task_queue_throttler.cc
[modify] https://crrev.com/d0175120266fb9eaf5068312e164e21cc1767c6d/third_party/WebKit/Source/platform/scheduler/renderer/task_queue_throttler.h
[modify] https://crrev.com/d0175120266fb9eaf5068312e164e21cc1767c6d/third_party/WebKit/Source/platform/scheduler/renderer/task_queue_throttler_unittest.cc
[modify] https://crrev.com/d0175120266fb9eaf5068312e164e21cc1767c6d/third_party/WebKit/Source/platform/scheduler/renderer/web_view_scheduler_impl.cc
[modify] https://crrev.com/d0175120266fb9eaf5068312e164e21cc1767c6d/third_party/WebKit/Source/platform/scheduler/renderer/web_view_scheduler_impl.h
[modify] https://crrev.com/d0175120266fb9eaf5068312e164e21cc1767c6d/third_party/WebKit/Source/web/WebViewImpl.cpp
[modify] https://crrev.com/d0175120266fb9eaf5068312e164e21cc1767c6d/third_party/WebKit/Source/web/WebViewImpl.h
[modify] https://crrev.com/d0175120266fb9eaf5068312e164e21cc1767c6d/third_party/WebKit/public/platform/WebViewScheduler.h
[modify] https://crrev.com/d0175120266fb9eaf5068312e164e21cc1767c6d/third_party/WebKit/public/web/WebView.h

Labels: -TE-Verified-M55 -merge-merged-2883 -TE-Verified-55.0.2883.6
Status: Started (was: Fixed)
The fix was reverted because it was suspected in many audio-related crashed. Needs further work to re-land and detect the cause of crashes (if they persist).
Project Member

Comment 20 by bugdroid1@chromium.org, Oct 27 2016

Labels: merge-merged-2840
The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/a7a651d546b76499821b4ba47b8f017d4b8becac

commit a7a651d546b76499821b4ba47b8f017d4b8becac
Author: altimin <altimin@chromium.org>
Date: Thu Oct 06 02:40:20 2016

[scheduler] Teach scheduler about audio state

This patch wires information about audio state to renderer scheduler
and stops all throttling (background and offscreen) while
audio is playing and for a short period after audio is stopped.

BUG= 642321 , 616519 
CQ_INCLUDE_TRYBOTS=master.tryserver.blink:linux_precise_blink_rel

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

[modify] https://crrev.com/a7a651d546b76499821b4ba47b8f017d4b8becac/cc/test/ordered_simple_task_runner.cc
[modify] https://crrev.com/a7a651d546b76499821b4ba47b8f017d4b8becac/content/browser/media/audio_stream_monitor.cc
[modify] https://crrev.com/a7a651d546b76499821b4ba47b8f017d4b8becac/content/browser/web_contents/web_contents_impl.cc
[modify] https://crrev.com/a7a651d546b76499821b4ba47b8f017d4b8becac/content/browser/web_contents/web_contents_impl.h
[modify] https://crrev.com/a7a651d546b76499821b4ba47b8f017d4b8becac/content/common/page_messages.h
[modify] https://crrev.com/a7a651d546b76499821b4ba47b8f017d4b8becac/content/public/browser/web_contents.h
[modify] https://crrev.com/a7a651d546b76499821b4ba47b8f017d4b8becac/content/renderer/render_view_impl.cc
[modify] https://crrev.com/a7a651d546b76499821b4ba47b8f017d4b8becac/content/renderer/render_view_impl.h
[modify] https://crrev.com/a7a651d546b76499821b4ba47b8f017d4b8becac/third_party/WebKit/Source/platform/scheduler/renderer/renderer_scheduler_impl.cc
[modify] https://crrev.com/a7a651d546b76499821b4ba47b8f017d4b8becac/third_party/WebKit/Source/platform/scheduler/renderer/renderer_scheduler_impl.h
[modify] https://crrev.com/a7a651d546b76499821b4ba47b8f017d4b8becac/third_party/WebKit/Source/platform/scheduler/renderer/task_queue_throttler.cc
[modify] https://crrev.com/a7a651d546b76499821b4ba47b8f017d4b8becac/third_party/WebKit/Source/platform/scheduler/renderer/task_queue_throttler.h
[modify] https://crrev.com/a7a651d546b76499821b4ba47b8f017d4b8becac/third_party/WebKit/Source/platform/scheduler/renderer/task_queue_throttler_unittest.cc
[modify] https://crrev.com/a7a651d546b76499821b4ba47b8f017d4b8becac/third_party/WebKit/Source/platform/scheduler/renderer/web_view_scheduler_impl.cc
[modify] https://crrev.com/a7a651d546b76499821b4ba47b8f017d4b8becac/third_party/WebKit/Source/platform/scheduler/renderer/web_view_scheduler_impl.h
[modify] https://crrev.com/a7a651d546b76499821b4ba47b8f017d4b8becac/third_party/WebKit/Source/web/WebViewImpl.cpp
[modify] https://crrev.com/a7a651d546b76499821b4ba47b8f017d4b8becac/third_party/WebKit/Source/web/WebViewImpl.h
[modify] https://crrev.com/a7a651d546b76499821b4ba47b8f017d4b8becac/third_party/WebKit/public/platform/WebViewScheduler.h
[modify] https://crrev.com/a7a651d546b76499821b4ba47b8f017d4b8becac/third_party/WebKit/public/web/WebView.h

Project Member

Comment 21 by bugdroid1@chromium.org, Oct 27 2016

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

commit d0175120266fb9eaf5068312e164e21cc1767c6d
Author: erikchen <erikchen@chromium.org>
Date: Tue Oct 11 01:51:37 2016

[Merge to 2883] Revert "[scheduler] Teach scheduler about audio state"

> > This patch wires information about audio state to renderer scheduler
> > and stops all throttling (background and offscreen) while
> > audio is playing and for a short period after audio is stopped.
> >
> > BUG= 642321 ,  616519 
> > CQ_INCLUDE_TRYBOTS=master.tryserver.blink:linux_precise_blink_rel
> >
> > Committed: https://crrev.com/a7a651d546b76499821b4ba47b8f017d4b8becac
> > Cr-Commit-Position: refs/heads/master@{#423405}
>
> BUG=653865,  642321 ,  616519 
> CQ_INCLUDE_TRYBOTS=master.tryserver.blink:linux_precise_blink_rel
> TBR=clamy@chromium.org, skyostil@chromium.org, dcheng@chromium.org, alexclarke@chromium.org
>
> Review-Url: https://codereview.chromium.org/2408003002
> Cr-Commit-Position: refs/heads/master@{#424334}
> (cherry picked from commit ab94f97287e2649a65b633fe8e5d841ff2a65716)

Review URL: https://codereview.chromium.org/2403363003 .

Cr-Commit-Position: refs/branch-heads/2883@{#30}
Cr-Branched-From: 614d31daee2f61b0180df403a8ad43f20b9f6dd7-refs/heads/master@{#423768}

[modify] https://crrev.com/d0175120266fb9eaf5068312e164e21cc1767c6d/cc/test/ordered_simple_task_runner.cc
[modify] https://crrev.com/d0175120266fb9eaf5068312e164e21cc1767c6d/content/browser/media/audio_stream_monitor.cc
[modify] https://crrev.com/d0175120266fb9eaf5068312e164e21cc1767c6d/content/browser/web_contents/web_contents_impl.cc
[modify] https://crrev.com/d0175120266fb9eaf5068312e164e21cc1767c6d/content/browser/web_contents/web_contents_impl.h
[modify] https://crrev.com/d0175120266fb9eaf5068312e164e21cc1767c6d/content/common/page_messages.h
[modify] https://crrev.com/d0175120266fb9eaf5068312e164e21cc1767c6d/content/public/browser/web_contents.h
[modify] https://crrev.com/d0175120266fb9eaf5068312e164e21cc1767c6d/content/renderer/render_view_impl.cc
[modify] https://crrev.com/d0175120266fb9eaf5068312e164e21cc1767c6d/content/renderer/render_view_impl.h
[modify] https://crrev.com/d0175120266fb9eaf5068312e164e21cc1767c6d/third_party/WebKit/Source/platform/scheduler/renderer/renderer_scheduler_impl.cc
[modify] https://crrev.com/d0175120266fb9eaf5068312e164e21cc1767c6d/third_party/WebKit/Source/platform/scheduler/renderer/renderer_scheduler_impl.h
[modify] https://crrev.com/d0175120266fb9eaf5068312e164e21cc1767c6d/third_party/WebKit/Source/platform/scheduler/renderer/task_queue_throttler.cc
[modify] https://crrev.com/d0175120266fb9eaf5068312e164e21cc1767c6d/third_party/WebKit/Source/platform/scheduler/renderer/task_queue_throttler.h
[modify] https://crrev.com/d0175120266fb9eaf5068312e164e21cc1767c6d/third_party/WebKit/Source/platform/scheduler/renderer/task_queue_throttler_unittest.cc
[modify] https://crrev.com/d0175120266fb9eaf5068312e164e21cc1767c6d/third_party/WebKit/Source/platform/scheduler/renderer/web_view_scheduler_impl.cc
[modify] https://crrev.com/d0175120266fb9eaf5068312e164e21cc1767c6d/third_party/WebKit/Source/platform/scheduler/renderer/web_view_scheduler_impl.h
[modify] https://crrev.com/d0175120266fb9eaf5068312e164e21cc1767c6d/third_party/WebKit/Source/web/WebViewImpl.cpp
[modify] https://crrev.com/d0175120266fb9eaf5068312e164e21cc1767c6d/third_party/WebKit/Source/web/WebViewImpl.h
[modify] https://crrev.com/d0175120266fb9eaf5068312e164e21cc1767c6d/third_party/WebKit/public/platform/WebViewScheduler.h
[modify] https://crrev.com/d0175120266fb9eaf5068312e164e21cc1767c6d/third_party/WebKit/public/web/WebView.h

Project Member

Comment 22 by bugdroid1@chromium.org, Nov 4 2016

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

commit d8bd26c6124f76be5a0c7cfacc39c3996dd29adf
Author: altimin <altimin@chromium.org>
Date: Fri Nov 04 11:44:54 2016

[scheduler] Teach scheduler about audio state

This patch wires information about audio state to renderer scheduler
and stops all throttling (background and offscreen) while
audio is playing and for a short period after audio is stopped.

BUG= 642321 , 616519 ,  656019 
CQ_INCLUDE_TRYBOTS=master.tryserver.blink:linux_precise_blink_rel

Committed: https://crrev.com/a7a651d546b76499821b4ba47b8f017d4b8becac
Review-Url: https://codereview.chromium.org/2383473002
Cr-Original-Commit-Position: refs/heads/master@{#423405}
Cr-Commit-Position: refs/heads/master@{#429861}

[modify] https://crrev.com/d8bd26c6124f76be5a0c7cfacc39c3996dd29adf/cc/test/ordered_simple_task_runner.cc
[modify] https://crrev.com/d8bd26c6124f76be5a0c7cfacc39c3996dd29adf/content/browser/media/audio_stream_monitor.cc
[modify] https://crrev.com/d8bd26c6124f76be5a0c7cfacc39c3996dd29adf/content/browser/web_contents/web_contents_impl.cc
[modify] https://crrev.com/d8bd26c6124f76be5a0c7cfacc39c3996dd29adf/content/browser/web_contents/web_contents_impl.h
[modify] https://crrev.com/d8bd26c6124f76be5a0c7cfacc39c3996dd29adf/content/common/page_messages.h
[modify] https://crrev.com/d8bd26c6124f76be5a0c7cfacc39c3996dd29adf/content/public/browser/web_contents.h
[modify] https://crrev.com/d8bd26c6124f76be5a0c7cfacc39c3996dd29adf/content/renderer/render_view_impl.cc
[modify] https://crrev.com/d8bd26c6124f76be5a0c7cfacc39c3996dd29adf/content/renderer/render_view_impl.h
[modify] https://crrev.com/d8bd26c6124f76be5a0c7cfacc39c3996dd29adf/third_party/WebKit/Source/platform/scheduler/renderer/renderer_scheduler_impl.cc
[modify] https://crrev.com/d8bd26c6124f76be5a0c7cfacc39c3996dd29adf/third_party/WebKit/Source/platform/scheduler/renderer/renderer_scheduler_impl.h
[modify] https://crrev.com/d8bd26c6124f76be5a0c7cfacc39c3996dd29adf/third_party/WebKit/Source/platform/scheduler/renderer/task_queue_throttler.cc
[modify] https://crrev.com/d8bd26c6124f76be5a0c7cfacc39c3996dd29adf/third_party/WebKit/Source/platform/scheduler/renderer/task_queue_throttler.h
[modify] https://crrev.com/d8bd26c6124f76be5a0c7cfacc39c3996dd29adf/third_party/WebKit/Source/platform/scheduler/renderer/task_queue_throttler_unittest.cc
[modify] https://crrev.com/d8bd26c6124f76be5a0c7cfacc39c3996dd29adf/third_party/WebKit/Source/platform/scheduler/renderer/web_view_scheduler_impl.cc
[modify] https://crrev.com/d8bd26c6124f76be5a0c7cfacc39c3996dd29adf/third_party/WebKit/Source/platform/scheduler/renderer/web_view_scheduler_impl.h
[modify] https://crrev.com/d8bd26c6124f76be5a0c7cfacc39c3996dd29adf/third_party/WebKit/Source/web/WebViewImpl.cpp
[modify] https://crrev.com/d8bd26c6124f76be5a0c7cfacc39c3996dd29adf/third_party/WebKit/Source/web/WebViewImpl.h
[modify] https://crrev.com/d8bd26c6124f76be5a0c7cfacc39c3996dd29adf/third_party/WebKit/public/platform/WebViewScheduler.h
[modify] https://crrev.com/d8bd26c6124f76be5a0c7cfacc39c3996dd29adf/third_party/WebKit/public/web/WebView.h

Comment 23 by dimu@google.com, Nov 4 2016

Labels: -merge-merged-2840
[Automated comment] removing mislabelled merge-merged-2840

Comment 24 by m...@chromium.org, Nov 17 2016

Blockedon: 517317
Status: Fixed (was: Started)
Should be fixed on all platforms now.
 Issue 670511  has been merged into this issue.
On which version of Chromium is this supposed to be fixed? I am using Version 55.0.2883.87 Built on Ubuntu , running on Ubuntu 16.04 (64-bit) and I can still see the same throttling behaviour at https://gfv.github.io/chromium-bug-report-1/

Comment 29 by ka...@meedan.com, May 5 2017

Update to my previous question: I see it fixed now. Thanks!
Status: Verified (was: Fixed)
Verified the  Issue 670511  is not reproducible in Chrome OS 9532.0.0, 60.0.3092.0. 

Sign in to add a comment