Commit Graph

78 Commits

Author SHA1 Message Date
Yukino Song
3e0cbaf2c2 Implement pause/resume commands w/ APOLLO_APP_STATUS envvar 2025-06-05 15:40:03 +08:00
Yukino Song
d316b272da Add terminate on pause option for apps (resolves #801) 2025-06-04 19:02:10 +08:00
Yukino Song
a94e8ec4f9 Merge remote-tracking branch 'sunshine/master' 2025-05-25 19:45:07 +08:00
Andy Grundman
3092471be5 fix(rtp): improve timestamp accuracy for video (#3883)
Instead of using now() when the RTP packet is created, use the earlier packet->frame_timestamp that we're already collecting for host latency stats. This timestamp is more accurate to when we captured the frame, and the same timestamp value is shared by all RTP packets that make up the same video frame. Duplicate frames without capture timestamps use the ratecontrol timestamp.
2025-05-21 19:56:41 -04:00
Yukino Song
a31828dd9c Merge remote-tracking branch 'sunshine/master' 2025-04-01 20:05:27 +08:00
ABeltramo
f65bb842ff feat(input/linux): DualSense adaptive trigger support (#3738) 2025-03-26 19:16:20 -04:00
Yukino Song
78714e65fc Fix build 2025-02-06 18:16:55 +08:00
Yukino Song
fd059e36f0 Merge remote-tracking branch 'origin/master' 2025-02-06 09:14:18 +08:00
VMFortress
5b36357133 feat(display): Add revert display config on disconnect option (#3613) 2025-01-30 16:02:22 -05:00
Yukino Song
4403cff32f Per client DO/UNDO commands server part - done 2025-01-22 21:05:17 +08:00
ReenigneArcher
c2420427b1 style: adjust clang-format rules (#2186)
Co-authored-by: Vithorio Polten <reach@vithor.io>
2025-01-19 22:34:47 -05:00
Yukino Song
1dc6465f12 Merge remote-tracking branch 'origin/master' 2025-01-14 23:43:50 +08:00
Lukas Senionis
76bea8acb9 feat(display): Configure display device based on user config (#3441) 2025-01-07 20:40:48 -05:00
Yukino Song
8419617749 Merge remote-tracking branch 'origin/master' 2025-01-01 20:05:55 +08:00
ReenigneArcher
1e2fc2eb10 build(deps): fix boost 1.87 compatibility (#3457) 2024-12-17 08:53:55 -05:00
Yukino Song
4fad7dcded Merge remote-tracking branch 'origin/dependabot/npm_and_yarn/dev-dependencies-cddfeb1403' 2024-10-29 02:09:19 +08:00
Cameron Gutman
73d777fa0b feat(stream)!: remove limit on concurrent sessions and allow quitting apps with active sessions (#3325) 2024-10-24 19:11:50 -05:00
Yukino Song
8e8f89d514 Launch apps from web UI 2024-09-19 23:42:25 +08:00
Yukino Song
db5790b374 Implement permission manage web UI 2024-09-16 23:10:19 +08:00
Yukino Song
2e7bde8958 Implement permission for stream 2024-09-15 22:40:38 +08:00
Yukino Song
74e079bd6e Launch server cmd in a new thread to prevent deadlock after sleep commands 2024-09-12 05:50:16 +08:00
Yukino Song
df7c742ca8 Implement server commands through control stream 2024-09-11 08:16:45 +08:00
Cameron Gutman
3935d305ae Implement S/G IO for batched sends and eliminate another frame copy (#2874) 2024-07-19 04:04:18 +00:00
Cameron Gutman
81c6e61594 Implement S/G IO for non-batched sends and eliminate more data copies (#2867) 2024-07-18 02:34:56 +00:00
Cameron Gutman
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
ns6089
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
Cameron Gutman
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
ns6089
037c61dc99 Implement basic network flow control (#2803)
Co-authored-by: Cameron Gutman <aicommander@gmail.com>
2024-07-11 00:03:16 +00:00
ReenigneArcher
1dd4b68e1c docs(src): add examples alias and general cleanup (#2763) 2024-06-28 08:34:14 -04:00
Gyanesh Patra
fdb443a7c6 Fix log message for Periodic Ping (#2538) 2024-05-19 17:31:14 -04:00
ReenigneArcher
2da6fb050a fix(logging): add logging namespace and create logging::init method (#2336) 2024-04-02 20:57:57 -04:00
Cameron Gutman
83e3ea5aa7 Use a common function to abort for debugging purposes 2024-02-27 21:21:16 -06: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
dea1155983 Inform clients of graceful termination when Sunshine exits 2024-02-04 16:43:59 -06:00
Cameron Gutman
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
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
9dfe97d405 Send the frame number in the encrypted video header 2024-01-25 23:43:30 -06:00
Cameron Gutman
65851407b1 Avoid unnecessary reallocation of the IV for every packet 2024-01-25 23:43:30 -06:00
Cameron Gutman
a10ec3a98a Drop unencrypted messages on the encrypted control stream 2024-01-19 18:57:58 -06:00
Cameron Gutman
c88fa655f5 Implement video encryption 2024-01-19 18:57:58 -06:00
Cameron Gutman
23fb07d4a2 Implement control stream v2 encryption 2024-01-19 18:57:58 -06:00
Cameron Gutman
2f80145b8e Change crypto::aes_t to variable size and cleanup some crypto code 2024-01-19 18:57:58 -06:00
Cameron Gutman
3d6e7f447a Refactor audio encryption to use new encryption flags 2024-01-19 18:57:58 -06:00
Cameron Gutman
77b0bab374 Pass launch_session_t directly into session::alloc() 2024-01-19 18:57:58 -06:00
Cameron Gutman
a9f2679a49 Implement new protocol extension to match client connections together
Fixes #1804
Fixes #1862
Fixes #1852
2023-12-30 11:26:53 -06:00
Elia Zammuto
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
Cameron Gutman
62a5cd959a Implement IPv6 support 2023-08-27 18:12:02 -05:00
Cameron Gutman
ebb6a7c9a9 Specify the source address for outbound audio and video traffic (#1569) 2023-08-26 16:37:04 -05:00