Firefox/Block Playback: Difference between revisions

From MozillaWiki
Jump to navigation Jump to search
Line 23: Line 23:


= Engineering =
= Engineering =
Block Playback [status: <span style="color:#0f0">Green</span>]
Block Playback [status: <span>Coming soon</span>]
 
Current Goals:
* Ship disabling video decoders for ads
* Silent, looping videos where user doesn't really care the exact point
 
Next Milestone:
 
 
 
== Milestones ==
=== Optimizations ===
* [https://bugzil.la/1282710 Bug 1282710 - Suspend and resume foreground video decoders according to visibility events]
** done.
* [https://bugzil.la/1282012 Bug 1282012 - Seek to nearest keyframe when resuming videos with no audio]
** [https://bugzil.la/1294657 Bug 1294657 - Seek to nearest keyframe when resuming videos with no audio - with audio track but muted]
*** pending, excluded from phase 1.
** [https://bugzil.la/1294658 Bug 1294658 - Seek to nearest keyframe when resuming videos with no audio - with audio track but might be silent]
*** pending, excluded from phase 1.
** [https://bugzil.la/1294656 Bug 1294656 - Seek to nearest keyframe when resuming videos with no audio - no audio track]
*** done.
* [https://bugzil.la/1274919 Bug 1274919 - Resume suspended video decoders on tab mouse hover.]
** under review.
* [https://bugzil.la/1284389 Bug 1284389 - Don't suspend video elements captured via mozCaptureStream()]
** WIP.
* [https://bugzil.la/1295921 Bug 1295921 - Don't suspend video decoder for elements as sources to drawImage() and createImageBitmap()]
** WIP.
* Resume video when keyboard is used to change tags - Needs Bug
** For example, if it's possible to detect the direction of cycling and videos are within, say, 5 tabs of the current tab, then start decoding again.
** Need to hook into the tab navigation/change code and alert media elements, like bug 1274919
 
=== Telemetry ===
* '''Amount of time hidden''' - measure of user value (Bucket results by resolution; i.e. are 720p videos hidden less often?)
** [http://bugzil.la/1285419 Bug 1285419 - Telemetry to support background video decoder suspend: Hidden play time]
** [https://mzl.la/2c0493i VIDEO_HIDDEN_PLAY_TIME_MS]
** [http://bugzil.la/1287987 Bug 1287987 - Telemetry to support background video decoder suspend: Percentage hidden/total play time, keyed by audio presence and height ranges]
** [https://mzl.la/2c04hQl VIDEO_HIDDEN_PLAY_TIME_PERCENTAGE]
** [http://bugzil.la/1293145 Bug 1293145 - Telemetry to support background video decoder suspend: Percentage video-decode-suspended/total play time]
** [https://mzl.la/2c07M9s VIDEO_INFERRED_DECODE_SUSPEND_PERCENTAGE]
 
* '''Recovery time''' - measure of user cost (separate for noisy vs silent videos) (Bucket results by resolution; i.e. do 720p videos take longer to recover?)
** [https://bugzil.la/1294349 Bug 1294349 - Telemetry to support background video decoder suspend: Recovery time from video-decode-suspended]
** [https://mzl.la/2c947Iv VIDEO_SUSPEND_RECOVERY_TIME_MS]
 
* '''Key frame spacing''' - distribution allows better tuning
** [http://bugzil.la/1289668 Bug 1289668 - Telemetry to support background video decoder suspend: Inter-keyframe timings]
** [https://mzl.la/2c04Utr VIDEO_INTER_KEYFRAME_AVERAGE_MS]
** [https://mzl.la/2c956bN VIDEO_INTER_KEYFRAME_AVERAGE_PERCENTAGE]
 
=== Mochitests ===
* [https://bugzil.la/1284177 Bug 1284177 - Add tests for video suspend in background]
** done
* [https://bugzil.la/1294358 Bug 1294358 - Add test for suspended videos still fire 'ended' event]
** done
* [https://bugzil.la/1295844 Bug 1295844 - Test suspended videos with webm files]
** done


=Team=
=Team=

Revision as of 07:08, 3 October 2016

Overview

Block Playback Video/Audio will be blocked if a new tab been opened but never bring to front.


Meta Bug

Other Resources


Planning

Goals

  • Help users to reduce device resource usage (CPU & Memory)
  • Finish tasks across videos
  • No impact on current user flow

Schedule

Product Milestones

Engineering

Block Playback [status: Coming soon]

Team

Product owner:

Eng: Alastor, Daniel, Gerald, JW, Kaku,

Program Management: Blake, Josh

UX: Mark, Morpheus

QA: SoftVision and William

Communications

IRC:

Email:

VidyoRoom: