New issue
Advanced search Search tips
Starred by 3 users

Issue metadata

Status: Started
Owner:
Components:
EstimatedDays: ----
NextAction: ----
OS: Linux , Android , Windows , Chrome , Mac
Pri: 2
Type: Bug

Blocked on:
issue 913668
issue 903831



Sign in to add a comment
link

Issue 903793: Mojo-ify Media Wake Lock

Reported by mlamouri@chromium.org, Nov 9 Project Member

Issue description

Comment 1 by mlamouri@chromium.org, Nov 9

Blockedon: 903831

Comment 2 by mlamouri@chromium.org, Dec 10

Blockedon: 913668

Comment 3 by bugdroid1@chromium.org, Dec 13

Project Member
The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/abd14b1e6a5fd4919e6b205342e929cfa122bd94

commit abd14b1e6a5fd4919e6b205342e929cfa122bd94
Author: Mounir Lamouri <mlamouri@chromium.org>
Date: Thu Dec 13 04:15:02 2018

Remote Playback: create Controller/Observer to allow core/ to be notified of changes.

This will allow the video wake lock implementation in Blink to change its
behaviour depending on remote playback state and will allow the remote
playback overaly to be moved out of modules/media_controls/

Bug: 913668, 903793
Change-Id: I473254b8108e612c52bdb55f4bd880ab0441922f
Reviewed-on: https://chromium-review.googlesource.com/c/1374951
Reviewed-by: Kentaro Hara <haraken@chromium.org>
Commit-Queue: Mounir Lamouri <mlamouri@chromium.org>
Cr-Commit-Position: refs/heads/master@{#616208}
[modify] https://crrev.com/abd14b1e6a5fd4919e6b205342e929cfa122bd94/third_party/blink/renderer/core/html/BUILD.gn
[add] https://crrev.com/abd14b1e6a5fd4919e6b205342e929cfa122bd94/third_party/blink/renderer/core/html/media/remote_playback_controller.cc
[add] https://crrev.com/abd14b1e6a5fd4919e6b205342e929cfa122bd94/third_party/blink/renderer/core/html/media/remote_playback_controller.h
[add] https://crrev.com/abd14b1e6a5fd4919e6b205342e929cfa122bd94/third_party/blink/renderer/core/html/media/remote_playback_observer.h
[modify] https://crrev.com/abd14b1e6a5fd4919e6b205342e929cfa122bd94/third_party/blink/renderer/modules/remoteplayback/remote_playback.cc
[modify] https://crrev.com/abd14b1e6a5fd4919e6b205342e929cfa122bd94/third_party/blink/renderer/modules/remoteplayback/remote_playback.h

Comment 4 by bugdroid1@chromium.org, Dec 14

Project Member
The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/20edec21c921e9b963af945f715bde88070b9c2c

commit 20edec21c921e9b963af945f715bde88070b9c2c
Author: Mounir Lamouri <mlamouri@chromium.org>
Date: Fri Dec 14 17:41:37 2018

Video Wake Lock: move all logic to Blink and use mojo service.

This is implementing VideoWakeLock insideo core/html/media/ in Blink.
The component is created by the HTMLVideoElement and then reacts based
on internal events. When the wake lock state changes, it uses the wake
lock service to notify of the state change.

Two side notes:
 - This is using the RemotePlaybackObserver/RemotePlaybackController that
   were added to allow core/ to be notified of remote playback changes. It
   allows to clarify a weird behavior that was in the browser
   implementation.
 - html_media_test_helper.{h,cc} files have been created to have a
   central place for common html media mock, stubs, etc.

The audio wake lock is based on audibility, not on the element itself.
Whether it can or should be moved to Blink wasn't yet decided.

Associated design doc:
https://docs.google.com/document/d/1VNX6OIKodKg9-SWnY8eWiu2217b7FsgCECV2_wBap0U/edit?hl=en&pli=1#

Bug: 903793
Change-Id: I5f3f7fdfa345ef829f3efdc5689faef40b03f94c
Reviewed-on: https://chromium-review.googlesource.com/c/1375098
Reviewed-by: Jochen Eisinger <jochen@chromium.org>
Reviewed-by: Dale Curtis <dalecurtis@chromium.org>
Commit-Queue: Mounir Lamouri <mlamouri@chromium.org>
Cr-Commit-Position: refs/heads/master@{#616728}
[modify] https://crrev.com/20edec21c921e9b963af945f715bde88070b9c2c/content/browser/media/media_web_contents_observer.cc
[modify] https://crrev.com/20edec21c921e9b963af945f715bde88070b9c2c/content/browser/media/media_web_contents_observer.h
[modify] https://crrev.com/20edec21c921e9b963af945f715bde88070b9c2c/content/browser/web_contents/web_contents_impl_unittest.cc
[modify] https://crrev.com/20edec21c921e9b963af945f715bde88070b9c2c/third_party/blink/renderer/core/BUILD.gn
[modify] https://crrev.com/20edec21c921e9b963af945f715bde88070b9c2c/third_party/blink/renderer/core/DEPS
[modify] https://crrev.com/20edec21c921e9b963af945f715bde88070b9c2c/third_party/blink/renderer/core/html/BUILD.gn
[modify] https://crrev.com/20edec21c921e9b963af945f715bde88070b9c2c/third_party/blink/renderer/core/html/media/html_media_element.h
[add] https://crrev.com/20edec21c921e9b963af945f715bde88070b9c2c/third_party/blink/renderer/core/html/media/html_media_test_helper.cc
[add] https://crrev.com/20edec21c921e9b963af945f715bde88070b9c2c/third_party/blink/renderer/core/html/media/html_media_test_helper.h
[modify] https://crrev.com/20edec21c921e9b963af945f715bde88070b9c2c/third_party/blink/renderer/core/html/media/html_video_element.cc
[modify] https://crrev.com/20edec21c921e9b963af945f715bde88070b9c2c/third_party/blink/renderer/core/html/media/html_video_element.h
[modify] https://crrev.com/20edec21c921e9b963af945f715bde88070b9c2c/third_party/blink/renderer/core/html/media/html_video_element_test.cc
[add] https://crrev.com/20edec21c921e9b963af945f715bde88070b9c2c/third_party/blink/renderer/core/html/media/video_wake_lock.cc
[add] https://crrev.com/20edec21c921e9b963af945f715bde88070b9c2c/third_party/blink/renderer/core/html/media/video_wake_lock.h
[add] https://crrev.com/20edec21c921e9b963af945f715bde88070b9c2c/third_party/blink/renderer/core/html/media/video_wake_lock_test.cc

Sign in to add a comment