diff --git a/src/routes/streams/[stream_id]/Player.svelte b/src/routes/streams/[stream_id]/Player.svelte
index 810c065..f135c6c 100644
--- a/src/routes/streams/[stream_id]/Player.svelte
+++ b/src/routes/streams/[stream_id]/Player.svelte
@@ -79,8 +79,16 @@
let volumeBar = $state();
let innerWidth = $state();
let innerHeight = $state();
+ let isSafari = $state(false);
onMount(async () => {
+ // work around coreaudio bug
+ // see https://git.webbieweb.org/apt-get/strimserve/issues/1
+ const ua = navigator.userAgent;
+ const isIOS = /iPad|iPhone|iPod/.test(ua);
+ const isDesktopSafari = /Safari/.test(ua) && !/Chrome/.test(ua) && !/Chromium/.test(ua);
+ isSafari = isIOS || isDesktopSafari;
+
// default volume
const volumeData = localStorage.getItem('volume');
volume = volumeData ? parseFloat(volumeData) : 0.67;
@@ -300,8 +308,13 @@
onended={bubble('ended')}
{preload}
>
-
-
+ {#if isSafari}
+
+
+ {:else}
+
+
+ {/if}