From fd1928c43d496c302fc4a15b53ee1d504d372d0a Mon Sep 17 00:00:00 2001 From: Adrian Castro <22133246+castdrian@users.noreply.github.com> Date: Thu, 7 Mar 2024 11:16:07 +0100 Subject: [PATCH] chore: add logs to useaudiotrack --- apps/expo/src/hooks/player/useAudioTrack.ts | 12 ++++++++++-- 1 file changed, 10 insertions(+), 2 deletions(-) diff --git a/apps/expo/src/hooks/player/useAudioTrack.ts b/apps/expo/src/hooks/player/useAudioTrack.ts index e0c39e0..a470eff 100644 --- a/apps/expo/src/hooks/player/useAudioTrack.ts +++ b/apps/expo/src/hooks/player/useAudioTrack.ts @@ -12,32 +12,40 @@ export const useAudioTrack = () => { const synchronizePlayback = useCallback( async (selectedAudioTrack?: AudioTrack, stream?: Stream) => { + console.log("synchronizePlayback called"); + if (selectedAudioTrack && stream) { + console.log("Loading audio track", selectedAudioTrack.uri); const { uri } = selectedAudioTrack; - const sound = new Audio.Sound(); - await sound.loadAsync({ + const { sound } = await Audio.Sound.createAsync({ + // never resolves or rejects :( uri, headers: { ...stream.headers, ...stream.preferredHeaders, }, }); + console.log("Audio track loaded"); setAudioObject(sound); } else { if (audioObject) { + console.log("Unloading existing audio track"); await audioObject.unloadAsync(); setAudioObject(null); } } if (videoRef && audioObject) { + console.log("Synchronizing audio with video"); const videoStatus = await videoRef.getStatusAsync(); if (selectedAudioTrack && videoStatus.isLoaded) { + console.log("Muting video and starting audio playback"); await videoRef.setIsMutedAsync(true); await audioObject.setPositionAsync(videoStatus.positionMillis); await audioObject.playAsync(); } else { + console.log("Unmuting video"); await videoRef.setIsMutedAsync(false); } }