From 39ef730b883f8cdb68c3c579a8dc6673ab016088 Mon Sep 17 00:00:00 2001 From: kuekhaoyang Date: Fri, 28 Nov 2025 21:46:55 +0800 Subject: [PATCH] feat: Add `useHlsPlayer` hook to manage HLS video playback and integrate it into `DesktopVideoPlayer`. --- components/player/DesktopVideoPlayer.tsx | 9 +- components/player/hooks/useHlsPlayer.ts | 102 +++++++++++++++++++++++ 2 files changed, 110 insertions(+), 1 deletion(-) create mode 100644 components/player/hooks/useHlsPlayer.ts diff --git a/components/player/DesktopVideoPlayer.tsx b/components/player/DesktopVideoPlayer.tsx index 853632f..1ed3182 100644 --- a/components/player/DesktopVideoPlayer.tsx +++ b/components/player/DesktopVideoPlayer.tsx @@ -3,6 +3,7 @@ import { useDesktopPlayerState } from './hooks/useDesktopPlayerState'; import { useDesktopPlayerLogic } from './hooks/useDesktopPlayerLogic'; import { useHLSPreloader } from './hooks/useHLSPreloader'; +import { useHlsPlayer } from './hooks/useHlsPlayer'; import { DesktopControlsWrapper } from './desktop/DesktopControlsWrapper'; import { DesktopOverlayWrapper } from './desktop/DesktopOverlayWrapper'; @@ -29,6 +30,13 @@ export function DesktopVideoPlayer({ // Preload HLS segments useHLSPreloader({ src, currentTime, videoRef: refs.videoRef, isLoading: state.isLoading }); + // Initialize HLS Player + useHlsPlayer({ + videoRef: refs.videoRef, + src, + autoPlay: shouldAutoPlay + }); + const { videoRef, containerRef, @@ -71,7 +79,6 @@ export function DesktopVideoPlayer({