56 Commits

Author SHA1 Message Date
Anselm Busse
2b450839a1 Initial support for MacOS
This commit introduces initial support for MacOS as third major host platform.
It relies on the VideoToolbox framework for audio and video processing, which
enables hardware accelerated processing of the stream on most platforms.
Audio capturing requires third party tools as MacOS does not offer the
recording of the audio output like the other platforms do. The commit enables
most features offered by Sunshine for MacOS with the big exception of gamepad
support. The patch sets was tested by a few volunteers, which allowed to remove
some of the early bugs. However, several bugs especially regarding corner
cases have probably not surfaced yet.

Besides instructions how to build from source, the commit also adds a Portfile
that allows a more easy installation. After available on the release branch,
a pull request for the Portfile in the MacPorts project is planned.

Signed-off-by: Anselm Busse <anselm.busse@outlook.com>
2022-02-26 10:18:00 +01:00
ReenigneArcher
e239751f50 Update sunshine.conf
- Rename `amd_preset` to `amd_quality`
- Document `key_rightalt_to_key_win`
2022-02-09 19:44:45 -05:00
loki-47-6F-64
d332f11101 Update instructions in the config file 2021-09-25 13:12:13 +02:00
loki
f08b6abc96 Make keybindings configurable 2021-08-03 15:24:04 +02:00
Loki
ab70a056fc Add CQP for older intel iGPU's 2021-07-24 19:33:23 +01:00
loki
d283900e43 add config options for select gamepad to emulate 2021-07-18 15:46:46 +02:00
Cameron Gutman
388e4696ff Increase default ping timeout to 10 seconds
During periods of poor connectivity, the ping timeout of 2 seconds
can easily be exceeded, especially with ENet's RTO backoff active.

This causes an unnecessary disconnection when the connection would
have recovered on its own in a few seconds. Increasing the timeout
to 10 seconds should prevent spurious disconnections in most cases.
2021-07-09 23:45:59 -05:00
Cameron Gutman
169a53b568 Increase default FEC percentage to match GFE
Also increase the range to the maximum of 255
2021-07-03 23:37:43 -05:00
loki
545cca792b Fix inabillity to display secure desktop even when runnig as system account 2021-06-30 22:03:21 +02:00
loki
beb6bdfadb Allow end user to configure what ports to listen on 2021-06-30 15:25:08 +02:00
loki
8bf4ade9d8 Disable UPnP by default 2021-06-30 12:22:37 +02:00
loki
9e7ecf8db2 Allow replacement of hevc headers 2021-06-20 15:29:51 +02:00
loki
33fbd5f431 Show/Hide config options based on platform and added vaapi config options to UI 2021-06-09 20:40:17 +02:00
loki
17d3fcf0d0 fix adding and editing apps json 2021-06-09 19:12:00 +02:00
Loki
3a3d4928f9 Fix compilation on Windows 2021-06-07 14:22:23 +02:00
loki
84c55d6efc Fix file descriptor leak 2021-06-06 20:57:42 +02:00
loki
f2863cceb7 Properly scale image on VAAPI 2021-06-05 12:25:19 +02:00
loki
6b9ed7fcb3 Add option to select render device for VAAPI 2021-06-05 10:20:36 +02:00
loki
113e7a52d4 advertise display modes 2021-05-26 17:34:25 +02:00
loki
2fb5f8a7d0 Add config option for virtual_sink on windows 2021-05-21 14:28:24 +02:00
loki
0868d898f6 Create virtual audio sinks on Linux 2021-05-19 18:11:06 +02:00
loki
2b04e1428c Select audio output on Linux 2021-05-18 13:36:12 +02:00
loki
377b086882 Fix amd_rc config options 2021-05-09 16:37:40 +02:00
loki
488d8e5fc2 force merge 2021-04-24 23:46:04 +02:00
loki
0049b36471 Use existing config option for selecting monitor 2021-04-24 23:41:56 +02:00
loki
0cfb440cf6 Added config examples to the config file 2021-04-24 14:23:12 +02:00
Elia Zammuto
0828cc3f83 Started work on AMD Hardware Decoding 2021-03-29 13:16:56 +02:00
kiralycraft
87be37293e Accidentally modified stock config file 2021-02-28 15:56:23 +02:00
kiralycraft
7abcfc0390 Added ability to stream specific monitor on Linux 2021-02-28 15:52:47 +02:00
loki
8d735e5611 Support keyboard key repeats 2020-04-26 00:23:34 +02:00
loki
c7a72553c4 Configure settings nvenc 2020-04-14 00:15:24 +03:00
loki
ad87463784 Add flags for testing pairing 2020-03-19 19:59:27 +01:00
loki
5cd0fd76bf Compile for Multicasting 2020-02-08 16:26:38 +01:00
loki
009c7a7bdc default config values match the example values 2020-01-29 14:43:46 -05:00
loki
9f0a5825f0 Select audio endpoint based on config option audio_sink on Windows 2020-01-24 23:17:05 +01:00
loki
c3af78caaa Configure source for frame capturing on Windows 2020-01-24 01:05:43 +01:00
Cameron Gutman
460a45268b Change threads option to min_threads 2020-01-20 17:23:57 -08:00
loki
6f3927b6ae Automatically generate unique id 2020-01-20 23:08:44 +01:00
Cameron Gutman
47df3b231a Add support for HEVC and client-specified colorspaces 2020-01-19 19:46:45 -08:00
loki
6f3b322a11 update comments in config file 2020-01-18 11:36:07 +01:00
loki-47-6F-64
a104862830
Merge pull request #1 from cgutman/optimize_video_params
Optimize encoding parameters for low-latency
2020-01-18 10:23:10 +01:00
loki-47-6F-64
c98d0e70d4
Merge pull request #3 from cgutman/hostname
Use hostname as the default Sunshine name
2020-01-18 10:22:26 +01:00
Cameron Gutman
f85b6f3596 Use the default monitor rather than the default source 2020-01-17 21:13:47 -08:00
Cameron Gutman
f487fa1366 Use hostname as the default Sunshine name 2020-01-17 20:05:27 -08:00
Cameron Gutman
32b6f8a395 Optimize encoding parameters for low-latency 2020-01-17 18:45:14 -08:00
loki
15dd6b3cd0 Provide option to select the source for audio on Linux 2020-01-18 00:58:27 +01:00
loki
b6fc6f2054 Proper logging instead of blindly printing to standard out 2020-01-09 22:02:01 +01:00
loki
1129aa6dfd Compile on Windows 2020-01-01 18:47:34 +01:00
loki
b3ae81cb3a Configure prevention pairing over non-private network 2019-12-27 16:04:18 +01:00
loki
cd31fbeb39 Add configuration option for name of the server 2019-12-26 00:01:06 +01:00