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

Issue 726308 link

Starred by 3 users

Issue metadata

Status: Untriaged
Owner: ----
Cc:
Components:
EstimatedDays: ----
NextAction: ----
OS: Windows
Pri: 2
Type: Feature



Sign in to add a comment

Feature request: Audio management support in <webview>

Reported by ruckaja...@gmail.com, May 25 2017

Issue description

UserAgent: Mozilla/5.0 (Windows NT 6.1; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/58.0.3029.110 Safari/537.36

Steps to reproduce the problem:
component:Platform>Apps>BrowserTag

Missing feature:
There is no API for audio on <webview>. It is not possible to find out whether <webview> has audio output (is playing). And it is not possible to (un)mute <webview>.

Proposed API on <webview>:
- `audiblechange` event which is invoked when audio output is changed (audio starts to play or stops to play)
 - `setAudioMuted(bool mute)` method to (un)set audio mute
 - `isAudioMuted(function callback)` method to find out in callback whether mute is set.

Implementation:
Since we really need this feature for out project based on NW.js (which is based on chromium) we already implement it into Chromium fork:
https://github.com/janRucka/chromium.src-1/commit/3b24d96207cbb9aa3cbc227167c00945155f9696

If this feature is ‘cool enough’ to be in future version of Chromium we are willing to go through next steps needed to get it accepted.

What is the expected behavior?

What went wrong?
^^^

Did this work before? N/A 

Chrome version: 58.0.3029.110  Channel: stable
OS Version: 6.1 (Windows 7, Windows Server 2008 R2)
Flash Version:
 
Labels: Needs-Triage-M58

Comment 2 by hdodda@chromium.org, May 26 2017

Cc: hdodda@chromium.org
Components: Platform>Apps>BrowserTag
Labels: -Type-Bug M-60 Type-Feature
Status: Untriaged (was: Unconfirmed)
This seems more lika a feature request , marking this as untraiged for further inputs on this.

Thanks!

Comment 3 by lfg@chromium.org, Jun 29 2017

Labels: -Needs-Triage-M58
Sorry for the delay, looking through your change it looks reasonable, why don't you contribute a patch?

Instructions are available at: https://www.chromium.org/developers/contributing-code

Comment 4 Deleted

Project Member

Comment 5 by bugdroid1@chromium.org, Aug 8 2017

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

commit 442c83f4287fb69f00674494a62caef366f316ad
Author: Jan Rucka <ruckajan10@gmail.com>
Date: Tue Aug 08 13:27:54 2017

Audio management support in <webview>

To find out whether webview has (or has not) audio
output and to (un)mute it there is following API:
- `audiblechange` event which is invoked when audio
   output is changed (audio starts to play or stops to play)
- `setAudioMuted(bool mute)` method to (un)set audio mute
- `isAudioMuted(function callback)` method to
   find out in callback whether mute is set.

R=fsamuel@chromium.org, lfg@chromium.org

Bug: 726308
Change-Id: I0b91ed4c1bece0d6922dd0132f8c47eb0434de41
Reviewed-on: https://chromium-review.googlesource.com/566680
Reviewed-by: Alexei Svitkine (slow) <asvitkine@chromium.org>
Reviewed-by: Yuri Wiitala <miu@chromium.org>
Reviewed-by: Istiaque Ahmed <lazyboy@chromium.org>
Reviewed-by: Kinuko Yasuda <kinuko@chromium.org>
Reviewed-by: Lucas Gadani <lfg@chromium.org>
Commit-Queue: Lucas Gadani <lfg@chromium.org>
Cr-Commit-Position: refs/heads/master@{#492610}
[modify] https://crrev.com/442c83f4287fb69f00674494a62caef366f316ad/AUTHORS
[modify] https://crrev.com/442c83f4287fb69f00674494a62caef366f316ad/chrome/browser/apps/guest_view/web_view_browsertest.cc
[modify] https://crrev.com/442c83f4287fb69f00674494a62caef366f316ad/chrome/common/extensions/api/webview_tag.json
[add] https://crrev.com/442c83f4287fb69f00674494a62caef366f316ad/chrome/test/data/extensions/platform_apps/web_view/audio_state_api/main.html
[add] https://crrev.com/442c83f4287fb69f00674494a62caef366f316ad/chrome/test/data/extensions/platform_apps/web_view/audio_state_api/main.js
[add] https://crrev.com/442c83f4287fb69f00674494a62caef366f316ad/chrome/test/data/extensions/platform_apps/web_view/audio_state_api/manifest.json
[add] https://crrev.com/442c83f4287fb69f00674494a62caef366f316ad/chrome/test/data/extensions/platform_apps/web_view/audio_state_api/test.js
[modify] https://crrev.com/442c83f4287fb69f00674494a62caef366f316ad/content/browser/web_contents/web_contents_impl.cc
[modify] https://crrev.com/442c83f4287fb69f00674494a62caef366f316ad/content/browser/web_contents/web_contents_impl.h
[modify] https://crrev.com/442c83f4287fb69f00674494a62caef366f316ad/content/public/browser/web_contents.h
[modify] https://crrev.com/442c83f4287fb69f00674494a62caef366f316ad/content/public/browser/web_contents_delegate.h
[modify] https://crrev.com/442c83f4287fb69f00674494a62caef366f316ad/extensions/browser/api/guest_view/web_view/web_view_internal_api.cc
[modify] https://crrev.com/442c83f4287fb69f00674494a62caef366f316ad/extensions/browser/api/guest_view/web_view/web_view_internal_api.h
[modify] https://crrev.com/442c83f4287fb69f00674494a62caef366f316ad/extensions/browser/extension_event_histogram_value.h
[modify] https://crrev.com/442c83f4287fb69f00674494a62caef366f316ad/extensions/browser/extension_function_histogram_value.h
[modify] https://crrev.com/442c83f4287fb69f00674494a62caef366f316ad/extensions/browser/guest_view/guest_view_events.cc
[modify] https://crrev.com/442c83f4287fb69f00674494a62caef366f316ad/extensions/browser/guest_view/web_view/web_view_constants.cc
[modify] https://crrev.com/442c83f4287fb69f00674494a62caef366f316ad/extensions/browser/guest_view/web_view/web_view_constants.h
[modify] https://crrev.com/442c83f4287fb69f00674494a62caef366f316ad/extensions/browser/guest_view/web_view/web_view_guest.cc
[modify] https://crrev.com/442c83f4287fb69f00674494a62caef366f316ad/extensions/browser/guest_view/web_view/web_view_guest.h
[modify] https://crrev.com/442c83f4287fb69f00674494a62caef366f316ad/extensions/common/api/web_view_internal.json
[modify] https://crrev.com/442c83f4287fb69f00674494a62caef366f316ad/extensions/renderer/resources/guest_view/web_view/web_view_api_methods.js
[modify] https://crrev.com/442c83f4287fb69f00674494a62caef366f316ad/extensions/renderer/resources/guest_view/web_view/web_view_events.js
[modify] https://crrev.com/442c83f4287fb69f00674494a62caef366f316ad/tools/metrics/histograms/enums.xml

Sign in to add a comment