From ba6322bb1f31d10fcf3708ac13a7c31cb253fcd5 Mon Sep 17 00:00:00 2001 From: Fredrik Burmester Date: Sat, 12 Oct 2024 13:41:09 +0200 Subject: [PATCH] wip --- app/(auth)/vlc-player.tsx | 15 +++-- modules/vlc-player/ios/VlcPlayerView.swift | 66 +++++++++++++++------- modules/vlc-player/src/VlcPlayer.types.ts | 2 + 3 files changed, 58 insertions(+), 25 deletions(-) diff --git a/app/(auth)/vlc-player.tsx b/app/(auth)/vlc-player.tsx index 6616de8e..22f03840 100644 --- a/app/(auth)/vlc-player.tsx +++ b/app/(auth)/vlc-player.tsx @@ -152,9 +152,16 @@ export default function page() { if (isSeeking.value === true) return; if (isPlaybackStopped === true) return; - const { currentTime, duration } = data.nativeEvent; + const { currentTime, duration, isBuffering, isPlaying } = + data.nativeEvent; + + console.log("onProgress ~", { + currentTime, + duration, + isBuffering, + isPlaying, + }); - console.log("onProgress ~", currentTime); progress.value = currentTime; // cacheProgress.value = secondsToTicks(data.playableDuration); @@ -297,7 +304,7 @@ export default function page() { /> - + /> */} = 0 && currentTimeMs < durationMs { + let isPlaying = player.isPlaying + let isBuffering = player.state == .buffering + self.onVideoProgress?([ - "target": self.reactTag ?? NSNull(), "currentTime": currentTimeMs, "duration": durationMs, + "isPlaying": isPlaying, + "isBuffering": isBuffering, ]) + + // Debug log + print( + "VLC Player State: \(player.state.description), isPlaying: \(isPlaying), isBuffering: \(isBuffering)" + ) } } } diff --git a/modules/vlc-player/src/VlcPlayer.types.ts b/modules/vlc-player/src/VlcPlayer.types.ts index 7e1c074d..a4720647 100644 --- a/modules/vlc-player/src/VlcPlayer.types.ts +++ b/modules/vlc-player/src/VlcPlayer.types.ts @@ -21,6 +21,8 @@ export type ProgressUpdatePayload = { nativeEvent: { currentTime: number; duration: number; + isPlaying: boolean; + isBuffering: boolean; }; };