Cameron Gutman
75a97883e7
Rework dummy image handling to avoid RTX HDR driver bug
...
As a side effect, it avoids useless allocations and uploads of
a zeroed memory buffer to clear the dummy image textures.
2024-03-01 01:09:10 -06:00
Cameron Gutman
a0d5973799
Avoid display switching unexpectedly when the UAC secure desktop appears
2024-02-27 23:12:31 -06:00
Cameron Gutman
83e3ea5aa7
Use a common function to abort for debugging purposes
2024-02-27 21:21:16 -06:00
ReenigneArcher
8a7a6c48f8
build(cmake) properly find evdev ( #2176 )
2024-02-26 12:55:34 -05:00
Cameron Gutman
56da68c863
Preserve backwards-compatible argument escaping behavior for executables
2024-02-15 18:29:33 -06:00
Cameron Gutman
6ddc4b7ba3
Properly re-escape arguments when processing %*
2024-02-15 18:29:33 -06:00
Cameron Gutman
69a3edd9b0
Use Win32 APIs for UTF-16<->UTF-8 conversion
...
std::codecvt is deprecated since C++17 and broken for some characters/locales
2024-02-12 18:43:44 -06:00
ReenigneArcher
8689469ea8
refactor(main): move remaining entry related code ( #2127 )
2024-02-11 14:15:45 -05:00
Cameron Gutman
78ed91af5c
Treat escape sequences like other replacements
2024-02-10 09:52:35 -06:00
Cameron Gutman
c0ad9639c4
Fix spacing of multi-argument %* substitutions
2024-02-10 09:52:35 -06:00
Cameron Gutman
11c8cf176c
Simplify and fix handling of incomplete substitution strings
2024-02-10 09:52:35 -06:00
ReenigneArcher
cd2153f340
refactor(main): move file operation functions to new source ( #2124 )
2024-02-10 07:37:27 -05:00
ReenigneArcher
1c50bc502b
refactor(main): move map_port to network ( #2115 )
2024-02-09 09:15:47 -05:00
Cameron Gutman
aa76b2398b
Add support for starting URLs and regular files that aren't executable
...
This provides some limited ShellExecute-like behavior.
2024-02-08 01:59:40 -06:00
ReenigneArcher
0aa4f06c39
refactor(logging): separate logging from main ( #2110 )
2024-02-07 09:59:24 -05:00
Cameron Gutman
ff8c8ce3ab
Skip encoder reprobing if no GPU changes have occurred
2024-02-06 20:00:24 -06:00
ReenigneArcher
76e160bb0a
style(macos): various code style fixes ( #2086 )
2024-02-04 18:37:44 -05:00
Cameron Gutman
be6f856840
Fix DSCP tagging for dual-stack sockets on Linux
2024-02-04 16:19:22 -06:00
Cameron Gutman
2008bc0eaa
Use CS6 instead of CS7 for audio traffic
...
CS7 is reserved for network control traffic.
2024-02-02 18:30:48 -06:00
Cameron Gutman
bb3b7984f3
Add refcounting to Mac and Linux QoS state to ensure it works properly with multiple clients
...
This means we can't control DSCP tagging per-client, but it shouldn't pose a big problem as routers that blackhole DSCP tagged traffic are pretty rare.
2024-02-02 18:30:48 -06:00
Cameron Gutman
5c9533f6d7
Allow DSCP tagging and local traffic prioritization to be enabled separately on Mac and Linux
2024-02-02 18:30:48 -06:00
Cameron Gutman
fe8b0bad92
Implement workaround for qWAVE issues handling IPv4-mapped IPv6 addresses
2024-02-02 18:30:48 -06:00
Cameron Gutman
f70c3f1c0e
Fix crash on monitor index not found in KMS
2024-01-28 14:00:46 -06:00
Cameron Gutman
cf416f55e1
Fix KMS cursor capture on Nvidia GPUs
2024-01-28 14:00:46 -06:00
Cameron Gutman
8182f592e8
Implement NVENC support for KMS and wlgrab capture methods
2024-01-28 14:00:46 -06:00
Cameron Gutman
9a3553db04
Refactor to use pixel format helpers in VAAPI
2024-01-27 21:32:29 -06:00
Kelvie Wong
3f31400e7f
Revert "Remove useless texture size queries for every frame in display_ram_t"
...
This reverts commit ebe01ce20b .
Looks like this commit undos the fix for #453 , see also PRs #649 and #884 .
This also adds a comment so hopefully it doesn't get removed again in
the future (or a proper fix is found).
2024-01-25 21:09:43 -06:00
ns6089
66150872b0
Add nvprefs user override options
2024-01-20 18:28:09 -06:00
Lukas Senionis
bf1b9a20ec
Add a dedicated library for working with JSON ( #2047 )
2024-01-20 17:05:35 -05:00
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