Skip to content

Commit 6f76d88

Browse files
authored
Merge pull request #13 from vogelbam/fix-audio-player
Fix audio player
2 parents 66aafa3 + 3ffb546 commit 6f76d88

File tree

1 file changed

+11
-2
lines changed

1 file changed

+11
-2
lines changed

front/src/hooks/audio/useAudio.ts

+11-2
Original file line numberDiff line numberDiff line change
@@ -133,15 +133,24 @@ export default function useAudio({
133133
cancelAnimationFrame(timer);
134134
}
135135

136+
const onEnded = () => {
137+
cancelAnimationFrame(timer);
138+
// set this explicitly to toggle button
139+
setIsPlaying(false);
140+
setTime(startTime);
141+
}
142+
136143
current.addEventListener("play", onPlay);
137144
current.addEventListener("pause", onPause);
138145
current.addEventListener("error", onError);
146+
current.addEventListener("ended", onEnded);
139147

140148
return () => {
141149
cancelAnimationFrame(timer);
142150
current.removeEventListener("play", onPlay);
143151
current.removeEventListener("pause", onPause);
144152
current.removeEventListener("error", onError);
153+
current.removeEventListener("ended", onEnded);
145154
};
146155
}, [initialUrl, speed, startTime, loop, volume]);
147156

@@ -189,8 +198,8 @@ export default function useAudio({
189198
}, []);
190199

191200
const handleSeek = useCallback((time: number) => {
192-
audio.current.currentTime = time;
193-
}, []);
201+
audio.current.currentTime = time / speed;
202+
}, [speed]);
194203

195204
const handleTogglePlay = useCallback(() => {
196205
if (isPlaying) {

0 commit comments

Comments
 (0)