src/music: Add music page
This commit is contained in:
parent
7965a38afa
commit
8166ee99ec
7 changed files with 65 additions and 1 deletions
src/music/player
29
src/music/player/index.js
Normal file
29
src/music/player/index.js
Normal file
|
@ -0,0 +1,29 @@
|
|||
class AudioManager {
|
||||
constructor(src) {
|
||||
this._context = new AudioContext();
|
||||
this.audio = new Audio(src);
|
||||
|
||||
let audio = this.audio;
|
||||
let context = this._context;
|
||||
|
||||
// Create audio graph
|
||||
let volume = context.createGain();
|
||||
let source = context.createMediaElementSource(audio);
|
||||
|
||||
source.connect(volume);
|
||||
volume.connect(context.destination);
|
||||
}
|
||||
}
|
||||
|
||||
class Player {
|
||||
constructor(src="https://tlater.net/assets/Mseq_-_Journey.mp3") {
|
||||
this._ui = $("#playerUI");
|
||||
this._audioManager = new AudioManager(src);
|
||||
|
||||
let audioManager = this._audioManager;
|
||||
|
||||
audioManager.oncanplay = () => audioManager.audio.play();
|
||||
}
|
||||
}
|
||||
|
||||
export default Player;
|
Reference in a new issue