提交 256aaab9 编写于 作者: M Mugen87

Audio: Added .setMediaElementSource()

上级 ec39df04
......@@ -179,6 +179,13 @@
(whether playback should loop).
</p>
<h3>[method:null setMediaElementSource]( mediaElement )</h3>
<p>
Applies the given object of type [link:https://developer.mozilla.org/en-US/docs/Web/API/HTMLMediaElement HTMLMediaElement] as the source of this audio.<br />
Also sets [page:Audio.hasPlaybackControl hasPlaybackControl] to false.
</p>
<h3>[method:null setNodeSource]( audioNode )</h3>
<p>
Setup the [page:Audio.source source] to the audioBuffer, and sets [page:Audio.sourceType sourceType] to 'audioNode'.<br />
......
......@@ -104,19 +104,15 @@
//
var audioLoader = new THREE.AudioLoader();
var listener = new THREE.AudioListener();
var audio = new THREE.Audio( listener );
audioLoader.load( 'sounds/376737_Skullbeatz___Bad_Cat_Maste.mp3', function ( buffer ) {
audio.setBuffer( buffer );
audio.setLoop( true );
audio.play();
var mediaElement = new Audio( 'sounds/376737_Skullbeatz___Bad_Cat_Maste.mp3' );
mediaElement.loop = true;
mediaElement.play();
} );
audio.setMediaElementSource( mediaElement );
analyser = new THREE.AudioAnalyser( audio, fftSize );
......
......@@ -52,6 +52,17 @@ Audio.prototype = Object.assign( Object.create( Object3D.prototype ), {
},
setMediaElementSource: function ( mediaElement ) {
this.hasPlaybackControl = false;
this.sourceType = 'mediaNode';
this.source = this.context.createMediaElementSource( mediaElement );
this.connect();
return this;
},
setBuffer: function ( audioBuffer ) {
this.buffer = audioBuffer;
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册