diff options
author | bors-servo <lbergstrom+bors@mozilla.com> | 2019-05-09 00:26:02 -0400 |
---|---|---|
committer | GitHub <noreply@github.com> | 2019-05-09 00:26:02 -0400 |
commit | 17590fd48fc1387e3fd062e95d26083cb8b48057 (patch) | |
tree | f8ed8e36e4a0cac8a3c6099a62abfb3f26505c5e /components/script/dom/htmlmediaelement.rs | |
parent | e39b2b96fe13fe72dd009e8bd84cf3bfd79592fe (diff) | |
parent | 7d5e493759271805aa84d3cad5fccb410a4296f4 (diff) | |
download | servo-17590fd48fc1387e3fd062e95d26083cb8b48057.tar.gz servo-17590fd48fc1387e3fd062e95d26083cb8b48057.zip |
Auto merge of #23342 - Manishearth:webrtc-streams, r=ferjm
Receive streams in WebRTC (and MediaStreamTrack support)
This adds the `ontrack` event handler to webrtc, and all the `MediaStreamTrack` stuff necessary to make it work.
WebRTC has the ability to group media tracks into streams using MSIDs, but I haven't yet figured out how to do this. For now, `ontrack` should work.
This _should_ be complete, but it hasn't yet been tested (hence the WIP)
r? @ferjm or @jdm
<!-- 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/23342)
<!-- Reviewable:end -->
Diffstat (limited to 'components/script/dom/htmlmediaelement.rs')
-rw-r--r-- | components/script/dom/htmlmediaelement.rs | 10 |
1 files changed, 7 insertions, 3 deletions
diff --git a/components/script/dom/htmlmediaelement.rs b/components/script/dom/htmlmediaelement.rs index cba16f17eed..9bbfb30d46c 100644 --- a/components/script/dom/htmlmediaelement.rs +++ b/components/script/dom/htmlmediaelement.rs @@ -839,9 +839,13 @@ impl HTMLMediaElement { self.fetch_request(None); }, SrcObject::MediaStream(ref stream) => { - for stream in stream.get_tracks() { - if let Err(_) = - self.player.borrow().as_ref().unwrap().set_stream(&stream) + for stream in &*stream.get_tracks() { + if let Err(_) = self + .player + .borrow() + .as_ref() + .unwrap() + .set_stream(&stream.id()) { self.queue_dedicated_media_source_failure_steps(); } |