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

Issue 834674 link

Starred by 1 user

Issue metadata

Status: Assigned
Owner:
OOO Dec 22 - Jan 8
Cc:
Components:
EstimatedDays: ----
NextAction: ----
OS: Android , Chrome , Fuchsia
Pri: 1
Type: Feature

Blocked on:
issue 853254
issue 834702


Participants' hotlists:
AudioService-FixIt


Sign in to add a comment

Make AudioManager inaccessible outside of Audio service when it runs in the browser process

Project Member Reported by olka@chromium.org, Apr 19 2018

Issue description

1) Make in-process Audio service own non-embedder AudioManager instance.

Currently when Audio service runs in the browser process, BrowserMainLoop always creates and owns an AudioManager instance. This instance is externally available though BML::audio_manager() getter.
Instead, in case AudioManager is not provided by ContentBrowserClient::CreateAudioManager(), it should be created and owned by Audio service. For that BML should manage the thread to create and run Audio service on.

2) Remove public access to AudioManager instance provided by AudioManager::Get().

We should either get rid of it altogether and pass a pointer to AudioManager around (cleaner), or (quicker) move the getter into an internal namespace and announce that an access to it is limited to media/audio only (classes which should be eventually moved to audio:: namespace)
 

Comment 1 by olka@chromium.org, Apr 19 2018

Labels: -Type-Bug Type-Feature

Comment 2 by olka@chromium.org, Apr 19 2018

Blockedon: 834702
Labels: -OS-iOS
iOS does not use AudioManager
Labels: -Pri-2 Pri-1
Blockedon: 853254
Labels: M-72

Sign in to add a comment