-
Notifications
You must be signed in to change notification settings - Fork 365
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Support ScreenCapture loopback #894
base: master
Are you sure you want to change the base?
Conversation
any update on this? need asap for https://github.com/louis030195/screen-pipe how can i help? i just tried this PR to record screen to wav and it works https://gist.github.com/louis030195/013fda2fa6b373f815bbeeb39e524090 |
So it works fine in macOS? Maybe my previous testing method was incorrect. |
@Kree0 yes works well, I use it to record .mp3 files & transcribe with OpenAI's whisper 24/7 on my Macbook pro M3 max |
Good job. |
update: latest macos release broke this PR (15.0). issue does not happen on 14.5
|
Can you run it with |
will focus on this PR in upcoming days |
Did you get a chance to check the crash? |
https://github.com/SSheldon/rust-objc-id/blob/6527cdf28fef2b155c67c1681f548ecfd794003c/src/id.rs#L52 seems the crash happens here but on the other hand i see that 15.0 macos is beta right? so maybe this will be fixed by apple (idk) will just push to prod my repo with this branch as deps and people that use beta macos wont have access to the feature |
|
||
let mut res = Vec::new(); | ||
for display in sc_shareable_content.displays.into_iter() { | ||
res.push(Device::new(display)); |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
here memory leak
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
@Kree0 do you have any idea how to fix this leak? i use this branch in production and it grows memory forever, trying to find a fix
fyi $150 bounty on fixing this: mediar-ai/screenpipe#183 (comment) |
fyi working on major leaks (there are multiple) related to screencapturekit |
Sorry for the late reply. I have been busy in the past few months. The memory leak seems to have been resolved in mediar-ai/screencapturekit-rs, mediar-ai/screencapturekit-rs. Should I replace the dependencies with them? |
@Kree0 considering we should implement this PR using another lib than screencapturekit-rs currently i experienced 5-8 users having issues with screencapture kit when macos version below 13, usually seg fault, not sure it's an issue in my implementation or something with macos api |
Did any of you try https://crates.io/crates/screen-capture-kit yet? I also tried |
what is the best way to impl this? @Kree0 @rustdesk @Poordeveloper @kaiwen-wang $300 bounty to make this work without seg fault or memory leaks |
This looks a little difficult. And I don't have a mac device or time to do this in the near future, can see if others have time. |
See yury/cidre#23 |
I‘ll take a look in upcoming days. |
@louis030195 |
The crate |
any chance you can send a PR here with the switch in dependencies in so i can test & give you the bounty |
how do i know tehre is no memory leak this time though? |
I think that It's not ready yet and need a bit more testing let devices: Vec<Box<DeviceTrait>>; It should hold both |
I think it is not using |
It support loopback Maybe with that we won't need another host Note: I suggest keep this PR changes and maybe create another one with |
Ok, I'll keep this commit. |
#876
I added a new host:
ScreenCaptureKit
in macos, which only providesinput devices
for capturing the sound of theDisplay
.When I test it in KVM virtualized
mocOS-14
, it captures sound intermittently, I don't know why this happens, can anyone help me check the code?