/// /// /// import { Readable, Writable } from 'stream'; import { Logger as TsLogger, ILogObj } from 'tslog'; import EventEmitter from 'events'; import { CameraConfig } from './configTypes'; import { ReconfigureStreamRequest, SnapshotRequest, StartStreamRequest } from 'homebridge'; import { SessionInfo } from '../controller/streamingDelegate'; export declare class FFmpegParameters { progressPort: number; debug: boolean; private hideBanner; private useWallclockAsTimestamp; private inputSoure; private protocolWhitelist?; private inputCodec?; private inputFormat?; private output; isVideo: boolean; isAudio: boolean; isSnapshot: boolean; private analyzeDuration?; private probeSize?; private stimeout?; private readrate?; private codec; private codecOptions?; private bitrate?; private payloadType?; private ssrc?; private srtpSuite?; private srtpParams?; private format?; private fps?; private pixFormat?; private colorRange?; private filters?; private width?; private height?; private bufsize?; private maxrate?; private sampleRate?; private channels?; private flagsGlobalHeader; private numberFrames?; private delaySnapshot; private constructor(); static forAudio(debug?: boolean): Promise; static forVideo(debug?: boolean): Promise; static forSnapshot(debug?: boolean): Promise; setResolution(width: number, height: number): void; usesStdInAsInput(): boolean; setInputSource(value: string): void; setInputStream(input: Readable): Promise; setDelayedSnapshot(): void; setup(cameraConfig: CameraConfig, request: StartStreamRequest | ReconfigureStreamRequest | SnapshotRequest | undefined): void; setRTPTarget(sessionInfo: SessionInfo, request: StartStreamRequest): void; setTalkbackInput(sessionInfo: SessionInfo): Promise; private buildGenericParameters; private buildInputParamters; private buildEncodingParameters; private buildOutputParameters; private buildParameters; getProcessArguments(): string[]; static getCombinedArguments(parameters: FFmpegParameters[]): string[]; getStreamStartText(): string; } export declare class FFmpeg extends EventEmitter { private process?; private name; private log; private progress?; private parameters; private ffmpegExec; stdin?: Writable; stdout?: Readable; private starttime?; private killTimeout?; constructor(name: string, parameters: FFmpegParameters | FFmpegParameters[], log: TsLogger); start(): void; getResult(input?: Buffer): Promise; stop(): void; private onProgressStarted; private onProcessError; private onProcessExit; } //# sourceMappingURL=ffmpeg.d.ts.map