diff --git a/src/livekit/options.ts b/src/livekit/options.ts index 1d4cad774..a0fa193e9 100644 --- a/src/livekit/options.ts +++ b/src/livekit/options.ts @@ -11,10 +11,20 @@ import { type RoomOptions, ScreenSharePresets, type TrackPublishDefaults, - type VideoPreset, + VideoPreset, VideoPresets, } from "livekit-client"; +const VideoPresetsH264 = { + h144: new VideoPreset(256, 144, 155_000, 20), + h240: new VideoPreset(480, 234, 160_000, 20), + h176: new VideoPreset(320, 176, 160_000, 20), + h288: new VideoPreset(382, 288, 180_000, 20), +// h360: VideoPresets.h360, + h360: new VideoPreset(640, 360, 450_000, 20), + h540: new VideoPreset(960, 540, 800_000, 20), +} as const; + const defaultLiveKitPublishOptions: TrackPublishDefaults = { audioPreset: AudioPresets.music, dtx: true, @@ -23,10 +33,13 @@ const defaultLiveKitPublishOptions: TrackPublishDefaults = { red: false, forceStereo: false, simulcast: true, - videoSimulcastLayers: [VideoPresets.h180, VideoPresets.h360] as VideoPreset[], + videoSimulcastLayers: [ + VideoPresetsH264.h144, + VideoPresets.h360, + ] as VideoPreset[], screenShareEncoding: ScreenSharePresets.h1080fps30.encoding, stopMicTrackOnMute: false, - videoCodec: "vp8", + videoCodec: "h264", videoEncoding: VideoPresets.h720.encoding, backupCodec: { codec: "vp8", encoding: VideoPresets.h720.encoding }, } as const; diff --git a/src/main.tsx b/src/main.tsx index 654bd93cd..a71afef41 100644 --- a/src/main.tsx +++ b/src/main.tsx @@ -29,7 +29,7 @@ window.setLKLogLevel = setLKLogLevel; initRageshake().catch((e) => { logger.error("Failed to initialize rageshake", e); }); -setLKLogLevel("info"); +setLKLogLevel("debug"); setLKLogExtension((level, msg, context) => { // we pass a synthetic logger name of "livekit" to the rageshake to make it easier to read global.mx_rage_logger.log(level, "livekit", msg, context);