Cathy J. Fitzpatrick
3cc12dfbe7
macOS: New implementation of service publication ( #2786 )
...
The current implementation of service publication on macOS uses
`avahi-client`, but the majority of macOS machines do not have Avahi
installed because macOS provides a native alternative (`mDNSresponder`),
meaning that there is no reason to install Avahi.
The current implementation also attempts to load the Avahi client
libraries using `dlopen(3)`, which has a variety of restrictions on
macOS, such as only being willing to load from certain directories.
Depending on where the Avahi binaries are installed, they might not
be loadable through the current invocation of `dlopen(3)`.
Instead of using an Avahi client on macOS, it makes more sense to use
the native macOS API for publishing services via `mDNSresponder`. This
commit supplies such an implementation that uses the macOS native API.
It also has the advantage of being much simpler than the previous
implementation. Furthermore, this new implementation works on all
macOS machines, because it relies only on native APIs, rather than on
third-party software that is not commonly installed on macOS.
2024-07-07 15:19:51 +00:00
ReenigneArcher
1dd4b68e1c
docs(src): add examples alias and general cleanup ( #2763 )
2024-06-28 08:34:14 -04:00
ReenigneArcher
f3abf59fbf
docs(src): fix some doxygen warnings ( #2731 )
2024-06-20 01:36:09 +00:00
Vithorio Polten
509576d616
feat(input/linux): add support for more virtual input devices ( #2606 )
...
Co-authored-by: ABeltramo <beltramo.ale@gmail.com >
Co-authored-by: ReenigneArcher <42013603+ReenigneArcher@users.noreply.github.com >
2024-06-16 00:21:18 +00:00
Vithorio Polten
02ddbefd44
fix(macos): Mouse input broken in-game ( #2550 )
...
Co-authored-by: ReenigneArcher <42013603+ReenigneArcher@users.noreply.github.com >
2024-06-12 17:26:02 -04:00
Vithorio Polten
ff54ab2852
fix(macos): fix broken streaming on MacOS ( #2485 )
2024-05-14 14:14:40 -04:00
TimmyOVO
9d5ee2f57d
fix(macos/input): incorrect mouse input for non-main display ( #2461 )
2024-05-02 13:52:29 -04:00
TimmyOVO
9288775351
feat(macos/capture): support for capture display other than main display ( #2449 )
2024-04-22 14:16:26 -04:00
ReenigneArcher
8689469ea8
refactor(main): move remaining entry related code ( #2127 )
2024-02-11 14:15:45 -05:00
ReenigneArcher
1c50bc502b
refactor(main): move map_port to network ( #2115 )
2024-02-09 09:15:47 -05: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
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
593e170da8
Implement graceful termination and group-based app tracking
2024-01-08 23:55:43 -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
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
ebb6a7c9a9
Specify the source address for outbound audio and video traffic ( #1569 )
2023-08-26 16:37:04 -05:00
Cameron Gutman
22ab9948fa
Pass the environment as a const reference so nobody else is tempted to modify it
2023-08-16 21:48:16 -05:00
ns6089
68fa43a61c
Add standalone NVENC encoder
2023-08-13 07:01:09 -05:00
Cameron Gutman
bd68aebe4c
Implement pen and touch support for Windows
2023-08-03 19:16:09 -05:00
Cameron Gutman
50f353d183
Fix handling of gamepad feedback with multiple clients connected
...
We need to use the client-relative index rather than the global index
when sending feedback to the client.
2023-07-10 21:45:37 -05:00
Cameron Gutman
309fcc4142
Convert rumble_queue into a generic feedback_queue for gamepad messages
2023-07-10 21:45:37 -05:00
Cameron Gutman
fd77230964
Stub controller battery, touch, and motion packets
2023-07-10 21:45:37 -05:00
Cameron Gutman
1ef8cb1111
Send feature flags in RTSP DESCRIBE response
2023-07-10 21:45:37 -05:00
Casey Korver
881af5b566
Correct typos in logging
2023-07-08 19:56:56 -05:00
Casey Korver
b1ffa8a6c5
Correct typos in comments
2023-07-08 18:56:27 -05:00
Cameron Gutman
11aedf56a2
Implement controller arrival metadata support
2023-06-30 20:47:29 -05:00
Cameron Gutman
8db0ad0cc6
Fix and enable -Wmaybe-uninitialized
2023-05-11 20:52:44 -05:00
ReenigneArcher
4ca6dc6c8e
docs: update file level doxygen blocks ( #1258 )
2023-05-07 18:12:39 -04:00
ReenigneArcher
979f7f4e60
docs: improvements to source code documentation ( #1236 )
2023-05-07 15:01:44 -04:00
Cameron Gutman
292ef7eca3
Don't show a console window when opening a URL
2023-05-03 00:33:06 -05:00
Cameron Gutman
c4c04694ac
Restore the start menu shortcut as a proper launcher for the UI and service
2023-05-03 00:33:06 -05:00
Cameron Gutman
50f689ff80
Implement restart support for all platforms
2023-04-29 21:22:18 -05:00
Chase Payne
430a439698
Elevated Commands Redesign ( #1123 )
2023-04-29 00:22:01 -05:00
Cameron Gutman
4e04604696
Add support for keyboard input that is not normalized to US English layout
...
This is used by the soft keyboards on Android and iOS
2023-04-11 19:53:46 -05:00
ns6089
eed27d3c0a
Decrease normal capture buffer to single image
2023-04-11 18:17:48 -05:00
ReenigneArcher
21eb4eb6dd
clang: adjust formatting rules ( #1015 )
2023-03-27 21:45:29 -04:00
Brian Kendall
80aa61b6e4
Support compiling for earlier releases of macOS ( #960 )
2023-03-10 09:53:29 -05:00
Cameron Gutman
9181028bcf
HDR prep work ( #808 )
2023-01-23 20:54:08 -06:00
Cameron Gutman
4b642f6e01
Implement horizontal scrolling and Sunshine detection for Moonlight ( #793 )
2023-01-21 17:42:08 -06:00
Lukas Senionis
c81aa99c38
Fix child process spawning on linux ( #773 )
2023-01-19 00:40:12 -06:00
Cameron Gutman
fa14b6ead7
Network performance optimizations ( #771 )
2023-01-16 18:17:04 -05:00
Cameron Gutman
44ad28ebf4
Fix a reference leak of hw_frames_ctx and prepare for QSV ( #736 )
2023-01-10 14:52:15 -05:00