203 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
543254691b v0.12.0 2022-02-13 13:04:17 -05:00
ReenigneArcher
c7a3f7f46e Add version argument 2022-01-23 13:05:35 -05:00
loki
cb0b32f90a Add icon to windows executable 2021-10-03 21:12:06 +02:00
LuK1337
a275ee6b65 Explicitely link to Boost::log on non-win32 platforms
This fixes linker errors related to boost log library.
2021-10-03 00:18:05 +02:00
diadatp
e58dc8e446 Fix CUDA build via CMakeLists flags. 2021-09-26 16:01:59 +05:30
loki-47-6F-64
0241414dfb Merge branch 'cuda' of github.com:loki-47-6F-64/sunshine into cuda 2021-09-25 22:31:48 +02:00
loki-47-6F-64
c5a356f3e7 Fix compilation on ubuntu 20.04 2021-09-25 22:31:39 +02:00
loki-47-6F-64
deecd19af2 Update appveyor.yml 2021-09-25 21:50:47 +02:00
loki-47-6F-64
b3304a059d Target older cuda architecture for compatibility 2021-09-22 14:49:49 +02:00
loki-47-6F-64
d0529fb234 Make dependency on cuda development files optional 2021-09-22 14:17:08 +02:00
loki-47-6F-64
fed329568c Use an actual cuda kernel to convert RGB to NV12 2021-09-19 20:40:34 +02:00
loki-47-6F-64
9982ae4675 Convert images on the GPU on Linux for NVidia cards 2021-09-14 11:58:21 +02:00
Loki
7fbe9ba34f Added warning if only one of libcap or libdrm has been found 2021-09-04 20:15:08 +02:00
David Rosca
6309f478a2
kmsgrab: Only gain effective CAP_SYS_ADMIN when needed 2021-09-04 16:28:59 +02:00
Loki
74f673e23c Fix build for SUNSHINE_ENABLE_WAYLAND=OFF 2021-08-31 21:19:02 +02:00
Loki
7c51fbfd18 Correlate KMS output to wayland xdg-output 2021-08-31 20:46:50 +02:00
Loki
ec184fb2ab Screencast wlroots based compositors 2021-08-25 16:09:42 +02:00
Loki
05dcff4f87 Ask Wayland what monitor outputs are available 2021-08-23 18:22:59 +02:00
loki
fdb7754043 Attempt to render cursor when X11 is available 2021-08-15 20:38:30 +02:00
loki
446c8ace82 Merge branch 'master' into kmsgrab 2021-08-12 22:08:06 +02:00
loki
6721155155 Omit copy to RAM when possible with VAAPI 2021-08-12 21:11:40 +02:00
loki-47-6F-64
8c2cd2f60d Load mDNS at runtime on Windows 2021-08-07 00:05:38 +02:00
loki
065e9e718a Choose between x11grab and kmsgrab at runtime 2021-08-06 15:55:38 +02:00
Loki
ac5f439839 Skeleton of grabbing image with kms 2021-08-05 21:24:52 +02:00
Loki
6702802829 Load X11 libraries at runtime 2021-08-03 20:31:27 +02:00
loki
9a5d23ebde Fix setting default SUNSHINE_DEFAULT_DIR 2021-07-27 18:55:41 +02:00
Jacek Jagosz
a07ad3e479 If CONFIG and DEFAULT directories haven't been configured, make them point to ASSETS 2021-07-25 14:09:47 +02:00
Jacek Jagosz
c58f95b79e Try making sunshine on Linux stateless 2021-07-25 14:02:58 +02:00
loki
e169259f6f install systemd service for debian packages 2021-07-03 18:13:05 +02:00
loki
545cca792b Fix inabillity to display secure desktop even when runnig as system account 2021-06-30 22:03:21 +02:00
loki
ea928c53b4 Add support for upnp 2021-06-29 22:42:06 +02:00
loki
0cc7e35ed9 Automatic service discovery for Windows 2021-06-28 21:05:52 +02:00
loki
ed5de34800 Dynamically load avahi libraries if they are available 2021-06-26 15:36:56 +02:00
loki
27d4f6063f refactored publish.cpp from C code to C++ code 2021-06-26 13:32:14 +02:00
loki
62662edc8d Merge with master 2021-06-26 12:40:06 +02:00
loki
02360f7aef fix build windows 2021-06-16 14:34:05 +02:00
loki
64a6c1419b store state in .config/sunshine on Linux 2021-06-16 11:26:54 +02:00
loki
56bb4ca865 removed redundent build dependency on Windows 2021-06-14 21:09:11 +02:00
loki
8e32c8e6f4 Inject VUI data in SPS header if missing 2021-06-13 21:29:32 +02:00
loki
30f7742f51 Test for presence of sps->vui parameters 2021-06-12 23:08:20 +02:00
loki
55ce46e6ed fix windows build 2021-06-12 19:51:58 +02:00
loki
76f34be395 move third-party source files to folder third-party 2021-06-11 11:59:19 +02:00
loki
877c739f1b Merge branch 'master' into vaapi 2021-06-08 22:18:27 +02:00
loki
7f636a25a8 Look for VAAPI availabillity during runtime 2021-06-06 18:45:45 +02:00
loki
825a706139 Remove build dependency for gbm 2021-06-06 17:19:30 +02:00
loki
f33a587218 Fix software encoder 2021-06-04 21:35:00 +02:00
loki
bdb9ed9001 Perform image format conversion for VAAPI on the gpu 2021-06-04 21:12:06 +02:00
Elia Zammuto
5761b05f3b Merge branch 'master' of https://github.com/loki-47-6F-64/sunshine into loki-47-6F-64-master 2021-05-29 22:06:28 +02:00
loki
2b04e1428c Select audio output on Linux 2021-05-18 13:36:12 +02:00