Camera
A camera stream with what a photograph needs: an element to sample, mirroring, the granted frame rate, and shutter time in milliseconds.
new Camera({ facingMode?: "environment" | "user"; width?: number; height?: number; frameRate?: number; followOrientation?: boolean; })
Darkroom
Assembling long exposures from many frames.
expose method captures the burst,
develop method re-renders it live.
keepNegative optionally saves the burst, so
restack can change frames and stack after the fact.
new Darkroom(canvas?: HTMLCanvasElement)
darkroom.expose(video: HTMLVideoElement, options: ExposeOptions): Promise<Exposure>
darkroom.develop(params: DevelopParams, scale?: number): void
darkroom.restack({ frames?: number; stack?: "mean" | "max" }): Exposure