-
Notifications
You must be signed in to change notification settings - Fork 20
Description
I have two displays:
- 2560x1440 in portrait orientation (vertical, so actually 1440x2560), set to 125% scaling; on the left side
- 3840x2160 in landscape orientation (horizontal) also set to 125% scaling; on the right
When I launch SimpleRecorder and select the "All displays" option despite the selection dialog showing correct preview I get incorrect GraphicsCaptureItem.Size. This causes the final video to be cut both on the right side and at the bottom.
On the image: Calculator fills the top part of the left display 1. Visual Studio fills the right part of the right display 2. Area above Visual Studio does not belong to any monitor because left display height = 2560px > right display height 2160px

In the recording: taskbar on the left display is cut, and so is the bottom and right sides of Visual Studio on the right display.
RecordingBug.mp4
Environment
OS: Windows 10 21H2
Process DPI awareness: PerMonitorV2 (tried with other options too to no avail).
Expected
Width = 1,440 + 3,840 = 5,280px
Height = 2,560px (tallest)
Actual
Width = 4,224 (looks suspiciously like 5,280 / 1.25)
Height = 2050 (also suspiciously close to 2,560 / 1.25)
P.S.
I played with the code, and if I appropriately scale up GraphicsCaptureItem.Size.Width and .Height to the size of the area in physical pixels, the recording is not cut.
I am afraid to try on multiple screens with different scaling 👀