fix: load audio thmb
This commit is contained in:
@@ -333,8 +333,18 @@ export function FurumiPlayer() {
|
||||
if (i < 0 || i >= q.items.length) return
|
||||
dispatch(playAtIndex(i))
|
||||
const track = store.getState().queue.items[i]
|
||||
audio.src = `${API_ROOT}/stream/${track.slug}`
|
||||
// TODO remove after auth refactor
|
||||
preloadStream(track.slug).then(response => {
|
||||
console.log('response', response)
|
||||
audio.src = URL.createObjectURL(response?.data)
|
||||
void audio.play().catch(() => { })
|
||||
// Optionally revoke old object URL if needed to avoid memory leaks
|
||||
// if (oldSrc?.startsWith('blob:')) {
|
||||
// URL.revokeObjectURL(oldSrc)
|
||||
// }
|
||||
})
|
||||
// audio.src = `${API_ROOT}/stream/${track.slug}`
|
||||
// void audio.play().catch(() => {})
|
||||
if (window.history && window.history.replaceState) {
|
||||
const url = new URL(window.location.href)
|
||||
url.searchParams.set('t', track.slug)
|
||||
|
||||
@@ -44,6 +44,6 @@ export async function getTrackInfo(trackSlug: string): Promise<TrackDetail | nul
|
||||
}
|
||||
|
||||
export async function preloadStream(trackSlug: string) {
|
||||
await furumiApi.get(`/stream/${trackSlug}`, { responseType: 'arraybuffer' }).catch(() => null)
|
||||
return await furumiApi.get(`/stream/${trackSlug}`, { responseType: 'blob' }).catch(() => null)
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user