UNPKG

murmuraba

Version:

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

76 lines 2.35 kB
import { ProcessedChunk } from './types'; import { URLManager } from './url-manager'; import { ProcessingMetrics } from '../../types'; export declare class RecordingManager { private urlManager; private mediaRecorder; private originalRecorder; private chunkRecordings; private processChunkInterval; private stopCycleFlag; private cycleCount; private cycleTimeout; private eventBridge; private bridgeToken; private managerId; private metricsProvider; private currentMetrics; constructor(urlManager: URLManager); private generateId; /** * TDD Integration: Set metrics provider from ChunkProcessor */ setMetricsProvider(provider: { getAggregatedMetrics: (startTime: number, endTime: number) => any; }): void; /** * TDD Integration: Receive metrics from ChunkProcessor */ receiveMetrics(metrics: any): void; /** * Secure Integration: Notify metrics received from secure event bridge */ notifyMetrics(metrics: ProcessingMetrics): void; /** * TDD Integration: Get real metrics for a time period */ private getRealMetrics; /** * Start concatenated streaming for medical-grade recording */ startCycle(processedStream: MediaStream, originalStream: MediaStream, chunkDuration: number, onChunkProcessed: (chunk: ProcessedChunk) => void): Promise<void>; /** * Process recorded chunk data */ private processChunkRecording; /** * Stop recording and release all audio resources */ stopRecording(): void; /** * Pause recording */ pauseRecording(): void; /** * Resume recording */ resumeRecording(): void; /** * Check if currently recording */ isRecording(): boolean; /** * Start concatenated streaming for medical-grade recording * This is an alias for startCycle for backward compatibility */ startConcatenatedStreaming(processedStream: MediaStream, originalStream: MediaStream, chunkDuration: number, onChunkProcessed: (chunk: ProcessedChunk) => void): Promise<void>; /** * Check if recording is paused */ isPaused(): boolean; /** * Clean up and unregister from the secure event bridge */ cleanup(): void; } //# sourceMappingURL=recording-manager.d.ts.map