SongSel: Add browse for local songs button

This commit is contained in:
LoveEevee
2018-12-05 23:33:34 +03:00
parent 7f5b1e97c3
commit a435ed1a6d
9 changed files with 275 additions and 69 deletions

View File

@@ -4,10 +4,19 @@
this.context = new AudioContext()
pageEvents.add(window, ["click", "touchend"], this.pageClicked.bind(this))
}
load(url, gain){
return loader.ajax(url, request => {
request.responseType = "arraybuffer"
}).then(response => {
load(url, local, gain){
if(local){
var reader = new FileReader()
var loadPromise = pageEvents.load(reader).then(event => {
return event.target.result
})
reader.readAsArrayBuffer(url)
}else{
var loadPromise = loader.ajax(url, request => {
request.responseType = "arraybuffer"
})
}
return loadPromise.then(response => {
return new Promise((resolve, reject) => {
return this.context.decodeAudioData(response, resolve, reject)
}).catch(error => {
@@ -66,8 +75,8 @@ class SoundGain{
}
this.setVolume(1)
}
load(url){
return this.soundBuffer.load(url, this)
load(url, local){
return this.soundBuffer.load(url, local, this)
}
convertTime(time, absolute){
return this.soundBuffer.convertTime(time, absolute)