Commit Graph

3 Commits

Author SHA1 Message Date
Mousen
404b9ace35 Optimize frame capture performance and fix IOSurface alignment
- Add frame skip logic to prevent queue buildup and reduce lock contention
- Serialize operation queue to prevent concurrent frame processing
- Align IOSurface bytes per row to 16 bytes (required for IOSurfaceAccelerator)
- Only create renderServerSurface when scaling is needed, avoiding unnecessary allocations
- Support flexible resolution: width-only, height-only, or both dimensions
- Pass native dimensions to FrameUpdater for proper scaling decisions
- Enable 60 FPS limit on CADisplayLink
- Add IOSurface lock option constants for future use

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2025-12-08 06:22:17 +05:00
Mousen
297e88fa13 Add dual capture mode support and aspect ratio adjustments
- Introduced CaptureMode enum for selecting between CARenderServer and IOMobileFramebuffer.
- Updated FrameUpdater and ScreenDumpVNC to handle new capture mode logic.
- Implemented aspect ratio calculations and adjustments in ScreenDumpVNC.
- Added toggleCaptureMode method to switch between capture modes via keyboard input.
- Enhanced initialization of FrameUpdater to accommodate new parameters.
2025-12-08 05:30:19 +05:00
Mousen
9757a0c623 Initial commit 2025-04-20 06:45:03 +05:00