decoding strategies

This commit is contained in:
lukasIO 2025-06-23 20:29:01 +02:00
parent 95a793958d
commit 8a85ff04ce
4 changed files with 18 additions and 11 deletions

View File

@ -26,6 +26,7 @@ import {
TrackPublishDefaults,
VideoCaptureOptions,
ParticipantEvent,
VideoQuality,
} from 'livekit-client';
import { useRouter } from 'next/navigation';
import { useSetupE2EE } from '@/lib/useSetupE2EE';
@ -173,9 +174,14 @@ function VideoConferenceComponent(props: {
room.on(RoomEvent.Disconnected, handleOnLeave);
room.on(RoomEvent.EncryptionError, handleEncryptionError);
room.on(RoomEvent.MediaDevicesError, handleError);
room.localParticipant.on(ParticipantEvent.LocalTrackCpuConstrained, (track) => {
room.localParticipant.on(ParticipantEvent.LocalTrackCpuConstrained, async (track) => {
console.warn('Local track CPU constrained', track);
track.prioritizePerformance();
room.remoteParticipants.forEach((participant) => {
participant.videoTrackPublications.forEach((publication) => {
publication.setVideoQuality(VideoQuality.LOW);
});
});
});
if (e2eeSetupComplete) {
room

View File

@ -11,7 +11,8 @@ export function MicrophoneSettings() {
filterOptions: {
quality: isLowPowerDevice() ? 'low' : 'medium',
onBufferDrop: () => {
console.warn('krisp buffer dropped, either disable or reduce quality');
console.warn('krisp buffer dropped, disabling noise filter now');
setNoiseFilterEnabled(false);
},
},
},

View File

@ -16,7 +16,7 @@
"@datadog/browser-logs": "^5.23.3",
"@livekit/components-react": "2.9.10",
"@livekit/components-styles": "1.1.6",
"@livekit/krisp-noise-filter": "0.3.0",
"@livekit/krisp-noise-filter": "0.3.1",
"@livekit/track-processors": "^0.5.4",
"livekit-client": "0.0.0-20250623162608",
"livekit-server-sdk": "2.13.0",

16
pnpm-lock.yaml generated
View File

@ -13,13 +13,13 @@ importers:
version: 5.35.1
'@livekit/components-react':
specifier: 2.9.10
version: 2.9.10(@livekit/krisp-noise-filter@0.3.0(livekit-client@0.0.0-20250623162608(@types/dom-mediacapture-record@1.0.22)))(livekit-client@0.0.0-20250623162608(@types/dom-mediacapture-record@1.0.22))(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(tslib@2.8.1)
version: 2.9.10(@livekit/krisp-noise-filter@0.3.1(livekit-client@0.0.0-20250623162608(@types/dom-mediacapture-record@1.0.22)))(livekit-client@0.0.0-20250623162608(@types/dom-mediacapture-record@1.0.22))(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(tslib@2.8.1)
'@livekit/components-styles':
specifier: 1.1.6
version: 1.1.6
'@livekit/krisp-noise-filter':
specifier: 0.3.0
version: 0.3.0(livekit-client@0.0.0-20250623162608(@types/dom-mediacapture-record@1.0.22))
specifier: 0.3.1
version: 0.3.1(livekit-client@0.0.0-20250623162608(@types/dom-mediacapture-record@1.0.22))
'@livekit/track-processors':
specifier: ^0.5.4
version: 0.5.4(livekit-client@0.0.0-20250623162608(@types/dom-mediacapture-record@1.0.22))
@ -459,8 +459,8 @@ packages:
resolution: {integrity: sha512-V6zfuREC2ksW8z6T6WSbEvdLB5ICVikGz1GtLr59UcxHDyAsKDbuDHAyl3bF3xBqPKYmY3GWF3Qk39rnScyOtA==}
engines: {node: '>=18'}
'@livekit/krisp-noise-filter@0.3.0':
resolution: {integrity: sha512-yJkq7H3Lpfh0D7zpsuwWWgPYwZ8sknd6DxgP8QegrW8Oq44XyAWU5mPd9oW2mBxOTNDVhppKRE38D4rZqEtcOQ==}
'@livekit/krisp-noise-filter@0.3.1':
resolution: {integrity: sha512-zeJKaQJJxrUe6XHqZuPG26rnzXI8cEtznJmLylui49xP5E2oBEdpS+TKzGl1e3mHBdwGu6/WZjiKW0F9111/aw==}
peerDependencies:
livekit-client: ^2.0.8
@ -2593,7 +2593,7 @@ snapshots:
rxjs: 7.8.2
tslib: 2.8.1
'@livekit/components-react@2.9.10(@livekit/krisp-noise-filter@0.3.0(livekit-client@0.0.0-20250623162608(@types/dom-mediacapture-record@1.0.22)))(livekit-client@0.0.0-20250623162608(@types/dom-mediacapture-record@1.0.22))(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(tslib@2.8.1)':
'@livekit/components-react@2.9.10(@livekit/krisp-noise-filter@0.3.1(livekit-client@0.0.0-20250623162608(@types/dom-mediacapture-record@1.0.22)))(livekit-client@0.0.0-20250623162608(@types/dom-mediacapture-record@1.0.22))(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(tslib@2.8.1)':
dependencies:
'@livekit/components-core': 0.12.7(livekit-client@0.0.0-20250623162608(@types/dom-mediacapture-record@1.0.22))(tslib@2.8.1)
clsx: 2.1.1
@ -2603,11 +2603,11 @@ snapshots:
tslib: 2.8.1
usehooks-ts: 3.1.1(react@18.3.1)
optionalDependencies:
'@livekit/krisp-noise-filter': 0.3.0(livekit-client@0.0.0-20250623162608(@types/dom-mediacapture-record@1.0.22))
'@livekit/krisp-noise-filter': 0.3.1(livekit-client@0.0.0-20250623162608(@types/dom-mediacapture-record@1.0.22))
'@livekit/components-styles@1.1.6': {}
'@livekit/krisp-noise-filter@0.3.0(livekit-client@0.0.0-20250623162608(@types/dom-mediacapture-record@1.0.22))':
'@livekit/krisp-noise-filter@0.3.1(livekit-client@0.0.0-20250623162608(@types/dom-mediacapture-record@1.0.22))':
dependencies:
'@livekit/mutex': 1.1.1
livekit-client: 0.0.0-20250623162608(@types/dom-mediacapture-record@1.0.22)