UNPKG

murmuraba

Version:

Real-time audio noise reduction with advanced chunked processing for web applications

36 lines 1.26 kB
/** * Infrastructure Layer - Web Audio API Implementation * Handles the technical details of applying gain to audio nodes */ import { GainValue, GainRepository, GainPolicy } from '../../domain/gain/gain-domain'; export interface WebAudioGainOptions { smoothingTimeConstant?: number; enableSmoothing?: boolean; policy?: GainPolicy; } export declare class WebAudioGainRepository implements GainRepository { private readonly audioContext; private gainNode?; private currentGain; private readonly options; private presets; constructor(audioContext: AudioContext, options?: WebAudioGainOptions); getCurrentGain(): Promise<GainValue>; setGain(gain: GainValue): Promise<void>; savePreset(name: string, gain: GainValue): Promise<void>; loadPreset(name: string): Promise<GainValue | null>; /** * Get the actual Web Audio API gain node for connection to audio graph */ getGainNode(): GainNode; /** * Connect this gain repository to an audio processing chain */ connectTo(sourceNode: AudioNode, destinationNode: AudioNode): void; /** * Clean up resources */ destroy(): void; private createGainNode; } //# sourceMappingURL=web-audio-gain-repository.d.ts.map