File tree Expand file tree Collapse file tree
apps/web/app/s/[videoId]/_components/video Expand file tree Collapse file tree Original file line number Diff line number Diff line change @@ -2886,6 +2886,17 @@ function EnhancedAudioSync({
28862886 enhancedAudioEnabled,
28872887} : EnhancedAudioSyncProps ) {
28882888 const mediaVolume = useMediaSelector ( ( state ) => state . mediaVolume ?? 1 ) ;
2889+ const hasUserInteractedRef = React . useRef ( false ) ;
2890+ const [ effectiveVolume , setEffectiveVolume ] = React . useState ( 1 ) ;
2891+
2892+ React . useEffect ( ( ) => {
2893+ if ( mediaVolume > 0 ) {
2894+ hasUserInteractedRef . current = true ;
2895+ setEffectiveVolume ( mediaVolume ) ;
2896+ } else if ( hasUserInteractedRef . current ) {
2897+ setEffectiveVolume ( mediaVolume ) ;
2898+ }
2899+ } , [ mediaVolume ] ) ;
28892900
28902901 const syncEnhancedAudio = React . useCallback ( ( ) => {
28912902 if ( ! enhancedAudioRef . current || ! videoRef . current ) return ;
@@ -2941,7 +2952,7 @@ function EnhancedAudioSync({
29412952
29422953 if ( enhancedAudioEnabled ) {
29432954 video . muted = true ;
2944- audio . volume = mediaVolume ;
2955+ audio . volume = effectiveVolume ;
29452956 syncEnhancedAudio ( ) ;
29462957 if ( ! video . paused ) {
29472958 audio . play ( ) . catch ( ( ) => { } ) ;
@@ -2952,7 +2963,7 @@ function EnhancedAudioSync({
29522963 }
29532964 } , [
29542965 enhancedAudioEnabled ,
2955- mediaVolume ,
2966+ effectiveVolume ,
29562967 syncEnhancedAudio ,
29572968 videoRef ,
29582969 enhancedAudioRef ,
You can’t perform that action at this time.
0 commit comments