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

Issue 2065513004: Expose flash playback status and volume control to content renderer (Closed)

Created:
4 years, 6 months ago by Zhiqiang Zhang (Slow)
Modified:
4 years, 6 months ago
CC:
chromium-apps-reviews_chromium.org, chromium-reviews, creis+watch_chromium.org, darin-cc_chromium.org, extensions-reviews_chromium.org, jam, mkwst+moarreviews-renderer_chromium.org, mlamouri+watch-content_chromium.org, nasko+codewatch_chromium.org
Base URL:
https://chromium.googlesource.com/chromium/src.git@audio_focus_manager
Target Ref:
refs/pending/heads/master
Project:
chromium
Visibility:
Public.

Description

Expose flash playback status and volume control to content renderer This CL plumbs flash playback status and volume control to the content renderer. It basically lets the renderer know when flash starts/stops to play sound, and let it be able to control it's volume. The plumbing is to be continued to WebContents, and then we are able to let flash be controlled by MediaSession, which prevents multiple tabs from playing sound at the same time (which usually annoys the user). Follow-up CL: https://codereview.chromium.org/2060933002/ BUG=619084 Committed: https://crrev.com/c885f6ba83d8687b840c0fa684a941d45f9162be Cr-Commit-Position: refs/heads/master@{#401687}

Patch Set 1 #

Patch Set 2 : added TODO #

Total comments: 6

Patch Set 3 : addressed bbudge's comments #

Total comments: 4

Patch Set 4 : fixed nits for bbudge #

Total comments: 8

Patch Set 5 : addressed dcheng's comments #

Patch Set 6 : moved start/stop/created/deleted to the follow-up CL #

Total comments: 4

Patch Set 7 : addressing sievers' comments #

Patch Set 8 : moving audio delegate to pepper #

Total comments: 24

Patch Set 9 : addressed bbudge's comments #

Total comments: 20

Patch Set 10 : addressing nits #

Total comments: 4

Patch Set 11 : addressing nits #

Total comments: 1
Unified diffs Side-by-side diffs Delta from patch set Stats (+225 lines, -3 lines) Patch
M content/common/frame_messages.h View 1 2 3 4 5 6 7 8 9 10 1 chunk +6 lines, -0 lines 0 comments Download
M content/content_renderer.gypi View 1 2 3 4 5 6 7 8 9 10 1 chunk +2 lines, -0 lines 0 comments Download
A content/renderer/pepper/pepper_audio_controller.h View 1 2 3 4 5 6 7 8 9 10 1 chunk +57 lines, -0 lines 0 comments Download
A content/renderer/pepper/pepper_audio_controller.cc View 1 2 3 4 5 6 7 8 9 1 chunk +77 lines, -0 lines 1 comment Download
M content/renderer/pepper/pepper_platform_audio_output.h View 2 chunks +5 lines, -0 lines 0 comments Download
M content/renderer/pepper/pepper_platform_audio_output.cc View 2 chunks +17 lines, -0 lines 0 comments Download
M content/renderer/pepper/pepper_plugin_instance_impl.h View 1 2 3 4 5 6 7 8 9 10 3 chunks +8 lines, -0 lines 0 comments Download
M content/renderer/pepper/pepper_plugin_instance_impl.cc View 1 2 3 4 5 6 7 8 9 10 3 chunks +4 lines, -0 lines 0 comments Download
M content/renderer/pepper/ppb_audio_impl.h View 1 2 1 chunk +2 lines, -0 lines 0 comments Download
M content/renderer/pepper/ppb_audio_impl.cc View 1 2 3 4 5 6 7 8 9 5 chunks +23 lines, -3 lines 0 comments Download
M content/renderer/render_frame_impl.h View 1 2 3 4 5 6 7 8 9 10 1 chunk +4 lines, -0 lines 0 comments Download
M content/renderer/render_frame_impl.cc View 1 2 3 4 5 6 7 8 9 10 3 chunks +20 lines, -0 lines 0 comments Download

Messages

