diff --git a/src/livekit/audioTrackNoiseSuppressionSync.ts b/src/livekit/audioTrackNoiseSuppressionSync.ts index c00423b7..05e74aed 100644 --- a/src/livekit/audioTrackNoiseSuppressionSync.ts +++ b/src/livekit/audioTrackNoiseSuppressionSync.ts @@ -43,7 +43,7 @@ export const audioTrackNoiseSuppressionSync = ( noiseSuppressionLevel.value$, ]) .pipe(scope.bind()) - .subscribe(async ([audioTrack, settingEnabled, settingLevel]) => { + .subscribe(([audioTrack, settingEnabled, settingLevel]) => { try { // On first initialization, use URL parameters if provided, otherwise use settings // After that, always use settings (user can change them at runtime) @@ -70,7 +70,7 @@ export const audioTrackNoiseSuppressionSync = ( // Initialize transformer on first use if (!transformer) { transformer = new NoiseSuppressionTransformer(); - await transformer.initialize(levelValue, enabledValue); + transformer.initialize(levelValue, enabledValue); logger.debug( "[audioTrackNoiseSuppressionSync] Transformer initialized with enabled=" + enabledValue + @@ -93,10 +93,10 @@ export const audioTrackNoiseSuppressionSync = ( logger.debug( "[audioTrackNoiseSuppressionSync] Setting noise suppression processor on audio track", ); - await audioTrack.setProcessor(processor); + void audioTrack.setProcessor(processor); } // Update processor state - with small delay to ensure processor is ready - Promise.resolve().then(() => { + void Promise.resolve().then(() => { transformer!.setEnabled(enabledValue); transformer!.setSuppressionLevel(levelValue); logger.debug( diff --git a/src/livekit/useNoiseSuppressionTransformer.ts b/src/livekit/useNoiseSuppressionTransformer.ts deleted file mode 100644 index d9b92dd1..00000000 --- a/src/livekit/useNoiseSuppressionTransformer.ts +++ /dev/null @@ -1,61 +0,0 @@ -/* -Copyright 2024 New Vector Ltd. - -SPDX-License-Identifier: AGPL-3.0-only OR LicenseRef-Element-Commercial -Please see LICENSE in the repository root for full details. -*/ - -import { useEffect, useRef } from "react"; - -import { - noiseSuppressionEnabled, - noiseSuppressionLevel, -} from "../settings/settings"; -import { useBehavior } from "../useBehavior"; -import { NoiseSuppressionTransformer } from "../livekit/NoiseSuppressionTransformer"; - -/** - * Hook to manage the NoiseSuppressionTransformer instance. - * Synchronizes the transformer with the noise suppression settings. - * Returns the transformer instance for use in Publishers. - */ -export const useNoiseSuppressionTransformer = - (): NoiseSuppressionTransformer => { - const transformerRef = useRef(null); - const enabledValue = useBehavior(noiseSuppressionEnabled.value$); - const levelValue = useBehavior(noiseSuppressionLevel.value$); - - // Initialize transformer on first mount - useEffect(() => { - if (!transformerRef.current) { - transformerRef.current = new NoiseSuppressionTransformer(); - // Initialize with current settings - void transformerRef.current.initialize(levelValue, enabledValue); - } - }, [enabledValue, levelValue]); - - // Sync enabled state when setting changes - useEffect(() => { - if (transformerRef.current) { - transformerRef.current.setEnabled(enabledValue); - } - }, [enabledValue]); - - // Sync level when setting changes - useEffect(() => { - if (transformerRef.current) { - transformerRef.current.setSuppressionLevel(levelValue); - } - }, [levelValue]); - - // Cleanup on unmount - useEffect(() => { - return (): void => { - if (transformerRef.current) { - transformerRef.current.destroy(); - } - }; - }, []); - - return transformerRef.current!; - };