servo/components
bors-servo b49e7517a3
Auto merge of #22522 - ferjm:av.playback.improvements, r=Manishearth
HTMLMediaElement backoff protocol and other improvements to a/v playback

- [X] `./mach build -d` does not report any errors
- [X] `./mach test-tidy` does not report any errors

This PR implements a backoff protocol to keep us from dropping frames whenever it's possible. It also add some other improvements like:
- Clean up the implementation a little bit by adding all fetch request related state to `HTMLMediaElementFetchContext`.
- Make sure that we ignore responses from old requests.
- Set the stream to seekable iff there's support for range requests. This will likely change when we add the media cache.
- Implements part of [step 8 of the seek spec](https://html.spec.whatwg.org/multipage/media.html#dom-media-seek) where we bail out if the stream is not seekable.

<!-- Reviewable:start -->
---
This change is [<img src="https://reviewable.io/review_button.svg" height="34" align="absmiddle" alt="Reviewable"/>](https://reviewable.io/reviews/servo/servo/22522)
<!-- Reviewable:end -->
2019-01-11 08:00:39 -05:00
..
allocator Update MPL license to https (part 4) 2018-11-19 14:47:27 +01:00
atoms Auto merge of #22599 - aditj:patch-1-re, r=ferjm 2019-01-10 03:10:06 -05:00
background_hang_monitor unregister components while exiting 2018-12-17 16:37:03 +08:00
bluetooth Rustfmt has changed its default style :/ 2018-12-28 13:17:47 +01:00
bluetooth_traits Update MPL license to https (part 4) 2018-11-19 14:47:27 +01:00
canvas Rustfmt has changed its default style :/ 2018-12-28 13:17:47 +01:00
canvas_traits Make HTMLCanvasElement::fetch_all_data return a shared memory blob 2018-11-21 12:53:50 +01:00
compositing constellation: restructure navigation, remove sync comm 2018-12-23 13:33:30 +08:00
config Rustfmt has changed its default style :/ 2018-12-28 13:17:47 +01:00
constellation Provide the source window as part of postMessage events. 2019-01-07 22:19:25 -05:00
debugger Update MPL license to https (part 4) 2018-11-19 14:47:27 +01:00
deny_public_fields Update syn and related dependencies 2018-11-30 17:48:41 +01:00
devtools Remove redundant .clone()s 2018-12-11 10:43:51 +09:00
devtools_traits Update MPL license to https (part 4) 2018-11-19 14:47:27 +01:00
dom_struct Update syn and related dependencies 2018-11-30 17:48:41 +01:00
domobject_derive Update syn and related dependencies 2018-11-30 17:48:41 +01:00
embedder_traits constellation: restructure navigation, remove sync comm 2018-12-23 13:33:30 +08:00
fallible Update MPL license to https (part 4) 2018-11-19 14:47:27 +01:00
geometry Update MPL license to https (part 4) 2018-11-19 14:47:27 +01:00
gfx Rustfmt has changed its default style :/ 2018-12-28 13:17:47 +01:00
gfx_traits Update MPL license to https (part 4) 2018-11-19 14:47:27 +01:00
hashglobe cargo fix --edition 2018-11-10 17:47:28 +01:00
jstraceable_derive Update syn and related dependencies 2018-11-30 17:48:41 +01:00
layout Make a bunch of layout queries morally safer 2019-01-09 14:12:54 +01:00
layout_thread Make a bunch of layout queries morally safer 2019-01-09 14:12:54 +01:00
layout_traits style: Make Servo use a single thread-pool for layout-related tasks per-process. 2018-12-23 13:00:56 +01:00
malloc_size_of style: Bump smallvec and smallbitvec. 2019-01-07 00:32:50 +01:00
malloc_size_of_derive Update syn and related dependencies 2018-11-30 17:48:41 +01:00
metrics Update MPL license to https (part 4) 2018-11-19 14:47:27 +01:00
msg unregister components while exiting 2018-12-17 16:37:03 +08:00
net Rustfmt has changed its default style :/ 2018-12-28 13:17:47 +01:00
net_traits Fix some warnings 2018-12-28 15:31:08 +01:00
pixels Call rgba8_byte_swap_colors_inplace on the WebGL thread 2018-11-20 10:14:52 +01:00
profile Upgrade to rustc 1.33.0-nightly (fb86d604b 2018-12-27) 2018-12-28 13:16:55 +01:00
profile_traits Update MPL license to https (part 4) 2018-11-19 14:47:27 +01:00
rand Update MPL license to https (part 4) 2018-11-19 14:47:27 +01:00
range Update MPL license to https (part 4) 2018-11-19 14:47:27 +01:00
remutex Rustfmt has changed its default style :/ 2018-12-28 13:17:47 +01:00
script Auto merge of #22522 - ferjm:av.playback.improvements, r=Manishearth 2019-01-11 08:00:39 -05:00
script_layout_interface Make a bunch of layout queries morally safer 2019-01-09 14:12:54 +01:00
script_plugins Exempt Rc<Promise> from unrooted_must_root 2019-01-04 09:34:04 -08:00
script_traits Provide the source window as part of postMessage events. 2019-01-07 22:19:25 -05:00
selectors Auto merge of #22385 - servo:rustup, r=SimonSapin 2018-12-31 13:09:35 -05:00
servo Auto merge of #22121 - gterzian:remove_constellation_block_in_navigation, r=paulrouget 2018-12-26 01:53:20 -05:00
servo_arc cargo fix --edition 2018-11-10 17:47:28 +01:00
size_of_test Update MPL license to https (part 4) 2018-11-19 14:47:27 +01:00
std_test_override Update MPL license to https (part 4) 2018-11-19 14:47:27 +01:00
style style: Three-value position syntax uses calc() as its computed value representation. 2019-01-11 01:12:41 +01:00
style_derive Fix some warnings 2018-12-28 15:31:08 +01:00
style_traits Rustfmt has changed its default style :/ 2018-12-28 13:17:47 +01:00
url Update MPL license to https (part 4) 2018-11-19 14:47:27 +01:00
webdriver_server Rustfmt has changed its default style :/ 2018-12-28 13:17:47 +01:00
webvr Remove redundant .clone()s 2018-12-11 10:43:51 +09:00
webvr_traits Update MPL license to https (part 4) 2018-11-19 14:47:27 +01:00