Total messages: 41 (12 generated)
Zhiqiang Zhang (Slow)
PTAL. Adding reviewers for initial round of review. +sievers@ to review: content/* +dcheng@ to review: ...
4 years, 6 months ago (2016-06-13 17:31:29 UTC) #5
bbudge
Pepper review https://codereview.chromium.org/2065513004/diff/20001/content/renderer/pepper/ppb_audio_impl.cc File content/renderer/pepper/ppb_audio_impl.cc (right): https://codereview.chromium.org/2065513004/diff/20001/content/renderer/pepper/ppb_audio_impl.cc#newcode106 content/renderer/pepper/ppb_audio_impl.cc:106: PepperPluginInstance::Get(pp_instance())); Check for null instance, or add ...
4 years, 6 months ago (2016-06-13 17:51:02 UTC) #6
Zhiqiang Zhang (Slow)
PTAL. Addressed bbudge's comments. A question for bbudge: Now I observe PepperInstance{Created/Destroyed } and Pepper{Start/Stop}Playback ...
4 years, 6 months ago (2016-06-14 14:15:26 UTC) #7
bbudge
I don't think there are any other events you need to observe. https://codereview.chromium.org/2065513004/diff/60001/content/renderer/pepper/ppb_audio_impl.cc File content/renderer/pepper/ppb_audio_impl.cc ...
4 years, 6 months ago (2016-06-14 17:19:14 UTC) #9
Zhiqiang Zhang (Slow)
Sorry I forgot to do null checks in other places. PTAL.
4 years, 6 months ago (2016-06-14 17:28:27 UTC) #10
Zhiqiang Zhang (Slow)
https://codereview.chromium.org/2065513004/diff/60001/content/renderer/pepper/ppb_audio_impl.cc File content/renderer/pepper/ppb_audio_impl.cc (right): https://codereview.chromium.org/2065513004/diff/60001/content/renderer/pepper/ppb_audio_impl.cc#newcode190 content/renderer/pepper/ppb_audio_impl.cc:190: PepperPluginInstance::Get(pp_instance())); On 2016/06/14 17:19:13, bbudge wrote: > null check ...
4 years, 6 months ago (2016-06-14 17:28:56 UTC) #11
bbudge
content/renderer/pepper lgtm
4 years, 6 months ago (2016-06-14 17:33:18 UTC) #12
dcheng
https://codereview.chromium.org/2065513004/diff/80001/content/common/frame_messages.h File content/common/frame_messages.h (right): https://codereview.chromium.org/2065513004/diff/80001/content/common/frame_messages.h#newcode1547 content/common/frame_messages.h:1547: int32_t, Can you comment on what these fields mean? ...
4 years, 6 months ago (2016-06-14 20:00:32 UTC) #13
Zhiqiang Zhang (Slow)
PTAL. Addressed dcheng's comments. https://codereview.chromium.org/2065513004/diff/80001/content/common/frame_messages.h File content/common/frame_messages.h (right): https://codereview.chromium.org/2065513004/diff/80001/content/common/frame_messages.h#newcode1547 content/common/frame_messages.h:1547: int32_t, On 2016/06/14 20:00:32, dcheng ...
4 years, 6 months ago (2016-06-20 19:11:54 UTC) #14
dcheng
https://codereview.chromium.org/2065513004/diff/80001/extensions/browser/extension_web_contents_observer.cc File extensions/browser/extension_web_contents_observer.cc (right): https://codereview.chromium.org/2065513004/diff/80001/extensions/browser/extension_web_contents_observer.cc#newcode194 extensions/browser/extension_web_contents_observer.cc:194: void ExtensionWebContentsObserver::PepperInstanceDeleted(int32_t pp_instance) { On 2016/06/20 19:11:54, Zhiqiang Zhang ...
4 years, 6 months ago (2016-06-20 19:32:08 UTC) #15
Zhiqiang Zhang (Slow)
PTAL. Addressed dcheng's comments (moving some IPC message changes to the follow-up CL). See replies ...
4 years, 6 months ago (2016-06-21 17:19:30 UTC) #16
dcheng
ipc change lgtm but it feels weird to plumb this through RenderFrameImpl. I don't have ...
4 years, 6 months ago (2016-06-21 18:45:28 UTC) #17
no sievers
can you update the comment since WebContents is actually untouched in this CL? https://codereview.chromium.org/2065513004/diff/120001/content/renderer/render_frame_impl.cc File ...
4 years, 6 months ago (2016-06-21 18:58:58 UTC) #18
Zhiqiang Zhang (Slow)
PTAL. Addressed sievers' comments. I'm using early returns instead of DCHECK() because we should not ...
4 years, 6 months ago (2016-06-21 19:32:02 UTC) #20
no sievers
On 2016/06/21 19:32:02, Zhiqiang Zhang wrote: > PTAL. Addressed sievers' comments. I'm using early returns ...
4 years, 6 months ago (2016-06-21 21:08:11 UTC) #21
dcheng
On 2016/06/21 21:08:11, sievers wrote: > On 2016/06/21 19:32:02, Zhiqiang Zhang wrote: > > PTAL. ...
4 years, 6 months ago (2016-06-22 12:34:08 UTC) #22
Zhiqiang Zhang (Slow)
On 2016/06/22 12:34:08, dcheng wrote: > Ah, maybe PepperInstanceDeleted() should be cleaning up this map ...
4 years, 6 months ago (2016-06-22 13:09:37 UTC) #23
Zhiqiang Zhang (Slow)
PTAL. I moved all the audio delegating into PepperPluginInstanceImpl. RenderFrameImpl now only forwards the IPC ...
4 years, 6 months ago (2016-06-22 16:14:48 UTC) #25
bbudge
https://codereview.chromium.org/2065513004/diff/180001/content/renderer/pepper/pepper_audio_control_delegate.cc File content/renderer/pepper/pepper_audio_control_delegate.cc (right): https://codereview.chromium.org/2065513004/diff/180001/content/renderer/pepper/pepper_audio_control_delegate.cc#newcode20 content/renderer/pepper/pepper_audio_control_delegate.cc:20: DCHECK(!pepper_instance_); It seems to me like you could instead: ...
4 years, 6 months ago (2016-06-22 18:14:55 UTC) #26
Zhiqiang Zhang (Slow)
PTAL. Addressed bbudge's comments with replies. https://codereview.chromium.org/2065513004/diff/180001/content/renderer/pepper/pepper_audio_control_delegate.cc File content/renderer/pepper/pepper_audio_control_delegate.cc (right): https://codereview.chromium.org/2065513004/diff/180001/content/renderer/pepper/pepper_audio_control_delegate.cc#newcode20 content/renderer/pepper/pepper_audio_control_delegate.cc:20: DCHECK(!pepper_instance_); On 2016/06/22 ...
4 years, 6 months ago (2016-06-22 21:00:43 UTC) #28
mlamouri (slow - plz ping)
lgtm with comments applied https://codereview.chromium.org/2065513004/diff/220001/content/renderer/pepper/pepper_audio_controller.cc File content/renderer/pepper/pepper_audio_controller.cc (right): https://codereview.chromium.org/2065513004/diff/220001/content/renderer/pepper/pepper_audio_controller.cc#newcode26 content/renderer/pepper/pepper_audio_controller.cc:26: if (ppb_audios_.count(audio)) return; style: I ...
4 years, 6 months ago (2016-06-23 13:04:13 UTC) #29
Zhiqiang Zhang (Slow)
sievers@, could you kindly take a quick look at render_frame_impl.*? The changes in these files ...
4 years, 6 months ago (2016-06-23 14:50:29 UTC) #30
bbudge
lgtm w/nit https://codereview.chromium.org/2065513004/diff/240001/content/renderer/pepper/pepper_audio_controller.h File content/renderer/pepper/pepper_audio_controller.h (right): https://codereview.chromium.org/2065513004/diff/240001/content/renderer/pepper/pepper_audio_controller.h#newcode32 content/renderer/pepper/pepper_audio_controller.h:32: // Sets the volume of all delegated ...
4 years, 6 months ago (2016-06-23 17:12:42 UTC) #31
no sievers
lgtm https://codereview.chromium.org/2065513004/diff/240001/content/renderer/render_frame_impl.cc File content/renderer/render_frame_impl.cc (right): https://codereview.chromium.org/2065513004/diff/240001/content/renderer/render_frame_impl.cc#newcode6246 content/renderer/render_frame_impl.cc:6246: // TODO(zqzhang): send PepperStartsPlayback message to the browser. ...
4 years, 6 months ago (2016-06-23 17:25:58 UTC) #32
Zhiqiang Zhang (Slow)
https://codereview.chromium.org/2065513004/diff/240001/content/renderer/pepper/pepper_audio_controller.h File content/renderer/pepper/pepper_audio_controller.h (right): https://codereview.chromium.org/2065513004/diff/240001/content/renderer/pepper/pepper_audio_controller.h#newcode32 content/renderer/pepper/pepper_audio_controller.h:32: // Sets the volume of all delegated audio resources. ...
4 years, 6 months ago (2016-06-23 18:30:25 UTC) #33
commit-bot: I haz the power
CQ is trying da patch. Follow status at https://chromium-cq-status.appspot.com/patch-status/2065513004/260001
4 years, 6 months ago (2016-06-23 18:31:34 UTC) #36
dcheng
https://codereview.chromium.org/2065513004/diff/260001/content/renderer/pepper/pepper_audio_controller.cc File content/renderer/pepper/pepper_audio_controller.cc (right): https://codereview.chromium.org/2065513004/diff/260001/content/renderer/pepper/pepper_audio_controller.cc#newcode27 content/renderer/pepper/pepper_audio_controller.cc:27: if (ppb_audios_.count(audio)) Why do we have to verify this ...
4 years, 6 months ago (2016-06-23 19:35:36 UTC) #37
commit-bot: I haz the power
Committed patchset #11 (id:260001)
4 years, 6 months ago (2016-06-23 19:45:01 UTC) #39
commit-bot: I haz the power
4 years, 6 months ago (2016-06-23 19:46:48 UTC) #41
Message was sent while issue was closed.
Patchset 11 (id:??) landed as
https://crrev.com/c885f6ba83d8687b840c0fa684a941d45f9162be
Cr-Commit-Position: refs/heads/master@{#401687}

Powered by Google App Engine
This is Rietveld 408576698