@ubreu/homebridge-eufy-security
Version:
Control Eufy Security from homebridge.
88 lines • 2.98 kB
TypeScript
/// <reference types="node" />
/// <reference types="node" />
/// <reference types="node" />
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<FFmpegParameters>;
static forVideo(debug?: boolean): Promise<FFmpegParameters>;
static forSnapshot(debug?: boolean): Promise<FFmpegParameters>;
setResolution(width: number, height: number): void;
usesStdInAsInput(): boolean;
setInputSource(value: string): void;
setInputStream(input: Readable): Promise<void>;
setDelayedSnapshot(): void;
setup(cameraConfig: CameraConfig, request: StartStreamRequest | ReconfigureStreamRequest | SnapshotRequest | undefined): void;
setRTPTarget(sessionInfo: SessionInfo, request: StartStreamRequest): void;
setTalkbackInput(sessionInfo: SessionInfo): Promise<void>;
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<ILogObj>);
start(): void;
getResult(input?: Buffer): Promise<Buffer>;
stop(): void;
private onProgressStarted;
private onProcessError;
private onProcessExit;
}
//# sourceMappingURL=ffmpeg.d.ts.map