Skip to content

Commit 864893a

Browse files
committed
Merge branch 'audio-capture'
2 parents b0da3c7 + 4d34057 commit 864893a

17 files changed

Lines changed: 1707 additions & 876 deletions

File tree

Cargo.lock

Lines changed: 728 additions & 123 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

Cargo.toml

Lines changed: 13 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,7 @@ name = "scap"
33
description = "Modern, high-performance screen capture library for Rust. Cross-platform."
44
version = "0.0.8"
55
edition = "2021"
6-
rust-version = "1.71"
6+
rust-version = "1.85"
77
license = "MIT"
88
authors = [
99
"Siddharth <siddharth99c@gmail.com>",
@@ -16,24 +16,32 @@ keywords = ["screen", "recording", "video", "capture", "media"]
1616
categories = ["graphics", "multimedia", "multimedia::video"]
1717

1818
[dependencies]
19+
futures = "0.3.31"
1920
sysinfo = "0.30.0"
21+
thiserror = "2.0.12"
2022

2123
[target.'cfg(target_os = "windows")'.dependencies]
22-
windows-capture = "1.3.6"
24+
windows-capture = "1.4.2"
2325
windows = { version = "0.58", features = [
2426
"Win32_Foundation",
2527
"Win32_Graphics_Gdi",
2628
"Win32_UI_HiDpi",
2729
"Win32_UI_WindowsAndMessaging",
30+
"Win32_System_Performance",
2831
] }
32+
cpal = "0.15.3"
2933

3034
[target.'cfg(target_os = "macos")'.dependencies]
31-
tao-core-video-sys = "0.2.0"
3235
core-graphics-helmer-fork = "0.24.0"
33-
screencapturekit = "0.2.8"
34-
screencapturekit-sys = "0.2.8"
3536
cocoa = "0.25.0"
3637
objc = "0.2.7"
38+
cidre = { version = "0.10.1", default-features = false, features = [
39+
"async",
40+
"av",
41+
"sc",
42+
"dispatch",
43+
"macos_13_0",
44+
]}
3745

3846
[target.'cfg(target_os = "linux")'.dependencies]
3947
pipewire = "0.8.0"

src/capturer/engine/mac/apple_sys.rs

Lines changed: 0 additions & 48 deletions
This file was deleted.

src/capturer/engine/mac/ext.rs

Lines changed: 13 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,13 @@
1+
use cidre::cg;
2+
use core_graphics_helmer_fork::display::{CGDisplay, CGDisplayMode};
3+
4+
pub trait DirectDisplayIdExt {
5+
fn display_mode(&self) -> Option<CGDisplayMode>;
6+
}
7+
8+
impl DirectDisplayIdExt for cg::DirectDisplayId {
9+
#[inline]
10+
fn display_mode(&self) -> Option<CGDisplayMode> {
11+
CGDisplay::new(self.0).display_mode()
12+
}
13+
}

0 commit comments

Comments
 (0)