Add MediaStream.addTrack() and MediaStream.removeTrack()

This commit is contained in:
Manish Goregaokar 2019-05-07 14:45:48 -07:00
parent 571c3d6d0e
commit 477ca175e3
2 changed files with 17 additions and 2 deletions

View file

@ -83,4 +83,19 @@ impl MediaStreamMethods for MediaStream {
.find(|x| x.id().id().to_string() == &*id)
.map(|x| DomRoot::from_ref(&**x))
}
/// https://w3c.github.io/mediacapture-main/#dom-mediastream-addtrack
fn AddTrack(&self, track: &MediaStreamTrack) {
let existing = self.tracks.borrow().iter().find(|x| *x == &track).is_some();
if existing {
return;
}
self.add_track(track)
}
/// https://w3c.github.io/mediacapture-main/#dom-mediastream-removetrack
fn RemoveTrack(&self, track: &MediaStreamTrack) {
self.tracks.borrow_mut().retain(|x| *x != track);
}
}