murmuraba
Version:
Real-time audio noise reduction with advanced chunked processing for web applications
31 lines • 907 B
TypeScript
export interface WorkerTask {
id: string;
buffer: Float32Array;
resolve: (result: Float32Array) => void;
reject: (error: Error) => void;
}
export declare class RNNoiseWorkerManager {
private workers;
private taskQueue;
private busyWorkers;
private workerTasks;
private initialized;
private readonly maxWorkers;
private readonly initTimeout;
constructor(maxWorkers?: number, initTimeout?: number);
initialize(): Promise<void>;
processBuffer(buffer: Float32Array): Promise<Float32Array>;
private getIdleWorker;
private assignTask;
private handleWorkerMessage;
private handleWorkerError;
private completeTask;
private replaceWorker;
getStats(): {
totalWorkers: number;
busyWorkers: number;
queueLength: number;
};
destroy(): Promise<void>;
}
//# sourceMappingURL=rnnoise-worker-manager.d.ts.map