fix: pass screenShareEncoding to override LiveKit's 15fps default

LiveKit uses screenShareEncoding (not videoEncoding) for screen share
tracks. Without it, both primary and backup fall back to the default
ScreenSharePresets.h1080fps15 (15fps). Primary was masked by our
overdrive mechanism, but backup had no overdrive and was stuck at 15fps.
This commit is contained in:
Jannis Braun
2026-03-24 01:21:16 +01:00
parent e53d3bcb98
commit 07ac9cf505
+3
View File
@@ -265,6 +265,9 @@ export async function startScreenShare(room: Room): Promise<boolean> {
const track = await room.localParticipant.setScreenShareEnabled(true, captureOptions, {
videoCodec: opts.publish.videoCodec,
videoEncoding: opts.publish.videoEncoding,
// LiveKit uses screenShareEncoding (not videoEncoding) for screen share tracks.
// Without this, the default ScreenSharePresets.h1080fps15 caps at 15fps.
screenShareEncoding: opts.publish.videoEncoding,
simulcast: opts.publish.simulcast,
...(opts.publish.backupCodec ? {
backupCodec: opts.publish.backupCodec,