Rafael
2e995355dc
fix(linux)!: use XDG spec for fetching Linux configuration directory ( #2034 )
2024-01-18 21:24:55 -05:00
Cameron Gutman
21e4450ee1
Fix stream disconnecting when reconfiguring display in X11
2024-01-18 19:14:45 -06:00
Cameron Gutman
404b434754
Fix starvation of encoder thread when not receiving new captured frames
...
This often happens when switching to the UAC secure desktop.
2024-01-18 19:14:45 -06:00
Cameron Gutman
f64712f277
Always reset the thread desktop before calling DuplicateOutput()
...
Otherwise capture will fail if the thread desktop is different than the current input desktop (ex: UAC secure desktop is active)
2024-01-18 19:14:45 -06:00
Cameron Gutman
b94f8c0b50
Improve Name->DRM_MODE_CONNECTOR mapping with new types and names
2024-01-16 19:49:34 -06:00
Cameron Gutman
df2d728af7
Fix plane_it_t skipping the last entry when iterating
2024-01-16 19:49:34 -06:00
Cameron Gutman
d0049da2df
Implement pen and touch support for Linux
2024-01-14 11:45:12 -06:00
Cameron Gutman
c1a3903d20
Fix absolute mouse motion being interpreted as touchscreen input
2024-01-14 11:45:12 -06:00
Cameron Gutman
056281b745
Implement HDR support for Linux KMS capture backend ( #1994 )
...
Co-authored-by: ReenigneArcher <42013603+ReenigneArcher@users.noreply.github.com >
2024-01-11 22:41:58 -06:00
Cameron Gutman
593e170da8
Implement graceful termination and group-based app tracking
2024-01-08 23:55:43 -06:00
Cameron Gutman
f88df0f596
Implement support for KMS cursor plane capture ( #1981 )
2024-01-05 23:02:39 -06:00
ReenigneArcher
791ed48a3f
fix(macos): replace depreciated AbsoluteToNanoseconds ( #1986 )
...
Co-authored-by: Cameron Gutman <2695644+cgutman@users.noreply.github.com >
2024-01-05 23:28:50 -05:00
Cameron Gutman
7d751f050e
Fix EGL import for modifiers that require aux planes
2024-01-05 21:25:06 -06:00
Cameron Gutman
c7e5df5976
Refactor EGLAttrib logic into a shared function
2024-01-05 21:25:06 -06:00
James Le Cuirot
bc6cc2078e
build(linux) make vaapi optional without dlopen ( #1979 )
...
Co-authored-by: ReenigneArcher <42013603+ReenigneArcher@users.noreply.github.com >
2024-01-05 10:59:41 -05:00
Cameron Gutman
0dff8b16fd
Use the new VAAPI dummy image support for kmsgrab too
2024-01-04 22:26:39 -06:00
Cameron Gutman
ebe01ce20b
Remove useless texture size queries for every frame in display_ram_t
2024-01-04 22:26:39 -06:00
Cameron Gutman
3adf9e5967
Don't busy loop during wlgrab capture
2024-01-04 22:26:39 -06:00
Cameron Gutman
e1771de37a
Fix race condition causing hangs and EGL import errors due to concurrent snapshot() calls
2024-01-04 22:26:39 -06:00
Cameron Gutman
0403ad147a
Fix capturing scaled output with wlgrab
2024-01-04 22:26:39 -06:00
Cameron Gutman
1bd45ca803
Fix low-res scrolling on Linux
2024-01-04 00:51:10 -06:00
Cameron Gutman
43992e7e9b
Don't fail kmsgrab init entirely if a single card doesn't work
2024-01-03 16:14:18 -06:00
Cameron Gutman
0f640b8dd9
Fix clear color when rendering to VA surfaces
2024-01-03 16:14:18 -06:00
Cameron Gutman
beb51cc925
Correctly passthrough plane format and modifiers when importing VA surface
2024-01-03 16:14:18 -06:00
Cameron Gutman
e7a3c485ee
Only keep the ViGEmBus connection alive while gamepads are attached
2024-01-02 19:32:19 -06:00
Cameron Gutman
3ca75bee19
Add option to disable native pen/touch support
2024-01-01 19:53:57 -06:00
Cameron Gutman
6ea836c511
Add options to control gamepad autoselection heuristics
...
Also move gamepad type selection to the input tab while we're here
2024-01-01 19:53:57 -06:00
James Le Cuirot
64be0aa67a
Fix grabbing code when DRM is enabled and X11 is disabled ( #1956 )
2023-12-31 15:57:45 -05:00
James Le Cuirot
d97f724e3b
Use dl handle for libva's vaTerminate rather than actual function ( #1955 )
2023-12-31 15:10:48 -05:00
Cameron Gutman
11d472362c
Print a fatal warning for lack of ViGEmBus
...
While this is not technically fatal, it's almost certainly not what the user wants.
2023-12-29 23:01:28 -06:00
Cameron Gutman
4a2f7023ec
Fix discovery of Windows hosts by Apple devices
2023-12-04 21:03:37 -06:00
Justin Dhillon
0a563947ea
docs: fix broken links ( #1813 )
...
Co-authored-by: ReenigneArcher <42013603+ReenigneArcher@users.noreply.github.com >
2023-11-05 00:47:22 -04:00
everything411
842a4cf7b2
fix(audio:windows): set cbSize correctly ( #1787 )
2023-10-27 09:28:29 -04:00
Erick C
3212b036a1
Manual DS4 mode: Allow Back/Select to trigger Touchpad click ( #1772 )
...
Co-authored-by: ReenigneArcher <42013603+ReenigneArcher@users.noreply.github.com >
2023-10-22 15:03:33 -04:00
Cameron Gutman
11361ac9b6
Send proper DS4 timestamp values in our input reports
2023-10-10 23:10:20 -05:00
Cameron Gutman
395d572b17
Fix Super key regression after 8a7111a ( #1728 )
2023-10-09 19:39:40 -04:00
Cameron Gutman
8a7111a63b
Use our own keycode mapping instead of relying on Windows
...
Loading the US English layout causes user-visible side effects.
2023-10-08 17:32:22 -05:00
Cameron Gutman
ee1a9a618a
Remove clang-format suppressions
2023-10-06 18:29:50 -05:00
Cameron Gutman
71024491e2
Allow the Misc button to work as Guide on emulated Xbox 360 controllers
...
It isn't physically present on Xbox 360 controllers, so we may as well use it for something.
2023-10-06 18:29:50 -05:00
ns6089
974c4bd4a1
Remove unused shader input layout
...
We don't use SV_Position in our vertex shaders.
2023-10-05 23:06:40 -05:00
ns6089
7f2b96b3e0
Refactor shaders
2023-10-05 23:06:40 -05:00
ns6089
2086cad96e
Support #include in dx shader compiler
2023-10-05 23:06:40 -05:00
Cameron Gutman
a08e2b3de6
Add comments clarifying AVBufferRef usage and ownership
2023-10-04 22:36:16 -05:00
Cameron Gutman
c56ad91693
Implement zero-copy 8/10 bit encoding for macOS
2023-10-04 22:36:16 -05:00
Cameron Gutman
e535706a09
Fix CVPixelBuffer/CMSampleBuffer ownership issues
2023-10-04 22:36:16 -05:00
Cameron Gutman
ca041f2934
Use AVVideoScalingModeResizeAspect instead of abusing extended pixels
...
This not only eliminates the hand-rolled aspect ratio correction (which didn't actually handle scaling),
but it also avoids us having to write to the GPU frames to add padding which improves performance.
2023-10-04 22:36:16 -05:00
Cameron Gutman
a29d2e11ea
Fix only capturing a single frame on macOS
2023-10-04 22:36:16 -05:00
Cameron Gutman
3e477647ff
Use a render node to create our VADisplay
...
Since libva 2.20, vaInitialize() will fail if we pass a primary node and
lack permission to authenticate. Since we don't actually need to have a
primary node fd to encode, let's use a render node instead.
2023-10-02 17:33:17 -05:00
Cameron Gutman
1303defb67
Fix crash during UDP segmentation due to stack garbage
...
CMSG_NXTHDR() tries to read the _next_ message to check if it fits in
the provided control buffer length. If that part of the stack has some
large value stored in the uninitialized cmsg_len there, CMSG_NXTHDR()
will return NULL and we will crash.
2023-10-02 00:13:47 -05:00
ns6089
e98d7577bb
Support capturing rotated displays on Windows ( #1602 )
2023-09-13 10:34:26 -04:00