3935d305ae
Implement S/G IO for batched sends and eliminate another frame copy ( #2874 )
2024-07-19 04:04:18 +00:00
81c6e61594
Implement S/G IO for non-batched sends and eliminate more data copies ( #2867 )
2024-07-18 02:34:56 +00:00
d57c66fa9c
Eliminate a redundant alloc+copy of each frame ( #2852 )
...
* Eliminate a redundant alloc+copy for each frame
* Replace std::copy_n() with std::memcpy() for better code generation
2024-07-14 12:23:19 -05:00
18e7dfb190
Refactor periodic loggers and limit batch size for small packets ( #2835 )
...
* Refactor periodic loggers
* Limit network batch size also by packet count
Previously it was limited only by size, and exceeding 64 packets in a
single batch is asking for problems.
2024-07-13 20:55:03 +00:00
e7c420dd6e
Provide SSSE3, AVX2, and AVX512 optimized Reed-Solomon functions ( #2828 )
...
* Provide SSSE3, AVX2, and AVX512 optimized Reed-Solomon functions
* Update nanors to fix AVX-512 memory corruption
2024-07-11 20:22:57 -05:00
037c61dc99
Implement basic network flow control ( #2803 )
...
Co-authored-by: Cameron Gutman <aicommander@gmail.com >
2024-07-11 00:03:16 +00:00
1dd4b68e1c
docs(src): add examples alias and general cleanup ( #2763 )
2024-06-28 08:34:14 -04:00
fdb443a7c6
Fix log message for Periodic Ping ( #2538 )
2024-05-19 17:31:14 -04:00
2da6fb050a
fix(logging): add logging namespace and create logging::init method ( #2336 )
2024-04-02 20:57:57 -04:00
83e3ea5aa7
Use a common function to abort for debugging purposes
2024-02-27 21:21:16 -06:00
8689469ea8
refactor(main): move remaining entry related code ( #2127 )
2024-02-11 14:15:45 -05:00
1c50bc502b
refactor(main): move map_port to network ( #2115 )
2024-02-09 09:15:47 -05:00
0aa4f06c39
refactor(logging): separate logging from main ( #2110 )
2024-02-07 09:59:24 -05:00
dea1155983
Inform clients of graceful termination when Sunshine exits
2024-02-04 16:43:59 -06:00
ca29eac53a
Refactor RTSP handling to be session-based rather than socket-based
...
This is required to support per-session attributes like encryption keys during RTSP message processing.
2024-02-03 15:05:43 -06:00
5c9533f6d7
Allow DSCP tagging and local traffic prioritization to be enabled separately on Mac and Linux
2024-02-02 18:30:48 -06:00
9dfe97d405
Send the frame number in the encrypted video header
2024-01-25 23:43:30 -06:00
65851407b1
Avoid unnecessary reallocation of the IV for every packet
2024-01-25 23:43:30 -06:00
a10ec3a98a
Drop unencrypted messages on the encrypted control stream
2024-01-19 18:57:58 -06:00
c88fa655f5
Implement video encryption
2024-01-19 18:57:58 -06:00
23fb07d4a2
Implement control stream v2 encryption
2024-01-19 18:57:58 -06:00
2f80145b8e
Change crypto::aes_t to variable size and cleanup some crypto code
2024-01-19 18:57:58 -06:00
3d6e7f447a
Refactor audio encryption to use new encryption flags
2024-01-19 18:57:58 -06:00
77b0bab374
Pass launch_session_t directly into session::alloc()
2024-01-19 18:57:58 -06:00
a9f2679a49
Implement new protocol extension to match client connections together
...
Fixes #1804
Fixes #1862
Fixes #1852
2023-12-30 11:26:53 -06:00
dc967ccc7b
Event Ballons and Tray Icon improvements ( #1561 )
...
Co-authored-by: ReenigneArcher <42013603+ReenigneArcher@users.noreply.github.com >
2023-09-15 20:48:51 -04:00
62a5cd959a
Implement IPv6 support
2023-08-27 18:12:02 -05:00
ebb6a7c9a9
Specify the source address for outbound audio and video traffic ( #1569 )
2023-08-26 16:37:04 -05:00
67c1fa6da7
Populate the last payload length field in the video header
2023-08-19 18:36:48 -05:00
68fa43a61c
Add standalone NVENC encoder
2023-08-13 07:01:09 -05:00
309fcc4142
Convert rumble_queue into a generic feedback_queue for gamepad messages
2023-07-10 21:45:37 -05:00
737be029ec
Move input packet debug prints off the control stream thread
...
The control stream thread is extremely performance-sensitive.
2023-06-27 18:53:01 -05:00
2571682886
Fix pessimizing move warnings on Clang
2023-05-11 20:52:44 -05:00
4ca6dc6c8e
docs: update file level doxygen blocks ( #1258 )
2023-05-07 18:12:39 -04:00
979f7f4e60
docs: improvements to source code documentation ( #1236 )
2023-05-07 15:01:44 -04:00
a6d295b273
Wait for pending sessions to connect before breaking on app termination
...
If we don't wait, clients may fail control stream establishment if the app terminates early.
2023-05-05 17:42:59 -05:00
eb8aaf0093
Fix graceful termination messages being discarded by Moonlight
2023-05-05 17:42:59 -05:00
df1286ac88
Fix crash if the app terminates before the control stream is connected
2023-05-05 17:42:59 -05:00
8347824eee
Print frame processing latency to debug log
2023-05-02 23:41:13 -05:00
bd533dc31b
Extend packet header with frame processing latency
2023-05-02 23:41:13 -05:00
21eb4eb6dd
clang: adjust formatting rules ( #1015 )
2023-03-27 21:45:29 -04:00
31885434f2
docs: add doxygen ( #1004 )
2023-03-07 20:26:03 -05:00
bcd5188ac5
Implement HDR support for Windows ( #825 )
2023-01-25 19:48:55 -06:00
9181028bcf
HDR prep work ( #808 )
2023-01-23 20:54:08 -06:00
4b642f6e01
Implement horizontal scrolling and Sunshine detection for Moonlight ( #793 )
2023-01-21 17:42:08 -06:00
fa14b6ead7
Network performance optimizations ( #771 )
2023-01-16 18:17:04 -05:00
5480d3d59d
Switch to faster nanors Reed-Solomon implementation ( #753 )
2023-01-14 09:45:12 -05:00
f1c225fccc
Terminate Sunshine if a session doesn't terminate for more than 10 seconds ( #707 )
2023-01-05 09:05:25 -05:00
cc688c7845
Implement process and thread priority adjustments ( #691 )
2023-01-03 22:05:00 -05:00
052297a1a5
Update app id on edit ( #670 )
...
Co-authored-by: ReenigneArcher <42013603+ReenigneArcher@users.noreply.github.com >
2023-01-02 21:02:10 -05:00