diff --git a/packages/web/src/components/voice/VoiceControlBar.tsx b/packages/web/src/components/voice/VoiceControlBar.tsx index 7d00751f..f11394cd 100644 --- a/packages/web/src/components/voice/VoiceControlBar.tsx +++ b/packages/web/src/components/voice/VoiceControlBar.tsx @@ -65,7 +65,7 @@ export function VoiceControlBar() { { videoCodec: CAMERA_PRESET.codec, videoEncoding: CAMERA_PRESET.encoding, - simulcast: false, + simulcast: true, } ); } else { diff --git a/packages/web/src/hooks/useLiveKit.ts b/packages/web/src/hooks/useLiveKit.ts index 0776904f..6cc57014 100644 --- a/packages/web/src/hooks/useLiveKit.ts +++ b/packages/web/src/hooks/useLiveKit.ts @@ -331,7 +331,7 @@ export function useLiveKit() { try { const { token, url } = isDm ? await api.livekit.dmToken(channelId) : await api.livekit.token(channelId); if (gen !== _connectGeneration) return; - const newRoom = new Room({ adaptiveStream: false, dynacast: true, publishDefaults: { videoCodec: 'h264', simulcast: false } }); + const newRoom = new Room({ adaptiveStream: true, dynacast: true, publishDefaults: { videoCodec: 'h264', simulcast: true } }); roomRef.current = newRoom; const guardedUpdate = () => { if (roomRef.current === newRoom) updateParticipants(); }; @@ -495,7 +495,7 @@ export function useLiveKit() { const toggleCamera = useCallback(async () => { if (roomRef.current) { if (!isCameraOn) { - await roomRef.current.localParticipant.setCameraEnabled(true, { resolution: CAMERA_PRESET.resolution, frameRate: CAMERA_PRESET.encoding.maxFramerate }, { videoCodec: CAMERA_PRESET.codec, videoEncoding: CAMERA_PRESET.encoding, simulcast: false }); + await roomRef.current.localParticipant.setCameraEnabled(true, { resolution: CAMERA_PRESET.resolution, frameRate: CAMERA_PRESET.encoding.maxFramerate }, { videoCodec: CAMERA_PRESET.codec, videoEncoding: CAMERA_PRESET.encoding, simulcast: true }); setTimeout(() => { if (roomRef.current) applyOverdrive(roomRef.current, Track.Source.Camera, CAMERA_OVERDRIVE); }, 2000); } else { await roomRef.current.localParticipant.setCameraEnabled(false); } updateParticipants();