@eleven-am/transcoder
Version:
High-performance HLS transcoding library with hardware acceleration, intelligent client management, and distributed processing support for Node.js
28 lines • 1.16 kB
TypeScript
import { RedisClientType } from 'redis';
import { DistributedConfig, ISegmentProcessor, SegmentProcessingData, SegmentProcessingResult } from './interfaces';
/**
* Distributed segment processor - coordinate segment processing across multiple nodes
* Falls back to local processing if Redis is unavailable
*/
export declare class DistributedSegmentProcessor implements ISegmentProcessor {
private readonly redis;
private readonly claimManager;
private readonly localProcessor;
private readonly workerId;
private readonly claimRenewalInterval;
private readonly segmentTimeout;
private readonly fallbackToLocal;
private readonly fileWaitTimeout;
private disposed;
private activeRenewals;
constructor(redis: RedisClientType, config?: DistributedConfig);
processSegment(data: SegmentProcessingData): Promise<SegmentProcessingResult>;
isHealthy(): Promise<boolean>;
getMode(): 'local' | 'distributed';
dispose(): Promise<void>;
private waitForSegmentCompletion;
private waitForFile;
private segmentExists;
private isRedisError;
}
//# sourceMappingURL=distributedSegmentProcessor.d.ts.map