Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(11)

Issue 2755613002: Support audio output device enumeration and selection in PPAPI (Closed)

Created:
3 years, 9 months ago by Xing
Modified:
3 years, 8 months ago
CC:
asvitkine+watch_chromium.org, binji+watch_chromium.org, bradnelson+warch_chromium.org, chromium-reviews, darin-cc_chromium.org, ihf+watch_chromium.org, jam, mlamouri+watch-content_chromium.org, piman+watch_chromium.org, teravest+watch_chromium.org, tzik, yusukes+watch_chromium.org
Target Ref:
refs/heads/master
Project:
chromium
Visibility:
Public.

Description

Support audio output device enumeration and selection in PPAPI - Keep the current |PPB_Audio| interface unchanged - Add a new dev interface: |PPB_AudioOutput_Dev| - Implement |PPB_AudioOutput_Dev| using the typical HostResource implementations like |PPB_AudioInput_Dev| - Add ppapi/proxy/audio_output_resource.h/cc etc. to implement |AudioOutputResource| - Add content/renderer/pepper/pepper_audio_output_host.h/cc etc. to implement |PepperAudioOutputHost| - Keep ppb_audio_proxy.h/cc, ppb_audio_shared.h/cc, ppb_audio_impl.h/cc unchanged, so that the current |PPB_Audio| will not be affected. - Modify content/renderer/pepper/pepper_platform_audio_output.h/cc to accept both |AudioHelper| and |PepperAudioOutputHost| clients - The way to implement |PepperAudioOutputHost| is borrowed from "media/audio/audio_output_device.cc" where audio output selection isi supported for javascript. - Add necessary IPC message definitions for |PPB_AudioOutput_Dev| BUG=701584 R= bbudge@chromium.org, tsepez@chromium.org, isherman@chromium.org Review-Url: https://codereview.chromium.org/2755613002 Cr-Commit-Position: refs/heads/master@{#462889} Committed: https://chromium.googlesource.com/chromium/src/+/3a2a470eed665050d284f1e5dd0e7a1c4949d190

Patch Set 1 #

Patch Set 2 : Fix a build error, Rebase #

Patch Set 3 : Should not include local change to ppapi/generators/idl_outfile.py #

Total comments: 28

Patch Set 4 : Fix issues from previous review, Rebase. #

Total comments: 10

Patch Set 5 : Fix errors in last patch, Rebase. #

Patch Set 6 : Fix trybot failures, Rebase #

Patch Set 7 : Fix format, Rebase #

