A music player that connects to your cloud/distributed storage.
5
fork

Configure Feed

Select the types of activity you want to include in your feed.

Disable single audio node mode on Safari

+7 -6
+1
CHANGELOG.md
··· 4 4 5 5 - **Removes usage of the Web Audio API, just uses `<audio>` elements now so that Diffuse can be played in the background on iOS.** _Sadly this also means the equalizer has been removed, but a better volume control has been added instead, one that doesn't move away from the tracks view._ 6 6 - **Added a command palette.** 7 + - Disables single-audio-node mode on Safari 7 8 - Fixes Fission integration 8 9 - Improves launcher design (called Alfred internally) 9 10 - Improves key bindings
+2 -2
src/Javascript/Brain/user.js
··· 149 149 const peersPromise = fetch( `${endpoints.api}/ipfs/peers` ) 150 150 .then(r => r.json()) 151 151 .then(r => r.filter(p => p.includes("/wss/"))) 152 - .catch(e => { throw new Error("💥 Couldn't start IPFS node, failed to fetch peer list") }) 152 + .catch(() => { throw new Error("💥 Couldn't start IPFS node, failed to fetch peer list") }) 153 153 154 154 return peersPromise.then(peers => { 155 - return Ipfs.create({ 155 + return self.Ipfs.create({ 156 156 config: { 157 157 Addresses: { 158 158 Delegates: []
+3 -3
src/Javascript/audio-engine.js
··· 22 22 // Audio context 23 23 // ------------- 24 24 25 - let SINGLE_AUDIO_NODE = IS_SAFARI 25 + let SINGLE_AUDIO_NODE = false 26 26 27 27 28 28 export function usesSingleAudioNode() { ··· 66 66 export function setup(orchestrion) { 67 67 addAudioContainer() 68 68 69 - if (SINGLE_AUDIO_NODE) { 69 + if (IS_SAFARI) { 70 70 // Try to avoid the "couldn't play automatically" error, 71 71 // which seems to happen with audio nodes using an url created by `createObjectURL`. 72 72 insertTrack(orchestrion, { url: silentMp3File, trackId: "" }).then(_ => { ··· 445 445 const promise = element.play() || Promise.resolve() 446 446 447 447 promise.catch(e => { 448 - SINGLE_AUDIO_NODE = true 448 + // SINGLE_AUDIO_NODE = true 449 449 450 450 const err = "Couldn't play audio automatically. Please resume playback manually." 451 451 console.error(err, e)
+1 -1
src/Javascript/index.js
··· 139 139 } 140 140 141 141 142 - function handleAction(action, data, ports) { switch (action) { 142 + function handleAction(action, data, _ports) { switch (action) { 143 143 case "DOWNLOAD_TRACKS": return downloadTracks(data) 144 144 }} 145 145