diff options
author | Fernando Jiménez Moreno <ferjmoreno@gmail.com> | 2019-11-07 18:31:56 +0100 |
---|---|---|
committer | Fernando Jiménez Moreno <ferjmoreno@gmail.com> | 2019-11-18 17:14:51 +0100 |
commit | 04f4da3e135ffac4ecb44b5072db58e36bc9cf01 (patch) | |
tree | 0f408d9255b038311a614e0f0f8b03a2bbdb0415 /components/script/dom/audiocontext.rs | |
parent | a72e46f9c8c897ecff603899704e5b88484c1138 (diff) | |
download | servo-04f4da3e135ffac4ecb44b5072db58e36bc9cf01.tar.gz servo-04f4da3e135ffac4ecb44b5072db58e36bc9cf01.zip |
Implement AudioContext.createMediaElementAudioSourceNode()
Diffstat (limited to 'components/script/dom/audiocontext.rs')
-rw-r--r-- | components/script/dom/audiocontext.rs | 12 |
1 files changed, 12 insertions, 0 deletions
diff --git a/components/script/dom/audiocontext.rs b/components/script/dom/audiocontext.rs index 033ac49ed11..0212cb78ffa 100644 --- a/components/script/dom/audiocontext.rs +++ b/components/script/dom/audiocontext.rs @@ -20,6 +20,8 @@ use crate::dom::bindings::num::Finite; use crate::dom::bindings::refcounted::{Trusted, TrustedPromise}; use crate::dom::bindings::reflector::{reflect_dom_object, DomObject}; use crate::dom::bindings::root::DomRoot; +use crate::dom::htmlmediaelement::HTMLMediaElement; +use crate::dom::mediaelementaudiosourcenode::MediaElementAudioSourceNode; use crate::dom::promise::Promise; use crate::dom::window::Window; use crate::task_source::TaskSource; @@ -244,6 +246,16 @@ impl AudioContextMethods for AudioContext { // Step 6. promise } + + /// https://webaudio.github.io/web-audio-api/#dom-audiocontext-createmediaelementsource + fn CreateMediaElementSource( + &self, + media_element: &HTMLMediaElement, + ) -> Fallible<DomRoot<MediaElementAudioSourceNode>> { + let global = self.global(); + let window = global.as_window(); + MediaElementAudioSourceNode::new(window, self, media_element) + } } impl From<AudioContextLatencyCategory> for LatencyCategory { |