Unified diffs Side-by-side diffs Delta from patch set Stats (+2409 lines, -17 lines) Patch
M chrome/common/ppapi_utils.cc View 1 chunk +1 line, -0 lines 0 comments Download
M content/renderer/BUILD.gn View 1 2 3 4 5 6 2 chunks +4 lines, -0 lines 0 comments Download
M content/renderer/pepper/content_renderer_pepper_host_factory.cc View 2 chunks +4 lines, -0 lines 0 comments Download
M content/renderer/pepper/pepper_audio_controller.h View 1 2 3 3 chunks +13 lines, -1 line 0 comments Download
M content/renderer/pepper/pepper_audio_controller.cc View 1 2 3 4 5 chunks +48 lines, -8 lines 0 comments Download
A content/renderer/pepper/pepper_audio_output_host.h View 1 2 3 1 chunk +97 lines, -0 lines 0 comments Download
A content/renderer/pepper/pepper_audio_output_host.cc View 1 2 3 1 chunk +265 lines, -0 lines 0 comments Download
M content/renderer/pepper/pepper_media_device_manager.cc View 3 chunks +7 lines, -2 lines 0 comments Download
A content/renderer/pepper/pepper_platform_audio_output_dev.h View 1 2 3 1 chunk +162 lines, -0 lines 0 comments Download
A content/renderer/pepper/pepper_platform_audio_output_dev.cc View 1 2 3 1 chunk +407 lines, -0 lines 0 comments Download
M content/renderer/pepper/plugin_module.cc View 1 chunk +1 line, -0 lines 0 comments Download
M content/renderer/pepper/resource_creation_impl.h View 1 chunk +1 line, -0 lines 0 comments Download
M content/renderer/pepper/resource_creation_impl.cc View 1 chunk +4 lines, -0 lines 0 comments Download
A ppapi/api/dev/ppb_audio_output_dev.idl View 1 2 3 4 1 chunk +229 lines, -0 lines 0 comments Download
M ppapi/api/dev/ppb_device_ref_dev.idl View 1 chunk +2 lines, -1 line 0 comments Download
M ppapi/c/BUILD.gn View 1 2 3 4 1 chunk +1 line, -0 lines 0 comments Download
A ppapi/c/dev/ppb_audio_output_dev.h View 1 2 3 4 5 6 1 chunk +249 lines, -0 lines 0 comments Download
M ppapi/c/dev/ppb_device_ref_dev.h View 2 chunks +3 lines, -2 lines 0 comments Download
M ppapi/c/pp_macros.h View 1 2 3 1 chunk +2 lines, -2 lines 0 comments Download
M ppapi/cpp/BUILD.gn View 1 chunk +2 lines, -0 lines 0 comments Download
A ppapi/cpp/dev/audio_output_dev.h View 1 2 3 4 5 6 1 chunk +84 lines, -0 lines 0 comments Download
A ppapi/cpp/dev/audio_output_dev.cc View 1 2 3 4 5 1 chunk +98 lines, -0 lines 0 comments Download
M ppapi/native_client/src/untrusted/pnacl_irt_shim/pnacl_shim.c View 7 chunks +71 lines, -1 line 0 comments Download
M ppapi/proxy/BUILD.gn View 1 2 3 1 chunk +2 lines, -0 lines 0 comments Download
A ppapi/proxy/audio_output_resource.h View 1 2 3 1 chunk +149 lines, -0 lines 0 comments Download
A ppapi/proxy/audio_output_resource.cc View 1 2 3 1 chunk +318 lines, -0 lines 0 comments Download
M ppapi/proxy/interface_list.cc View 1 1 chunk +1 line, -0 lines 0 comments Download
M ppapi/proxy/ppapi_messages.h View 1 2 3 1 chunk +12 lines, -0 lines 0 comments Download
M ppapi/proxy/resource_creation_proxy.h View 1 chunk +1 line, -0 lines 0 comments Download
M ppapi/proxy/resource_creation_proxy.cc View 1 2 3 2 chunks +5 lines, -0 lines 0 comments Download
M ppapi/shared_impl/api_id.h View 1 2 3 1 chunk +1 line, -0 lines 0 comments Download
M ppapi/shared_impl/resource.h View 1 chunk +1 line, -0 lines 0 comments Download
M ppapi/thunk/BUILD.gn View 1 2 3 4 2 chunks +2 lines, -0 lines 0 comments Download
M ppapi/thunk/interfaces_ppb_public_dev.h View 1 chunk +1 line, -0 lines 0 comments Download
A ppapi/thunk/ppb_audio_output_api.h View 1 chunk +43 lines, -0 lines 0 comments Download
A ppapi/thunk/ppb_audio_output_dev_thunk.cc View 1 2 3 4 1 chunk +116 lines, -0 lines 0 comments Download
M ppapi/thunk/resource_creation_api.h View 1 chunk +1 line, -0 lines 0 comments Download
M tools/metrics/histograms/histograms.xml View 1 2 3 4 5 6 1 chunk +1 line, -0 lines 0 comments Download

Messages

