fix: call load() to force mobile browsers to fetch blob URL metadata and fix player duration

This commit is contained in:
2026-06-03 18:56:32 +02:00
parent 9e7c6f4397
commit 2de0636608
2 changed files with 8 additions and 1 deletions
@@ -86,6 +86,9 @@ export default function LiveVoiceCapture({
el.addEventListener('loadedmetadata', handleLoadedMetadata)
}
log('Calling el.load() to force loading of the media resource...')
el.load()
return () => {
el.removeEventListener('loadedmetadata', handleLoadedMetadata)
}
+5 -1
View File
@@ -53,6 +53,10 @@ export default function VoiceMemoPlayer({
el.addEventListener('loadedmetadata', handleLoadedMetadata)
}
if (src) {
el.load()
}
return () => {
el.removeEventListener('loadedmetadata', handleLoadedMetadata)
}
@@ -103,7 +107,7 @@ export default function VoiceMemoPlayer({
return (
<div className="voice-memo-player-shell">
<audio ref={audioRef} className={playerClass} controls preload="none" src={src} />
<audio ref={audioRef} className={playerClass} controls preload="metadata" src={src} />
</div>
)
}