yuanyuanxiang
|
92f3df8464
|
Perf: Optimize macOS screen capture with CGDisplayStream
Core optimization:
- Use CGDisplayStream instead of per-frame CGDisplayCreateImage
- Push model: CPU sleeps when screen is static (condition_variable wait)
- IOSurface capture avoids expensive image creation per frame
- ~47% CPU reduction during active remote desktop (45% → 24%)
Additional optimizations:
- vImageVerticalReflect (SIMD) replaces manual row-by-row flip
- Cache CGColorSpaceRef to avoid per-frame creation/release
- Cache tempBuffer to avoid per-frame memory allocation
- Throttle getCursorTypeIndex to 250ms (Accessibility API is expensive)
Bug fixes:
- Fix unreliable screen capture permission check (use actual capture test)
- Improve permission logging
Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
|
2026-05-03 23:36:23 +02:00 |
|
yuanyuanxiang
|
ca37fa419a
|
Feat: Implement H264 for Linux client with dynamic libx264 loading
|
2026-05-03 12:15:22 +02:00 |
|
yuanyuanxiang
|
3607f1d768
|
Feature: Add power management to keep macOS client always responsive
|
2026-05-01 21:43:55 +02:00 |
|
yuanyuanxiang
|
9b1cb1ced9
|
Feature: Add cursor position and type detection for macOS client
|
2026-05-01 08:32:46 +02:00 |
|
yuanyuanxiang
|
f2a184e760
|
Feature: Implement initial macOS SimpleRemoter client
|
2026-05-01 01:28:55 +02:00 |
|