Details
-
Task
-
Resolution: Unresolved
-
P3: Somewhat important
-
None
-
6.9
-
None
Description
On macOS, window capturing relies on CoreGraphics API (CGWindowListCreateImage)where we essentially just take screenshots at a high rate. This is a fairly hacky and poor solution. This API is also deprecated.
Screen capturing is currently done through the AVFoundation API (AVCaptureScreenInput). This API is not deprecated but the documentations recommends we move to ScreenCaptureKit.
The modern API for content sharing on macOS is ScreenCaptureKit: https://developer.apple.com/documentation/screencapturekit?language=objc#overview. We should move our backend to this API.
There are several future-oriented benefits to this:
- ScreenCaptureKit allows us to use the system-picker, allowing us to delegate screen/window selection to the user. We also have less need for permission-handling if we do this
- ScreenCaptureKit supports recording system audio
- Shared backend for window and screen capturing
Attachments
Issue Links
- relates to
-
QTBUG-136991 Improved screen/window capturing APIs
-
- Open
-