WIP: Implement Windows screen capture #15

Draft
Benjamin wants to merge 29 commits from 3-implement-windows-screen-capture into main
Owner

Closes #3.

Closes #3.
# Conflicts:
#	libgruppensprechen/test/test.ui
#	libgruppensprechen/test/testwin.cpp
fix rebase conflicts with main
refactored GDIDisplay and monitorEnumProc
moved buffer allocation from getSingleCapture to FrameBuffer
lib: testwin: rename buttons and fix missing callback function for CaptureConfig #3
Some checks failed
ci / build (pull_request) Failing after 1m16s
ci-windows / build-msvc (push) Successful in 16m13s
ci-windows / build-mingw (push) Successful in 17m30s
ci-windows / build-msvc (pull_request) Successful in 15m47s
ci-windows / build-mingw (pull_request) Successful in 15m55s
279c6af399
lib: video: change interface to use CaptureHandle instead of raw Capture pointers #3
All checks were successful
ci-windows / build-msvc (push) Successful in 10m2s
ci-windows / build-mingw (push) Successful in 11m46s
0baba2013f
lib: fix display capture switching #3
All checks were successful
ci-windows / build-msvc (push) Successful in 7m42s
ci-windows / build-mingw (push) Successful in 8m57s
cbf671cd24
lib: testwin: synchronize drawImage call with ui thread #3
All checks were successful
ci-windows / build-msvc (push) Successful in 7m55s
ci-windows / build-mingw (push) Successful in 9m38s
8fbb35c63f
Benjamin force-pushed 3-implement-windows-screen-capture from 8fbb35c63f
All checks were successful
ci-windows / build-msvc (push) Successful in 7m55s
ci-windows / build-mingw (push) Successful in 9m38s
to 39bea60092
All checks were successful
ci-windows / build-msvc (push) Successful in 8m24s
ci-windows / build-mingw (push) Successful in 10m7s
2026-06-25 22:57:24 +02:00
Compare
Benjamin force-pushed 3-implement-windows-screen-capture from 39bea60092
All checks were successful
ci-windows / build-msvc (push) Successful in 8m24s
ci-windows / build-mingw (push) Successful in 10m7s
to 0e9593ce9a
Some checks failed
ci-windows / build-mingw (push) Has been cancelled
ci-windows / build-msvc (push) Has been cancelled
2026-06-26 15:49:10 +02:00
Compare
Benjamin force-pushed 3-implement-windows-screen-capture from 0e9593ce9a
Some checks failed
ci-windows / build-mingw (push) Has been cancelled
ci-windows / build-msvc (push) Has been cancelled
to 8f68c51908
All checks were successful
ci-windows / build-msvc (push) Successful in 9m58s
ci-windows / build-mingw (push) Successful in 11m5s
2026-06-26 15:50:46 +02:00
Compare
lib: test: add log level parsing #3
All checks were successful
ci-windows / build-msvc (push) Successful in 7m22s
ci-windows / build-mingw (push) Successful in 8m45s
7091fa1f4c
lib: fix all clang warnings #3
All checks were successful
ci-windows / build-msvc (push) Successful in 8m0s
ci-windows / build-mingw (push) Successful in 9m15s
041653497d
lib: testwin: add average fps display #3
All checks were successful
ci-windows / build-msvc (push) Successful in 9m35s
ci-windows / build-mingw (push) Successful in 11m3s
cea305cbb3
lib: videoman: make capture pure virtual, add getters #3
All checks were successful
ci-windows / build-msvc (push) Successful in 10m27s
ci-windows / build-mingw (push) Successful in 11m50s
b506d5a96f
lib: video: alloc/dealloc of gdi objects in constructor/destructor of GDICapture #3
All checks were successful
ci-windows / build-msvc (push) Successful in 8m46s
ci-windows / build-mingw (push) Successful in 10m40s
9e9be86256
Also clean up VideoMan api
lib: video: make Framebuffer a template #3
All checks were successful
ci-windows / build-msvc (push) Successful in 9m13s
ci-windows / build-mingw (push) Successful in 10m25s
c8f2bd706a
lib: video: add error handling #3
All checks were successful
ci-windows / build-msvc (push) Successful in 8m17s
ci-windows / build-mingw (push) Successful in 10m11s
04f6366c60
lib: GDIVideoMan: fix msvc build failure #3
All checks were successful
ci-windows / build-msvc (push) Successful in 15m29s
ci-windows / build-mingw (push) Successful in 16m36s
f27c749f3a
Also fix some msvc warnings
lib: video: more cleanup for function params and member names #3
All checks were successful
ci-windows / build-msvc (push) Successful in 10m23s
ci-windows / build-mingw (push) Successful in 11m58s
fa9930bffb
lib: video: add CaptureInfo object to keep the user from having to access dangling pointers #3
All checks were successful
ci-windows / build-msvc (push) Successful in 9m21s
ci-windows / build-mingw (push) Successful in 10m57s
113f27ac7c
lib: video: fix id not being set for GDICapture #3
All checks were successful
ci-windows / build-msvc (push) Successful in 10m56s
ci-windows / build-mingw (push) Successful in 12m48s
d9d71655ce
Benjamin force-pushed 3-implement-windows-screen-capture from d9d71655ce
All checks were successful
ci-windows / build-msvc (push) Successful in 10m56s
ci-windows / build-mingw (push) Successful in 12m48s
to 7d9725342a
All checks were successful
ci-windows / build-msvc (push) Successful in 3m2s
ci-windows / build-mingw (push) Successful in 4m15s
2026-06-28 21:44:42 +02:00
Compare
Benjamin force-pushed 3-implement-windows-screen-capture from 7d9725342a
All checks were successful
ci-windows / build-msvc (push) Successful in 3m2s
ci-windows / build-mingw (push) Successful in 4m15s
to bffc8c3a11
Some checks failed
ci / build (push) Failing after 1m14s
ci-windows / build-msvc (push) Successful in 2m34s
ci-windows / build-mingw (push) Successful in 3m48s
2026-06-28 22:01:14 +02:00
Compare
lib: add video namespace and fix boost not found in cmake #3
Some checks failed
ci-windows / build-msvc (pull_request) Successful in 4m23s
ci-windows / build-mingw (pull_request) Successful in 8m41s
ci-windows / build-msvc (push) Successful in 2m17s
ci-windows / build-mingw (push) Successful in 3m29s
ci / build (push) Failing after 2m1s
ci / build (pull_request) Failing after 1m55s
ec57987310
lib: video: rewrite Framebuffer class to modern c++ #3
All checks were successful
ci-windows / build-msvc (push) Successful in 4m21s
ci-windows / build-mingw (push) Successful in 5m20s
fc64928bdb
lib: video: remove extraneous code from Framebuffer #3
All checks were successful
ci-windows / build-msvc (push) Successful in 10m1s
ci-windows / build-mingw (push) Successful in 12m30s
3b26a86e93
lib: video: change Framebuffer again to avoid dealing with modern c++ #3
All checks were successful
ci-windows / build-msvc (push) Successful in 5m28s
ci-windows / build-mingw (push) Successful in 6m49s
da54df680d
lib: test: add cpptrace for pretty stacktraces on crash #3
All checks were successful
ci-windows / build-msvc (push) Successful in 6m4s
ci-windows / build-mingw (push) Successful in 7m29s
8b649dacd6
Can be enabled with -DUSE_STACKTRACE in cmake
All checks were successful
ci-windows / build-msvc (push) Successful in 6m4s
Required
Details
ci-windows / build-mingw (push) Successful in 7m29s
Required
Details
This pull request is marked as a work in progress.
View command line instructions

Checkout

From your project repository, check out a new branch and test the changes.
git fetch -u origin 3-implement-windows-screen-capture:3-implement-windows-screen-capture
git switch 3-implement-windows-screen-capture
Sign in to join this conversation.
No reviewers
No milestone
No project
1 participant
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set.

Reference
Benjamin/gruppensprechen!15
No description provided.