Total messages: 54 (26 generated)
Xing
3 years, 9 months ago (2017-03-15 15:50:11 UTC) #5
bbudge
Overall, this looks reasonable. My major concern are the changes to PepperPlatformAudioOutput. Even though this ...
3 years, 9 months ago (2017-03-23 18:05:46 UTC) #6
Xing
Thanks bbudge, I will re-work on this change.
3 years, 9 months ago (2017-03-23 18:38:58 UTC) #7
Xing
In patch set 4, PepperPlatformAudioOutput has been separated into 2 classes: PepperPlatformAudioOutput and PepperPlatformAudioOutputDev. pepper_platform_audio_output.cc{h} ...
3 years, 8 months ago (2017-03-29 20:40:53 UTC) #8
Xing
https://codereview.chromium.org/2755613002/diff/40001/content/renderer/pepper/pepper_audio_controller.cc File content/renderer/pepper/pepper_audio_controller.cc (right): https://codereview.chromium.org/2755613002/diff/40001/content/renderer/pepper/pepper_audio_controller.cc#newcode37 content/renderer/pepper/pepper_audio_controller.cc:37: } On 2017/03/23 18:05:44, bbudge wrote: > It might ...
3 years, 8 months ago (2017-03-29 21:14:32 UTC) #9
bbudge
Almost there, just a few things to fix. https://codereview.chromium.org/2755613002/diff/80001/content/renderer/pepper/pepper_audio_controller.cc File content/renderer/pepper/pepper_audio_controller.cc (right): https://codereview.chromium.org/2755613002/diff/80001/content/renderer/pepper/pepper_audio_controller.cc#newcode84 content/renderer/pepper/pepper_audio_controller.cc:84: StopPlaybackIfLastInstance(); ...
3 years, 8 months ago (2017-03-31 00:25:00 UTC) #10
Xing
https://codereview.chromium.org/2755613002/diff/80001/content/renderer/pepper/pepper_audio_controller.cc File content/renderer/pepper/pepper_audio_controller.cc (right): https://codereview.chromium.org/2755613002/diff/80001/content/renderer/pepper/pepper_audio_controller.cc#newcode84 content/renderer/pepper/pepper_audio_controller.cc:84: StopPlaybackIfLastInstance(); On 2017/03/31 00:24:59, bbudge wrote: > I'm sorry ...
3 years, 8 months ago (2017-03-31 18:23:30 UTC) #11
bbudge
LGTM You'll need a security review for ppapi_messages.h and an OWNERS review for histograms.xml. See ...
3 years, 8 months ago (2017-03-31 19:08:29 UTC) #12
Xing
On 2017/03/31 19:08:29, bbudge wrote: > LGTM > > You'll need a security review for ...
3 years, 8 months ago (2017-03-31 19:19:17 UTC) #13
bbudge
+tsepez for ppapi_messages.h +isherman for histograms
3 years, 8 months ago (2017-03-31 19:28:10 UTC) #15
bbudge
On 2017/03/31 19:28:10, bbudge wrote: > +tsepez for ppapi_messages.h > +isherman for histograms For questions ...
3 years, 8 months ago (2017-03-31 19:29:27 UTC) #16
Tom Sepez
LGTM given the existing audio input messages, but what do we mean std::string /* device_id ...
3 years, 8 months ago (2017-03-31 19:30:46 UTC) #17
Xing
On 2017/03/31 19:30:46, Tom Sepez wrote: > LGTM given the existing audio input messages, > ...
3 years, 8 months ago (2017-03-31 20:29:26 UTC) #18
Tom Sepez
> device_id is the name of the audio input/output device, it is passed around in ...
3 years, 8 months ago (2017-03-31 20:32:13 UTC) #19
bbudge
On 2017/03/31 20:32:13, Tom Sepez wrote: > > device_id is the name of the audio ...
3 years, 8 months ago (2017-03-31 21:10:57 UTC) #20
Tom Sepez
On 2017/03/31 21:10:57, bbudge wrote: > On 2017/03/31 20:32:13, Tom Sepez wrote: > > > ...
3 years, 8 months ago (2017-03-31 21:15:02 UTC) #21
Xing
On 2017/03/31 21:10:57, bbudge wrote: > On 2017/03/31 20:32:13, Tom Sepez wrote: > > > ...
3 years, 8 months ago (2017-03-31 21:26:00 UTC) #22
Ilya Sherman
histograms.xml lgtm
3 years, 8 months ago (2017-03-31 21:41:03 UTC) #23
commit-bot: I haz the power
CQ is trying da patch. Follow status at https://chromium-cq-status.appspot.com/v2/patch-status/codereview.chromium.org/2755613002/120001
3 years, 8 months ago (2017-04-01 03:30:09 UTC) #35
commit-bot: I haz the power
Try jobs failed on following builders: chromium_presubmit on master.tryserver.chromium.linux (JOB_FAILED, http://build.chromium.org/p/tryserver.chromium.linux/builders/chromium_presubmit/builds/400570)
3 years, 8 months ago (2017-04-01 03:42:47 UTC) #37
Xing
+jochen for the following files: chrome/common/ppapi_utils.cc content/renderer/BUILD.gn
3 years, 8 months ago (2017-04-03 15:29:19 UTC) #39
jochen (gone - plz use gerrit)
Could somebody please give me some more background on why this change is needed and ...
3 years, 8 months ago (2017-04-05 08:18:25 UTC) #40
Xing
On 2017/04/05 08:18:25, jochen wrote: > Could somebody please give me some more background on ...
3 years, 8 months ago (2017-04-05 14:34:31 UTC) #41
Xing
Hi jochen, Is there any further information you would like us to share about this ...
3 years, 8 months ago (2017-04-06 17:52:22 UTC) #42
jochen (gone - plz use gerrit)
I was under the impression that the PPAPI was already frozen, but apparently this is ...
3 years, 8 months ago (2017-04-07 06:54:24 UTC) #43
commit-bot: I haz the power
CQ is trying da patch. Follow status at https://chromium-cq-status.appspot.com/v2/patch-status/codereview.chromium.org/2755613002/140001
3 years, 8 months ago (2017-04-07 16:27:53 UTC) #50
commit-bot: I haz the power
Committed patchset #7 (id:140001) as https://chromium.googlesource.com/chromium/src/+/3a2a470eed665050d284f1e5dd0e7a1c4949d190
3 years, 8 months ago (2017-04-07 16:35:34 UTC) #53
Xing
3 years, 8 months ago (2017-04-07 22:41:21 UTC) #54
Message was sent while issue was closed.
On 2017/04/07 06:54:24, jochen wrote:
> I was under the impression that the PPAPI was already frozen, but apparently
> this is supposed to be the last change to it, so lgtm

Thanks jochen!

Powered by Google App Engine
This is Rietveld 408576698