screencapturekit/stream/
mod.rs

1//! Screen capture stream functionality
2//!
3//! This module provides the core streaming API for capturing screen content.
4//!
5//! ## Main Components
6//!
7//! - [`SCStream`] - The main capture stream
8//! - [`configuration::SCStreamConfiguration`] - Stream configuration (resolution, FPS, etc.)
9//! - [`content_filter::SCContentFilter`] - Filter for selecting what to capture
10//! - [`output_trait::SCStreamOutputTrait`] - Trait for receiving captured frames
11//! - [`output_type::SCStreamOutputType`] - Type of output (screen, audio)
12//!
13//! ## Example
14//!
15//! ```rust,no_run
16//! use screencapturekit::prelude::*;
17//!
18//! # let content = SCShareableContent::get().unwrap();
19//! # let display = &content.displays()[0];
20//! let filter = SCContentFilter::builder()
21//!     .display(display)
22//!     .exclude_windows(&[])
23//!     .build();
24//! let mut config = SCStreamConfiguration::default();
25//! config.set_width(1920);
26//! config.set_height(1080);
27//!
28//! let mut stream = SCStream::new(&filter, &config);
29//! stream.start_capture()?;
30//! # Ok::<(), screencapturekit::error::SCError>(())
31//! ```
32
33pub mod configuration;
34pub mod content_filter;
35pub mod delegate_trait;
36pub mod output_trait;
37pub mod output_type;
38pub mod sc_stream;
39
40pub use delegate_trait::ErrorHandler;
41pub use delegate_trait::SCStreamDelegateTrait as SCStreamDelegate;
42pub use output_trait::SCStreamOutputTrait as SCStreamOutput;
43pub use sc_stream::SCStream;