screen_capture_kit library

Native Dart bindings for macOS ScreenCaptureKit.

Provides high-performance access to Apple's ScreenCaptureKit API for screen, window, and display capture on macOS 12.3+.

Classes

CapturedAudio
A single audio buffer from a capture stream.
CapturedFrame
A single frame from a capture stream.
CapturedImage
A captured screenshot image.
CaptureStream
A capture stream that supports updating configuration and filter at runtime.
CaptureStreamDelegateEvent
A lifecycle event from the native capture stream delegate.
ContentFilter
Configuration for which content a capture stream includes.
ContentSharingPickerConfiguration
Configuration for the system content-sharing picker (macOS 14+).
Display
A display device available for capture.
FrameSize
Size in pixels (width × height).
PixelRect
Rectangle in screen points.
RunningApplication
A running application available for capture.
ScreenCaptureKit
Client for macOS ScreenCaptureKit API.
ShareableContent
Shareable content (displays, apps, windows) available for capture.
StreamConfiguration
Options for stream configuration.
Window
An onscreen window available for capture.

Enums

CaptureResolution
Output resolution / quality for screenshot and live stream capture.
CaptureStreamDelegateEventKind
Kind of event forwarded from Apple's SCStreamDelegate.
ContentSharingPickerMode
Selection modes for the system content-sharing picker (macOS 14+).

Extension Types

BundleId
Bundle identifier for a macOS application (reverse-DNS string).
DisplayId
Identifier for a display device.
DisplayRefreshRate
Reported display refresh rate in whole hertz (e.g. 60, 120).
FilterId
Identifier for an opaque native content filter.
FrameRate
Target capture frame rate in FPS.
ProcessId
Identifier for a running process.
QueueDepth
Target capture stream queue depth.
WindowId
Identifier for a window.

Exceptions / Errors

ScreenCaptureKitException
Exception thrown when ScreenCaptureKit API fails.