← Files Cecil-IA Labs FFmpegARCHIVED FILE
dist/hardware/types.d.ts
1.54 KB · Sep 30, 2026 · 23:17 UTC
import type { ToolkitWarning } from "../types/contracts.js";
export type HardwareEncoderBackend = "nvenc" | "qsv" | "vaapi" | "videotoolbox";
export type HardwareMode = "auto" | "software" | HardwareEncoderBackend;
export type HardwareVideoCodec = "h264" | "vp9";
export interface HardwareRuntimeOptions {
/** Hardware policy. Omitted/software preserves the v1 software encoder behavior. */
hardware?: HardwareMode;
/** Optional backend device path. Currently used by VAAPI. */
hardwareDevice?: string;
/** Fail instead of falling back to software when the requested hardware path cannot be used. */
hardwareStrict?: boolean;
}
export interface HardwareEncodingAttempt {
backend: HardwareEncoderBackend;
encoder: string;
compiled: boolean;
runtimeUsable?: boolean;
reason?: string;
/** Short FFmpeg/runtime diagnostic retained when a hardware probe fails. */
diagnostic?: string;
}
export interface HardwareEncodingSelection {
requested: HardwareMode;
resolved: "software" | HardwareEncoderBackend;
codec: HardwareVideoCodec;
encoder: string;
softwareEncoder: string;
runtimeVerified: boolean;
fallback: boolean;
device?: string;
attempts: HardwareEncodingAttempt[];
warning?: ToolkitWarning;
}
export interface SelectHardwareEncodingOptions extends HardwareRuntimeOptions {
codec: HardwareVideoCodec;
ffmpegPath?: string;
cwd?: string;
dryRun?: boolean;
verbose?: boolean;
signal?: AbortSignal;
platform?: NodeJS.Platform;
}
//# sourceMappingURL=types.d.ts.mapSHA-256: 001f24c164926c1b0d88f0d08f476a652199354ea1525095adb1214ab911282a