New issue
Advanced search Search tips

Issue 670383 link

Starred by 1 user

Issue metadata

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

Blocking:
issue 656923



Sign in to add a comment

Remove stream counting and notification from AudioRendererHost/AudioOutputDelegate

Project Member Reported by dalecur...@chromium.org, Dec 1 2016

Issue description

This active audio status is handled by AudioStreamMonitor since altimin@ added support on Android (https://codereview.chromium.org/2496173003/), while the max counts and such more naturally belong in the stream monitor as well now.
 
Labels: -OS-Linux OS-All
Blocking: 656923
Cc: -maxmorin@chromium.org
Owner: maxmorin@chromium.org
Cc: grunell@chromium.org
Labels: -Pri-3 Pri-2
Status: Started (was: Available)
Grunell: Adding you here since you own Media.AudioRendererIpcStreams and Media.AudioRendererIpcStreamsTotal. Is AudioRendererIpcStreams important? What is it used for? I feel like AudioRendererIpcStreamsTotal makes more sense (e.g. to figure out how many streams should we be able to handle before audio gets bad). Would you be opposed to registering at some other point (I find the current way it is reported a bit quirky). I suppose you looked into various alternatives when implementing it, and logging it at shutdown isn't possible. There's also some ~recently added Media.Audible* histograms in https://cs.chromium.org/chromium/src/content/browser/media/audible_metrics.cc which measures similar things.

I've also been looking into moving the code for deciding how to set priority of the renderer process to AudioStreamMonitor. It has to go to RenderProcessHost anyways, and getting it there through WebContentsImpl is a bit roundabout, so right now I'm thinking it should stay in AudioRendererHost (and its replacement).
Media.AudioRendererIpcStreams is per renderer. It's being used for the new mixing experiment, to see how that changes the numbers. (So is the Total variant.)

Yes, it was discussed how to store and log this. Feel free to propose improvements.

Thanks for the audible metrics pointer, that is new to me and was not around when Media.AudioRendererIpcStreams was added.
Project Member

Comment 5 by bugdroid1@chromium.org, Feb 9 2017

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

commit 36218827374706794314c50713b5614a78562e54
Author: dalecurtis <dalecurtis@chromium.org>
Date: Thu Feb 09 06:35:18 2017

Strip out stream counting from AudioRendererHost.

This allows us to prepare the way for the mojo audio subsystem by
moving out pieces from the AudioRendererHost.

We already have a AudioStreamMonitor delivering notifications to
WebContents, so now it just also delivers a notification to the
RenderProcessHostImpl when a stream is started.

RenderProcessHostImpl tracks the current stream count per process
and uses this for background calculations. Old UMA have been set
as obsolete and the AudioStreamsTracker class is now unused, so
removed.

BUG= 670383 
TEST=new browsertest
CQ_INCLUDE_TRYBOTS=master.tryserver.chromium.linux:linux_optional_gpu_tests_rel;master.tryserver.chromium.mac:mac_optional_gpu_tests_rel;master.tryserver.chromium.win:win_optional_gpu_tests_rel

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

[modify] https://crrev.com/36218827374706794314c50713b5614a78562e54/content/browser/media/audio_stream_monitor.cc
[modify] https://crrev.com/36218827374706794314c50713b5614a78562e54/content/browser/renderer_host/media/audio_output_delegate.h
[modify] https://crrev.com/36218827374706794314c50713b5614a78562e54/content/browser/renderer_host/media/audio_output_delegate_impl.cc
[modify] https://crrev.com/36218827374706794314c50713b5614a78562e54/content/browser/renderer_host/media/audio_output_delegate_impl_unittest.cc
[modify] https://crrev.com/36218827374706794314c50713b5614a78562e54/content/browser/renderer_host/media/audio_renderer_host.cc
[modify] https://crrev.com/36218827374706794314c50713b5614a78562e54/content/browser/renderer_host/media/audio_renderer_host.h
[modify] https://crrev.com/36218827374706794314c50713b5614a78562e54/content/browser/renderer_host/render_process_host_browsertest.cc
[modify] https://crrev.com/36218827374706794314c50713b5614a78562e54/content/browser/renderer_host/render_process_host_impl.cc
[modify] https://crrev.com/36218827374706794314c50713b5614a78562e54/content/browser/renderer_host/render_process_host_impl.h
[modify] https://crrev.com/36218827374706794314c50713b5614a78562e54/content/public/browser/render_process_host.h
[modify] https://crrev.com/36218827374706794314c50713b5614a78562e54/content/public/test/mock_render_process_host.cc
[modify] https://crrev.com/36218827374706794314c50713b5614a78562e54/content/public/test/mock_render_process_host.h
[modify] https://crrev.com/36218827374706794314c50713b5614a78562e54/media/audio/BUILD.gn
[delete] https://crrev.com/307f9f29d879afce43fe94d03616ef3c7a87971d/media/audio/audio_streams_tracker.cc
[delete] https://crrev.com/307f9f29d879afce43fe94d03616ef3c7a87971d/media/audio/audio_streams_tracker.h
[delete] https://crrev.com/307f9f29d879afce43fe94d03616ef3c7a87971d/media/audio/audio_streams_tracker_unittest.cc
[modify] https://crrev.com/36218827374706794314c50713b5614a78562e54/tools/metrics/histograms/histograms.xml

Cc: -dalecur...@chromium.org maxmorin@chromium.org
Owner: dalecur...@chromium.org
Status: Fixed (was: Started)

Sign in to add a comment